1 include $(TOPDIR)/rules.mk
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')
8 PKG_VERSION:=0.6+svn$(PKG_REV)
11 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
12 PKG_SOURCE:=$(PKG_SOURCE_SUBDIR).tar.gz
14 PKG_SOURCE_VERSION:=$(PKG_REV)
16 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
17 PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
20 PKG_SELECTED_MODULES:=
23 include $(INCLUDE_DIR)/package.mk
25 define Build/Configure
30 define Package/luci/libtemplate
32 CATEGORY:=Administration
33 TITLE:=LuCI - Lua Configuration Interface
34 URL:=http://luci.freifunk-halle.net/
35 MAINTAINER:=Steven Barth <steven-at-midlink-dot-org>
36 SUBMENU:=LuCI - Libraries
40 define Package/luci/fftemplate
41 $(call Package/luci/libtemplate)
42 SUBMENU:=LuCI - Freifunk Support
43 DEPENDS:=+luci-mod-freifunk
46 define Package/luci/i18ntemplate
47 $(call Package/luci/libtemplate)
48 SUBMENU:=LuCI - Translations
52 define Package/luci/thtemplate
53 $(call Package/luci/libtemplate)
54 SUBMENU:=LuCI - Themes
58 define Package/luci/webtemplate
59 $(call Package/luci/libtemplate)
60 SUBMENU:=LuCI - Webinterface Components
64 define Package/luci/install/template
65 $(CP) -a $(PKG_BUILD_DIR)/$(2)/dist/* $(1)/ -R
66 $(CP) -a $(PKG_BUILD_DIR)/$(2)/ipkg/* $(1)/CONTROL/ 2>/dev/null || true
73 define Package/luci-core
74 $(call Package/luci/libtemplate)
75 DEPENDS:=+lua +luaposix
76 TITLE:=LuCI core libraries
79 define Package/luci-core/install
80 $(call Package/luci/install/template,$(1),libs/core)
83 define Package/luci-core/config
86 default PACKAGE_luci-core_compile
88 config PACKAGE_luci-core_compile
91 config PACKAGE_luci-core_source
97 ifneq ($(CONFIG_PACKAGE_luci-core_compile),)
103 define Package/luci-cbi
104 $(call Package/luci/libtemplate)
106 TITLE:=Configuration Binding Interface
109 define Package/luci-cbi/install
110 $(call Package/luci/install/template,$(1),libs/cbi)
114 define Package/luci-uci
115 $(call Package/luci/libtemplate)
117 TITLE:=High-Level UCI API
120 define Package/luci-uci/install
121 $(call Package/luci/install/template,$(1),libs/uci)
125 define Package/luci-fastindex
126 $(call Package/luci/libtemplate)
127 TITLE:=Fastindex indexing module
130 define Package/luci-fastindex/install
131 $(call Package/luci/install/template,$(1),libs/fastindex)
135 define Package/luci-web
136 $(call Package/luci/libtemplate)
137 DEPENDS+=+luci-addons +luci-uci
138 TITLE:=MVC Webframework
141 define Package/luci-web/conffiles
145 define Package/luci-web/install
146 $(call Package/luci/install/template,$(1),libs/web)
151 ### Community Packages ###
153 define Package/luci-ff-halle
154 $(call Package/luci/fftemplate)
156 +luci-sgi-haserl +luci-app-splash +luci-app-olsr \
157 +luci-app-ffwizard-leipzig \
158 +luci-theme-fledermaus \
160 +olsrd +olsrd-mod-dyn-gw +olsrd-mod-txtinfo +olsrd-mod-nameservice \
162 TITLE:=Freifunk Halle Community Meta-Package
165 define Package/luci-ff-halle/install
166 $(call Package/luci/install/template,$(1),applications/community-halle)
170 define Package/luci-ff-leipzig
171 $(call Package/luci/fftemplate)
173 +luci-sgi-haserl +luci-app-splash +luci-app-olsr \
174 +luci-app-ffwizard-leipzig \
175 +luci-theme-fledermaus \
177 +olsrd +olsrd-mod-dyn-gw +olsrd-mod-txtinfo +olsrd-mod-nameservice \
179 TITLE:=Freifunk Leipzig Community Meta-Package
182 define Package/luci-ff-leipzig/install
183 $(call Package/luci/install/template,$(1),applications/community-leipzig)
187 define Package/luci-ff-hannover
188 $(call Package/luci/fftemplate)
190 +luci-sgi-haserl +luci-app-splash +luci-app-olsr \
191 +luci-theme-fledermaus \
193 +olsrd +olsrd-mod-dyn-gw +olsrd-mod-txtinfo +olsrd-mod-nameservice
194 TITLE:=Freifunk Hannover Community Meta-Package
195 URL:=http://www.freifunk-hannover.de/
196 MAINTAINER:=Mickey Knox <mickey-at-netfreaks-dot-org>
199 define Package/luci-ff-hannover/install
200 $(call Package/luci/install/template,$(1),applications/community-hannover)
206 define Package/luci-mod-admin-core
207 $(call Package/luci/webtemplate)
208 DEPENDS+=+luci-web +luci-cbi +luci-theme-openwrt +luci-i18n-english
209 TITLE:=Administration module
212 define Package/luci-mod-admin-core/install
213 $(call Package/luci/install/template,$(1),modules/admin-core)
217 define Package/luci-mod-freifunk
218 $(call Package/luci/fftemplate)
219 DEPENDS:=+luci-mod-admin-core
220 TITLE:=LuCI Freifunk module
223 define Package/luci-mod-freifunk/conffiles
227 define Package/luci-mod-freifunk/install
228 $(call Package/luci/install/template,$(1),modules/freifunk)
235 define Package/luci-app-ffwizard-leipzig
236 $(call Package/luci/fftemplate)
237 DEPENDS+=+luci-app-firewall
238 TITLE:=Freifunk Leipzig configuration wizard
241 define Package/luci-app-ffwizard-leipzig/install
242 $(call Package/luci/install/template,$(1),applications/luci-ffwizard-leipzig)
246 define Package/luci-app-firewall
247 $(call Package/luci/webtemplate)
248 DEPENDS+=+luci-mod-admin-core
249 TITLE:=Firewall and Portforwarding application
252 define Package/luci-app-firewall/conffiles
256 define Package/luci-app-firewall/install
257 $(call Package/luci/install/template,$(1),applications/luci-fw)
261 define Package/luci-app-olsr
262 $(call Package/luci/webtemplate)
263 DEPENDS+=+luci-mod-admin-core +olsrd-mod-txtinfo
264 TITLE:=OLSR configuration and status module
267 define Package/luci-app-olsr/install
268 $(call Package/luci/install/template,$(1),applications/luci-olsr)
272 define Package/luci-app-qos
273 $(call Package/luci/webtemplate)
274 DEPENDS+=+luci-mod-admin-core +qos-scripts
275 TITLE:=Quality of Service configuration module
278 define Package/luci-app-qos/install
279 $(call Package/luci/install/template,$(1),applications/luci-qos)
283 define Package/luci-app-splash
284 $(call Package/luci/fftemplate)
285 DEPENDS+=+luci-sgi-haserl +iptables-mod-nat +iptables-mod-ipopt
286 TITLE:=Freifunk DHCP-Splash application
289 define Package/luci-app-splash/conffiles
290 /etc/config/luci_splash
293 define Package/luci-app-splash/install
294 $(call Package/luci/install/template,$(1),applications/luci-splash)
295 $(INSTALL_BIN) $(PKG_BUILD_DIR)/applications/luci-splash/dist/usr/sbin/luci-splash $(1)/usr/sbin
296 $(INSTALL_BIN) $(PKG_BUILD_DIR)/applications/luci-splash/dist/etc/init.d/luci_splash $(1)/etc/init.d
297 $(INSTALL_BIN) $(PKG_BUILD_DIR)/applications/luci-splash/dist/etc/cron.minutely/luci_splash $(1)/etc/cron.minutely
298 $(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
299 $(INSTALL_BIN) $(PKG_BUILD_DIR)/applications/luci-splash/dist/www/cgi-bin/luci-splash $(1)/www/cgi-bin/luci-splash
303 define Package/luci-app-statistics
304 $(call Package/luci/webtemplate)
305 DEPENDS+=+luci-mod-admin-core +collectd +collectd-mod-rrdtool1 +rrdtool1
306 TITLE:=LuCI Statistics Application
309 define Package/luci-app-statistics/conffiles
310 /etc/config/luci_statistics
313 define Package/luci-app-statistics/install
314 $(call Package/luci/install/template,$(1),applications/luci-statistics)
318 ### Server Gateway Interfaces ###
320 define Package/luci-sgi-haserl
321 $(call Package/luci/libtemplate)
322 DEPENDS+=+luci-web +haserl-lua
323 TITLE:=SGI for Haserl
326 define Package/luci-sgi-haserl/install
327 $(call Package/luci/install/template,$(1),libs/sgi-haserl)
331 define Package/luci-sgi-webuci
332 $(call Package/luci/libtemplate)
334 TITLE:=SGI for Webuci
337 define Package/luci-sgi-webuci/install
338 $(call Package/luci/install/template,$(1),libs/sgi-webuci)
342 define Package/luci-theme-fledermaus
343 $(call Package/luci/fftemplate)
345 TITLE:=Fledermaus Theme
348 define Package/luci-theme-fledermaus/install
349 $(call Package/luci/install/template,$(1),themes/fledermaus)
352 define Package/luci-theme-openwrt
353 $(call Package/luci/thtemplate)
354 TITLE:=OpenWRT.org (default)
357 define Package/luci-theme-openwrt/install
358 $(call Package/luci/install/template,$(1),themes/openwrt.org)
362 define Package/luci-i18n-german
363 $(call Package/luci/i18ntemplate)
367 define Package/luci-i18n-german/install
368 $(call Package/luci/install/template,$(1),i18n/german)
372 define Package/luci-i18n-english
373 $(call Package/luci/i18ntemplate)
374 TITLE:=English (incomplete)
377 define Package/luci-i18n-english/install
378 $(call Package/luci/install/template,$(1),i18n/english)
384 ifneq ($(CONFIG_PACKAGE_luci-core),)
385 PKG_SELECTED_MODULES+=libs/core
387 ifneq ($(CONFIG_PACKAGE_luci-cbi),)
388 PKG_SELECTED_MODULES+=libs/cbi
390 ifneq ($(CONFIG_PACKAGE_luci-fastindex),)
391 PKG_SELECTED_MODULES+=libs/fastindex
393 ifneq ($(CONFIG_PACKAGE_luci-uci),)
394 PKG_SELECTED_MODULES+=libs/uci
396 ifneq ($(CONFIG_PACKAGE_luci-web),)
397 PKG_SELECTED_MODULES+=libs/web
400 ifneq ($(CONFIG_PACKAGE_luci-ff-halle),)
401 PKG_SELECTED_MODULES+=applications/community-halle
403 ifneq ($(CONFIG_PACKAGE_luci-ff-leipzig),)
404 PKG_SELECTED_MODULES+=applications/community-leipzig
406 ifneq ($(CONFIG_PACKAGE_luci-ff-hannover),)
407 PKG_SELECTED_MODULES+=applications/community-hannover
410 ifneq ($(CONFIG_PACKAGE_luci-mod-admin-core),)
411 PKG_SELECTED_MODULES+=modules/admin-core
413 ifneq ($(CONFIG_PACKAGE_luci-mod-freifunk),)
414 PKG_SELECTED_MODULES+=modules/freifunk
417 ifneq ($(CONFIG_PACKAGE_luci-app-ffwizard-leipzig),)
418 PKG_SELECTED_MODULES+=applications/luci-ffwizard-leipzig
420 ifneq ($(CONFIG_PACKAGE_luci-app-firewall),)
421 PKG_SELECTED_MODULES+=applications/luci-fw
423 ifneq ($(CONFIG_PACKAGE_luci-app-olsr),)
424 PKG_SELECTED_MODULES+=applications/luci-olsr
426 ifneq ($(CONFIG_PACKAGE_luci-app-qos),)
427 PKG_SELECTED_MODULES+=applications/luci-qos
429 ifneq ($(CONFIG_PACKAGE_luci-app-splash),)
430 PKG_SELECTED_MODULES+=applications/luci-splash
432 ifneq ($(CONFIG_PACKAGE_luci-app-statistics),)
433 PKG_SELECTED_MODULES+=applications/luci-statistics
436 ifneq ($(CONFIG_PACKAGE_luci-sgi-haserl),)
437 PKG_SELECTED_MODULES+=libs/sgi-haserl
439 ifneq ($(CONFIG_PACKAGE_luci-sgi-webuci),)
440 PKG_SELECTED_MODULES+=libs/sgi-webuci
443 ifneq ($(CONFIG_PACKAGE_luci-theme-fledermaus),)
444 PKG_SELECTED_MODULES+=themes/fledermaus
446 ifneq ($(CONFIG_PACKAGE_luci-theme-openwrt),)
447 PKG_SELECTED_MODULES+=themes/openwrt.org
450 ifneq ($(CONFIG_PACKAGE_luci-i18n-german),)
451 PKG_SELECTED_MODULES+=i18n/german
453 ifneq ($(CONFIG_PACKAGE_luci-i18n-english),)
454 PKG_SELECTED_MODULES+=i18n/english
458 MAKE_FLAGS += MODULES="$(PKG_SELECTED_MODULES)" LUA_TARGET="$(LUA_TARGET)" CFLAGS="$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include" LDFLAGS="$(TARGET_LDFLAGS)"
461 $(eval $(call BuildPackage,luci-core))
462 $(eval $(call BuildPackage,luci-cbi))
463 $(eval $(call BuildPackage,luci-fastindex))
464 $(eval $(call BuildPackage,luci-uci))
465 $(eval $(call BuildPackage,luci-web))
467 $(eval $(call BuildPackage,luci-ff-halle))
468 $(eval $(call BuildPackage,luci-ff-leipzig))
469 $(eval $(call BuildPackage,luci-ff-hannover))
471 $(eval $(call BuildPackage,luci-mod-admin-core))
472 $(eval $(call BuildPackage,luci-mod-freifunk))
474 $(eval $(call BuildPackage,luci-app-ffwizard-leipzig))
475 $(eval $(call BuildPackage,luci-app-firewall))
476 $(eval $(call BuildPackage,luci-app-olsr))
477 $(eval $(call BuildPackage,luci-app-qos))
478 $(eval $(call BuildPackage,luci-app-splash))
479 $(eval $(call BuildPackage,luci-app-statistics))
481 $(eval $(call BuildPackage,luci-sgi-haserl))
482 $(eval $(call BuildPackage,luci-sgi-webuci))
484 $(eval $(call BuildPackage,luci-theme-fledermaus))
485 $(eval $(call BuildPackage,luci-theme-openwrt))
487 $(eval $(call BuildPackage,luci-i18n-german))
488 $(eval $(call BuildPackage,luci-i18n-english))