ca7540261195635117abfd4090d83f6869f7f475
[project/luci.git] / contrib / package / ffluci / Makefile
1 include $(TOPDIR)/rules.mk
2
3 PKG_BRANCH:=trunk
4 PKG_SOURCE_URL:=https://dev.leipzig.freifunk.net/svn/ff-luci/$(PKG_BRANCH)
5 PKG_REV:=$(shell LC_ALL=C svn info ${PKG_SOURCE_URL} | sed -ne's/^Last Changed Rev: //p')
6
7 PKG_NAME:=ffluci
8 PKG_VERSION:=0.4+svn$(PKG_REV)
9 PKG_RELEASE:=1
10
11 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
12 PKG_SOURCE:=$(PKG_SOURCE_SUBDIR).tar.gz
13 PKG_SOURCE_PROTO:=svn
14 PKG_SOURCE_VERSION:=$(PKG_REV)
15
16 PKG_BUILD_DEPENDS:=lua-luci
17
18 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
19 PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
20
21 # LUA_TARGET:=compile LUAC=$(BUILD_DIR_HOST)/lua-luci/luac
22 LUA_TARGET:=source
23
24
25 include $(INCLUDE_DIR)/package.mk
26
27 define Build/Configure
28 endef
29
30 define Build/Compile
31         $(MAKE) -C$(PKG_BUILD_DIR) build LUA_TARGET=$(LUA_TARGET)
32 endef
33
34
35 define Package/ffluci/template
36   SECTION:=admin
37   CATEGORY:=Administration
38   TITLE:=FFLuCI - Freifunk Lua Configuration Interface
39   URL:=http://luci.freifunk-halle.net/
40   MAINTAINER:=Steven Barth <steven-at-midlink-dot-org>
41 endef
42
43 define Package/ffluci/install/template
44         $(CP) $(PKG_BUILD_DIR)/$(2)/dist/* $(1)/ -R
45 endef
46
47
48 define Package/ffluci
49   $(call Package/ffluci/template)
50   MENU:=1
51   DEPENDS:=+lua-luci +luaposix +luci-addons
52 endef
53
54 define Package/ffluci/conffiles
55 /etc/config/luci
56 endef
57
58 define Package/ffluci/install           
59         $(call Package/ffluci/install/template,$(1),core)
60         $(call Package/ffluci/install/template,$(1),themes/fledermaus)
61 endef
62
63
64 ### Community Packages ###
65
66 define Package/ffluci-ff-halle
67   $(call Package/ffluci/template)
68   DEPENDS:=ffluci \
69    +ffluci-sgi-haserl +ffluci-mod-freifunk +ffluci-app-splash \
70    +olsrd +olsrd-mod-dyn-gw +olsrd-mod-txtinfo +olsrd-mod-nameservice \
71    +kmod-tun +ip
72   TITLE:=Freifunk Halle Community Meta-Package
73 endef
74
75 define Package/ffluci-ff-halle/install
76 endef
77
78
79 define Package/ffluci-ff-leipzig
80   $(call Package/ffluci/template)
81   DEPENDS:=ffluci \
82    +ffluci-sgi-haserl +ffluci-mod-freifunk +ffluci-app-splash \
83    +olsrd +olsrd-mod-dyn-gw +olsrd-mod-txtinfo +olsrd-mod-nameservice \
84    +kmod-tun +ip
85   TITLE:=Freifunk Leipzig Community Meta-Package
86 endef
87
88 define Package/ffluci-ff-leipzig/install
89         $(call Package/ffluci/install/template,$(1),applications/community-leipzig)
90         $(CP) -a ./ipkg/ffluci-ff-leipzig.postinst $(1)/CONTROL/postinst
91 endef
92
93
94 define Package/ffluci-ff-hannover
95   $(call Package/ffluci/template)
96   DEPENDS:=ffluci \
97    +ffluci-sgi-haserl +ffluci-mod-freifunk +ffluci-app-splash \
98    +olsrd +olsrd-mod-dyn-gw +olsrd-mod-txtinfo +olsrd-mod-nameservice
99   TITLE:=Freifunk Hannover Community Meta-Package
100   URL:=http://www.freifunk-hannover.de/
101   MAINTAINER:=Mickey Knox <mickey-at-netfreaks-dot-org>
102 endef
103
104 define Package/ffluci-ff-hannover/install
105         $(call Package/ffluci/install/template,$(1),applications/community-hannover)
106         $(CP) -a ./ipkg/ffluci-ff-hannover.postinst $(1)/CONTROL/postinst
107 endef
108
109
110 ### Modules ###
111
112 define Package/ffluci-mod-admin-core
113   $(call Package/ffluci/template)
114   DEPENDS:=ffluci
115   TITLE:=Core administrative pages
116 endef
117
118 define Package/ffluci-mod-admin-core/install
119         $(call Package/ffluci/install/template,$(1),modules/admin-core)
120 endef
121
122
123 define Package/ffluci-mod-freifunk
124   $(call Package/ffluci/template)
125   DEPENDS:=ffluci +ffluci-mod-admin-core +ffluci-app-firewall
126   TITLE:=Freifunk public and administrative pages
127 endef
128
129 define Package/ffluci-mod-freifunk/conffiles
130 /etc/config/freifunk
131 endef
132
133 define Package/ffluci-mod-freifunk/install
134         $(call Package/ffluci/install/template,$(1),modules/freifunk)
135 endef
136
137
138
139 ### Applications ###
140
141 define Package/ffluci-app-firewall
142   $(call Package/ffluci/template)
143   DEPENDS:=ffluci +ffluci-mod-admin-core
144   TITLE:=Firewall and Portforwarding application
145 endef
146
147 define Package/ffluci-app-firewall/conffiles
148 /etc/config/luci_fw
149 endef
150
151 define Package/ffluci-app-firewall/install
152         $(call Package/ffluci/install/template,$(1),applications/luci-fw)
153         $(INSTALL_BIN) $(PKG_BUILD_DIR)/applications/luci-fw/dist/etc/init.d/luci_fw $(1)/etc/init.d
154 endef
155
156
157 define Package/ffluci-app-splash
158   $(call Package/ffluci/template)
159   DEPENDS:=ffluci +ffluci-mod-freifunk +ffluci-sgi-haserl +iptables-mod-nat +iptables-mod-ipopt
160   TITLE:=Freifunk DHCP-Splash application
161 endef
162
163 define Package/ffluci-app-splash/conffiles
164 /etc/config/luci_splash
165 endef
166
167 define Package/ffluci-app-splash/install
168         $(call Package/ffluci/install/template,$(1),applications/luci-splash)
169         $(INSTALL_BIN) $(PKG_BUILD_DIR)/applications/luci-splash/dist/usr/sbin/luci-splash $(1)/usr/sbin
170         $(INSTALL_BIN) $(PKG_BUILD_DIR)/applications/luci-splash/dist/etc/init.d/luci_splash $(1)/etc/init.d
171         $(INSTALL_BIN) $(PKG_BUILD_DIR)/applications/luci-splash/dist/etc/cron.minutely/luci_splash $(1)/etc/cron.minutely
172         $(INSTALL_BIN) $(PKG_BUILD_DIR)/applications/luci-splash/dist/usr/lib/luci-splash/htdocs/cgi-bin/index.cgi $(1)/usr/lib/luci-splash/htdocs/cgi-bin
173         $(INSTALL_BIN) $(PKG_BUILD_DIR)/applications/luci-splash/dist/www/cgi-bin/luci-splash $(1)/www/cgi-bin/luci-splash
174 endef
175
176
177
178 ### Server Gateway Interfaces ###
179
180 define Package/ffluci-sgi-haserl
181   $(call Package/ffluci/template)
182   DEPENDS:=ffluci +haserl-lua
183   TITLE:=SGI for Haserl
184 endef
185
186 define Package/ffluci-sgi-haserl/install
187         $(call Package/ffluci/install/template,$(1),applications/sgi-haserl)
188         $(CP) -a ./ipkg/ffluci-sgi-haserl.postinst $(1)/CONTROL/postinst
189 endef
190
191
192 define Package/ffluci-sgi-webuci
193   $(call Package/ffluci/template)
194   DEPENDS:=ffluci
195   TITLE:=SGI for Webuci
196 endef
197
198 define Package/ffluci-sgi-webuci/install
199         $(call Package/ffluci/install/template,$(1),applications/sgi-webuci)
200 endef
201
202
203
204
205 $(eval $(call BuildPackage,ffluci))
206
207 $(eval $(call BuildPackage,ffluci-ff-halle))
208 $(eval $(call BuildPackage,ffluci-ff-leipzig))
209 $(eval $(call BuildPackage,ffluci-ff-hannover))
210
211 $(eval $(call BuildPackage,ffluci-mod-admin-core))
212 $(eval $(call BuildPackage,ffluci-mod-freifunk))
213
214 $(eval $(call BuildPackage,ffluci-app-firewall))
215 $(eval $(call BuildPackage,ffluci-app-splash))
216
217 $(eval $(call BuildPackage,ffluci-sgi-haserl))
218 $(eval $(call BuildPackage,ffluci-sgi-webuci))