contrib/package: add package definition for p2pblock
[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 $(CURDIR) | sed -ne's/^Revision: //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 LUA_TARGET:=source
30 LUCI_CFLAGS:=
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        config PACKAGE_luci-core_zipped
131                bool "Precompiled and compressed"
132
133        endchoice
134 endef
135
136 ifneq ($(CONFIG_PACKAGE_luci-core_compile),)
137   LUA_TARGET:=compile
138 endif
139
140 ifneq ($(CONFIG_PACKAGE_luci-core_stripped),)
141   LUA_TARGET:=strip
142 endif
143
144 ifneq ($(CONFIG_PACKAGE_luci-core_zipped),)
145   LUA_TARGET:=gzip
146 endif
147
148
149 ### Libraries ###
150 define Package/luci-cbi
151   $(call Package/luci/libtemplate)
152   DEPENDS+=+luci-web +luci-uvl +luci-uci
153   TITLE:=Configuration Binding Interface
154 endef
155
156 define Package/luci-cbi/install
157         $(call Package/luci/install/template,$(1),libs/cbi)
158 endef
159
160
161 define Package/luci-uci
162   $(call Package/luci/libtemplate)
163   DEPENDS+=+libuci-lua
164   TITLE:=High-Level UCI API
165 endef
166
167 define Package/luci-uci/install
168         $(call Package/luci/install/template,$(1),libs/uci)
169 endef
170
171
172 define Package/luci-fastindex
173   $(call Package/luci/libtemplate)
174   TITLE:=Fastindex indexing module
175 endef
176
177 define Package/luci-fastindex/install
178         $(call Package/luci/install/template,$(1),libs/fastindex)
179 endef
180
181
182 define Package/luci-http
183   $(call Package/luci/libtemplate)
184   TITLE:=HTTP Protocol implementation
185 endef
186
187 define Package/luci-http/install
188         $(call Package/luci/install/template,$(1),libs/http)
189 endef
190
191
192 define Package/luci-httpclient
193   $(call Package/luci/libtemplate)
194   TITLE:=HTTP(S) client library
195   DEPENDS+=+luci-http +luci-nixio
196 endef
197
198 define Package/luci-httpclient/install
199         $(call Package/luci/install/template,$(1),libs/httpclient)
200 endef
201
202
203 define Package/luci-ipkg
204   $(call Package/luci/libtemplate)
205   TITLE:=LuCI IPKG/OPKG call abstraction library
206 endef
207
208 define Package/luci-ipkg/install
209         $(call Package/luci/install/template,$(1),libs/ipkg)
210 endef
211
212
213 define Package/luci-json
214   $(call Package/luci/libtemplate)
215   TITLE:=LuCI JSON Library
216 endef
217
218 define Package/luci-json/install
219         $(call Package/luci/install/template,$(1),libs/json)
220 endef
221
222
223 define Package/luci-luanet
224   $(call Package/luci/libtemplate)
225   TITLE:=luanet
226   DEPENDS+=+libiw
227 endef
228
229 define Package/luci-luanet/install
230         $(call Package/luci/install/template,$(1),libs/luanet)
231 endef
232
233
234 define Package/luci-lucid
235   $(call Package/luci/libtemplate)
236   TITLE:=LuCId Superserver
237   DEPENDS+=+luci-nixio +luci-http +luci-px5g
238 endef
239
240 define Package/luci-lucid/install
241         $(call Package/luci/install/template,$(1),libs/lucid)
242         $(call Package/luci/install/template,$(1),libs/lucid-http)
243 endef
244
245
246
247 NIXIO_TLS:=axtls
248
249 define Package/luci-nixio
250   $(call Package/luci/libtemplate)
251   TITLE:=NIXIO Socket Library
252   DEPENDS:=
253 endef
254
255 define Package/luci-nixio/install
256         $(call Package/luci/install/template,$(1),libs/nixio)
257 endef
258
259 define Package/luci-nixio/config
260         choice
261                 prompt "TLS Provider"
262                 default PACKAGE_luci-nixio_axtls
263
264                 config PACKAGE_luci-nixio_axtls
265                         bool "Builtin (axTLS)"
266                         select PACKAGE_dropbear
267                         select PACKAGE_dropbearconvert
268
269                 config PACKAGE_luci-nixio_cyassl
270                         bool "CyaSSL"
271                         select PACKAGE_libcyassl-luci
272
273                 config PACKAGE_luci-nixio_openssl
274                         bool "OpenSSL"
275                         select PACKAGE_libopenssl
276         endchoice
277 endef
278
279 ifneq ($(CONFIG_PACKAGE_luci-nixio_openssl),)
280   NIXIO_TLS:=openssl
281 endif
282
283 ifneq ($(CONFIG_PACKAGE_luci-nixio_cyassl),)
284   NIXIO_TLS:=cyassl
285   LUCI_CFLAGS+=-I$(STAGING_DIR)/usr/include/cyassl
286 endif
287
288
289 define Package/luci-px5g
290   $(call Package/luci/libtemplate)
291   TITLE:=PX5G RSA Keymaster
292   DEPENDS:=+luci-nixio
293 endef
294
295 define Package/luci-px5g/install
296         $(call Package/luci/install/template,$(1),libs/px5g)
297 endef
298
299
300 define Package/luci-sys
301   $(call Package/luci/libtemplate)
302   TITLE:=LuCI Linux/POSIX system library
303 endef
304
305 define Package/luci-sys/install
306         $(call Package/luci/install/template,$(1),libs/sys)
307 endef
308
309
310 define Package/luci-web
311   $(call Package/luci/libtemplate)
312   DEPENDS+=+luci-http +luci-sys +luci-uci +luci-lucid +luci-sgi-cgi
313   TITLE:=MVC Webframework
314   $(call Config,luci.main.lang,string,en,Default Language)
315 endef
316
317 define Package/luci-web/conffiles
318 /etc/config/luci
319 endef
320
321 define Package/luci-web/install
322         $(call Package/luci/install/template,$(1),libs/web)
323 endef
324
325
326 define Package/luci-uvl
327   $(call Package/luci/libtemplate)
328   DEPENDS+=+luci-sys +luci-uci +luci-core
329   TITLE:=UVL - UCI Validation Layer
330 endef
331
332 define Package/luci-uvl/install
333         $(call Package/luci/install/template,$(1),libs/uvl)
334 endef
335
336
337
338 ### HTTPD ###
339
340 define Package/luci-httpd
341   $(call Package/luci/httpdtemplate)
342   DEPENDS:=+luci-http +libuci
343   TITLE:=Server Core
344 endef
345
346 define Package/luci-httpd/install
347         $(call Package/luci/install/template,$(1),libs/lucittpd)
348 endef
349
350
351
352 ### Community Packages ###
353
354 define Package/luci-freifunk-community
355   $(call Package/luci/fftemplate)
356   DEPENDS+= \
357    +luci-lucid +luci-sgi-cgi +luci-app-splash \
358    +luci-app-ffwizard-leipzig \
359    +luci-i18n-german \
360    +PACKAGE_luci-freifunk-community:olsrd-luci +PACKAGE_luci-freifunk-community:olsrd-luci-mod-dyn-gw-plain \
361    +PACKAGE_luci-freifunk-community:olsrd-luci-mod-txtinfo +PACKAGE_luci-freifunk-community:olsrd-luci-mod-nameservice \
362    +PACKAGE_luci-freifunk-community:olsrd-luci-mod-watchdog +PACKAGE_luci-freifunk-community:kmod-tun \
363    +PACKAGE_luci-freifunk-community:ip +PACKAGE_luci-freifunk-community:freifunk-watchdog +luci-app-olsr
364   TITLE:=Freifunk Community Meta-Package
365 endef
366
367 define Package/luci-freifunk-community/install
368         $(call Package/luci/install/template,$(1),applications/freifunk-community)
369 endef
370
371 ### Modules ###
372
373 define Package/luci-admin-core
374   $(call Package/luci/webtemplate)
375   DEPENDS+=+luci-web +luci-cbi +luci-i18n-english
376   TITLE:=Web UI Core Module
377 endef
378
379 define Package/luci-admin-core/conffiles
380 /etc/config/luci_hosts
381 /etc/config/luci_ethers
382 endef
383
384 define Package/luci-admin-core/install
385         $(call Package/luci/install/template,$(1),modules/admin-core)
386         touch $(1)/etc/init.d/luci_fixtime || true
387 endef
388
389
390 define Package/luci-admin-mini
391   $(call Package/luci/webtemplate)
392   DEPENDS+=+luci-admin-core
393   TITLE:=LuCI Essentials - stripped down and user-friendly
394 endef
395
396 define Package/luci-admin-mini/install
397         $(call Package/luci/install/template,$(1),modules/admin-mini)
398 endef
399
400
401 define Package/luci-admin-full
402   $(call Package/luci/webtemplate)
403   DEPENDS+=+luci-admin-core +luci-ipkg
404   TITLE:=LuCI Administration - full-featured for full control
405 endef
406
407 define Package/luci-admin-full/install
408         $(call Package/luci/install/template,$(1),modules/admin-full)
409 endef
410
411
412 define Package/luci-admin-rpc
413   $(call Package/luci/webtemplate)
414   DEPENDS+=+luci-json
415   TITLE:=LuCI RPC - JSON-RPC API
416 endef
417
418 define Package/luci-admin-rpc/install
419         $(call Package/luci/install/template,$(1),modules/rpc)
420 endef
421
422
423 define Package/luci-mod-freifunk
424   $(call Package/luci/fftemplate)
425   DEPENDS:=+luci-admin-full +luci-json
426   TITLE:=LuCI Freifunk module
427 endef
428
429 define Package/luci-mod-freifunk/conffiles
430 /etc/config/freifunk
431 endef
432
433 define Package/luci-mod-freifunk/install
434         $(call Package/luci/install/template,$(1),modules/freifunk)
435 endef
436
437
438
439 ### Applications ###
440
441 define Package/luci-app-ffwizard-leipzig
442   $(call Package/luci/fftemplate)
443   TITLE:=Freifunk Leipzig configuration wizard
444 endef
445
446 define Package/luci-app-ffwizard-leipzig/install
447         $(call Package/luci/install/template,$(1),applications/luci-ffwizard-leipzig)
448 endef
449
450
451 define Package/luci-app-siitwizard
452   $(call Package/luci/fftemplate)
453   TITLE:=SIIT IPv4-over-IPv6 configuration wizard
454   DEPENDS:=+luci-admin-core +PACKAGE_luci-app-siitwizard:kmod-siit
455 endef
456
457 define Package/luci-app-siitwizard/install
458         $(call Package/luci/install/template,$(1),applications/luci-siitwizard)
459 endef
460
461
462 define Package/luci-app-firewall
463   $(call Package/luci/webtemplate)
464   DEPENDS+=+luci-admin-core +PACKAGE_luci-app-firewall:firewall
465   TITLE:=Firewall and Portforwarding application
466 endef
467
468 define Package/luci-app-firewall/install
469         $(call Package/luci/install/template,$(1),applications/luci-fw)
470 endef
471
472
473 define Package/luci-app-olsr
474   $(call Package/luci/webtemplate)
475   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-olsr:olsrd-luci +PACKAGE_luci-app-olsr:olsrd-luci-mod-txtinfo
476   TITLE:=OLSR configuration and status module
477 endef
478
479 define Package/luci-app-olsr/install
480         $(call Package/luci/install/template,$(1),applications/luci-olsr)
481 endef
482
483
484 define Package/luci-app-qos
485   $(call Package/luci/webtemplate)
486   DEPENDS+=+luci-admin-core +PACKAGE_luci-app-qos:qos-scripts
487   TITLE:=Quality of Service configuration module
488 endef
489
490 define Package/luci-app-qos/install
491         $(call Package/luci/install/template,$(1),applications/luci-qos)
492 endef
493
494
495 define Package/luci-app-splash
496   $(call Package/luci/fftemplate)
497   DEPENDS+=+PACKAGE_luci-app-splash:luci-nixio +PACKAGE_luci-app-splash:iptables-mod-nat-extra
498   TITLE:=Freifunk DHCP-Splash application
499 endef
500
501 define Package/luci-app-splash/conffiles
502 /etc/config/luci_splash
503 endef
504
505 define Package/luci-app-splash/install
506         $(call Package/luci/install/template,$(1),applications/luci-splash)
507 endef
508
509
510 define Package/luci-app-statistics
511   $(call Package/luci/webtemplate)
512   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-statistics:collectd \
513    +PACKAGE_luci-app-statistics:rrdtool1 \
514    +PACKAGE_luci-app-statistics:collectd-mod-rrdtool1 \
515    +PACKAGE_luci-app-statistics:collectd-mod-wireless \
516    +PACKAGE_luci-app-statistics:collectd-mod-interface \
517    +PACKAGE_luci-app-statistics:collectd-mod-load
518   TITLE:=LuCI Statistics Application
519 endef
520
521 define Package/luci-app-statistics/conffiles
522 /etc/config/luci_statistics
523 endef
524
525 define Package/luci-app-statistics/install
526         $(call Package/luci/install/template,$(1),applications/luci-statistics)
527 endef
528
529
530 define Package/luci-app-upnp
531   $(call Package/luci/webtemplate)
532   DEPENDS+=+luci-admin-core +PACKAGE_luci-app-upnp:miniupnpd
533   TITLE:=Universal Plug & Play configuration module
534 endef
535
536 define Package/luci-app-upnp/install
537         $(call Package/luci/install/template,$(1),applications/luci-upnp)
538 endef
539
540
541 define Package/luci-app-ntpc
542   $(call Package/luci/webtemplate)
543   DEPENDS+=+luci-admin-core +PACKAGE_luci-app-ntpc:ntpclient
544   TITLE:=NTP time synchronisation client configuration module
545 endef
546
547 define Package/luci-app-ntpc/install
548         $(call Package/luci/install/template,$(1),applications/luci-ntpc)
549 endef
550
551
552 define Package/luci-app-ddns
553   $(call Package/luci/webtemplate)
554   DEPENDS+=+luci-admin-core +PACKAGE_luci-app-ddns:ddns-scripts
555   TITLE:=Dynamic DNS configuration module
556 endef
557
558 define Package/luci-app-ddns/install
559         $(call Package/luci/install/template,$(1),applications/luci-ddns)
560 endef
561
562
563 define Package/luci-app-samba
564   $(call Package/luci/webtemplate)
565   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-samba:samba3
566   TITLE:=Network Shares - Samba SMB/CIFS module
567 endef
568
569 define Package/luci-app-samba/install
570         $(call Package/luci/install/template,$(1),applications/luci-samba)
571 endef
572
573
574 define Package/luci-app-uvc_streamer
575   $(call Package/luci/webtemplate)
576   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-uvc_streamer:uvc-streamer
577   TITLE:=Webcam Streaming - UVC-Streamer module
578 endef
579
580 define Package/luci-app-uvc_streamer/install
581         $(call Package/luci/install/template,$(1),applications/luci-uvc_streamer)
582 endef
583
584
585 define Package/luci-app-mmc_over_gpio
586   $(call Package/luci/webtemplate)
587   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-mmc_over_gpio:kmod-mmc-over-gpio
588   TITLE:=mmc_over_gpio
589 endef
590
591 define Package/luci-app-mmc_over_gpio/install
592         $(call Package/luci/install/template,$(1),applications/luci-mmc_over_gpio)
593 endef
594
595
596 define Package/luci-app-p910nd
597   $(call Package/luci/webtemplate)
598   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-p910nd:p910nd
599   TITLE:=p910nd - Printer server module
600 endef
601
602 define Package/luci-app-p910nd/install
603         $(call Package/luci/install/template,$(1),applications/luci-p910nd)
604 endef
605
606
607 define Package/luci-app-ushare
608   $(call Package/luci/webtemplate)
609   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-ushare:ushare
610   TITLE:=ushare - UPnP A/V & DLNA Media Server
611 endef
612
613 define Package/luci-app-ushare/install
614         $(call Package/luci/install/template,$(1),applications/luci-ushare)
615 endef
616
617 define Package/luci-app-hd_idle
618   $(call Package/luci/webtemplate)
619   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-hd_idle:hd-idle
620   TITLE:=hd-idle
621 endef
622
623 define Package/luci-app-hd_idle/install
624         $(call Package/luci/install/template,$(1),applications/luci-hd_idle)
625 endef
626
627 define Package/luci-app-tinyproxy
628   $(call Package/luci/webtemplate)
629   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-tinyproxy:tinyproxy
630   TITLE:=Tinyproxy - HTTP(S)-Proxy
631 endef
632
633 define Package/luci-app-tinyproxy/install
634         $(call Package/luci/install/template,$(1),applications/luci-tinyproxy)
635 endef
636
637 define Package/luci-app-initmgr
638   $(call Package/luci/webtemplate)
639   DEPENDS+=+luci-admin-full
640   TITLE:=LuCI Initscript Management
641 endef
642
643 define Package/luci-app-initmgr/install
644         $(call Package/luci/install/template,$(1),applications/luci-initmgr)
645 endef
646
647 define Package/luci-app-livestats
648   $(call Package/luci/webtemplate)
649   DEPENDS+=+luci-admin-core +luci-admin-rpc
650   TITLE:=LuCI Realtime Statistics
651 endef
652
653 define Package/luci-app-livestats/install
654         $(call Package/luci/install/template,$(1),applications/luci-livestats)
655 endef
656
657 define Package/luci-app-asterisk
658   $(call Package/luci/webtemplate)
659   TITLE:=LuCI Support for Asterisk PBX
660   DEPENDS+=@BROKEN +luci-admin-core +PACKAGE_luci-app-asterisk:asterisk14-xip-core
661 endef
662
663 define Package/luci-app-asterisk/install
664         $(call Package/luci/install/template,$(1),applications/luci-asterisk)
665 endef
666
667 define Package/luci-app-polipo
668   $(call Package/luci/webtemplate)
669   TITLE:=LuCI Support for the Polipo Proxy
670   DEPENDS+=+luci-admin-core +PACKAGE_luci-app-polipo:polipo
671 endef
672
673 define Package/luci-app-polipo/install
674         $(call Package/luci/install/template,$(1),applications/luci-polipo)
675 endef
676
677 define Package/luci-app-openvpn
678   $(call Package/luci/webtemplate)
679   TITLE:=LuCI Support for OpenVPN
680   DEPENDS+=+luci-admin-core +PACKAGE_luci-app-openvpn:openvpn
681 endef
682
683 define Package/luci-app-openvpn/install
684         $(call Package/luci/install/template,$(1),applications/luci-openvpn)
685 endef
686
687 define Package/luci-app-p2pblock
688   $(call Package/luci/webtemplate)
689   TITLE:=LuCI Support for the Freifunk P2P-Block addon
690   DEPENDS+=+luci-admin-core +luci-app-firewall +PACKAGE_luci-app-p2pblock:freifunk-p2pblock
691 endef
692
693 define Package/luci-app-p2pblock/install
694         $(call Package/luci/install/template,$(1),applications/luci-p2pblock)
695 endef
696
697
698 ### Server Gateway Interfaces ###
699
700 define Package/luci-sgi-cgi
701   $(call Package/luci/libtemplate)
702   TITLE:=SGI for CGI
703 endef
704
705 define Package/luci-sgi-cgi/install
706         $(call Package/luci/install/template,$(1),libs/sgi-cgi)
707 endef
708
709 ### Themes ###
710 define Package/luci-theme-base
711   $(call Package/luci/thtemplate)
712   DEPENDS:=+luci-web
713   TITLE:=Common base for all themes
714 endef
715
716 define Package/luci-theme-base/install
717         $(call Package/luci/install/template,$(1),themes/base)
718 endef
719
720 define Package/luci-theme-fledermaus
721   $(call Package/luci/fftemplate)
722   DEPENDS:=+luci-web
723   TITLE:=Fledermaus Theme
724 endef
725
726 define Package/luci-theme-fledermaus/install
727         $(call Package/luci/install/template,$(1),themes/fledermaus)
728 endef
729
730 define Package/luci-theme-freifunk
731   $(call Package/luci/fftemplate)
732   DEPENDS:=+luci-web
733   MAINTAINER:=Stefan Pirwitz <stefan-at-freifunk-bno-dot-de>
734   TITLE:=alternative Freifunk Theme
735 endef
736
737 define Package/luci-theme-freifunk/install
738         $(call Package/luci/install/template,$(1),themes/freifunk)
739 endef
740
741 define Package/luci-theme-freifunk-bno
742   $(call Package/luci/fftemplate)
743   DEPENDS:=+luci-web
744   MAINTAINER:=Stefan Pirwitz <stefan-at-freifunk-bno-dot-de>
745   TITLE:=Freifunk Berlin Nordost Theme
746 endef
747
748 define Package/luci-theme-freifunk-bno/install
749         $(call Package/luci/install/template,$(1),themes/freifunk-bno)
750 endef
751
752 define Package/luci-theme-freifunk-hannover
753   $(call Package/luci/fftemplate)
754   DEPENDS:=+luci-web
755   MAINTAINER:=Mikolas Bingemer <mickey-at-freifunk-hannover-dot-de>
756   TITLE:=Freifunk Hannover Theme
757 endef
758
759 define Package/luci-theme-freifunk-hannover/install
760         $(call Package/luci/install/template,$(1),themes/freifunk-hannover)
761 endef
762
763 define Package/luci-theme-openwrt
764   $(call Package/luci/thtemplate)
765   TITLE:=OpenWrt.org (default)
766   DEPENDS:=+luci-theme-base
767 endef
768
769 define Package/luci-theme-openwrt/install
770         $(call Package/luci/install/template,$(1),themes/openwrt.org)
771 endef
772
773 define Package/luci-theme-openwrtlight
774   $(call Package/luci/thtemplate)
775   TITLE:=OpenWrt.org - light variant without images
776   DEPENDS:=+luci-theme-base
777 endef
778
779 define Package/luci-theme-openwrtlight/install
780         $(call Package/luci/install/template,$(1),themes/openwrt-light)
781 endef
782
783
784 ### Translations ###
785 define Package/luci-i18n-german
786   $(call Package/luci/i18ntemplate)
787   TITLE:=German
788 endef
789
790 define Package/luci-i18n-german/install
791         $(call Package/luci/install/template,$(1),i18n/german)
792 endef
793
794
795 define Package/luci-i18n-english
796   $(call Package/luci/i18ntemplate)
797   TITLE:=English
798 endef
799
800 define Package/luci-i18n-english/install
801         $(call Package/luci/install/template,$(1),i18n/english)
802 endef
803
804
805 define Package/luci-i18n-french
806   $(call Package/luci/i18ntemplate)
807   TITLE:=French (by Florian Fainelli)
808 endef
809
810 define Package/luci-i18n-french/install
811         $(call Package/luci/install/template,$(1),i18n/french)
812 endef
813
814
815 define Package/luci-i18n-italian
816   $(call Package/luci/i18ntemplate)
817   TITLE:=Italian (by Matteo Croce)
818 endef
819
820 define Package/luci-i18n-italian/install
821         $(call Package/luci/install/template,$(1),i18n/italian)
822 endef
823
824
825 define Package/luci-i18n-russian
826   $(call Package/luci/i18ntemplate)
827   TITLE:=Russian (by Skryabin Dmitry)
828 endef
829
830 define Package/luci-i18n-russian/install
831         $(call Package/luci/install/template,$(1),i18n/russian)
832 endef
833
834
835 define Package/luci-i18n-portuguese_brazilian
836   $(call Package/luci/i18ntemplate)
837   TITLE:=Portuguese (Brazilian) (by Carlos Cesario)
838 endef
839
840 define Package/luci-i18n-portuguese_brazilian/install
841         $(call Package/luci/install/template,$(1),i18n/portuguese_brazilian)
842 endef
843
844
845 define Package/luci-i18n-japanese
846   $(call Package/luci/i18ntemplate)
847   TITLE:=Japanese (by Tsukasa Hamano)
848 endef
849
850 define Package/luci-i18n-japanese/install
851         $(call Package/luci/install/template,$(1),i18n/japanese)
852 endef
853
854
855 define Package/luci-i18n-greek
856   $(call Package/luci/i18ntemplate)
857   TITLE:=Greek (by Vasilis Tsiligiannis)
858 endef
859
860 define Package/luci-i18n-greek/install
861         $(call Package/luci/install/template,$(1),i18n/greek)
862 endef
863
864
865 define Package/luci-i18n-catalan
866   $(call Package/luci/i18ntemplate)
867   TITLE:=Catalan (by Eduard Duran)
868 endef
869
870 define Package/luci-i18n-catalan/install
871         $(call Package/luci/install/template,$(1),i18n/catalan)
872 endef
873
874
875 define Package/luci-i18n-portuguese
876   $(call Package/luci/i18ntemplate)
877   TITLE:=Portuguese (by Jose Monteiro)
878 endef
879
880 define Package/luci-i18n-portuguese/install
881         $(call Package/luci/install/template,$(1),i18n/portuguese)
882 endef
883
884
885 ### Compile ###
886 ifneq ($(CONFIG_PACKAGE_luci-core),)
887         PKG_SELECTED_MODULES+=libs/core
888 endif
889 ifneq ($(CONFIG_PACKAGE_luci-cbi),)
890         PKG_SELECTED_MODULES+=libs/cbi
891 endif
892 ifneq ($(CONFIG_PACKAGE_luci-fastindex),)
893         PKG_SELECTED_MODULES+=libs/fastindex
894 endif
895 ifneq ($(CONFIG_PACKAGE_luci-http),)
896         PKG_SELECTED_MODULES+=libs/http
897 endif
898 ifneq ($(CONFIG_PACKAGE_luci-httpclient),)
899         PKG_SELECTED_MODULES+=libs/httpclient
900 endif
901 ifneq ($(CONFIG_PACKAGE_luci-ipkg),)
902         PKG_SELECTED_MODULES+=libs/ipkg
903 endif
904 ifneq ($(CONFIG_PACKAGE_luci-json),)
905         PKG_SELECTED_MODULES+=libs/json
906 endif
907 ifneq ($(CONFIG_PACKAGE_luci-luanet),)
908         PKG_SELECTED_MODULES+=libs/luanet
909 endif
910 ifneq ($(CONFIG_PACKAGE_luci-lucid),)
911         PKG_SELECTED_MODULES+=libs/lucid libs/lucid-http
912 endif
913 ifneq ($(CONFIG_PACKAGE_luci-nixio),)
914         PKG_SELECTED_MODULES+=libs/nixio
915 endif
916 ifneq ($(CONFIG_PACKAGE_luci-px5g),)
917         PKG_SELECTED_MODULES+=libs/px5g
918 endif
919 ifneq ($(CONFIG_PACKAGE_luci-uci),)
920         PKG_SELECTED_MODULES+=libs/uci
921 endif
922 ifneq ($(CONFIG_PACKAGE_luci-sys),)
923         PKG_SELECTED_MODULES+=libs/sys
924 endif
925 ifneq ($(CONFIG_PACKAGE_luci-web),)
926         PKG_SELECTED_MODULES+=libs/web
927 endif
928 ifneq ($(CONFIG_PACKAGE_luci-uvl),)
929         PKG_SELECTED_MODULES+=libs/uvl
930 endif
931
932 ifneq ($(CONFIG_PACKAGE_luci-httpd),)
933         PKG_SELECTED_MODULES+=libs/lucittpd
934 endif
935
936 ifneq ($(CONFIG_PACKAGE_luci-admin-core),)
937         PKG_SELECTED_MODULES+=modules/admin-core
938 endif
939 ifneq ($(CONFIG_PACKAGE_luci-admin-mini),)
940         PKG_SELECTED_MODULES+=modules/admin-mini
941 endif
942 ifneq ($(CONFIG_PACKAGE_luci-admin-full),)
943         PKG_SELECTED_MODULES+=modules/admin-full
944 endif
945 ifneq ($(CONFIG_PACKAGE_luci-admin-rpc),)
946         PKG_SELECTED_MODULES+=modules/rpc
947 endif
948 ifneq ($(CONFIG_PACKAGE_luci-mod-freifunk),)
949         PKG_SELECTED_MODULES+=modules/freifunk
950 endif
951
952 ifneq ($(CONFIG_PACKAGE_luci-freifunk-community),)
953         PKG_SELECTED_MODULES+=applications/freifunk-community
954 endif
955
956 ifneq ($(CONFIG_PACKAGE_luci-app-ffwizard-leipzig),)
957         PKG_SELECTED_MODULES+=applications/luci-ffwizard-leipzig
958 endif
959 ifneq ($(CONFIG_PACKAGE_luci-app-siitwizard),)
960         PKG_SELECTED_MODULES+=applications/luci-siitwizard
961 endif
962 ifneq ($(CONFIG_PACKAGE_luci-app-firewall),)
963         PKG_SELECTED_MODULES+=applications/luci-fw
964 endif
965 ifneq ($(CONFIG_PACKAGE_luci-app-olsr),)
966         PKG_SELECTED_MODULES+=applications/luci-olsr
967 endif
968 ifneq ($(CONFIG_PACKAGE_luci-app-qos),)
969         PKG_SELECTED_MODULES+=applications/luci-qos
970 endif
971 ifneq ($(CONFIG_PACKAGE_luci-app-splash),)
972         PKG_SELECTED_MODULES+=applications/luci-splash
973 endif
974 ifneq ($(CONFIG_PACKAGE_luci-app-statistics),)
975         PKG_SELECTED_MODULES+=applications/luci-statistics
976 endif
977 ifneq ($(CONFIG_PACKAGE_luci-app-upnp),)
978         PKG_SELECTED_MODULES+=applications/luci-upnp
979 endif
980 ifneq ($(CONFIG_PACKAGE_luci-app-ntpc),)
981         PKG_SELECTED_MODULES+=applications/luci-ntpc
982 endif
983 ifneq ($(CONFIG_PACKAGE_luci-app-ddns),)
984         PKG_SELECTED_MODULES+=applications/luci-ddns
985 endif
986 ifneq ($(CONFIG_PACKAGE_luci-app-samba),)
987         PKG_SELECTED_MODULES+=applications/luci-samba
988 endif
989 ifneq ($(CONFIG_PACKAGE_luci-app-uvc_streamer),)
990         PKG_SELECTED_MODULES+=applications/luci-uvc_streamer
991 endif
992 ifneq ($(CONFIG_PACKAGE_luci-app-mmc_over_gpio),)
993         PKG_SELECTED_MODULES+=applications/luci-mmc_over_gpio
994 endif
995 ifneq ($(CONFIG_PACKAGE_luci-app-p910nd),)
996         PKG_SELECTED_MODULES+=applications/luci-p910nd
997 endif
998 ifneq ($(CONFIG_PACKAGE_luci-app-ushare),)
999         PKG_SELECTED_MODULES+=applications/luci-ushare
1000 endif
1001 ifneq ($(CONFIG_PACKAGE_luci-app-hd_idle),)
1002        PKG_SELECTED_MODULES+=applications/luci-hd_idle
1003 endif
1004 ifneq ($(CONFIG_PACKAGE_luci-app-tinyproxy),)
1005        PKG_SELECTED_MODULES+=applications/luci-tinyproxy
1006 endif
1007 ifneq ($(CONFIG_PACKAGE_luci-app-initmgr),)
1008        PKG_SELECTED_MODULES+=applications/luci-initmgr
1009 endif
1010 ifneq ($(CONFIG_PACKAGE_luci-app-livestats),)
1011        PKG_SELECTED_MODULES+=applications/luci-livestats
1012 endif
1013 ifneq ($(CONFIG_PACKAGE_luci-app-asterisk),)
1014        PKG_SELECTED_MODULES+=applications/luci-asterisk
1015 endif
1016 ifneq ($(CONFIG_PACKAGE_luci-app-polipo),)
1017        PKG_SELECTED_MODULES+=applications/luci-polipo
1018 endif
1019 ifneq ($(CONFIG_PACKAGE_luci-app-openvpn),)
1020        PKG_SELECTED_MODULES+=applications/luci-openvpn
1021 endif
1022 ifneq ($(CONFIG_PACKAGE_luci-app-p2pblock),)
1023        PKG_SELECTED_MODULES+=applications/luci-p2pblock
1024 endif
1025
1026
1027 ifneq ($(CONFIG_PACKAGE_luci-sgi-cgi),)
1028         PKG_SELECTED_MODULES+=libs/sgi-cgi
1029 endif
1030 ifneq ($(CONFIG_PACKAGE_luci-sgi-luci),)
1031         PKG_SELECTED_MODULES+=libs/sgi-luci
1032 endif
1033 ifneq ($(CONFIG_PACKAGE_luci-sgi-webuci),)
1034         PKG_SELECTED_MODULES+=libs/sgi-webuci
1035 endif
1036
1037 ifneq ($(CONFIG_PACKAGE_luci-theme-base),)
1038         PKG_SELECTED_MODULES+=themes/base
1039 endif
1040 ifneq ($(CONFIG_PACKAGE_luci-theme-fledermaus),)
1041         PKG_SELECTED_MODULES+=themes/fledermaus
1042 endif
1043 ifneq ($(CONFIG_PACKAGE_luci-theme-freifunk-bno),)
1044         PKG_SELECTED_MODULES+=themes/freifunk-bno
1045 endif
1046 ifneq ($(CONFIG_PACKAGE_luci-theme-freifunk-hannover),)
1047         PKG_SELECTED_MODULES+=themes/freifunk-hannover
1048 endif
1049 ifneq ($(CONFIG_PACKAGE_luci-theme-freifunk),)
1050         PKG_SELECTED_MODULES+=themes/freifunk
1051 endif
1052 ifneq ($(CONFIG_PACKAGE_luci-theme-openwrt),)
1053         PKG_SELECTED_MODULES+=themes/openwrt.org
1054 endif
1055 ifneq ($(CONFIG_PACKAGE_luci-theme-openwrtlight),)
1056         PKG_SELECTED_MODULES+=themes/openwrt-light
1057 endif
1058
1059 ifneq ($(CONFIG_PACKAGE_luci-i18n-german),)
1060         PKG_SELECTED_MODULES+=i18n/german
1061 endif
1062 ifneq ($(CONFIG_PACKAGE_luci-i18n-english),)
1063         PKG_SELECTED_MODULES+=i18n/english
1064 endif
1065 ifneq ($(CONFIG_PACKAGE_luci-i18n-french),)
1066         PKG_SELECTED_MODULES+=i18n/french
1067 endif
1068 ifneq ($(CONFIG_PACKAGE_luci-i18n-italian),)
1069         PKG_SELECTED_MODULES+=i18n/italian
1070 endif
1071 ifneq ($(CONFIG_PACKAGE_luci-i18n-russian),)
1072         PKG_SELECTED_MODULES+=i18n/russian
1073 endif
1074 ifneq ($(CONFIG_PACKAGE_luci-i18n-portuguese_brazilian),)
1075         PKG_SELECTED_MODULES+=i18n/portuguese_brazilian
1076 endif
1077 ifneq ($(CONFIG_PACKAGE_luci-i18n-japanese),)
1078         PKG_SELECTED_MODULES+=i18n/japanese
1079 endif
1080 ifneq ($(CONFIG_PACKAGE_luci-i18n-greek),)
1081         PKG_SELECTED_MODULES+=i18n/greek
1082 endif
1083 ifneq ($(CONFIG_PACKAGE_luci-i18n-catalan),)
1084         PKG_SELECTED_MODULES+=i18n/catalan
1085 endif
1086 ifneq ($(CONFIG_PACKAGE_luci-i18n-portuguese),)
1087         PKG_SELECTED_MODULES+=i18n/portuguese
1088 endif
1089
1090
1091 MAKE_FLAGS += \
1092         MODULES="$(PKG_SELECTED_MODULES)" \
1093         LUA_TARGET="$(LUA_TARGET)" \
1094         LUA_SHLIBS="-llua -lm -ldl -lcrypt" \
1095         CFLAGS="$(TARGET_CFLAGS) $(LUCI_CFLAGS) -I$(STAGING_DIR)/usr/include" \
1096         LDFLAGS="$(TARGET_LDFLAGS) -L$(STAGING_DIR)/usr/lib" \
1097         NIXIO_TLS="$(NIXIO_TLS)" OS="Linux"
1098
1099
1100 $(eval $(call BuildPackage,luci-core))
1101 $(eval $(call BuildPackage,luci-cbi))
1102 $(eval $(call BuildPackage,luci-fastindex))
1103 $(eval $(call BuildPackage,luci-http))
1104 $(eval $(call BuildPackage,luci-httpclient))
1105 $(eval $(call BuildPackage,luci-ipkg))
1106 $(eval $(call BuildPackage,luci-json))
1107 $(eval $(call BuildPackage,luci-luanet))
1108 $(eval $(call BuildPackage,luci-lucid))
1109 $(eval $(call BuildPackage,luci-nixio))
1110 $(eval $(call BuildPackage,luci-px5g))
1111 $(eval $(call BuildPackage,luci-uci))
1112 $(eval $(call BuildPackage,luci-sys))
1113 $(eval $(call BuildPackage,luci-web))
1114 $(eval $(call BuildPackage,luci-uvl))
1115
1116 $(eval $(call BuildPackage,luci-httpd))
1117
1118 $(eval $(call BuildPackage,luci-admin-core))
1119 $(eval $(call BuildPackage,luci-admin-mini))
1120 $(eval $(call BuildPackage,luci-admin-full))
1121 $(eval $(call BuildPackage,luci-admin-rpc))
1122 $(eval $(call BuildPackage,luci-mod-freifunk))
1123
1124 $(eval $(call BuildPackage,luci-freifunk-community))
1125
1126 $(eval $(call BuildPackage,luci-app-ffwizard-leipzig))
1127 $(eval $(call BuildPackage,luci-app-siitwizard))
1128 $(eval $(call BuildPackage,luci-app-firewall))
1129 $(eval $(call BuildPackage,luci-app-olsr))
1130 $(eval $(call BuildPackage,luci-app-qos))
1131 $(eval $(call BuildPackage,luci-app-splash))
1132 $(eval $(call BuildPackage,luci-app-statistics))
1133 $(eval $(call BuildPackage,luci-app-upnp))
1134 $(eval $(call BuildPackage,luci-app-ntpc))
1135 $(eval $(call BuildPackage,luci-app-ddns))
1136 $(eval $(call BuildPackage,luci-app-samba))
1137 $(eval $(call BuildPackage,luci-app-uvc_streamer))
1138 $(eval $(call BuildPackage,luci-app-mmc_over_gpio))
1139 $(eval $(call BuildPackage,luci-app-p910nd))
1140 $(eval $(call BuildPackage,luci-app-ushare))
1141 $(eval $(call BuildPackage,luci-app-hd_idle))
1142 $(eval $(call BuildPackage,luci-app-tinyproxy))
1143 $(eval $(call BuildPackage,luci-app-initmgr))
1144 $(eval $(call BuildPackage,luci-app-livestats))
1145 $(eval $(call BuildPackage,luci-app-asterisk))
1146 $(eval $(call BuildPackage,luci-app-polipo))
1147 $(eval $(call BuildPackage,luci-app-openvpn))
1148 $(eval $(call BuildPackage,luci-app-p2pblock))
1149
1150 $(eval $(call BuildPackage,luci-sgi-cgi))
1151
1152 $(eval $(call BuildPackage,luci-theme-base))
1153 $(eval $(call BuildPackage,luci-theme-fledermaus))
1154 $(eval $(call BuildPackage,luci-theme-freifunk))
1155 $(eval $(call BuildPackage,luci-theme-freifunk-bno))
1156 $(eval $(call BuildPackage,luci-theme-freifunk-hannover))
1157 $(eval $(call BuildPackage,luci-theme-openwrt))
1158 $(eval $(call BuildPackage,luci-theme-openwrtlight))
1159
1160 $(eval $(call BuildPackage,luci-i18n-german))
1161 $(eval $(call BuildPackage,luci-i18n-english))
1162 $(eval $(call BuildPackage,luci-i18n-french))
1163 $(eval $(call BuildPackage,luci-i18n-italian))
1164 $(eval $(call BuildPackage,luci-i18n-russian))
1165 $(eval $(call BuildPackage,luci-i18n-portuguese_brazilian))
1166 $(eval $(call BuildPackage,luci-i18n-japanese))
1167 $(eval $(call BuildPackage,luci-i18n-greek))
1168 $(eval $(call BuildPackage,luci-i18n-catalan))
1169 $(eval $(call BuildPackage,luci-i18n-portuguese))