2 # Copyright (C) 2008-2016 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
7 include $(TOPDIR
)/rules.mk
12 PKG_MAINTAINER
:=Christian Schoenebeck
<christian.schoenebeck@gmail.com
>
15 PKG_LICENSE_FILES
:=COPYING
18 PKG_SOURCE_URL
=https
://github.com
/Kozea
/Radicale
19 PKG_SOURCE_SUBDIR
=$(PKG_NAME
)-$(PKG_VERSION
)
20 PKG_SOURCE_VERSION
:=d5171958ffe41e495ccaf2c02702d9acb0c6e6ad
21 PKG_SOURCE
:=$(PKG_NAME
)-$(PKG_VERSION
).
tar.xz
23 include $(INCLUDE_DIR
)/package.mk
24 $(call include_mk
, python-package.mk
)
25 $(call include_mk
, python3-package.mk
)
27 # no default dependencies
30 define Package
/radicale
/Default
33 SUBMENU
:=Web Servers
/Proxies
34 URL
:=http
://radicale.org
/
35 TITLE
:=Radicale CalDAV
/CardDAV server
37 USERID
:=radicale
=5232:radicale
=5232
39 define Package
/radicale-py2
40 $(call Package
/radicale
/Default
)
43 DEPENDS
:=+python-logging
+python-openssl
+python-xml
+python-codecs
45 define Package
/radicale-py3
46 $(call Package
/radicale
/Default
)
49 DEPENDS
:=+python3-logging
+python3-openssl
+python3-xml
+python3-codecs
+python3-email
52 # shown in LuCI package description
53 define Package
/radicale-py2
/description
54 Radicale CalDAV
/CardDAV server
(Python
2) - Homepage
: http
://radicale.org
/
56 define Package
/radicale-py3
/description
57 Radicale CalDAV
/CardDAV server
(Python
3) - Homepage
: http
://radicale.org
/
60 # shown in make menuconfig <Help>
61 define Package
/radicale-py2
/config
63 The Radicale Project is a CalDAV
(calendar
) and CardDAV
(contact
) server.
64 It aims to be a light solution
, easy to use
, easy to
install, easy to configure.
65 As a consequence
, it requires few software dependances and is pre-configured to work out-of-the-box.
66 !!! Will
install and use Python
$(VARIANT
) !!!
68 Version
: $(PKG_VERSION
)
69 Homepage
: http
://radicale.org
/
71 Package
/radicale-py3
/config
= $(Package
/radicale-py2
/config
)
73 define Package
/radicale-py2
/conffiles
78 Package
/radicale-py3
/conffiles
= $(Package
/radicale-py2
/conffiles
)
80 define Build
/Configure
81 # nothing to configure
87 define Package
/radicale-py2
/preinst
89 [ -n
"$${IPKG_INSTROOT}" ] && exit
0 # if run within buildroot exit
91 # stop service if PKG_UPGRADE
92 [ "$${PKG_UPGRADE}" = "1" ] && /etc
/init.d
/radicale stop
>/dev
/null
2>&1
94 exit
0 # suppress errors from stop command
96 define Package
/radicale-py3
/preinst
97 $(call Package
/radicale-py2
/preinst
)
100 define Package
/radicale
/inst_all
101 $(INSTALL_DIR
) $(1)/etc
/init.d
102 $(INSTALL_BIN
) .
/files
/radicale.init
$(1)/etc
/init.d
/radicale
104 $(INSTALL_DIR
) $(1)/etc
/hotplug.d
/iface
105 $(INSTALL_BIN
) .
/files
/radicale.hotplug
$(1)/etc
/hotplug.d
/iface
/80-radicale
107 $(INSTALL_DIR
) $(1)/etc
/config
108 $(INSTALL_CONF
) .
/files
/radicale.config
$(1)/etc
/config
/radicale
110 $(INSTALL_DIR
) $(1)/lib
/upgrade
/keep.d
111 $(INSTALL_DATA
) .
/files
/radicale.upgrade
$(1)/lib
/upgrade
/keep.d
/radicale
113 $(INSTALL_DIR
) $(1)/etc
/radicale
/ssl
114 $(INSTALL_DATA
) .
/files
/config.template
$(1)/etc
/radicale
/config.template
115 $(INSTALL_DATA
) .
/files
/logging.template
$(1)/etc
/radicale
/logging.template
116 $(INSTALL_DATA
) .
/files
/radicale.users
$(1)/etc
/radicale
/users
117 $(INSTALL_DATA
) .
/files
/radicale.rights
$(1)/etc
/radicale
/rights
119 $(INSTALL_DIR
) $(1)/usr
/bin
120 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/bin
/radicale
$(1)/usr
/bin
/
122 define Package
/radicale-py2
/install
123 $(call Package
/radicale
/inst_all
, $(1))
124 $(INSTALL_DIR
) $(1)$(PYTHON_PKG_DIR
)/radicale
125 $(CP
) $(PKG_BUILD_DIR
)/radicale
/* $(1)$(PYTHON_PKG_DIR
)/radicale
127 define Package
/radicale-py3
/install
128 $(call Package
/radicale
/inst_all
, $(1))
129 $(INSTALL_DIR
) $(1)$(PYTHON3_PKG_DIR
)/radicale
130 $(CP
) $(PKG_BUILD_DIR
)/radicale
/* $(1)$(PYTHON3_PKG_DIR
)/radicale
133 define Package
/radicale-py2
/postinst
135 # patch /usr/bin/radicale force run using python2
136 /bin
/sed
-i
's/python/python2/' $${IPKG_INSTROOT}/usr
/bin
/radicale
138 define Package
/radicale-py3
/postinst
140 # patch /usr/bin/radicale force run using python3
141 /bin
/sed
-i
's/python/python3/' $${IPKG_INSTROOT}/usr
/bin
/radicale
144 $(eval
$(call BuildPackage
,radicale-py2
))
145 $(eval
$(call BuildPackage
,radicale-py3
))