cebbf99c16d29e69c790ce33490863b64f46dea6
[project/luci.git] / contrib / package / luci / Makefile
1 include $(TOPDIR)/rules.mk
2
3 PKG_BRANCH:=trunk
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.9+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 ${PKG_SOURCE_URL} | sed -ne's/^Last Changed Rev: //p')
18     PKG_VERSION:=0.9+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   $(call Config,luci.main.lang,string,en,Default Language)
220 endef
221
222 define Package/luci-web/conffiles
223 /etc/config/luci
224 endef
225
226 define Package/luci-web/install
227         $(call Package/luci/install/template,$(1),libs/web)
228 endef
229
230
231 define Package/luci-uvl
232   $(call Package/luci/libtemplate)
233   DEPENDS+=+luci-sys +luci-uci +luci-core
234   TITLE:=UVL - UCI Validation Layer
235 endef
236
237 define Package/luci-uvl/install
238         $(call Package/luci/install/template,$(1),libs/uvl)
239 endef
240
241
242
243 ### HTTPD ###
244
245 define Package/luci-httpd
246   $(call Package/luci/httpdtemplate)
247   DEPENDS:=+luci-http +libuci
248   TITLE:=Server Core
249 endef
250
251 define Package/luci-httpd/install
252         $(call Package/luci/install/template,$(1),libs/lucittpd)
253 endef
254
255
256
257 ### Community Packages ###
258
259 define Package/luci-freifunk-community
260   $(call Package/luci/fftemplate)
261   DEPENDS+= \
262    +luci-sgi-cgi +luci-app-splash \
263    +luci-app-ffwizard-leipzig \
264    +luci-i18n-german \
265    +PACKAGE_luci-freifunk-community:olsrd-luci +PACKAGE_luci-freifunk-community:olsrd-luci-mod-dyn-gw-plain \
266    +PACKAGE_luci-freifunk-community:olsrd-luci-mod-txtinfo +PACKAGE_luci-freifunk-community:olsrd-luci-mod-nameservice \
267    +PACKAGE_luci-freifunk-community:kmod-tun +PACKAGE_luci-freifunk-community:ip \
268    +luci-app-olsr
269   TITLE:=Freifunk Community Meta-Package
270 endef
271
272 define Package/luci-freifunk-community/install
273         $(call Package/luci/install/template,$(1),applications/freifunk-community)
274 endef
275
276 ### Modules ###
277
278 define Package/luci-admin-core
279   $(call Package/luci/webtemplate)
280   DEPENDS+=+luci-web +luci-cbi +luci-theme-openwrt +luci-i18n-english
281   TITLE:=Web UI Core Module
282 endef
283
284 define Package/luci-admin-core/conffiles
285 /etc/config/luci_hosts
286 /etc/config/luci_ethers
287 endef
288
289 define Package/luci-admin-core/install
290         $(call Package/luci/install/template,$(1),modules/admin-core)
291         touch $(1)/etc/init.d/luci_fixtime || true
292 endef
293
294
295 define Package/luci-admin-mini
296   $(call Package/luci/webtemplate)
297   DEPENDS+=+luci-admin-core
298   TITLE:=LuCI Essentials - stripped down and user-friendly
299 endef
300
301 define Package/luci-admin-mini/install
302         $(call Package/luci/install/template,$(1),modules/admin-mini)
303 endef
304
305
306 define Package/luci-admin-full
307   $(call Package/luci/webtemplate)
308   DEPENDS+=+luci-admin-core +luci-ipkg
309   TITLE:=LuCI Administration - full-featured for full control
310 endef
311
312 define Package/luci-admin-full/install
313         $(call Package/luci/install/template,$(1),modules/admin-full)
314 endef
315
316
317 define Package/luci-admin-rpc
318   $(call Package/luci/webtemplate)
319   DEPENDS+=+luci-json
320   TITLE:=LuCI RPC - JSON-RPC API
321 endef
322
323 define Package/luci-admin-rpc/install
324         $(call Package/luci/install/template,$(1),modules/rpc)
325 endef
326
327
328 define Package/luci-mod-freifunk
329   $(call Package/luci/fftemplate)
330   DEPENDS:=+luci-admin-full +luci-json
331   TITLE:=LuCI Freifunk module
332 endef
333
334 define Package/luci-mod-freifunk/conffiles
335 /etc/config/freifunk
336 endef
337
338 define Package/luci-mod-freifunk/install
339         $(call Package/luci/install/template,$(1),modules/freifunk)
340 endef
341
342
343
344 ### Applications ###
345
346 define Package/luci-app-ffwizard-leipzig
347   $(call Package/luci/fftemplate)
348   TITLE:=Freifunk Leipzig configuration wizard
349 endef
350
351 define Package/luci-app-ffwizard-leipzig/install
352         $(call Package/luci/install/template,$(1),applications/luci-ffwizard-leipzig)
353 endef
354
355
356 define Package/luci-app-siitwizard
357   $(call Package/luci/fftemplate)
358   TITLE:=SIIT IPv4-over-IPv6 configuration wizard
359   DEPENDS:=+luci-admin-core +PACKAGE_luci-app-siitwizard:kmod-siit
360 endef
361
362 define Package/luci-app-siitwizard/install
363         $(call Package/luci/install/template,$(1),applications/luci-siitwizard)
364 endef
365
366
367 define Package/luci-app-firewall
368   $(call Package/luci/webtemplate)
369   DEPENDS+=+luci-admin-core +PACKAGE_luci-app-firewall:firewall
370   TITLE:=Firewall and Portforwarding application
371 endef
372
373 define Package/luci-app-firewall/install
374         $(call Package/luci/install/template,$(1),applications/luci-fw)
375 endef
376
377
378 define Package/luci-app-olsr
379   $(call Package/luci/webtemplate)
380   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-olsr:olsrd-luci +PACKAGE_luci-app-olsr:olsrd-luci-mod-txtinfo
381   TITLE:=OLSR configuration and status module
382 endef
383
384 define Package/luci-app-olsr/install
385         $(call Package/luci/install/template,$(1),applications/luci-olsr)
386 endef
387
388
389 define Package/luci-app-qos
390   $(call Package/luci/webtemplate)
391   DEPENDS+=+luci-admin-core +PACKAGE_luci-app-qos:qos-scripts
392   TITLE:=Quality of Service configuration module
393 endef
394
395 define Package/luci-app-qos/install
396         $(call Package/luci/install/template,$(1),applications/luci-qos)
397 endef
398
399
400 define Package/luci-app-splash
401   $(call Package/luci/fftemplate)
402   DEPENDS+=+PACKAGE_luci-app-splash:luasocket
403   TITLE:=Freifunk DHCP-Splash application
404 endef
405
406 define Package/luci-app-splash/conffiles
407 /etc/config/luci_splash
408 endef
409
410 define Package/luci-app-splash/install
411         $(call Package/luci/install/template,$(1),applications/luci-splash)
412 endef
413
414
415 define Package/luci-app-statistics
416   $(call Package/luci/webtemplate)
417   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-statistics:collectd \
418    +PACKAGE_luci-app-statistics:rrdtool1 \
419    +PACKAGE_luci-app-statistics:collectd-mod-rrdtool1 \
420    +PACKAGE_luci-app-statistics:collectd-mod-wireless \
421    +PACKAGE_luci-app-statistics:collectd-mod-interfaces \
422    +PACKAGE_luci-app-statistics:collectd-mod-load
423   TITLE:=LuCI Statistics Application
424 endef
425
426 define Package/luci-app-statistics/conffiles
427 /etc/config/luci_statistics
428 endef
429
430 define Package/luci-app-statistics/install
431         $(call Package/luci/install/template,$(1),applications/luci-statistics)
432 endef
433
434
435 define Package/luci-app-upnp
436   $(call Package/luci/webtemplate)
437   DEPENDS+=+luci-admin-core +PACKAGE_luci-app-upnp:miniupnpd
438   TITLE:=Universal Plug & Play configuration module
439 endef
440
441 define Package/luci-app-upnp/install
442         $(call Package/luci/install/template,$(1),applications/luci-upnp)
443 endef
444
445
446 define Package/luci-app-ntpc
447   $(call Package/luci/webtemplate)
448   DEPENDS+=+luci-admin-core +PACKAGE_luci-app-ntpc:ntpclient
449   TITLE:=NTP time synchronisation client configuration module
450 endef
451
452 define Package/luci-app-ntpc/install
453         $(call Package/luci/install/template,$(1),applications/luci-ntpc)
454 endef
455
456
457 define Package/luci-app-ddns
458   $(call Package/luci/webtemplate)
459   DEPENDS+=+luci-admin-core +PACKAGE_luci-app-ddns:ddns-scripts
460   TITLE:=Dynamic DNS configuration module
461 endef
462
463 define Package/luci-app-ddns/install
464         $(call Package/luci/install/template,$(1),applications/luci-ddns)
465 endef
466
467
468 define Package/luci-app-samba
469   $(call Package/luci/webtemplate)
470   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-samba:samba3
471   TITLE:=Network Shares - Samba SMB/CIFS module
472 endef
473
474 define Package/luci-app-samba/install
475         $(call Package/luci/install/template,$(1),applications/luci-samba)
476 endef
477
478
479 define Package/luci-app-uvc_streamer
480   $(call Package/luci/webtemplate)
481   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-uvc_streamer:uvc-streamer
482   TITLE:=Webcam Streaming - UVC-Streamer module
483 endef
484
485 define Package/luci-app-uvc_streamer/install
486         $(call Package/luci/install/template,$(1),applications/luci-uvc_streamer)
487 endef
488
489
490 define Package/luci-app-mmc_over_gpio
491   $(call Package/luci/webtemplate)
492   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-mmc_over_gpio:kmod-mmc-over-gpio
493   TITLE:=mmc_over_gpio
494 endef
495
496 define Package/luci-app-mmc_over_gpio/install
497         $(call Package/luci/install/template,$(1),applications/luci-mmc_over_gpio)
498 endef
499
500
501 define Package/luci-app-p910nd
502   $(call Package/luci/webtemplate)
503   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-p910nd:p910nd
504   TITLE:=p910nd - Printer server module
505 endef
506
507 define Package/luci-app-p910nd/install
508         $(call Package/luci/install/template,$(1),applications/luci-p910nd)
509 endef
510
511
512 define Package/luci-app-ushare
513   $(call Package/luci/webtemplate)
514   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-ushare:ushare
515   TITLE:=ushare - UPnP A/V & DLNA Media Server
516 endef
517
518 define Package/luci-app-ushare/install
519         $(call Package/luci/install/template,$(1),applications/luci-ushare)
520 endef
521
522 define Package/luci-app-hd_idle
523   $(call Package/luci/webtemplate)
524   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-hd_idle:hd-idle
525   TITLE:=hd-idle
526 endef
527
528 define Package/luci-app-hd_idle/install
529         $(call Package/luci/install/template,$(1),applications/luci-hd_idle)
530 endef
531
532 define Package/luci-app-tinyproxy
533   $(call Package/luci/webtemplate)
534   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-tinyproxy:tinyproxy
535   TITLE:=Tinyproxy - HTTP(S)-Proxy
536 endef
537
538 define Package/luci-app-tinyproxy/install
539         $(call Package/luci/install/template,$(1),applications/luci-tinyproxy)
540 endef
541
542 define Package/luci-app-initmgr
543   $(call Package/luci/webtemplate)
544   DEPENDS+=+luci-admin-full
545   TITLE:=LuCI Initscript Management
546 endef
547
548 define Package/luci-app-initmgr/install
549         $(call Package/luci/install/template,$(1),applications/luci-initmgr)
550 endef
551
552 define Package/luci-app-livestats
553   $(call Package/luci/webtemplate)
554   DEPENDS+=+luci-admin-core +luci-admin-rpc
555   TITLE:=LuCI Realtime Statistics
556 endef
557
558 define Package/luci-app-livestats/install
559         $(call Package/luci/install/template,$(1),applications/luci-livestats)
560 endef
561
562 define Package/luci-app-asterisk
563   $(call Package/luci/webtemplate)
564   TITLE:=LuCI Support for Asterisk PBX
565   DEPENDS+=@BROKEN +luci-admin-core +PACKAGE_luci-app-asterisk:asterisk14-xip-core
566 endef
567
568 define Package/luci-app-asterisk/install
569         $(call Package/luci/install/template,$(1),applications/luci-asterisk)
570 endef
571
572 define Package/luci-app-polipo
573   $(call Package/luci/webtemplate)
574   TITLE:=LuCI Support for the Polipo Proxy
575   DEPENDS+=+luci-admin-core +PACKAGE_luci-app-polipo:polipo
576 endef
577
578 define Package/luci-app-polipo/install
579         $(call Package/luci/install/template,$(1),applications/luci-polipo)
580 endef
581
582 define Package/luci-app-openvpn
583   $(call Package/luci/webtemplate)
584   TITLE:=LuCI Support for OpenVPN
585   DEPENDS+=@BROKEN +luci-admin-core +PACKAGE_luci-app-openvpn:openvpn
586 endef
587
588 define Package/luci-app-openvpn/install
589         $(call Package/luci/install/template,$(1),applications/luci-openvpn)
590 endef
591
592
593 ### Server Gateway Interfaces ###
594
595 define Package/luci-sgi-cgi
596   $(call Package/luci/libtemplate)
597   TITLE:=SGI for CGI
598 endef
599
600 define Package/luci-sgi-cgi/install
601         $(call Package/luci/install/template,$(1),libs/sgi-cgi)
602 endef
603
604 define Package/luci-sgi-luci
605   $(call Package/luci/libtemplate)
606   DEPENDS+=+luci-httpd
607   TITLE:=SGI for LuCIttpd
608 endef
609
610 define Package/luci-sgi-luci/install
611         $(call Package/luci/install/template,$(1),libs/sgi-luci)
612 endef
613
614 define Package/luci-sgi-webuci
615   $(call Package/luci/libtemplate)
616   TITLE:=SGI for Webuci
617 endef
618
619 define Package/luci-sgi-webuci/install
620         $(call Package/luci/install/template,$(1),libs/sgi-webuci)
621 endef
622
623 ### Themes ###
624 define Package/luci-theme-base
625   $(call Package/luci/thtemplate)
626   DEPENDS:=+luci-web
627   TITLE:=Common base for all themes
628 endef
629
630 define Package/luci-theme-base/install
631         $(call Package/luci/install/template,$(1),themes/base)
632 endef
633
634 define Package/luci-theme-fledermaus
635   $(call Package/luci/fftemplate)
636   DEPENDS:=+luci-web
637   TITLE:=Fledermaus Theme
638 endef
639
640 define Package/luci-theme-fledermaus/install
641         $(call Package/luci/install/template,$(1),themes/fledermaus)
642 endef
643
644 define Package/luci-theme-freifunk
645   $(call Package/luci/fftemplate)
646   DEPENDS:=+luci-web
647   MAINTAINER:=Stefan Pirwitz <stefan-at-freifunk-bno-dot-de>
648   TITLE:=alternative Freifunk Theme
649 endef
650
651 define Package/luci-theme-freifunk/install
652         $(call Package/luci/install/template,$(1),themes/freifunk)
653 endef
654
655 define Package/luci-theme-freifunk-bno
656   $(call Package/luci/fftemplate)
657   DEPENDS:=+luci-web
658   MAINTAINER:=Stefan Pirwitz <stefan-at-freifunk-bno-dot-de>
659   TITLE:=Freifunk Berlin Nordost Theme
660 endef
661
662 define Package/luci-theme-freifunk-bno/install
663         $(call Package/luci/install/template,$(1),themes/freifunk-bno)
664 endef
665
666 define Package/luci-theme-openwrt
667   $(call Package/luci/thtemplate)
668   TITLE:=OpenWrt.org (default)
669   DEPENDS:=+luci-theme-base
670 endef
671
672 define Package/luci-theme-openwrt/install
673         $(call Package/luci/install/template,$(1),themes/openwrt.org)
674 endef
675
676 define Package/luci-theme-openwrtlight
677   $(call Package/luci/thtemplate)
678   TITLE:=OpenWrt.org - light variant without images
679   DEPENDS:=+luci-theme-base
680 endef
681
682 define Package/luci-theme-openwrtlight/install
683         $(call Package/luci/install/template,$(1),themes/openwrt-light)
684 endef
685
686
687 ### Translations ###
688 define Package/luci-i18n-german
689   $(call Package/luci/i18ntemplate)
690   TITLE:=German
691 endef
692
693 define Package/luci-i18n-german/install
694         $(call Package/luci/install/template,$(1),i18n/german)
695 endef
696
697
698 define Package/luci-i18n-english
699   $(call Package/luci/i18ntemplate)
700   TITLE:=English
701 endef
702
703 define Package/luci-i18n-english/install
704         $(call Package/luci/install/template,$(1),i18n/english)
705 endef
706
707
708 define Package/luci-i18n-french
709   $(call Package/luci/i18ntemplate)
710   TITLE:=French (by Florian Fainelli)
711 endef
712
713 define Package/luci-i18n-french/install
714         $(call Package/luci/install/template,$(1),i18n/french)
715 endef
716
717
718 define Package/luci-i18n-italian
719   $(call Package/luci/i18ntemplate)
720   TITLE:=Italian (by Matteo Croce)
721 endef
722
723 define Package/luci-i18n-italian/install
724         $(call Package/luci/install/template,$(1),i18n/italian)
725 endef
726
727
728 define Package/luci-i18n-russian
729   $(call Package/luci/i18ntemplate)
730   TITLE:=Russian (by Skryabin Dmitry)
731 endef
732
733 define Package/luci-i18n-russian/install
734         $(call Package/luci/install/template,$(1),i18n/russian)
735 endef
736
737
738 define Package/luci-i18n-portuguese_brazilian
739   $(call Package/luci/i18ntemplate)
740   TITLE:=Portuguese (Brazilian) (by Carlos Cesario)
741 endef
742
743 define Package/luci-i18n-portuguese_brazilian/install
744         $(call Package/luci/install/template,$(1),i18n/portuguese_brazilian)
745 endef
746
747
748 ### Compile ###
749 ifneq ($(CONFIG_PACKAGE_luci-core),)
750         PKG_SELECTED_MODULES+=libs/core
751 endif
752 ifneq ($(CONFIG_PACKAGE_luci-cbi),)
753         PKG_SELECTED_MODULES+=libs/cbi
754 endif
755 ifneq ($(CONFIG_PACKAGE_luci-fastindex),)
756         PKG_SELECTED_MODULES+=libs/fastindex
757 endif
758 ifneq ($(CONFIG_PACKAGE_luci-http),)
759         PKG_SELECTED_MODULES+=libs/http
760 endif
761 ifneq ($(CONFIG_PACKAGE_luci-ipkg),)
762         PKG_SELECTED_MODULES+=libs/ipkg
763 endif
764 ifneq ($(CONFIG_PACKAGE_luci-json),)
765         PKG_SELECTED_MODULES+=libs/json
766 endif
767 ifneq ($(CONFIG_PACKAGE_luci-uci),)
768         PKG_SELECTED_MODULES+=libs/uci
769 endif
770 ifneq ($(CONFIG_PACKAGE_luci-sys),)
771         PKG_SELECTED_MODULES+=libs/sys
772 endif
773 ifneq ($(CONFIG_PACKAGE_luci-web),)
774         PKG_SELECTED_MODULES+=libs/web
775 endif
776 ifneq ($(CONFIG_PACKAGE_luci-uvl),)
777         PKG_SELECTED_MODULES+=libs/uvl
778 endif
779
780 ifneq ($(CONFIG_PACKAGE_luci-httpd),)
781         PKG_SELECTED_MODULES+=libs/lucittpd
782 endif
783
784 ifneq ($(CONFIG_PACKAGE_luci-admin-core),)
785         PKG_SELECTED_MODULES+=modules/admin-core
786 endif
787 ifneq ($(CONFIG_PACKAGE_luci-admin-mini),)
788         PKG_SELECTED_MODULES+=modules/admin-mini
789 endif
790 ifneq ($(CONFIG_PACKAGE_luci-admin-full),)
791         PKG_SELECTED_MODULES+=modules/admin-full
792 endif
793 ifneq ($(CONFIG_PACKAGE_luci-admin-rpc),)
794         PKG_SELECTED_MODULES+=modules/rpc
795 endif
796 ifneq ($(CONFIG_PACKAGE_luci-mod-freifunk),)
797         PKG_SELECTED_MODULES+=modules/freifunk
798 endif
799
800 ifneq ($(CONFIG_PACKAGE_luci-freifunk-community),)
801         PKG_SELECTED_MODULES+=applications/freifunk-community
802 endif
803
804 ifneq ($(CONFIG_PACKAGE_luci-app-ffwizard-leipzig),)
805         PKG_SELECTED_MODULES+=applications/luci-ffwizard-leipzig
806 endif
807 ifneq ($(CONFIG_PACKAGE_luci-app-siitwizard),)
808         PKG_SELECTED_MODULES+=applications/luci-siitwizard
809 endif
810 ifneq ($(CONFIG_PACKAGE_luci-app-firewall),)
811         PKG_SELECTED_MODULES+=applications/luci-fw
812 endif
813 ifneq ($(CONFIG_PACKAGE_luci-app-olsr),)
814         PKG_SELECTED_MODULES+=applications/luci-olsr
815 endif
816 ifneq ($(CONFIG_PACKAGE_luci-app-qos),)
817         PKG_SELECTED_MODULES+=applications/luci-qos
818 endif
819 ifneq ($(CONFIG_PACKAGE_luci-app-splash),)
820         PKG_SELECTED_MODULES+=applications/luci-splash
821 endif
822 ifneq ($(CONFIG_PACKAGE_luci-app-statistics),)
823         PKG_SELECTED_MODULES+=applications/luci-statistics
824 endif
825 ifneq ($(CONFIG_PACKAGE_luci-app-upnp),)
826         PKG_SELECTED_MODULES+=applications/luci-upnp
827 endif
828 ifneq ($(CONFIG_PACKAGE_luci-app-ntpc),)
829         PKG_SELECTED_MODULES+=applications/luci-ntpc
830 endif
831 ifneq ($(CONFIG_PACKAGE_luci-app-ddns),)
832         PKG_SELECTED_MODULES+=applications/luci-ddns
833 endif
834 ifneq ($(CONFIG_PACKAGE_luci-app-samba),)
835         PKG_SELECTED_MODULES+=applications/luci-samba
836 endif
837 ifneq ($(CONFIG_PACKAGE_luci-app-uvc_streamer),)
838         PKG_SELECTED_MODULES+=applications/luci-uvc_streamer
839 endif
840 ifneq ($(CONFIG_PACKAGE_luci-app-mmc_over_gpio),)
841         PKG_SELECTED_MODULES+=applications/luci-mmc_over_gpio
842 endif
843 ifneq ($(CONFIG_PACKAGE_luci-app-p910nd),)
844         PKG_SELECTED_MODULES+=applications/luci-p910nd
845 endif
846 ifneq ($(CONFIG_PACKAGE_luci-app-ushare),)
847         PKG_SELECTED_MODULES+=applications/luci-ushare
848 endif
849 ifneq ($(CONFIG_PACKAGE_luci-app-hd_idle),)
850        PKG_SELECTED_MODULES+=applications/luci-hd_idle
851 endif
852 ifneq ($(CONFIG_PACKAGE_luci-app-tinyproxy),)
853        PKG_SELECTED_MODULES+=applications/luci-tinyproxy
854 endif
855 ifneq ($(CONFIG_PACKAGE_luci-app-initmgr),)
856        PKG_SELECTED_MODULES+=applications/luci-initmgr
857 endif
858 ifneq ($(CONFIG_PACKAGE_luci-app-livestats),)
859        PKG_SELECTED_MODULES+=applications/luci-livestats
860 endif
861 ifneq ($(CONFIG_PACKAGE_luci-app-asterisk),)
862        PKG_SELECTED_MODULES+=applications/luci-asterisk
863 endif
864 ifneq ($(CONFIG_PACKAGE_luci-app-polipo),)
865        PKG_SELECTED_MODULES+=applications/luci-polipo
866 endif
867 ifneq ($(CONFIG_PACKAGE_luci-app-openvpn),)
868        PKG_SELECTED_MODULES+=applications/luci-openvpn
869 endif
870
871
872 ifneq ($(CONFIG_PACKAGE_luci-sgi-cgi),)
873         PKG_SELECTED_MODULES+=libs/sgi-cgi
874 endif
875 ifneq ($(CONFIG_PACKAGE_luci-sgi-luci),)
876         PKG_SELECTED_MODULES+=libs/sgi-luci
877 endif
878 ifneq ($(CONFIG_PACKAGE_luci-sgi-webuci),)
879         PKG_SELECTED_MODULES+=libs/sgi-webuci
880 endif
881
882 ifneq ($(CONFIG_PACKAGE_luci-theme-base),)
883         PKG_SELECTED_MODULES+=themes/base
884 endif
885 ifneq ($(CONFIG_PACKAGE_luci-theme-fledermaus),)
886         PKG_SELECTED_MODULES+=themes/fledermaus
887 endif
888 ifneq ($(CONFIG_PACKAGE_luci-theme-freifunk-bno),)
889         PKG_SELECTED_MODULES+=themes/freifunk-bno
890 endif
891 ifneq ($(CONFIG_PACKAGE_luci-theme-freifunk),)
892         PKG_SELECTED_MODULES+=themes/freifunk
893 endif
894 ifneq ($(CONFIG_PACKAGE_luci-theme-openwrt),)
895         PKG_SELECTED_MODULES+=themes/openwrt.org
896 endif
897 ifneq ($(CONFIG_PACKAGE_luci-theme-openwrtlight),)
898         PKG_SELECTED_MODULES+=themes/openwrt-light
899 endif
900
901 ifneq ($(CONFIG_PACKAGE_luci-i18n-german),)
902         PKG_SELECTED_MODULES+=i18n/german
903 endif
904 ifneq ($(CONFIG_PACKAGE_luci-i18n-english),)
905         PKG_SELECTED_MODULES+=i18n/english
906 endif
907 ifneq ($(CONFIG_PACKAGE_luci-i18n-french),)
908         PKG_SELECTED_MODULES+=i18n/french
909 endif
910 ifneq ($(CONFIG_PACKAGE_luci-i18n-italian),)
911         PKG_SELECTED_MODULES+=i18n/italian
912 endif
913 ifneq ($(CONFIG_PACKAGE_luci-i18n-russian),)
914         PKG_SELECTED_MODULES+=i18n/russian
915 endif
916 ifneq ($(CONFIG_PACKAGE_luci-i18n-portuguese_brazilian),)
917         PKG_SELECTED_MODULES+=i18n/portuguese_brazilian
918 endif
919
920
921 MAKE_FLAGS += \
922         MODULES="$(PKG_SELECTED_MODULES)" \
923         LUA_TARGET="$(LUA_TARGET)" \
924         LUA_SHLIBS="-llua -lm -ldl -lcrypt" \
925         CFLAGS="$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include" \
926         LDFLAGS="$(TARGET_LDFLAGS) -L$(STAGING_DIR)/usr/lib" \
927         OS="Linux"
928
929
930 $(eval $(call BuildPackage,luci-core))
931 $(eval $(call BuildPackage,luci-cbi))
932 $(eval $(call BuildPackage,luci-fastindex))
933 $(eval $(call BuildPackage,luci-http))
934 $(eval $(call BuildPackage,luci-ipkg))
935 $(eval $(call BuildPackage,luci-json))
936 $(eval $(call BuildPackage,luci-uci))
937 $(eval $(call BuildPackage,luci-sys))
938 $(eval $(call BuildPackage,luci-web))
939 $(eval $(call BuildPackage,luci-uvl))
940
941 $(eval $(call BuildPackage,luci-httpd))
942
943 $(eval $(call BuildPackage,luci-admin-core))
944 $(eval $(call BuildPackage,luci-admin-mini))
945 $(eval $(call BuildPackage,luci-admin-full))
946 $(eval $(call BuildPackage,luci-admin-rpc))
947 $(eval $(call BuildPackage,luci-mod-freifunk))
948
949 $(eval $(call BuildPackage,luci-freifunk-community))
950
951 $(eval $(call BuildPackage,luci-app-ffwizard-leipzig))
952 $(eval $(call BuildPackage,luci-app-siitwizard))
953 $(eval $(call BuildPackage,luci-app-firewall))
954 $(eval $(call BuildPackage,luci-app-olsr))
955 $(eval $(call BuildPackage,luci-app-qos))
956 $(eval $(call BuildPackage,luci-app-splash))
957 $(eval $(call BuildPackage,luci-app-statistics))
958 $(eval $(call BuildPackage,luci-app-upnp))
959 $(eval $(call BuildPackage,luci-app-ntpc))
960 $(eval $(call BuildPackage,luci-app-ddns))
961 $(eval $(call BuildPackage,luci-app-samba))
962 $(eval $(call BuildPackage,luci-app-uvc_streamer))
963 $(eval $(call BuildPackage,luci-app-mmc_over_gpio))
964 $(eval $(call BuildPackage,luci-app-p910nd))
965 $(eval $(call BuildPackage,luci-app-ushare))
966 $(eval $(call BuildPackage,luci-app-hd_idle))
967 $(eval $(call BuildPackage,luci-app-tinyproxy))
968 $(eval $(call BuildPackage,luci-app-initmgr))
969 $(eval $(call BuildPackage,luci-app-livestats))
970 $(eval $(call BuildPackage,luci-app-asterisk))
971 $(eval $(call BuildPackage,luci-app-polipo))
972 $(eval $(call BuildPackage,luci-app-openvpn))
973
974 $(eval $(call BuildPackage,luci-sgi-cgi))
975 $(eval $(call BuildPackage,luci-sgi-luci))
976 $(eval $(call BuildPackage,luci-sgi-webuci))
977
978 $(eval $(call BuildPackage,luci-theme-base))
979 $(eval $(call BuildPackage,luci-theme-fledermaus))
980 $(eval $(call BuildPackage,luci-theme-freifunk))
981 $(eval $(call BuildPackage,luci-theme-freifunk-bno))
982 $(eval $(call BuildPackage,luci-theme-openwrt))
983 $(eval $(call BuildPackage,luci-theme-openwrtlight))
984
985 $(eval $(call BuildPackage,luci-i18n-german))
986 $(eval $(call BuildPackage,luci-i18n-english))
987 $(eval $(call BuildPackage,luci-i18n-french))
988 $(eval $(call BuildPackage,luci-i18n-italian))
989 $(eval $(call BuildPackage,luci-i18n-russian))
990 $(eval $(call BuildPackage,luci-i18n-portuguese_brazilian))