1################################################################################ 2# 3# python-web2py 4# 5################################################################################ 6 7PYTHON_WEB2PY_VERSION = 2.21.1 8PYTHON_WEB2PY_SITE = $(call github,web2py,web2py,v$(PYTHON_WEB2PY_VERSION)) 9PYTHON_WEB2PY_LICENSE = LGPL-3.0 10PYTHON_WEB2PY_LICENSE_FILES = LICENSE 11PYTHON_WEB2PY_CPE_ID_VENDOR = web2py 12PYTHON_WEB2PY_CPE_ID_PRODUCT = web2py 13PYTHON_WEB2PY_DEPENDENCIES = $(if $(BR2_PACKAGE_PYTHON3),host-python3 python3,host-python python) \ 14 host-python-pydal host-python-yatl 15 16PYTHON_WEB2PY_EXCLUSIONS = \ 17 welcome.w2p \ 18 applications/examples \ 19 applications/welcome \ 20 deposit \ 21 docs \ 22 examples \ 23 extras \ 24 handlers \ 25 scripts \ 26 ABOUT \ 27 anyserver.py \ 28 CHANGELOG \ 29 Makefile \ 30 MANIFEST.in \ 31 README.markdown \ 32 setup.py \ 33 tox.ini 34 35define PYTHON_WEB2PY_GENERATE_PASSWORD 36 $(HOST_DIR)/bin/python -c 'import os; \ 37 os.chdir("$(@D)"); \ 38 from gluon.main import save_password; \ 39 save_password($(BR2_PACKAGE_PYTHON_WEB2PY_PASSWORD),8000)' 40endef 41 42ifeq ($(BR2_PACKAGE_PYTHON_WEB2PY_INSTALL_ADMIN),y) 43PYTHON_WEB2PY_POST_BUILD_HOOKS += PYTHON_WEB2PY_GENERATE_PASSWORD 44else 45PYTHON_WEB2PY_EXCLUSIONS += applications/admin 46endif 47 48define PYTHON_WEB2PY_INSTALL_TARGET_CMDS 49 mkdir -p $(TARGET_DIR)/var/www/web2py 50 rsync -a $(@D)/ $(TARGET_DIR)/var/www/web2py/ \ 51 $(addprefix --exclude=,$(PYTHON_WEB2PY_EXCLUSIONS)) 52endef 53 54define PYTHON_WEB2PY_INSTALL_INIT_SYSV 55 $(INSTALL) -m 0755 -D package/python-web2py/S51web2py \ 56 $(TARGET_DIR)/etc/init.d/S51web2py 57endef 58 59define PYTHON_WEB2PY_INSTALL_INIT_SYSTEMD 60 $(INSTALL) -D -m 0644 package/python-web2py/web2py.service \ 61 $(TARGET_DIR)/usr/lib/systemd/system/web2py.service 62endef 63 64# www-data user and group are used for web2py. Because these user and group 65# are already set by buildroot, it is not necessary to redefine them. 66# See system/skeleton/etc/passwd 67# username: www-data uid: 33 68# groupname: www-data gid: 33 69# 70# So, we just need to create the directories used by web2py with the right 71# ownership. 72define PYTHON_WEB2PY_PERMISSIONS 73 /var/www/web2py r 750 33 33 - - - - - 74endef 75 76$(eval $(generic-package)) 77