luci-0.8: merge r4594
[project/luci.git] / contrib / package / luci / Makefile
1 include $(TOPDIR)/rules.mk
2
3 PKG_BRANCH:=branches/luci-0.8
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:=$(shell LC_ALL=C svn info $(CURDIR) | sed -ne 's/^Revision: //p')
18     PKG_VERSION:=0.8+svn$(PKG_REV)
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:olsrd-luci-mod-watchdog +PACKAGE_luci-freifunk-community:kmod-tun \
267    +PACKAGE_luci-freifunk-community:ip +PACKAGE_luci-freifunk-community:freifunk-watchdog +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 +PACKAGE_luci-app-splash:iptables-mod-nat-extra
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:rrdtool1 \
407    +PACKAGE_luci-app-statistics:collectd-mod-rrdtool1 \
408    +PACKAGE_luci-app-statistics:collectd-mod-wireless \
409    +PACKAGE_luci-app-statistics:collectd-mod-interface \
410    +PACKAGE_luci-app-statistics:collectd-mod-load
411   TITLE:=LuCI Statistics Application
412 endef
413
414 define Package/luci-app-statistics/conffiles
415 /etc/config/luci_statistics
416 endef
417
418 define Package/luci-app-statistics/install
419         $(call Package/luci/install/template,$(1),applications/luci-statistics)
420 endef
421
422
423 define Package/luci-app-upnp
424   $(call Package/luci/webtemplate)
425   DEPENDS+=+luci-admin-core +PACKAGE_luci-app-upnp:miniupnpd
426   TITLE:=Universal Plug & Play configuration module
427 endef
428
429 define Package/luci-app-upnp/install
430         $(call Package/luci/install/template,$(1),applications/luci-upnp)
431 endef
432
433
434 define Package/luci-app-ntpc
435   $(call Package/luci/webtemplate)
436   DEPENDS+=+luci-admin-core +PACKAGE_luci-app-ntpc:ntpclient
437   TITLE:=NTP time synchronisation client configuration module
438 endef
439
440 define Package/luci-app-ntpc/install
441         $(call Package/luci/install/template,$(1),applications/luci-ntpc)
442 endef
443
444
445 define Package/luci-app-ddns
446   $(call Package/luci/webtemplate)
447   DEPENDS+=+luci-admin-core +PACKAGE_luci-app-ddns:ddns-scripts
448   TITLE:=Dynamic DNS configuration module
449 endef
450
451 define Package/luci-app-ddns/install
452         $(call Package/luci/install/template,$(1),applications/luci-ddns)
453 endef
454
455
456 define Package/luci-app-samba
457   $(call Package/luci/webtemplate)
458   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-samba:samba3
459   TITLE:=Network Shares - Samba SMB/CIFS module
460 endef
461
462 define Package/luci-app-samba/install
463         $(call Package/luci/install/template,$(1),applications/luci-samba)
464 endef
465
466
467 define Package/luci-app-uvc_streamer
468   $(call Package/luci/webtemplate)
469   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-uvc_streamer:uvc-streamer
470   TITLE:=Webcam Streaming - UVC-Streamer module
471 endef
472
473 define Package/luci-app-uvc_streamer/install
474         $(call Package/luci/install/template,$(1),applications/luci-uvc_streamer)
475 endef
476
477
478 define Package/luci-app-mmc_over_gpio
479   $(call Package/luci/webtemplate)
480   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-mmc_over_gpio:kmod-mmc-over-gpio
481   TITLE:=mmc_over_gpio
482 endef
483
484 define Package/luci-app-mmc_over_gpio/install
485         $(call Package/luci/install/template,$(1),applications/luci-mmc_over_gpio)
486 endef
487
488
489 define Package/luci-app-p910nd
490   $(call Package/luci/webtemplate)
491   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-p910nd:p910nd
492   TITLE:=p910nd - Printer server module
493 endef
494
495 define Package/luci-app-p910nd/install
496         $(call Package/luci/install/template,$(1),applications/luci-p910nd)
497 endef
498
499
500 define Package/luci-app-ushare
501   $(call Package/luci/webtemplate)
502   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-ushare:ushare
503   TITLE:=ushare - UPnP A/V & DLNA Media Server
504 endef
505
506 define Package/luci-app-ushare/install
507         $(call Package/luci/install/template,$(1),applications/luci-ushare)
508 endef
509
510 define Package/luci-app-hd_idle
511   $(call Package/luci/webtemplate)
512   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-hd_idle:hd-idle
513   TITLE:=hd-idle
514 endef
515
516 define Package/luci-app-hd_idle/install
517         $(call Package/luci/install/template,$(1),applications/luci-hd_idle)
518 endef
519
520 define Package/luci-app-tinyproxy
521   $(call Package/luci/webtemplate)
522   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-tinyproxy:tinyproxy
523   TITLE:=Tinyproxy - HTTP(S)-Proxy
524 endef
525
526 define Package/luci-app-tinyproxy/install
527         $(call Package/luci/install/template,$(1),applications/luci-tinyproxy)
528 endef
529
530 define Package/luci-app-initmgr
531   $(call Package/luci/webtemplate)
532   DEPENDS+=+luci-admin-full
533   TITLE:=LuCI Initscript Management
534 endef
535
536 define Package/luci-app-initmgr/install
537         $(call Package/luci/install/template,$(1),applications/luci-initmgr)
538 endef
539
540 define Package/luci-app-livestats
541   $(call Package/luci/webtemplate)
542   DEPENDS+=+luci-admin-core +luci-admin-rpc
543   TITLE:=LuCI Realtime Statistics
544 endef
545
546 define Package/luci-app-livestats/install
547         $(call Package/luci/install/template,$(1),applications/luci-livestats)
548 endef
549
550 define Package/luci-app-polipo
551   $(call Package/luci/webtemplate)
552   TITLE:=LuCI Support for the Polipo Proxy
553   DEPENDS+=+luci-admin-core +PACKAGE_luci-app-polipo:polipo
554 endef
555
556 define Package/luci-app-polipo/install
557         $(call Package/luci/install/template,$(1),applications/luci-polipo)
558 endef
559
560
561 ### Server Gateway Interfaces ###
562
563 define Package/luci-sgi-cgi
564   $(call Package/luci/libtemplate)
565   TITLE:=SGI for CGI
566 endef
567
568 define Package/luci-sgi-cgi/install
569         $(call Package/luci/install/template,$(1),libs/sgi-cgi)
570 endef
571
572 define Package/luci-sgi-luci
573   $(call Package/luci/libtemplate)
574   DEPENDS+=+luci-httpd
575   TITLE:=SGI for LuCIttpd
576 endef
577
578 define Package/luci-sgi-luci/install
579         $(call Package/luci/install/template,$(1),libs/sgi-luci)
580 endef
581
582 define Package/luci-sgi-webuci
583   $(call Package/luci/libtemplate)
584   TITLE:=SGI for Webuci
585 endef
586
587 define Package/luci-sgi-webuci/install
588         $(call Package/luci/install/template,$(1),libs/sgi-webuci)
589 endef
590
591 ### Themes ###
592 define Package/luci-theme-base
593   $(call Package/luci/thtemplate)
594   DEPENDS:=+luci-web
595   TITLE:=Common base for all themes
596 endef
597
598 define Package/luci-theme-base/install
599         $(call Package/luci/install/template,$(1),themes/base)
600 endef
601
602 define Package/luci-theme-fledermaus
603   $(call Package/luci/fftemplate)
604   DEPENDS:=+luci-web
605   TITLE:=Fledermaus Theme
606 endef
607
608 define Package/luci-theme-fledermaus/install
609         $(call Package/luci/install/template,$(1),themes/fledermaus)
610 endef
611
612 define Package/luci-theme-freifunk
613   $(call Package/luci/fftemplate)
614   DEPENDS:=+luci-web
615   MAINTAINER:=Stefan Pirwitz <stefan-at-freifunk-bno-dot-de>
616   TITLE:=alternative Freifunk Theme
617 endef
618
619 define Package/luci-theme-freifunk/install
620         $(call Package/luci/install/template,$(1),themes/freifunk)
621 endef
622
623 define Package/luci-theme-freifunk-bno
624   $(call Package/luci/fftemplate)
625   DEPENDS:=+luci-web
626   MAINTAINER:=Stefan Pirwitz <stefan-at-freifunk-bno-dot-de>
627   TITLE:=Freifunk Berlin Nordost Theme
628 endef
629
630 define Package/luci-theme-freifunk-bno/install
631         $(call Package/luci/install/template,$(1),themes/freifunk-bno)
632 endef
633
634 define Package/luci-theme-freifunk-hannover
635   $(call Package/luci/fftemplate)
636   DEPENDS:=+luci-web
637   MAINTAINER:=Mikolas Bingemer <mickey-at-freifunk-hannover-dot-de>
638   TITLE:=Freifunk Hannover Theme
639 endef
640
641 define Package/luci-theme-freifunk-hannover/install
642         $(call Package/luci/install/template,$(1),themes/freifunk-hannover)
643 endef
644
645 define Package/luci-theme-openwrt
646   $(call Package/luci/thtemplate)
647   TITLE:=OpenWrt.org (default)
648   DEPENDS:=+luci-theme-base
649 endef
650
651 define Package/luci-theme-openwrt/install
652         $(call Package/luci/install/template,$(1),themes/openwrt.org)
653 endef
654
655 define Package/luci-theme-openwrtlight
656   $(call Package/luci/thtemplate)
657   TITLE:=OpenWrt.org - light variant without images
658   DEPENDS:=+luci-theme-base
659 endef
660
661 define Package/luci-theme-openwrtlight/install
662         $(call Package/luci/install/template,$(1),themes/openwrt-light)
663 endef
664
665
666 ### Translations ###
667 define Package/luci-i18n-german
668   $(call Package/luci/i18ntemplate)
669   TITLE:=German
670 endef
671
672 define Package/luci-i18n-german/install
673         $(call Package/luci/install/template,$(1),i18n/german)
674 endef
675
676
677 define Package/luci-i18n-english
678   $(call Package/luci/i18ntemplate)
679   TITLE:=English
680 endef
681
682 define Package/luci-i18n-english/install
683         $(call Package/luci/install/template,$(1),i18n/english)
684 endef
685
686
687 define Package/luci-i18n-french
688   $(call Package/luci/i18ntemplate)
689   TITLE:=French (by Florian Fainelli)
690 endef
691
692 define Package/luci-i18n-french/install
693         $(call Package/luci/install/template,$(1),i18n/french)
694 endef
695
696
697 define Package/luci-i18n-italian
698   $(call Package/luci/i18ntemplate)
699   TITLE:=Italian (by Matteo Croce)
700 endef
701
702 define Package/luci-i18n-italian/install
703         $(call Package/luci/install/template,$(1),i18n/italian)
704 endef
705
706
707 define Package/luci-i18n-russian
708   $(call Package/luci/i18ntemplate)
709   TITLE:=Russian (by Skryabin Dmitry)
710 endef
711
712 define Package/luci-i18n-russian/install
713         $(call Package/luci/install/template,$(1),i18n/russian)
714 endef
715
716
717 define Package/luci-i18n-portuguese_brazilian
718   $(call Package/luci/i18ntemplate)
719   TITLE:=Portuguese (Brazilian) (by Carlos Cesario)
720 endef
721
722 define Package/luci-i18n-portuguese_brazilian/install
723         $(call Package/luci/install/template,$(1),i18n/portuguese_brazilian)
724 endef
725
726
727 define Package/luci-i18n-japanese
728   $(call Package/luci/i18ntemplate)
729   TITLE:=Japanese (by Tsukasa Hamano)
730 endef
731
732 define Package/luci-i18n-japanese/install
733         $(call Package/luci/install/template,$(1),i18n/japanese)
734 endef
735
736
737 define Package/luci-i18n-greek
738   $(call Package/luci/i18ntemplate)
739   TITLE:=Greek (by Vasilis Tsiligiannis)
740 endef
741
742 define Package/luci-i18n-greek/install
743         $(call Package/luci/install/template,$(1),i18n/greek)
744 endef
745
746
747 ### Compile ###
748 ifneq ($(CONFIG_PACKAGE_luci-core),)
749         PKG_SELECTED_MODULES+=libs/core
750 endif
751 ifneq ($(CONFIG_PACKAGE_luci-cbi),)
752         PKG_SELECTED_MODULES+=libs/cbi
753 endif
754 ifneq ($(CONFIG_PACKAGE_luci-fastindex),)
755         PKG_SELECTED_MODULES+=libs/fastindex
756 endif
757 ifneq ($(CONFIG_PACKAGE_luci-http),)
758         PKG_SELECTED_MODULES+=libs/http
759 endif
760 ifneq ($(CONFIG_PACKAGE_luci-ipkg),)
761         PKG_SELECTED_MODULES+=libs/ipkg
762 endif
763 ifneq ($(CONFIG_PACKAGE_luci-json),)
764         PKG_SELECTED_MODULES+=libs/json
765 endif
766 ifneq ($(CONFIG_PACKAGE_luci-uci),)
767         PKG_SELECTED_MODULES+=libs/uci
768 endif
769 ifneq ($(CONFIG_PACKAGE_luci-sys),)
770         PKG_SELECTED_MODULES+=libs/sys
771 endif
772 ifneq ($(CONFIG_PACKAGE_luci-web),)
773         PKG_SELECTED_MODULES+=libs/web
774 endif
775 ifneq ($(CONFIG_PACKAGE_luci-uvl),)
776         PKG_SELECTED_MODULES+=libs/uvl
777 endif
778
779 ifneq ($(CONFIG_PACKAGE_luci-httpd),)
780         PKG_SELECTED_MODULES+=libs/lucittpd
781 endif
782
783 ifneq ($(CONFIG_PACKAGE_luci-admin-core),)
784         PKG_SELECTED_MODULES+=modules/admin-core
785 endif
786 ifneq ($(CONFIG_PACKAGE_luci-admin-mini),)
787         PKG_SELECTED_MODULES+=modules/admin-mini
788 endif
789 ifneq ($(CONFIG_PACKAGE_luci-admin-full),)
790         PKG_SELECTED_MODULES+=modules/admin-full
791 endif
792 ifneq ($(CONFIG_PACKAGE_luci-admin-rpc),)
793         PKG_SELECTED_MODULES+=modules/rpc
794 endif
795 ifneq ($(CONFIG_PACKAGE_luci-mod-freifunk),)
796         PKG_SELECTED_MODULES+=modules/freifunk
797 endif
798
799 ifneq ($(CONFIG_PACKAGE_luci-freifunk-community),)
800         PKG_SELECTED_MODULES+=applications/freifunk-community
801 endif
802
803 ifneq ($(CONFIG_PACKAGE_luci-app-ffwizard-leipzig),)
804         PKG_SELECTED_MODULES+=applications/luci-ffwizard-leipzig
805 endif
806 ifneq ($(CONFIG_PACKAGE_luci-app-firewall),)
807         PKG_SELECTED_MODULES+=applications/luci-fw
808 endif
809 ifneq ($(CONFIG_PACKAGE_luci-app-olsr),)
810         PKG_SELECTED_MODULES+=applications/luci-olsr
811 endif
812 ifneq ($(CONFIG_PACKAGE_luci-app-qos),)
813         PKG_SELECTED_MODULES+=applications/luci-qos
814 endif
815 ifneq ($(CONFIG_PACKAGE_luci-app-splash),)
816         PKG_SELECTED_MODULES+=applications/luci-splash
817 endif
818 ifneq ($(CONFIG_PACKAGE_luci-app-statistics),)
819         PKG_SELECTED_MODULES+=applications/luci-statistics
820 endif
821 ifneq ($(CONFIG_PACKAGE_luci-app-upnp),)
822         PKG_SELECTED_MODULES+=applications/luci-upnp
823 endif
824 ifneq ($(CONFIG_PACKAGE_luci-app-ntpc),)
825         PKG_SELECTED_MODULES+=applications/luci-ntpc
826 endif
827 ifneq ($(CONFIG_PACKAGE_luci-app-ddns),)
828         PKG_SELECTED_MODULES+=applications/luci-ddns
829 endif
830 ifneq ($(CONFIG_PACKAGE_luci-app-samba),)
831         PKG_SELECTED_MODULES+=applications/luci-samba
832 endif
833 ifneq ($(CONFIG_PACKAGE_luci-app-uvc_streamer),)
834         PKG_SELECTED_MODULES+=applications/luci-uvc_streamer
835 endif
836 ifneq ($(CONFIG_PACKAGE_luci-app-mmc_over_gpio),)
837         PKG_SELECTED_MODULES+=applications/luci-mmc_over_gpio
838 endif
839 ifneq ($(CONFIG_PACKAGE_luci-app-p910nd),)
840         PKG_SELECTED_MODULES+=applications/luci-p910nd
841 endif
842 ifneq ($(CONFIG_PACKAGE_luci-app-ushare),)
843         PKG_SELECTED_MODULES+=applications/luci-ushare
844 endif
845 ifneq ($(CONFIG_PACKAGE_luci-app-hd_idle),)
846        PKG_SELECTED_MODULES+=applications/luci-hd_idle
847 endif
848 ifneq ($(CONFIG_PACKAGE_luci-app-tinyproxy),)
849        PKG_SELECTED_MODULES+=applications/luci-tinyproxy
850 endif
851 ifneq ($(CONFIG_PACKAGE_luci-app-initmgr),)
852        PKG_SELECTED_MODULES+=applications/luci-initmgr
853 endif
854 ifneq ($(CONFIG_PACKAGE_luci-app-livestats),)
855        PKG_SELECTED_MODULES+=applications/luci-livestats
856 endif
857 ifneq ($(CONFIG_PACKAGE_luci-app-polipo),)
858        PKG_SELECTED_MODULES+=applications/luci-polipo
859 endif
860
861
862 ifneq ($(CONFIG_PACKAGE_luci-sgi-cgi),)
863         PKG_SELECTED_MODULES+=libs/sgi-cgi
864 endif
865 ifneq ($(CONFIG_PACKAGE_luci-sgi-luci),)
866         PKG_SELECTED_MODULES+=libs/sgi-luci
867 endif
868 ifneq ($(CONFIG_PACKAGE_luci-sgi-webuci),)
869         PKG_SELECTED_MODULES+=libs/sgi-webuci
870 endif
871
872 ifneq ($(CONFIG_PACKAGE_luci-theme-base),)
873         PKG_SELECTED_MODULES+=themes/base
874 endif
875 ifneq ($(CONFIG_PACKAGE_luci-theme-fledermaus),)
876         PKG_SELECTED_MODULES+=themes/fledermaus
877 endif
878 ifneq ($(CONFIG_PACKAGE_luci-theme-freifunk-bno),)
879         PKG_SELECTED_MODULES+=themes/freifunk-bno
880 endif
881 ifneq ($(CONFIG_PACKAGE_luci-theme-freifunk-hannover),)
882         PKG_SELECTED_MODULES+=themes/freifunk-hannover
883 endif
884 ifneq ($(CONFIG_PACKAGE_luci-theme-freifunk),)
885         PKG_SELECTED_MODULES+=themes/freifunk
886 endif
887 ifneq ($(CONFIG_PACKAGE_luci-theme-openwrt),)
888         PKG_SELECTED_MODULES+=themes/openwrt.org
889 endif
890 ifneq ($(CONFIG_PACKAGE_luci-theme-openwrtlight),)
891         PKG_SELECTED_MODULES+=themes/openwrt-light
892 endif
893
894 ifneq ($(CONFIG_PACKAGE_luci-i18n-german),)
895         PKG_SELECTED_MODULES+=i18n/german
896 endif
897 ifneq ($(CONFIG_PACKAGE_luci-i18n-english),)
898         PKG_SELECTED_MODULES+=i18n/english
899 endif
900 ifneq ($(CONFIG_PACKAGE_luci-i18n-french),)
901         PKG_SELECTED_MODULES+=i18n/french
902 endif
903 ifneq ($(CONFIG_PACKAGE_luci-i18n-italian),)
904         PKG_SELECTED_MODULES+=i18n/italian
905 endif
906 ifneq ($(CONFIG_PACKAGE_luci-i18n-russian),)
907         PKG_SELECTED_MODULES+=i18n/russian
908 endif
909 ifneq ($(CONFIG_PACKAGE_luci-i18n-portuguese_brazilian),)
910         PKG_SELECTED_MODULES+=i18n/portuguese_brazilian
911 endif
912 ifneq ($(CONFIG_PACKAGE_luci-i18n-japanese),)
913         PKG_SELECTED_MODULES+=i18n/japanese
914 endif
915 ifneq ($(CONFIG_PACKAGE_luci-i18n-greek),)
916         PKG_SELECTED_MODULES+=i18n/greek
917 endif
918
919
920 MAKE_FLAGS += \
921         MODULES="$(PKG_SELECTED_MODULES)" \
922         LUA_TARGET="$(LUA_TARGET)" \
923         LUA_SHLIBS="-llua -lm -ldl -lcrypt" \
924         CFLAGS="$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include" \
925         LDFLAGS="$(TARGET_LDFLAGS) -L$(STAGING_DIR)/usr/lib" \
926         OS="Linux"
927
928
929 $(eval $(call BuildPackage,luci-core))
930 $(eval $(call BuildPackage,luci-cbi))
931 $(eval $(call BuildPackage,luci-fastindex))
932 $(eval $(call BuildPackage,luci-http))
933 $(eval $(call BuildPackage,luci-ipkg))
934 $(eval $(call BuildPackage,luci-json))
935 $(eval $(call BuildPackage,luci-uci))
936 $(eval $(call BuildPackage,luci-sys))
937 $(eval $(call BuildPackage,luci-web))
938 $(eval $(call BuildPackage,luci-uvl))
939
940 $(eval $(call BuildPackage,luci-httpd))
941
942 $(eval $(call BuildPackage,luci-admin-core))
943 $(eval $(call BuildPackage,luci-admin-mini))
944 $(eval $(call BuildPackage,luci-admin-full))
945 $(eval $(call BuildPackage,luci-admin-rpc))
946 $(eval $(call BuildPackage,luci-mod-freifunk))
947
948 $(eval $(call BuildPackage,luci-freifunk-community))
949
950 $(eval $(call BuildPackage,luci-app-ffwizard-leipzig))
951 $(eval $(call BuildPackage,luci-app-firewall))
952 $(eval $(call BuildPackage,luci-app-olsr))
953 $(eval $(call BuildPackage,luci-app-qos))
954 $(eval $(call BuildPackage,luci-app-splash))
955 $(eval $(call BuildPackage,luci-app-statistics))
956 $(eval $(call BuildPackage,luci-app-upnp))
957 $(eval $(call BuildPackage,luci-app-ntpc))
958 $(eval $(call BuildPackage,luci-app-ddns))
959 $(eval $(call BuildPackage,luci-app-samba))
960 $(eval $(call BuildPackage,luci-app-uvc_streamer))
961 $(eval $(call BuildPackage,luci-app-mmc_over_gpio))
962 $(eval $(call BuildPackage,luci-app-p910nd))
963 $(eval $(call BuildPackage,luci-app-ushare))
964 $(eval $(call BuildPackage,luci-app-hd_idle))
965 $(eval $(call BuildPackage,luci-app-tinyproxy))
966 $(eval $(call BuildPackage,luci-app-initmgr))
967 $(eval $(call BuildPackage,luci-app-livestats))
968 $(eval $(call BuildPackage,luci-app-polipo))
969
970 $(eval $(call BuildPackage,luci-sgi-cgi))
971 $(eval $(call BuildPackage,luci-sgi-luci))
972 $(eval $(call BuildPackage,luci-sgi-webuci))
973
974 $(eval $(call BuildPackage,luci-theme-base))
975 $(eval $(call BuildPackage,luci-theme-fledermaus))
976 $(eval $(call BuildPackage,luci-theme-freifunk))
977 $(eval $(call BuildPackage,luci-theme-freifunk-bno))
978 $(eval $(call BuildPackage,luci-theme-freifunk-hannover))
979 $(eval $(call BuildPackage,luci-theme-openwrt))
980 $(eval $(call BuildPackage,luci-theme-openwrtlight))
981
982 $(eval $(call BuildPackage,luci-i18n-german))
983 $(eval $(call BuildPackage,luci-i18n-english))
984 $(eval $(call BuildPackage,luci-i18n-french))
985 $(eval $(call BuildPackage,luci-i18n-italian))
986 $(eval $(call BuildPackage,luci-i18n-russian))
987 $(eval $(call BuildPackage,luci-i18n-portuguese_brazilian))
988 $(eval $(call BuildPackage,luci-i18n-japanese))
989 $(eval $(call BuildPackage,luci-i18n-greek))