Makefile (4462B)
1 # 2 # Copyright (C) 2008-2016 OpenWrt.org 3 # 4 # This is free software, licensed under the GNU General Public License v2. 5 # 6 7 include $(TOPDIR)/rules.mk 8 9 PKG_NAME:=radicale 10 PKG_VERSION:=1.1.1 11 PKG_RELEASE:=2 12 PKG_MAINTAINER:=Christian Schoenebeck <christian.schoenebeck@gmail.com> 13 14 PKG_LICENSE:=GPL-3.0 15 PKG_LICENSE_FILES:=COPYING 16 17 PKG_SOURCE:=Radicale-$(PKG_VERSION).tar.gz 18 PKG_SOURCE_URL:=http://pypi.python.org/packages/source/R/Radicale/ 19 PKG_MD5SUM:=a29dd538377ea24cec83237a636122ae 20 21 # needed for "r"adicale <-> "R"adicale 22 PKG_BUILD_DIR:=$(BUILD_DIR)/Radicale-$(PKG_VERSION) 23 24 include $(INCLUDE_DIR)/package.mk 25 $(call include_mk, python-package.mk) 26 $(call include_mk, python3-package.mk) 27 28 # no default dependencies 29 PKG_DEFAULT_DEPENDS:= 30 31 define Package/radicale/Default 32 SECTION:=net 33 CATEGORY:=Network 34 SUBMENU:=Web Servers/Proxies 35 URL:=http://radicale.org/ 36 TITLE:=Radicale CalDAV/CardDAV server 37 PKGARCH:=all 38 USERID:=radicale=5232:radicale=5232 39 endef 40 define Package/radicale-py2 41 $(call Package/radicale/Default) 42 TITLE+= (Python 2) 43 VARIANT:=2 44 DEPENDS:=+python-logging +python-openssl +python-xml +python-codecs 45 endef 46 define Package/radicale-py3 47 $(call Package/radicale/Default) 48 TITLE+= (Python 3) 49 VARIANT:=3 50 DEPENDS:=+python3-logging +python3-openssl +python3-xml +python3-codecs +python3-email 51 endef 52 53 # shown in LuCI package description 54 define Package/radicale-py2/description 55 Radicale CalDAV/CardDAV server (Python 2) - Homepage: http://radicale.org/ 56 endef 57 define Package/radicale-py3/description 58 Radicale CalDAV/CardDAV server (Python 3) - Homepage: http://radicale.org/ 59 endef 60 61 # shown in make menuconfig <Help> 62 define Package/radicale-py2/config 63 help 64 The Radicale Project is a CalDAV (calendar) and CardDAV (contact) server. 65 It aims to be a light solution, easy to use, easy to install, easy to configure. 66 As a consequence, it requires few software dependances and is pre-configured to work out-of-the-box. 67 !!! Will install and use Python $(VARIANT) !!! 68 . 69 Version : $(PKG_VERSION) 70 Homepage: http://radicale.org/ 71 endef 72 Package/radicale-py3/config = $(Package/radicale-py2/config) 73 74 define Package/radicale-py2/conffiles 75 /etc/config/radicale 76 /etc/radicale/users 77 /etc/radicale/rights 78 endef 79 Package/radicale-py3/conffiles = $(Package/radicale-py2/conffiles) 80 81 define Build/Configure 82 # nothing to configure 83 endef 84 define Build/Compile 85 # nothing to compile 86 endef 87 88 define Package/radicale-py2/preinst 89 #!/bin/sh 90 [ -n "$${IPKG_INSTROOT}" ] && exit 0 # if run within buildroot exit 91 92 # stop service if PKG_UPGRADE 93 [ "$${PKG_UPGRADE}" = "1" ] && /etc/init.d/radicale stop >/dev/null 2>&1 94 95 exit 0 # suppress errors from stop command 96 endef 97 define Package/radicale-py3/preinst 98 $(call Package/radicale-py2/preinst) 99 endef 100 101 define Package/radicale/inst_all 102 $(INSTALL_DIR) $(1)/etc/init.d 103 $(INSTALL_BIN) ./files/radicale.init $(1)/etc/init.d/radicale 104 105 $(INSTALL_DIR) $(1)/etc/hotplug.d/iface 106 $(INSTALL_BIN) ./files/radicale.hotplug $(1)/etc/hotplug.d/iface/80-radicale 107 108 $(INSTALL_DIR) $(1)/etc/config 109 $(INSTALL_CONF) ./files/radicale.config $(1)/etc/config/radicale 110 111 $(INSTALL_DIR) $(1)/lib/upgrade/keep.d 112 $(INSTALL_DATA) ./files/radicale.upgrade $(1)/lib/upgrade/keep.d/radicale 113 114 $(INSTALL_DIR) $(1)/etc/radicale/ssl 115 $(INSTALL_DATA) ./files/config.template $(1)/etc/radicale/config.template 116 $(INSTALL_DATA) ./files/logging.template $(1)/etc/radicale/logging.template 117 $(INSTALL_DATA) ./files/radicale.users $(1)/etc/radicale/users 118 $(INSTALL_DATA) ./files/radicale.rights $(1)/etc/radicale/rights 119 120 $(INSTALL_DIR) $(1)/usr/bin 121 $(INSTALL_BIN) $(PKG_BUILD_DIR)/bin/radicale $(1)/usr/bin/ 122 endef 123 define Package/radicale-py2/install 124 $(call Package/radicale/inst_all, $(1)) 125 $(INSTALL_DIR) $(1)$(PYTHON_PKG_DIR)/radicale 126 $(CP) $(PKG_BUILD_DIR)/radicale/* $(1)$(PYTHON_PKG_DIR)/radicale 127 endef 128 define Package/radicale-py3/install 129 $(call Package/radicale/inst_all, $(1)) 130 $(INSTALL_DIR) $(1)$(PYTHON3_PKG_DIR)/radicale 131 $(CP) $(PKG_BUILD_DIR)/radicale/* $(1)$(PYTHON3_PKG_DIR)/radicale 132 endef 133 134 define Package/radicale-py2/postinst 135 #!/bin/sh 136 # patch /usr/bin/radicale force run using python2 137 /bin/sed -i 's/python/python2/' $${IPKG_INSTROOT}/usr/bin/radicale 138 endef 139 define Package/radicale-py3/postinst 140 #!/bin/sh 141 # patch /usr/bin/radicale force run using python3 142 /bin/sed -i 's/python/python3/' $${IPKG_INSTROOT}/usr/bin/radicale 143 endef 144 145 $(eval $(call BuildPackage,radicale-py2)) 146 $(eval $(call BuildPackage,radicale-py3))