Yay, final!
[project/luci.git] / contrib / package / luci / Makefile
1 include $(TOPDIR)/rules.mk
2
3 PKG_BRANCH:=tags/0.8.5
4
5 ifeq ($(DUMP),)
6   USELOCAL:=$(shell grep luci ../../../.project 2>/dev/null >/dev/null && echo 1)
7 endif
8
9 PKG_NAME:=luci
10 PKG_RELEASE:=1
11
12 ifeq ($(USELOCAL),1)
13   PKG_VERSION:=0.8+svn
14 else
15   PKG_SOURCE_URL:=http://svn.luci.subsignal.org/luci/$(PKG_BRANCH)
16   ifeq ($(DUMP),)
17     PKG_REV:=HEAD
18     PKG_VERSION:=0.8.4
19   endif
20   PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
21   PKG_SOURCE:=$(PKG_SOURCE_SUBDIR).tar.gz
22   PKG_SOURCE_PROTO:=svn
23   PKG_SOURCE_VERSION:=$(PKG_REV)
24 endif
25
26 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
27 PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
28
29 PKG_BUILD_DEPENDS:=libnotimpl
30 LUA_TARGET:=source
31 PKG_SELECTED_MODULES:=
32
33
34 include $(INCLUDE_DIR)/package.mk
35
36 ifeq ($(USELOCAL),1)
37   define Build/Prepare
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' \
42                 --exclude=dist | \
43                         tar x -C $(PKG_BUILD_DIR)/
44   endef
45 endif
46
47 define Build/Configure
48 endef
49
50 ### Templates ###
51
52 define Package/luci/libtemplate
53   SECTION:=admin
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
59   DEPENDS:=+luci-core
60 endef
61
62 define Package/luci/fftemplate
63   $(call Package/luci/libtemplate)
64   SUBMENU:=LuCI Freifunk Support
65   DEPENDS:=+luci-mod-freifunk
66 endef
67
68 define Package/luci/httpdtemplate
69   $(call Package/luci/libtemplate)
70   SUBMENU:=LuCIttpd
71   DEPENDS:=+luci-httpd
72 endef
73
74 define Package/luci/i18ntemplate
75   $(call Package/luci/libtemplate)
76   SUBMENU:=LuCI Translations
77   DEPENDS:=+luci-web
78 endef
79
80 define Package/luci/thtemplate
81   $(call Package/luci/libtemplate)
82   SUBMENU:=LuCI Themes
83   DEPENDS:=+luci-web
84 endef
85
86 define Package/luci/webtemplate
87   $(call Package/luci/libtemplate)
88   SUBMENU:=LuCI Components
89 endef
90
91
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
95 endef
96
97
98
99 ### Core package ###
100
101 define Package/luci-core
102   $(call Package/luci/libtemplate)
103   DEPENDS:=+lua
104   TITLE:=LuCI core libraries
105 endef
106
107 define Package/luci-core/install
108         $(call Package/luci/install/template,$(1),libs/core)
109         $(PKG_BUILD_DIR)/build/mkversion.sh $(1)/usr/lib/lua/luci/version.lua \
110                 "OpenWrt Firmware" \
111                 "$(OPENWRTVERSION)" \
112                 "$(PKG_BRANCH)" \
113                 "$(PKG_VERSION)"
114 endef
115
116 define Package/luci-core/config
117        choice
118                prompt "Build Target"
119                default PACKAGE_luci-core_source
120
121        config PACKAGE_luci-core_compile
122                bool "Precompiled"
123
124        config PACKAGE_luci-core_stripped
125                bool "Stripped"
126
127        config PACKAGE_luci-core_source
128                bool "Full Source"
129
130        endchoice
131 endef
132
133 ifneq ($(CONFIG_PACKAGE_luci-core_compile),)
134   LUA_TARGET:=compile
135 endif
136
137 ifneq ($(CONFIG_PACKAGE_luci-core_stripped),)
138   LUA_TARGET:=strip
139 endif
140
141
142 ### Libraries ###
143 define Package/luci-cbi
144   $(call Package/luci/libtemplate)
145   DEPENDS+=+luci-web +luci-uvl +luci-uci
146   TITLE:=Configuration Binding Interface
147 endef
148
149 define Package/luci-cbi/install
150         $(call Package/luci/install/template,$(1),libs/cbi)
151 endef
152
153
154 define Package/luci-uci
155   $(call Package/luci/libtemplate)
156   DEPENDS+=+libuci-lua
157   TITLE:=High-Level UCI API
158 endef
159
160 define Package/luci-uci/install
161         $(call Package/luci/install/template,$(1),libs/uci)
162 endef
163
164
165 define Package/luci-fastindex
166   $(call Package/luci/libtemplate)
167   TITLE:=Fastindex indexing module
168 endef
169
170 define Package/luci-fastindex/install
171         $(call Package/luci/install/template,$(1),libs/fastindex)
172 endef
173
174
175 define Package/luci-http
176   $(call Package/luci/libtemplate)
177   TITLE:=HTTP Protocol implementation
178 endef
179
180 define Package/luci-http/install
181         $(call Package/luci/install/template,$(1),libs/http)
182 endef
183
184
185 define Package/luci-ipkg
186   $(call Package/luci/libtemplate)
187   TITLE:=LuCI IPKG/OPKG call abstraction library
188 endef
189
190 define Package/luci-ipkg/install
191         $(call Package/luci/install/template,$(1),libs/ipkg)
192 endef
193
194
195 define Package/luci-json
196   $(call Package/luci/libtemplate)
197   TITLE:=LuCI JSON Library
198 endef
199
200 define Package/luci-json/install
201         $(call Package/luci/install/template,$(1),libs/json)
202 endef
203
204
205 define Package/luci-sys
206   $(call Package/luci/libtemplate)
207   TITLE:=LuCI Linux/POSIX system library
208 endef
209
210 define Package/luci-sys/install
211         $(call Package/luci/install/template,$(1),libs/sys)
212 endef
213
214
215 define Package/luci-web
216   $(call Package/luci/libtemplate)
217   DEPENDS+=+luci-http +luci-sys +luci-uci +luci-sgi-cgi
218   TITLE:=MVC Webframework
219 endef
220
221 define Package/luci-web/conffiles
222 /etc/config/luci
223 endef
224
225 define Package/luci-web/install
226         $(call Package/luci/install/template,$(1),libs/web)
227 endef
228
229
230 define Package/luci-uvl
231   $(call Package/luci/libtemplate)
232   DEPENDS+=+luci-sys +luci-uci +luci-core
233   TITLE:=UVL - UCI Validation Layer
234 endef
235
236 define Package/luci-uvl/install
237         $(call Package/luci/install/template,$(1),libs/uvl)
238 endef
239
240
241
242 ### HTTPD ###
243
244 define Package/luci-httpd
245   $(call Package/luci/httpdtemplate)
246   DEPENDS:=+luci-http +libuci
247   TITLE:=Server Core
248 endef
249
250 define Package/luci-httpd/install
251         $(call Package/luci/install/template,$(1),libs/lucittpd)
252 endef
253
254
255
256 ### Community Packages ###
257
258 define Package/luci-freifunk-community
259   $(call Package/luci/fftemplate)
260   DEPENDS+= \
261    +luci-sgi-cgi +luci-app-splash \
262    +luci-app-ffwizard-leipzig \
263    +luci-i18n-german \
264    +PACKAGE_luci-freifunk-community:olsrd-luci +PACKAGE_luci-freifunk-community:olsrd-luci-mod-dyn-gw-plain \
265    +PACKAGE_luci-freifunk-community:olsrd-luci-mod-txtinfo +PACKAGE_luci-freifunk-community:olsrd-luci-mod-nameservice \
266    +PACKAGE_luci-freifunk-community:kmod-tun +PACKAGE_luci-freifunk-community:ip \
267    +luci-app-olsr
268   TITLE:=Freifunk Community Meta-Package
269 endef
270
271 define Package/luci-freifunk-community/install
272         $(call Package/luci/install/template,$(1),applications/freifunk-community)
273 endef
274
275 ### Modules ###
276
277 define Package/luci-admin-core
278   $(call Package/luci/webtemplate)
279   DEPENDS+=+luci-web +luci-cbi +luci-theme-openwrt +luci-i18n-english
280   TITLE:=Web UI Core Module
281 endef
282
283 define Package/luci-admin-core/conffiles
284 /etc/config/luci_hosts
285 /etc/config/luci_ethers
286 endef
287
288 define Package/luci-admin-core/install
289         $(call Package/luci/install/template,$(1),modules/admin-core)
290         touch $(1)/etc/init.d/luci_fixtime || true
291 endef
292
293
294 define Package/luci-admin-mini
295   $(call Package/luci/webtemplate)
296   DEPENDS+=+luci-admin-core
297   TITLE:=LuCI Essentials - stripped down and user-friendly
298 endef
299
300 define Package/luci-admin-mini/install
301         $(call Package/luci/install/template,$(1),modules/admin-mini)
302 endef
303
304
305 define Package/luci-admin-full
306   $(call Package/luci/webtemplate)
307   DEPENDS+=+luci-admin-core +luci-ipkg
308   TITLE:=LuCI Administration - full-featured for full control
309 endef
310
311 define Package/luci-admin-full/install
312         $(call Package/luci/install/template,$(1),modules/admin-full)
313 endef
314
315
316 define Package/luci-admin-rpc
317   $(call Package/luci/webtemplate)
318   DEPENDS+=+luci-json
319   TITLE:=LuCI RPC - JSON-RPC API
320 endef
321
322 define Package/luci-admin-rpc/install
323         $(call Package/luci/install/template,$(1),modules/rpc)
324 endef
325
326
327 define Package/luci-mod-freifunk
328   $(call Package/luci/fftemplate)
329   DEPENDS:=+luci-admin-full +luci-json
330   TITLE:=LuCI Freifunk module
331 endef
332
333 define Package/luci-mod-freifunk/conffiles
334 /etc/config/freifunk
335 endef
336
337 define Package/luci-mod-freifunk/install
338         $(call Package/luci/install/template,$(1),modules/freifunk)
339 endef
340
341
342
343 ### Applications ###
344
345 define Package/luci-app-ffwizard-leipzig
346   $(call Package/luci/fftemplate)
347   TITLE:=Freifunk Leipzig configuration wizard
348 endef
349
350 define Package/luci-app-ffwizard-leipzig/install
351         $(call Package/luci/install/template,$(1),applications/luci-ffwizard-leipzig)
352 endef
353
354
355 define Package/luci-app-firewall
356   $(call Package/luci/webtemplate)
357   DEPENDS+=+luci-admin-core +PACKAGE_luci-app-firewall:firewall
358   TITLE:=Firewall and Portforwarding application
359 endef
360
361 define Package/luci-app-firewall/install
362         $(call Package/luci/install/template,$(1),applications/luci-fw)
363 endef
364
365
366 define Package/luci-app-olsr
367   $(call Package/luci/webtemplate)
368   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-olsr:olsrd-luci +PACKAGE_luci-app-olsr:olsrd-luci-mod-txtinfo
369   TITLE:=OLSR configuration and status module
370 endef
371
372 define Package/luci-app-olsr/install
373         $(call Package/luci/install/template,$(1),applications/luci-olsr)
374 endef
375
376
377 define Package/luci-app-qos
378   $(call Package/luci/webtemplate)
379   DEPENDS+=+luci-admin-core +PACKAGE_luci-app-qos:qos-scripts
380   TITLE:=Quality of Service configuration module
381 endef
382
383 define Package/luci-app-qos/install
384         $(call Package/luci/install/template,$(1),applications/luci-qos)
385 endef
386
387
388 define Package/luci-app-splash
389   $(call Package/luci/fftemplate)
390   DEPENDS+=+PACKAGE_luci-app-splash:luasocket
391   TITLE:=Freifunk DHCP-Splash application
392 endef
393
394 define Package/luci-app-splash/conffiles
395 /etc/config/luci_splash
396 endef
397
398 define Package/luci-app-splash/install
399         $(call Package/luci/install/template,$(1),applications/luci-splash)
400 endef
401
402
403 define Package/luci-app-statistics
404   $(call Package/luci/webtemplate)
405   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-statistics:collectd \
406    +PACKAGE_luci-app-statistics:collectd-mod-rrdtool1 +PACKAGE_luci-app-statistics:rrdtool1
407   TITLE:=LuCI Statistics Application
408 endef
409
410 define Package/luci-app-statistics/conffiles
411 /etc/config/luci_statistics
412 endef
413
414 define Package/luci-app-statistics/install
415         $(call Package/luci/install/template,$(1),applications/luci-statistics)
416 endef
417
418
419 define Package/luci-app-upnp
420   $(call Package/luci/webtemplate)
421   DEPENDS+=+luci-admin-core +PACKAGE_luci-app-upnp:miniupnpd
422   TITLE:=Universal Plug & Play configuration module
423 endef
424
425 define Package/luci-app-upnp/install
426         $(call Package/luci/install/template,$(1),applications/luci-upnp)
427 endef
428
429
430 define Package/luci-app-ntpc
431   $(call Package/luci/webtemplate)
432   DEPENDS+=+luci-admin-core +PACKAGE_luci-app-ntpc:ntpclient
433   TITLE:=NTP time synchronisation client configuration module
434 endef
435
436 define Package/luci-app-ntpc/install
437         $(call Package/luci/install/template,$(1),applications/luci-ntpc)
438 endef
439
440
441 define Package/luci-app-ddns
442   $(call Package/luci/webtemplate)
443   DEPENDS+=+luci-admin-core +PACKAGE_luci-app-ddns:ddns-scripts
444   TITLE:=Dynamic DNS configuration module
445 endef
446
447 define Package/luci-app-ddns/install
448         $(call Package/luci/install/template,$(1),applications/luci-ddns)
449 endef
450
451
452 define Package/luci-app-samba
453   $(call Package/luci/webtemplate)
454   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-samba:samba3
455   TITLE:=Network Shares - Samba SMB/CIFS module
456 endef
457
458 define Package/luci-app-samba/install
459         $(call Package/luci/install/template,$(1),applications/luci-samba)
460 endef
461
462
463 define Package/luci-app-uvc_streamer
464   $(call Package/luci/webtemplate)
465   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-uvc_streamer:uvc-streamer
466   TITLE:=Webcam Streaming - UVC-Streamer module
467 endef
468
469 define Package/luci-app-uvc_streamer/install
470         $(call Package/luci/install/template,$(1),applications/luci-uvc_streamer)
471 endef
472
473
474 define Package/luci-app-mmc_over_gpio
475   $(call Package/luci/webtemplate)
476   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-mmc_over_gpio:kmod-mmc-over-gpio
477   TITLE:=mmc_over_gpio
478 endef
479
480 define Package/luci-app-mmc_over_gpio/install
481         $(call Package/luci/install/template,$(1),applications/luci-mmc_over_gpio)
482 endef
483
484
485 define Package/luci-app-p910nd
486   $(call Package/luci/webtemplate)
487   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-p910nd:p910nd
488   TITLE:=p910nd - Printer server module
489 endef
490
491 define Package/luci-app-p910nd/install
492         $(call Package/luci/install/template,$(1),applications/luci-p910nd)
493 endef
494
495
496 define Package/luci-app-ushare
497   $(call Package/luci/webtemplate)
498   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-ushare:ushare
499   TITLE:=ushare - UPnP A/V & DLNA Media Server
500 endef
501
502 define Package/luci-app-ushare/install
503         $(call Package/luci/install/template,$(1),applications/luci-ushare)
504 endef
505
506 define Package/luci-app-hd_idle
507   $(call Package/luci/webtemplate)
508   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-hd_idle:hd-idle
509   TITLE:=hd-idle
510 endef
511
512 define Package/luci-app-hd_idle/install
513         $(call Package/luci/install/template,$(1),applications/luci-hd_idle)
514 endef
515
516 define Package/luci-app-tinyproxy
517   $(call Package/luci/webtemplate)
518   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-tinyproxy:tinyproxy
519   TITLE:=Tinyproxy - HTTP(S)-Proxy
520 endef
521
522 define Package/luci-app-tinyproxy/install
523         $(call Package/luci/install/template,$(1),applications/luci-tinyproxy)
524 endef
525
526 define Package/luci-app-initmgr
527   $(call Package/luci/webtemplate)
528   DEPENDS+=+luci-admin-full
529   TITLE:=LuCI Initscript Management
530 endef
531
532 define Package/luci-app-initmgr/install
533         $(call Package/luci/install/template,$(1),applications/luci-initmgr)
534 endef
535
536 define Package/luci-app-livestats
537   $(call Package/luci/webtemplate)
538   DEPENDS+=+luci-admin-core +luci-admin-rpc
539   TITLE:=LuCI Realtime Statistics
540 endef
541
542 define Package/luci-app-livestats/install
543         $(call Package/luci/install/template,$(1),applications/luci-livestats)
544 endef
545
546 define Package/luci-app-polipo
547   $(call Package/luci/webtemplate)
548   TITLE:=LuCI Support for the Polipo Proxy
549   DEPENDS+=+luci-admin-core +PACKAGE_luci-app-polipo:polipo
550 endef
551
552 define Package/luci-app-polipo/install
553         $(call Package/luci/install/template,$(1),applications/luci-polipo)
554 endef
555
556
557 ### Server Gateway Interfaces ###
558
559 define Package/luci-sgi-cgi
560   $(call Package/luci/libtemplate)
561   TITLE:=SGI for CGI
562 endef
563
564 define Package/luci-sgi-cgi/install
565         $(call Package/luci/install/template,$(1),libs/sgi-cgi)
566 endef
567
568 define Package/luci-sgi-luci
569   $(call Package/luci/libtemplate)
570   DEPENDS+=+luci-httpd
571   TITLE:=SGI for LuCIttpd
572 endef
573
574 define Package/luci-sgi-luci/install
575         $(call Package/luci/install/template,$(1),libs/sgi-luci)
576 endef
577
578 define Package/luci-sgi-webuci
579   $(call Package/luci/libtemplate)
580   TITLE:=SGI for Webuci
581 endef
582
583 define Package/luci-sgi-webuci/install
584         $(call Package/luci/install/template,$(1),libs/sgi-webuci)
585 endef
586
587 ### Themes ###
588 define Package/luci-theme-base
589   $(call Package/luci/thtemplate)
590   DEPENDS:=+luci-web
591   TITLE:=Common base for all themes
592 endef
593
594 define Package/luci-theme-base/install
595         $(call Package/luci/install/template,$(1),themes/base)
596 endef
597
598 define Package/luci-theme-fledermaus
599   $(call Package/luci/fftemplate)
600   DEPENDS:=+luci-web
601   TITLE:=Fledermaus Theme
602 endef
603
604 define Package/luci-theme-fledermaus/install
605         $(call Package/luci/install/template,$(1),themes/fledermaus)
606 endef
607
608 define Package/luci-theme-freifunk
609   $(call Package/luci/fftemplate)
610   DEPENDS:=+luci-web
611   MAINTAINER:=Stefan Pirwitz <stefan-at-freifunk-bno-dot-de>
612   TITLE:=alternative Freifunk Theme
613 endef
614
615 define Package/luci-theme-freifunk/install
616         $(call Package/luci/install/template,$(1),themes/freifunk)
617 endef
618
619 define Package/luci-theme-freifunk-bno
620   $(call Package/luci/fftemplate)
621   DEPENDS:=+luci-web
622   MAINTAINER:=Stefan Pirwitz <stefan-at-freifunk-bno-dot-de>
623   TITLE:=Freifunk Berlin Nordost Theme
624 endef
625
626 define Package/luci-theme-freifunk-bno/install
627         $(call Package/luci/install/template,$(1),themes/freifunk-bno)
628 endef
629
630 define Package/luci-theme-openwrt
631   $(call Package/luci/thtemplate)
632   TITLE:=OpenWrt.org (default)
633   DEPENDS:=+luci-theme-base
634 endef
635
636 define Package/luci-theme-openwrt/install
637         $(call Package/luci/install/template,$(1),themes/openwrt.org)
638 endef
639
640 define Package/luci-theme-openwrtlight
641   $(call Package/luci/thtemplate)
642   TITLE:=OpenWrt.org - light variant without images
643   DEPENDS:=+luci-theme-base
644 endef
645
646 define Package/luci-theme-openwrtlight/install
647         $(call Package/luci/install/template,$(1),themes/openwrt-light)
648 endef
649
650
651 ### Translations ###
652 define Package/luci-i18n-german
653   $(call Package/luci/i18ntemplate)
654   TITLE:=German
655 endef
656
657 define Package/luci-i18n-german/install
658         $(call Package/luci/install/template,$(1),i18n/german)
659 endef
660
661
662 define Package/luci-i18n-english
663   $(call Package/luci/i18ntemplate)
664   TITLE:=English
665 endef
666
667 define Package/luci-i18n-english/install
668         $(call Package/luci/install/template,$(1),i18n/english)
669 endef
670
671
672 define Package/luci-i18n-french
673   $(call Package/luci/i18ntemplate)
674   TITLE:=French (by Florian Fainelli)
675 endef
676
677 define Package/luci-i18n-french/install
678         $(call Package/luci/install/template,$(1),i18n/french)
679 endef
680
681
682 define Package/luci-i18n-italian
683   $(call Package/luci/i18ntemplate)
684   TITLE:=Italian (by Matteo Croce)
685 endef
686
687 define Package/luci-i18n-italian/install
688         $(call Package/luci/install/template,$(1),i18n/italian)
689 endef
690
691
692 define Package/luci-i18n-russian
693   $(call Package/luci/i18ntemplate)
694   TITLE:=Russian (by Skryabin Dmitry)
695 endef
696
697 define Package/luci-i18n-russian/install
698         $(call Package/luci/install/template,$(1),i18n/russian)
699 endef
700
701
702 define Package/luci-i18n-portuguese_brazilian
703   $(call Package/luci/i18ntemplate)
704   TITLE:=Portuguese (Brazilian) (by Carlos Cesario)
705 endef
706
707 define Package/luci-i18n-portuguese_brazilian/install
708         $(call Package/luci/install/template,$(1),i18n/portuguese_brazilian)
709 endef
710
711
712 ### Compile ###
713 ifneq ($(CONFIG_PACKAGE_luci-core),)
714         PKG_SELECTED_MODULES+=libs/core
715 endif
716 ifneq ($(CONFIG_PACKAGE_luci-cbi),)
717         PKG_SELECTED_MODULES+=libs/cbi
718 endif
719 ifneq ($(CONFIG_PACKAGE_luci-fastindex),)
720         PKG_SELECTED_MODULES+=libs/fastindex
721 endif
722 ifneq ($(CONFIG_PACKAGE_luci-http),)
723         PKG_SELECTED_MODULES+=libs/http
724 endif
725 ifneq ($(CONFIG_PACKAGE_luci-ipkg),)
726         PKG_SELECTED_MODULES+=libs/ipkg
727 endif
728 ifneq ($(CONFIG_PACKAGE_luci-json),)
729         PKG_SELECTED_MODULES+=libs/json
730 endif
731 ifneq ($(CONFIG_PACKAGE_luci-uci),)
732         PKG_SELECTED_MODULES+=libs/uci
733 endif
734 ifneq ($(CONFIG_PACKAGE_luci-sys),)
735         PKG_SELECTED_MODULES+=libs/sys
736 endif
737 ifneq ($(CONFIG_PACKAGE_luci-web),)
738         PKG_SELECTED_MODULES+=libs/web
739 endif
740 ifneq ($(CONFIG_PACKAGE_luci-uvl),)
741         PKG_SELECTED_MODULES+=libs/uvl
742 endif
743
744 ifneq ($(CONFIG_PACKAGE_luci-httpd),)
745         PKG_SELECTED_MODULES+=libs/lucittpd
746 endif
747
748 ifneq ($(CONFIG_PACKAGE_luci-admin-core),)
749         PKG_SELECTED_MODULES+=modules/admin-core
750 endif
751 ifneq ($(CONFIG_PACKAGE_luci-admin-mini),)
752         PKG_SELECTED_MODULES+=modules/admin-mini
753 endif
754 ifneq ($(CONFIG_PACKAGE_luci-admin-full),)
755         PKG_SELECTED_MODULES+=modules/admin-full
756 endif
757 ifneq ($(CONFIG_PACKAGE_luci-admin-rpc),)
758         PKG_SELECTED_MODULES+=modules/rpc
759 endif
760 ifneq ($(CONFIG_PACKAGE_luci-mod-freifunk),)
761         PKG_SELECTED_MODULES+=modules/freifunk
762 endif
763
764 ifneq ($(CONFIG_PACKAGE_luci-freifunk-community),)
765         PKG_SELECTED_MODULES+=applications/freifunk-community
766 endif
767
768 ifneq ($(CONFIG_PACKAGE_luci-app-ffwizard-leipzig),)
769         PKG_SELECTED_MODULES+=applications/luci-ffwizard-leipzig
770 endif
771 ifneq ($(CONFIG_PACKAGE_luci-app-firewall),)
772         PKG_SELECTED_MODULES+=applications/luci-fw
773 endif
774 ifneq ($(CONFIG_PACKAGE_luci-app-olsr),)
775         PKG_SELECTED_MODULES+=applications/luci-olsr
776 endif
777 ifneq ($(CONFIG_PACKAGE_luci-app-qos),)
778         PKG_SELECTED_MODULES+=applications/luci-qos
779 endif
780 ifneq ($(CONFIG_PACKAGE_luci-app-splash),)
781         PKG_SELECTED_MODULES+=applications/luci-splash
782 endif
783 ifneq ($(CONFIG_PACKAGE_luci-app-statistics),)
784         PKG_SELECTED_MODULES+=applications/luci-statistics
785 endif
786 ifneq ($(CONFIG_PACKAGE_luci-app-upnp),)
787         PKG_SELECTED_MODULES+=applications/luci-upnp
788 endif
789 ifneq ($(CONFIG_PACKAGE_luci-app-ntpc),)
790         PKG_SELECTED_MODULES+=applications/luci-ntpc
791 endif
792 ifneq ($(CONFIG_PACKAGE_luci-app-ddns),)
793         PKG_SELECTED_MODULES+=applications/luci-ddns
794 endif
795 ifneq ($(CONFIG_PACKAGE_luci-app-samba),)
796         PKG_SELECTED_MODULES+=applications/luci-samba
797 endif
798 ifneq ($(CONFIG_PACKAGE_luci-app-uvc_streamer),)
799         PKG_SELECTED_MODULES+=applications/luci-uvc_streamer
800 endif
801 ifneq ($(CONFIG_PACKAGE_luci-app-mmc_over_gpio),)
802         PKG_SELECTED_MODULES+=applications/luci-mmc_over_gpio
803 endif
804 ifneq ($(CONFIG_PACKAGE_luci-app-p910nd),)
805         PKG_SELECTED_MODULES+=applications/luci-p910nd
806 endif
807 ifneq ($(CONFIG_PACKAGE_luci-app-ushare),)
808         PKG_SELECTED_MODULES+=applications/luci-ushare
809 endif
810 ifneq ($(CONFIG_PACKAGE_luci-app-hd_idle),)
811        PKG_SELECTED_MODULES+=applications/luci-hd_idle
812 endif
813 ifneq ($(CONFIG_PACKAGE_luci-app-tinyproxy),)
814        PKG_SELECTED_MODULES+=applications/luci-tinyproxy
815 endif
816 ifneq ($(CONFIG_PACKAGE_luci-app-initmgr),)
817        PKG_SELECTED_MODULES+=applications/luci-initmgr
818 endif
819 ifneq ($(CONFIG_PACKAGE_luci-app-livestats),)
820        PKG_SELECTED_MODULES+=applications/luci-livestats
821 endif
822 ifneq ($(CONFIG_PACKAGE_luci-app-polipo),)
823        PKG_SELECTED_MODULES+=applications/luci-polipo
824 endif
825
826
827 ifneq ($(CONFIG_PACKAGE_luci-sgi-cgi),)
828         PKG_SELECTED_MODULES+=libs/sgi-cgi
829 endif
830 ifneq ($(CONFIG_PACKAGE_luci-sgi-luci),)
831         PKG_SELECTED_MODULES+=libs/sgi-luci
832 endif
833 ifneq ($(CONFIG_PACKAGE_luci-sgi-webuci),)
834         PKG_SELECTED_MODULES+=libs/sgi-webuci
835 endif
836
837 ifneq ($(CONFIG_PACKAGE_luci-theme-base),)
838         PKG_SELECTED_MODULES+=themes/base
839 endif
840 ifneq ($(CONFIG_PACKAGE_luci-theme-fledermaus),)
841         PKG_SELECTED_MODULES+=themes/fledermaus
842 endif
843 ifneq ($(CONFIG_PACKAGE_luci-theme-freifunk-bno),)
844         PKG_SELECTED_MODULES+=themes/freifunk-bno
845 endif
846 ifneq ($(CONFIG_PACKAGE_luci-theme-freifunk),)
847         PKG_SELECTED_MODULES+=themes/freifunk
848 endif
849 ifneq ($(CONFIG_PACKAGE_luci-theme-openwrt),)
850         PKG_SELECTED_MODULES+=themes/openwrt.org
851 endif
852 ifneq ($(CONFIG_PACKAGE_luci-theme-openwrtlight),)
853         PKG_SELECTED_MODULES+=themes/openwrt-light
854 endif
855
856 ifneq ($(CONFIG_PACKAGE_luci-i18n-german),)
857         PKG_SELECTED_MODULES+=i18n/german
858 endif
859 ifneq ($(CONFIG_PACKAGE_luci-i18n-english),)
860         PKG_SELECTED_MODULES+=i18n/english
861 endif
862 ifneq ($(CONFIG_PACKAGE_luci-i18n-french),)
863         PKG_SELECTED_MODULES+=i18n/french
864 endif
865 ifneq ($(CONFIG_PACKAGE_luci-i18n-italian),)
866         PKG_SELECTED_MODULES+=i18n/italian
867 endif
868 ifneq ($(CONFIG_PACKAGE_luci-i18n-russian),)
869         PKG_SELECTED_MODULES+=i18n/russian
870 endif
871 ifneq ($(CONFIG_PACKAGE_luci-i18n-portuguese_brazilian),)
872         PKG_SELECTED_MODULES+=i18n/portuguese_brazilian
873 endif
874
875
876 MAKE_FLAGS += \
877         MODULES="$(PKG_SELECTED_MODULES)" \
878         LUA_TARGET="$(LUA_TARGET)" \
879         LUA_SHLIBS="-llua -lm -ldl -lcrypt" \
880         CFLAGS="$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include" \
881         LDFLAGS="$(TARGET_LDFLAGS) -L$(STAGING_DIR)/usr/lib" \
882         OS="Linux"
883
884
885 $(eval $(call BuildPackage,luci-core))
886 $(eval $(call BuildPackage,luci-cbi))
887 $(eval $(call BuildPackage,luci-fastindex))
888 $(eval $(call BuildPackage,luci-http))
889 $(eval $(call BuildPackage,luci-ipkg))
890 $(eval $(call BuildPackage,luci-json))
891 $(eval $(call BuildPackage,luci-uci))
892 $(eval $(call BuildPackage,luci-sys))
893 $(eval $(call BuildPackage,luci-web))
894 $(eval $(call BuildPackage,luci-uvl))
895
896 $(eval $(call BuildPackage,luci-httpd))
897
898 $(eval $(call BuildPackage,luci-admin-core))
899 $(eval $(call BuildPackage,luci-admin-mini))
900 $(eval $(call BuildPackage,luci-admin-full))
901 $(eval $(call BuildPackage,luci-admin-rpc))
902 $(eval $(call BuildPackage,luci-mod-freifunk))
903
904 $(eval $(call BuildPackage,luci-freifunk-community))
905
906 $(eval $(call BuildPackage,luci-app-ffwizard-leipzig))
907 $(eval $(call BuildPackage,luci-app-firewall))
908 $(eval $(call BuildPackage,luci-app-olsr))
909 $(eval $(call BuildPackage,luci-app-qos))
910 $(eval $(call BuildPackage,luci-app-splash))
911 $(eval $(call BuildPackage,luci-app-statistics))
912 $(eval $(call BuildPackage,luci-app-upnp))
913 $(eval $(call BuildPackage,luci-app-ntpc))
914 $(eval $(call BuildPackage,luci-app-ddns))
915 $(eval $(call BuildPackage,luci-app-samba))
916 $(eval $(call BuildPackage,luci-app-uvc_streamer))
917 $(eval $(call BuildPackage,luci-app-mmc_over_gpio))
918 $(eval $(call BuildPackage,luci-app-p910nd))
919 $(eval $(call BuildPackage,luci-app-ushare))
920 $(eval $(call BuildPackage,luci-app-hd_idle))
921 $(eval $(call BuildPackage,luci-app-tinyproxy))
922 $(eval $(call BuildPackage,luci-app-initmgr))
923 $(eval $(call BuildPackage,luci-app-livestats))
924 $(eval $(call BuildPackage,luci-app-polipo))
925
926 $(eval $(call BuildPackage,luci-sgi-cgi))
927 $(eval $(call BuildPackage,luci-sgi-luci))
928 $(eval $(call BuildPackage,luci-sgi-webuci))
929
930 $(eval $(call BuildPackage,luci-theme-base))
931 $(eval $(call BuildPackage,luci-theme-fledermaus))
932 $(eval $(call BuildPackage,luci-theme-freifunk))
933 $(eval $(call BuildPackage,luci-theme-freifunk-bno))
934 $(eval $(call BuildPackage,luci-theme-openwrt))
935 $(eval $(call BuildPackage,luci-theme-openwrtlight))
936
937 $(eval $(call BuildPackage,luci-i18n-german))
938 $(eval $(call BuildPackage,luci-i18n-english))
939 $(eval $(call BuildPackage,luci-i18n-french))
940 $(eval $(call BuildPackage,luci-i18n-italian))
941 $(eval $(call BuildPackage,luci-i18n-russian))
942 $(eval $(call BuildPackage,luci-i18n-portuguese_brazilian))