1 include $(TOPDIR
)/rules.mk
6 USELOCAL
:=$(shell grep luci ..
/..
/..
/.project
2>/dev
/null
>/dev
/null
&& echo
1)
15 PKG_SOURCE_URL
:=http
://dev.leipzig.freifunk.net
/svn
/ff-luci
/$(PKG_BRANCH
)
17 PKG_REV
:=$(shell LC_ALL
=C svn
info ${PKG_SOURCE_URL} | sed
-ne
's/^Last Changed Rev: //p')
18 PKG_VERSION
:=0.9+svn
$(PKG_REV
)
20 PKG_SOURCE_SUBDIR
:=$(PKG_NAME
)-$(PKG_VERSION
)
21 PKG_SOURCE
:=$(PKG_SOURCE_SUBDIR
).
tar.gz
23 PKG_SOURCE_VERSION
:=$(PKG_REV
)
26 PKG_BUILD_DIR
:=$(BUILD_DIR
)/$(PKG_NAME
)-$(PKG_VERSION
)
27 PKG_INSTALL_DIR
:=$(PKG_BUILD_DIR
)/ipkg-install
29 PKG_BUILD_DEPENDS
:=libnotimpl
31 PKG_SELECTED_MODULES
:=
34 include $(INCLUDE_DIR
)/package.mk
38 mkdir
-p
$(PKG_BUILD_DIR
)
39 $(TAR
) c
-C ..
/..
/..
/ . \
40 --exclude
=.
pc --exclude
=.svn
--exclude
=.git \
41 --exclude
='boa-0*' --exclude
='*.o' --exclude
='*.so' \
43 tar x
-C
$(PKG_BUILD_DIR
)/
47 define Build
/Configure
52 define Package
/luci
/libtemplate
54 CATEGORY
:=Administration
55 TITLE
:=LuCI
- Lua Configuration Interface
56 URL
:=http
://luci.freifunk-halle.net
/
57 MAINTAINER
:=Steven Barth
<steven-at-midlink-dot-org
>
58 SUBMENU
:=LuCI Libraries
62 define Package
/luci
/fftemplate
63 $(call Package
/luci
/libtemplate
)
64 SUBMENU
:=LuCI Freifunk Support
(GERMAN ONLY
)
65 DEPENDS
:=+luci-mod-freifunk
68 define Package
/luci
/httpdtemplate
69 $(call Package
/luci
/libtemplate
)
70 SUBMENU
:=LuCI Non-Forking HTTP-Daemon
(EXPERIMENTAL
)
74 define Package
/luci
/i18ntemplate
75 $(call Package
/luci
/libtemplate
)
76 SUBMENU
:=LuCI Translations
80 define Package
/luci
/thtemplate
81 $(call Package
/luci
/libtemplate
)
86 define Package
/luci
/webtemplate
87 $(call Package
/luci
/libtemplate
)
88 SUBMENU
:=LuCI Components
92 define Package
/luci
/install/template
93 $(CP
) -a
$(PKG_BUILD_DIR
)/$(2)/dist/* $(1)/ -R
94 $(CP
) -a
$(PKG_BUILD_DIR
)/$(2)/ipkg
/* $(1)/CONTROL
/ 2>/dev
/null || true
101 define Package
/luci-core
102 $(call Package
/luci
/libtemplate
)
103 DEPENDS
:=+lua
+luaposix
+bitlib
104 TITLE
:=LuCI core libraries
107 define Package
/luci-core
/install
108 $(call Package
/luci
/install/template
,$(1),libs
/core
)
111 define Package
/luci-core
/config
113 prompt
"Build Target"
114 default PACKAGE_luci-core_source
116 config PACKAGE_luci-core_compile
119 config PACKAGE_luci-core_stripped
122 config PACKAGE_luci-core_source
128 ifneq ($(CONFIG_PACKAGE_luci-core_compile
),)
132 ifneq ($(CONFIG_PACKAGE_luci-core_stripped
),)
138 define Package
/luci-cbi
139 $(call Package
/luci
/libtemplate
)
140 DEPENDS
+=+luci-web
+luci-uvl
+luci-uci
141 TITLE
:=Configuration Binding Interface
144 define Package
/luci-cbi
/install
145 $(call Package
/luci
/install/template
,$(1),libs
/cbi
)
149 define Package
/luci-uci
150 $(call Package
/luci
/libtemplate
)
152 TITLE
:=High-Level UCI API
155 define Package
/luci-uci
/install
156 $(call Package
/luci
/install/template
,$(1),libs
/uci
)
160 define Package
/luci-fastindex
161 $(call Package
/luci
/libtemplate
)
162 TITLE
:=Fastindex indexing module
165 define Package
/luci-fastindex
/install
166 $(call Package
/luci
/install/template
,$(1),libs
/fastindex
)
170 define Package
/luci-http
171 $(call Package
/luci
/libtemplate
)
172 TITLE
:=HTTP Protocol implementation
175 define Package
/luci-http
/install
176 $(call Package
/luci
/install/template
,$(1),libs
/http
)
180 define Package
/luci-ipkg
181 $(call Package
/luci
/libtemplate
)
182 TITLE
:=LuCI IPKG
/OPKG call abstraction library
185 define Package
/luci-ipkg
/install
186 $(call Package
/luci
/install/template
,$(1),libs
/ipkg
)
190 define Package
/luci-json
191 $(call Package
/luci
/libtemplate
)
192 TITLE
:=LuCI JSON Library
195 define Package
/luci-json
/install
196 $(call Package
/luci
/install/template
,$(1),libs
/json
)
200 define Package
/luci-sys
201 $(call Package
/luci
/libtemplate
)
202 TITLE
:=LuCI Linux
/POSIX system library
205 define Package
/luci-sys
/install
206 $(call Package
/luci
/install/template
,$(1),libs
/sys
)
210 define Package
/luci-web
211 $(call Package
/luci
/libtemplate
)
212 DEPENDS
+=+luci-http
+luci-sys
+luci-addons
+luci-uci
+luci-sgi-cgi
213 TITLE
:=MVC Webframework
216 define Package
/luci-web
/conffiles
220 define Package
/luci-web
/install
221 $(call Package
/luci
/install/template
,$(1),libs
/web
)
225 define Package
/luci-uvl
226 $(call Package
/luci
/libtemplate
)
227 DEPENDS
+=+luci-sys
+luci-uci
+luci-core
228 TITLE
:=UVL
- UCI Validation Layer
231 define Package
/luci-uvl
/install
232 $(call Package
/luci
/install/template
,$(1),libs
/uvl
)
239 define Package
/luci-httpd
240 $(call Package
/luci
/httpdtemplate
)
241 DEPENDS
:=+luci-http
+luasocket
245 define Package
/luci-httpd
/install
246 $(call Package
/luci
/install/template
,$(1),libs
/httpd
)
251 ### Community Packages ###
253 define Package
/luci-freifunk-community
254 $(call Package
/luci
/fftemplate
)
256 +luci-sgi-cgi
+luci-app-splash
+luci-app-olsr \
257 +luci-app-ffwizard-leipzig \
258 +luci-theme-fledermaus \
260 +olsrd-luci
+olsrd-luci-mod-dyn-gw
+olsrd-luci-mod-txtinfo
+olsrd-luci-mod-nameservice \
262 TITLE
:=Freifunk Community Meta-Package
265 define Package
/luci-freifunk-community
/install
266 $(call Package
/luci
/install/template
,$(1),applications
/freifunk-community
)
271 define Package
/luci-admin-core
272 $(call Package
/luci
/webtemplate
)
273 DEPENDS
+=+luci-web
+luci-cbi
+luci-theme-openwrt
+luci-i18n-english
274 TITLE
:=Web UI Core Module
277 define Package
/luci-admin-core
/install
278 $(call Package
/luci
/install/template
,$(1),modules
/admin-core
)
282 define Package
/luci-admin-mini
283 $(call Package
/luci
/webtemplate
)
284 DEPENDS
+=+luci-admin-core
285 TITLE
:=LuCI Essentials
- stripped down and user-friendly
288 define Package
/luci-admin-mini
/install
289 $(call Package
/luci
/install/template
,$(1),modules
/admin-mini
)
293 define Package
/luci-admin-full
294 $(call Package
/luci
/webtemplate
)
295 DEPENDS
+=+luci-admin-core
+luci-ipkg
296 TITLE
:=LuCI Administration
- full-featured for full control
299 define Package
/luci-admin-full
/install
300 $(call Package
/luci
/install/template
,$(1),modules
/admin-full
)
304 define Package
/luci-admin-rpc
305 $(call Package
/luci
/webtemplate
)
307 TITLE
:=LuCI RPC
- JSON-RPC API
310 define Package
/luci-admin-rpc
/install
311 $(call Package
/luci
/install/template
,$(1),modules
/rpc
)
315 define Package
/luci-mod-freifunk
316 $(call Package
/luci
/fftemplate
)
317 DEPENDS
:=+luci-admin-full
318 TITLE
:=LuCI Freifunk module
321 define Package
/luci-mod-freifunk
/conffiles
325 define Package
/luci-mod-freifunk
/install
326 $(call Package
/luci
/install/template
,$(1),modules
/freifunk
)
333 define Package
/luci-app-ffwizard-leipzig
334 $(call Package
/luci
/fftemplate
)
335 TITLE
:=Freifunk Leipzig configuration wizard
338 define Package
/luci-app-ffwizard-leipzig
/install
339 $(call Package
/luci
/install/template
,$(1),applications
/luci-ffwizard-leipzig
)
343 define Package
/luci-app-firewall
344 $(call Package
/luci
/webtemplate
)
345 DEPENDS
+=+luci-admin-core
346 TITLE
:=Firewall and Portforwarding application
349 define Package
/luci-app-firewall
/install
350 $(call Package
/luci
/install/template
,$(1),applications
/luci-fw
)
354 define Package
/luci-app-olsr
355 $(call Package
/luci
/webtemplate
)
356 DEPENDS
+=+luci-admin-full
+olsrd-luci
+olsrd-luci-mod-txtinfo
357 TITLE
:=OLSR configuration and status module
360 define Package
/luci-app-olsr
/install
361 $(call Package
/luci
/install/template
,$(1),applications
/luci-olsr
)
365 define Package
/luci-app-qos
366 $(call Package
/luci
/webtemplate
)
367 DEPENDS
+=+luci-admin-core
+qos-scripts
368 TITLE
:=Quality of Service configuration module
371 define Package
/luci-app-qos
/install
372 $(call Package
/luci
/install/template
,$(1),applications
/luci-qos
)
376 define Package
/luci-app-splash
377 $(call Package
/luci
/fftemplate
)
379 TITLE
:=Freifunk DHCP-Splash application
382 define Package
/luci-app-splash
/conffiles
383 /etc
/config
/luci_splash
386 define Package
/luci-app-splash
/install
387 $(call Package
/luci
/install/template
,$(1),applications
/luci-splash
)
391 define Package
/luci-app-statistics
392 $(call Package
/luci
/webtemplate
)
393 DEPENDS
+=+luci-admin-full
+collectd
+collectd-mod-rrdtool1
+rrdtool1
394 TITLE
:=LuCI Statistics Application
397 define Package
/luci-app-statistics
/conffiles
398 /etc
/config
/luci_statistics
401 define Package
/luci-app-statistics
/install
402 $(call Package
/luci
/install/template
,$(1),applications
/luci-statistics
)
406 define Package
/luci-app-upnp
407 $(call Package
/luci
/webtemplate
)
408 DEPENDS
+=+luci-admin-core
+miniupnpd
409 TITLE
:=Universal Plug
& Play configuration module
412 define Package
/luci-app-upnp
/install
413 $(call Package
/luci
/install/template
,$(1),applications
/luci-upnp
)
417 define Package
/luci-app-ntpc
418 $(call Package
/luci
/webtemplate
)
419 DEPENDS
+=+luci-admin-core
+ntpclient
420 TITLE
:=NTP time synchronisation client configuration module
423 define Package
/luci-app-ntpc
/install
424 $(call Package
/luci
/install/template
,$(1),applications
/luci-ntpc
)
428 define Package
/luci-app-ddns
429 $(call Package
/luci
/webtemplate
)
430 DEPENDS
+=+luci-admin-core
+ddns-scripts
431 TITLE
:=Dynamic DNS configuration module
434 define Package
/luci-app-ddns
/install
435 $(call Package
/luci
/install/template
,$(1),applications
/luci-ddns
)
439 define Package
/luci-app-samba
440 $(call Package
/luci
/webtemplate
)
441 DEPENDS
+=+luci-admin-full
+samba3
442 TITLE
:=Network Shares
- Samba SMB
/CIFS module
445 define Package
/luci-app-samba
/install
446 $(call Package
/luci
/install/template
,$(1),applications
/luci-samba
)
450 define Package
/luci-app-uvc_streamer
451 $(call Package
/luci
/webtemplate
)
452 DEPENDS
+=+luci-admin-full
+uvc-streamer
453 TITLE
:=Webcam Streaming
- UVC-Streamer module
456 define Package
/luci-app-uvc_streamer
/install
457 $(call Package
/luci
/install/template
,$(1),applications
/luci-uvc_streamer
)
462 ### Server Gateway Interfaces ###
464 define Package
/luci-sgi-cgi
465 $(call Package
/luci
/libtemplate
)
469 define Package
/luci-sgi-cgi
/install
470 $(call Package
/luci
/install/template
,$(1),libs
/sgi-cgi
)
473 define Package
/luci-sgi-luci
474 $(call Package
/luci
/libtemplate
)
476 TITLE
:=SGI for LuCI HTTPD
479 define Package
/luci-sgi-luci
/install
480 $(call Package
/luci
/install/template
,$(1),libs
/sgi-luci
)
483 define Package
/luci-sgi-webuci
484 $(call Package
/luci
/libtemplate
)
485 TITLE
:=SGI for Webuci
488 define Package
/luci-sgi-webuci
/install
489 $(call Package
/luci
/install/template
,$(1),libs
/sgi-webuci
)
493 define Package
/luci-theme-fledermaus
494 $(call Package
/luci
/fftemplate
)
496 TITLE
:=Fledermaus Theme
499 define Package
/luci-theme-fledermaus
/install
500 $(call Package
/luci
/install/template
,$(1),themes
/fledermaus
)
503 define Package
/luci-theme-openwrt
504 $(call Package
/luci
/thtemplate
)
505 TITLE
:=OpenWRT.org
(default
)
508 define Package
/luci-theme-openwrt
/install
509 $(call Package
/luci
/install/template
,$(1),themes
/openwrt.org
)
512 define Package
/luci-theme-openwrtlight
513 $(call Package
/luci
/thtemplate
)
514 TITLE
:=OpenWRT.org
- light variant without images
517 define Package
/luci-theme-openwrtlight
/install
518 $(call Package
/luci
/install/template
,$(1),themes
/openwrt-light
)
523 define Package
/luci-i18n-german
524 $(call Package
/luci
/i18ntemplate
)
528 define Package
/luci-i18n-german
/install
529 $(call Package
/luci
/install/template
,$(1),i18n
/german
)
533 define Package
/luci-i18n-english
534 $(call Package
/luci
/i18ntemplate
)
538 define Package
/luci-i18n-english
/install
539 $(call Package
/luci
/install/template
,$(1),i18n
/english
)
543 define Package
/luci-i18n-french
544 $(call Package
/luci
/i18ntemplate
)
545 TITLE
:=French
(by Florian Fainelli
)
548 define Package
/luci-i18n-french
/install
549 $(call Package
/luci
/install/template
,$(1),i18n
/french
)
553 define Package
/luci-i18n-russian
554 $(call Package
/luci
/i18ntemplate
)
555 TITLE
:=Russian
(by Skryabin Dmitry
)
558 define Package
/luci-i18n-russian
/install
559 $(call Package
/luci
/install/template
,$(1),i18n
/russian
)
565 ifneq ($(CONFIG_PACKAGE_luci-core
),)
566 PKG_SELECTED_MODULES
+=libs
/core
568 ifneq ($(CONFIG_PACKAGE_luci-cbi
),)
569 PKG_SELECTED_MODULES
+=libs
/cbi
571 ifneq ($(CONFIG_PACKAGE_luci-fastindex
),)
572 PKG_SELECTED_MODULES
+=libs
/fastindex
574 ifneq ($(CONFIG_PACKAGE_luci-http
),)
575 PKG_SELECTED_MODULES
+=libs
/http
577 ifneq ($(CONFIG_PACKAGE_luci-ipkg
),)
578 PKG_SELECTED_MODULES
+=libs
/ipkg
580 ifneq ($(CONFIG_PACKAGE_luci-json
),)
581 PKG_SELECTED_MODULES
+=libs
/json
583 ifneq ($(CONFIG_PACKAGE_luci-uci
),)
584 PKG_SELECTED_MODULES
+=libs
/uci
586 ifneq ($(CONFIG_PACKAGE_luci-sys
),)
587 PKG_SELECTED_MODULES
+=libs
/sys
589 ifneq ($(CONFIG_PACKAGE_luci-web
),)
590 PKG_SELECTED_MODULES
+=libs
/web
592 ifneq ($(CONFIG_PACKAGE_luci-uvl
),)
593 PKG_SELECTED_MODULES
+=libs
/uvl
596 ifneq ($(CONFIG_PACKAGE_luci-httpd
),)
597 PKG_SELECTED_MODULES
+=libs
/httpd
600 ifneq ($(CONFIG_PACKAGE_luci-admin-core
),)
601 PKG_SELECTED_MODULES
+=modules
/admin-core
603 ifneq ($(CONFIG_PACKAGE_luci-admin-mini
),)
604 PKG_SELECTED_MODULES
+=modules
/admin-mini
606 ifneq ($(CONFIG_PACKAGE_luci-admin-full
),)
607 PKG_SELECTED_MODULES
+=modules
/admin-full
609 ifneq ($(CONFIG_PACKAGE_luci-admin-rpc
),)
610 PKG_SELECTED_MODULES
+=modules
/rpc
612 ifneq ($(CONFIG_PACKAGE_luci-mod-freifunk
),)
613 PKG_SELECTED_MODULES
+=modules
/freifunk
616 ifneq ($(CONFIG_PACKAGE_luci-freifunk-community
),)
617 PKG_SELECTED_MODULES
+=applications
/luci-freifunk-community
620 ifneq ($(CONFIG_PACKAGE_luci-app-ffwizard-leipzig
),)
621 PKG_SELECTED_MODULES
+=applications
/luci-ffwizard-leipzig
623 ifneq ($(CONFIG_PACKAGE_luci-app-firewall
),)
624 PKG_SELECTED_MODULES
+=applications
/luci-fw
626 ifneq ($(CONFIG_PACKAGE_luci-app-olsr
),)
627 PKG_SELECTED_MODULES
+=applications
/luci-olsr
629 ifneq ($(CONFIG_PACKAGE_luci-app-qos
),)
630 PKG_SELECTED_MODULES
+=applications
/luci-qos
632 ifneq ($(CONFIG_PACKAGE_luci-app-splash
),)
633 PKG_SELECTED_MODULES
+=applications
/luci-splash
635 ifneq ($(CONFIG_PACKAGE_luci-app-statistics
),)
636 PKG_SELECTED_MODULES
+=applications
/luci-statistics
638 ifneq ($(CONFIG_PACKAGE_luci-app-upnp
),)
639 PKG_SELECTED_MODULES
+=applications
/luci-upnp
641 ifneq ($(CONFIG_PACKAGE_luci-app-ntpc
),)
642 PKG_SELECTED_MODULES
+=applications
/luci-ntpc
644 ifneq ($(CONFIG_PACKAGE_luci-app-ddns
),)
645 PKG_SELECTED_MODULES
+=applications
/luci-ddns
647 ifneq ($(CONFIG_PACKAGE_luci-app-samba
),)
648 PKG_SELECTED_MODULES
+=applications
/luci-samba
650 ifneq ($(CONFIG_PACKAGE_luci-app-uvc_streamer
),)
651 PKG_SELECTED_MODULES
+=applications
/luci-uvc_streamer
655 ifneq ($(CONFIG_PACKAGE_luci-sgi-cgi
),)
656 PKG_SELECTED_MODULES
+=libs
/sgi-cgi
658 ifneq ($(CONFIG_PACKAGE_luci-sgi-luci
),)
659 PKG_SELECTED_MODULES
+=libs
/sgi-luci
661 ifneq ($(CONFIG_PACKAGE_luci-sgi-webuci
),)
662 PKG_SELECTED_MODULES
+=libs
/sgi-webuci
665 ifneq ($(CONFIG_PACKAGE_luci-theme-fledermaus
),)
666 PKG_SELECTED_MODULES
+=themes
/fledermaus
668 ifneq ($(CONFIG_PACKAGE_luci-theme-openwrt
),)
669 PKG_SELECTED_MODULES
+=themes
/openwrt.org
671 ifneq ($(CONFIG_PACKAGE_luci-theme-openwrtlight
),)
672 PKG_SELECTED_MODULES
+=themes
/openwrt-light
675 ifneq ($(CONFIG_PACKAGE_luci-i18n-german
),)
676 PKG_SELECTED_MODULES
+=i18n
/german
678 ifneq ($(CONFIG_PACKAGE_luci-i18n-english
),)
679 PKG_SELECTED_MODULES
+=i18n
/english
681 ifneq ($(CONFIG_PACKAGE_luci-i18n-french
),)
682 PKG_SELECTED_MODULES
+=i18n
/french
684 ifneq ($(CONFIG_PACKAGE_luci-i18n-russian
),)
685 PKG_SELECTED_MODULES
+=i18n
/russian
690 MODULES
="$(PKG_SELECTED_MODULES)" \
691 LUA_TARGET
="$(LUA_TARGET)" \
692 LUA_SHLIBS
="-llua -lm" \
693 CFLAGS
="$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include" \
694 LDFLAGS
="$(TARGET_LDFLAGS) -L$(STAGING_DIR)/usr/lib" \
698 $(eval
$(call BuildPackage
,luci-core
))
699 $(eval
$(call BuildPackage
,luci-cbi
))
700 $(eval
$(call BuildPackage
,luci-fastindex
))
701 $(eval
$(call BuildPackage
,luci-http
))
702 $(eval
$(call BuildPackage
,luci-ipkg
))
703 $(eval
$(call BuildPackage
,luci-json
))
704 $(eval
$(call BuildPackage
,luci-uci
))
705 $(eval
$(call BuildPackage
,luci-sys
))
706 $(eval
$(call BuildPackage
,luci-web
))
707 $(eval
$(call BuildPackage
,luci-uvl
))
709 $(eval
$(call BuildPackage
,luci-httpd
))
711 $(eval
$(call BuildPackage
,luci-admin-core
))
712 $(eval
$(call BuildPackage
,luci-admin-mini
))
713 $(eval
$(call BuildPackage
,luci-admin-full
))
714 $(eval
$(call BuildPackage
,luci-admin-rpc
))
715 $(eval
$(call BuildPackage
,luci-mod-freifunk
))
717 $(eval
$(call BuildPackage
,luci-freifunk-community
))
719 $(eval
$(call BuildPackage
,luci-app-ffwizard-leipzig
))
720 $(eval
$(call BuildPackage
,luci-app-firewall
))
721 $(eval
$(call BuildPackage
,luci-app-olsr
))
722 $(eval
$(call BuildPackage
,luci-app-qos
))
723 $(eval
$(call BuildPackage
,luci-app-splash
))
724 $(eval
$(call BuildPackage
,luci-app-statistics
))
725 $(eval
$(call BuildPackage
,luci-app-upnp
))
726 $(eval
$(call BuildPackage
,luci-app-ntpc
))
727 $(eval
$(call BuildPackage
,luci-app-ddns
))
728 $(eval
$(call BuildPackage
,luci-app-samba
))
729 $(eval
$(call BuildPackage
,luci-app-uvc_streamer
))
731 $(eval
$(call BuildPackage
,luci-sgi-cgi
))
732 $(eval
$(call BuildPackage
,luci-sgi-luci
))
733 $(eval
$(call BuildPackage
,luci-sgi-webuci
))
735 $(eval
$(call BuildPackage
,luci-theme-fledermaus
))
736 $(eval
$(call BuildPackage
,luci-theme-openwrt
))
737 $(eval
$(call BuildPackage
,luci-theme-openwrtlight
))
739 $(eval
$(call BuildPackage
,luci-i18n-german
))
740 $(eval
$(call BuildPackage
,luci-i18n-english
))
741 $(eval
$(call BuildPackage
,luci-i18n-french
))
742 $(eval
$(call BuildPackage
,luci-i18n-russian
))