contrib/package: add qos related dependencies to luci-splash
[project/luci.git] / contrib / package / luci / Makefile
index 855dfc0..3b3e0b4 100644 (file)
@@ -14,7 +14,7 @@ ifeq ($(USELOCAL),1)
 else
   PKG_SOURCE_URL:=http://svn.luci.subsignal.org/luci/$(PKG_BRANCH)
   ifeq ($(DUMP),)
-    PKG_REV:=$(shell LC_ALL=C svn info ${PKG_SOURCE_URL} | sed -ne's/^Last Changed Rev: //p')
+    PKG_REV:=$(shell LC_ALL=C svn info $(CURDIR) | sed -ne's/^Revision: //p')
     PKG_VERSION:=0.9+svn$(PKG_REV)
   endif
   PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
@@ -26,8 +26,8 @@ endif
 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
 PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
 
-PKG_BUILD_DEPENDS:=libnotimpl
 LUA_TARGET:=source
+LUCI_CFLAGS:=
 PKG_SELECTED_MODULES:=
 
 
@@ -106,6 +106,11 @@ endef
 
 define Package/luci-core/install
        $(call Package/luci/install/template,$(1),libs/core)
+       $(PKG_BUILD_DIR)/build/mkversion.sh $(1)/usr/lib/lua/luci/version.lua \
+               "OpenWrt Firmware" \
+               "$(OPENWRTVERSION)" \
+               "$(PKG_BRANCH)" \
+               "$(PKG_VERSION)"
 endef
 
 define Package/luci-core/config
@@ -122,6 +127,9 @@ define Package/luci-core/config
        config PACKAGE_luci-core_source
                bool "Full Source"
 
+       config PACKAGE_luci-core_zipped
+               bool "Precompiled and compressed"
+
        endchoice
 endef
 
@@ -133,6 +141,10 @@ ifneq ($(CONFIG_PACKAGE_luci-core_stripped),)
   LUA_TARGET:=strip
 endif
 
+ifneq ($(CONFIG_PACKAGE_luci-core_zipped),)
+  LUA_TARGET:=gzip
+endif
+
 
 ### Libraries ###
 define Package/luci-cbi
@@ -177,6 +189,17 @@ define Package/luci-http/install
 endef
 
 
+define Package/luci-httpclient
+  $(call Package/luci/libtemplate)
+  TITLE:=HTTP(S) client library
+  DEPENDS+=+luci-http +luci-nixio
+endef
+
+define Package/luci-httpclient/install
+       $(call Package/luci/install/template,$(1),libs/httpclient)
+endef
+
+
 define Package/luci-ipkg
   $(call Package/luci/libtemplate)
   TITLE:=LuCI IPKG/OPKG call abstraction library
@@ -197,6 +220,83 @@ define Package/luci-json/install
 endef
 
 
+define Package/luci-luanet
+  $(call Package/luci/libtemplate)
+  TITLE:=luanet
+  DEPENDS+=+libiw
+endef
+
+define Package/luci-luanet/install
+       $(call Package/luci/install/template,$(1),libs/luanet)
+endef
+
+
+define Package/luci-lucid
+  $(call Package/luci/libtemplate)
+  TITLE:=LuCId Superserver
+  DEPENDS+=+luci-nixio +luci-http +luci-px5g
+endef
+
+define Package/luci-lucid/install
+       $(call Package/luci/install/template,$(1),libs/lucid)
+       $(call Package/luci/install/template,$(1),libs/lucid-http)
+endef
+
+
+
+NIXIO_TLS:=axtls
+
+define Package/luci-nixio
+  $(call Package/luci/libtemplate)
+  TITLE:=NIXIO Socket Library
+  DEPENDS:=
+endef
+
+define Package/luci-nixio/install
+       $(call Package/luci/install/template,$(1),libs/nixio)
+endef
+
+define Package/luci-nixio/config
+       choice
+               prompt "TLS Provider"
+               default PACKAGE_luci-nixio_axtls
+
+               config PACKAGE_luci-nixio_axtls
+                       bool "Builtin (axTLS)"
+                       select PACKAGE_dropbear
+                       select PACKAGE_dropbearconvert
+
+               config PACKAGE_luci-nixio_cyassl
+                       bool "CyaSSL"
+                       select PACKAGE_libcyassl-luci
+
+               config PACKAGE_luci-nixio_openssl
+                       bool "OpenSSL"
+                       select PACKAGE_libopenssl
+       endchoice
+endef
+
+ifneq ($(CONFIG_PACKAGE_luci-nixio_openssl),)
+  NIXIO_TLS:=openssl
+endif
+
+ifneq ($(CONFIG_PACKAGE_luci-nixio_cyassl),)
+  NIXIO_TLS:=cyassl
+  LUCI_CFLAGS+=-I$(STAGING_DIR)/usr/include/cyassl
+endif
+
+
+define Package/luci-px5g
+  $(call Package/luci/libtemplate)
+  TITLE:=PX5G RSA Keymaster
+  DEPENDS:=+luci-nixio
+endef
+
+define Package/luci-px5g/install
+       $(call Package/luci/install/template,$(1),libs/px5g)
+endef
+
+
 define Package/luci-sys
   $(call Package/luci/libtemplate)
   TITLE:=LuCI Linux/POSIX system library
@@ -209,8 +309,9 @@ endef
 
 define Package/luci-web
   $(call Package/luci/libtemplate)
-  DEPENDS+=+luci-http +luci-sys +luci-uci +luci-sgi-cgi
+  DEPENDS+=+luci-http +luci-sys +luci-uci +luci-lucid +luci-sgi-cgi
   TITLE:=MVC Webframework
+  $(call Config,luci.main.lang,string,en,Default Language)
 endef
 
 define Package/luci-web/conffiles
@@ -253,14 +354,13 @@ endef
 define Package/luci-freifunk-community
   $(call Package/luci/fftemplate)
   DEPENDS+= \
-   +luci-sgi-cgi +luci-app-splash \
+   +luci-lucid +luci-sgi-cgi +luci-app-splash \
    +luci-app-ffwizard-leipzig \
-   +luci-theme-fledermaus \
    +luci-i18n-german \
-   +PACKAGE_luci-freifunk-community:olsrd-luci +PACKAGE_luci-freifunk-community:olsrd-luci-mod-dyn-gw \
+   +PACKAGE_luci-freifunk-community:olsrd-luci +PACKAGE_luci-freifunk-community:olsrd-luci-mod-dyn-gw-plain \
    +PACKAGE_luci-freifunk-community:olsrd-luci-mod-txtinfo +PACKAGE_luci-freifunk-community:olsrd-luci-mod-nameservice \
-   +PACKAGE_luci-freifunk-community:kmod-tun +PACKAGE_luci-freifunk-community:ip \
-   +luci-app-olsr
+   +PACKAGE_luci-freifunk-community:olsrd-luci-mod-watchdog +PACKAGE_luci-freifunk-community:kmod-tun \
+   +PACKAGE_luci-freifunk-community:ip +PACKAGE_luci-freifunk-community:freifunk-watchdog +luci-app-olsr
   TITLE:=Freifunk Community Meta-Package
 endef
 
@@ -272,7 +372,7 @@ endef
 
 define Package/luci-admin-core
   $(call Package/luci/webtemplate)
-  DEPENDS+=+luci-web +luci-cbi +luci-theme-openwrt +luci-i18n-english
+  DEPENDS+=+luci-web +luci-cbi +luci-i18n-english
   TITLE:=Web UI Core Module
 endef
 
@@ -283,6 +383,7 @@ endef
 
 define Package/luci-admin-core/install
        $(call Package/luci/install/template,$(1),modules/admin-core)
+       touch $(1)/etc/init.d/luci_fixtime || true
 endef
 
 
@@ -299,7 +400,7 @@ endef
 
 define Package/luci-admin-full
   $(call Package/luci/webtemplate)
-  DEPENDS+=+luci-admin-core +luci-ipkg +PACKAGE_luci-admin-full:iptables +PACKAGE_luci-admin-full:firewall +luci-app-firewall
+  DEPENDS+=+luci-admin-core +luci-ipkg
   TITLE:=LuCI Administration - full-featured for full control
 endef
 
@@ -321,7 +422,7 @@ endef
 
 define Package/luci-mod-freifunk
   $(call Package/luci/fftemplate)
-  DEPENDS:=+luci-admin-full
+  DEPENDS:=+luci-admin-full +luci-json
   TITLE:=LuCI Freifunk module
 endef
 
@@ -371,7 +472,8 @@ endef
 
 define Package/luci-app-olsr
   $(call Package/luci/webtemplate)
-  DEPENDS+=+luci-admin-full +PACKAGE_luci-app-olsr:olsrd-luci +PACKAGE_luci-app-olsr:olsrd-luci-mod-txtinfo
+  DEPENDS+=+luci-admin-full +PACKAGE_luci-app-olsr:olsrd-luci \
+   +PACKAGE_luci-app-olsr:olsrd-luci-mod-txtinfo
   TITLE:=OLSR configuration and status module
 endef
 
@@ -393,7 +495,10 @@ endef
 
 define Package/luci-app-splash
   $(call Package/luci/fftemplate)
-  DEPENDS+=+PACKAGE_luci-app-splash:luasocket
+  DEPENDS+=+PACKAGE_luci-app-splash:luci-nixio \
+   +PACKAGE_luci-app-splash:tc +PACKAGE_luci-app-splash:kmod-sched \
+   +PACKAGE_luci-app-splash:iptables-mod-nat-extra \
+   +PACKAGE_luci-app-splash:iptables-mod-ipopt
   TITLE:=Freifunk DHCP-Splash application
 endef
 
@@ -409,7 +514,11 @@ endef
 define Package/luci-app-statistics
   $(call Package/luci/webtemplate)
   DEPENDS+=+luci-admin-full +PACKAGE_luci-app-statistics:collectd \
-   +PACKAGE_luci-app-statistics:collectd-mod-rrdtool1 +PACKAGE_luci-app-statistics:rrdtool1
+   +PACKAGE_luci-app-statistics:rrdtool1 \
+   +PACKAGE_luci-app-statistics:collectd-mod-rrdtool1 \
+   +PACKAGE_luci-app-statistics:collectd-mod-wireless \
+   +PACKAGE_luci-app-statistics:collectd-mod-interface \
+   +PACKAGE_luci-app-statistics:collectd-mod-load
   TITLE:=LuCI Statistics Application
 endef
 
@@ -572,13 +681,24 @@ endef
 define Package/luci-app-openvpn
   $(call Package/luci/webtemplate)
   TITLE:=LuCI Support for OpenVPN
-  DEPENDS+=@BROKEN +luci-admin-core +PACKAGE_luci-app-openvpn:openvpn
+  DEPENDS+=+luci-admin-core +PACKAGE_luci-app-openvpn:openvpn
 endef
 
 define Package/luci-app-openvpn/install
         $(call Package/luci/install/template,$(1),applications/luci-openvpn)
 endef
 
+define Package/luci-app-p2pblock
+  $(call Package/luci/webtemplate)
+  TITLE:=LuCI Support for the Freifunk P2P-Block addon
+  DEPENDS+=+luci-admin-core +luci-app-firewall \
+    +PACKAGE_luci-app-p2pblock:freifunk-p2pblock
+endef
+
+define Package/luci-app-p2pblock/install
+        $(call Package/luci/install/template,$(1),applications/luci-p2pblock)
+endef
+
 
 ### Server Gateway Interfaces ###
 
@@ -591,25 +711,6 @@ define Package/luci-sgi-cgi/install
        $(call Package/luci/install/template,$(1),libs/sgi-cgi)
 endef
 
-define Package/luci-sgi-luci
-  $(call Package/luci/libtemplate)
-  DEPENDS+=+luci-httpd
-  TITLE:=SGI for LuCIttpd
-endef
-
-define Package/luci-sgi-luci/install
-       $(call Package/luci/install/template,$(1),libs/sgi-luci)
-endef
-
-define Package/luci-sgi-webuci
-  $(call Package/luci/libtemplate)
-  TITLE:=SGI for Webuci
-endef
-
-define Package/luci-sgi-webuci/install
-       $(call Package/luci/install/template,$(1),libs/sgi-webuci)
-endef
-
 ### Themes ###
 define Package/luci-theme-base
   $(call Package/luci/thtemplate)
@@ -653,6 +754,17 @@ define Package/luci-theme-freifunk-bno/install
        $(call Package/luci/install/template,$(1),themes/freifunk-bno)
 endef
 
+define Package/luci-theme-freifunk-hannover
+  $(call Package/luci/fftemplate)
+  DEPENDS:=+luci-web
+  MAINTAINER:=Mikolas Bingemer <mickey-at-freifunk-hannover-dot-de>
+  TITLE:=Freifunk Hannover Theme
+endef
+
+define Package/luci-theme-freifunk-hannover/install
+       $(call Package/luci/install/template,$(1),themes/freifunk-hannover)
+endef
+
 define Package/luci-theme-openwrt
   $(call Package/luci/thtemplate)
   TITLE:=OpenWrt.org (default)
@@ -735,6 +847,46 @@ define Package/luci-i18n-portuguese_brazilian/install
 endef
 
 
+define Package/luci-i18n-japanese
+  $(call Package/luci/i18ntemplate)
+  TITLE:=Japanese (by Tsukasa Hamano)
+endef
+
+define Package/luci-i18n-japanese/install
+       $(call Package/luci/install/template,$(1),i18n/japanese)
+endef
+
+
+define Package/luci-i18n-greek
+  $(call Package/luci/i18ntemplate)
+  TITLE:=Greek (by Vasilis Tsiligiannis)
+endef
+
+define Package/luci-i18n-greek/install
+       $(call Package/luci/install/template,$(1),i18n/greek)
+endef
+
+
+define Package/luci-i18n-catalan
+  $(call Package/luci/i18ntemplate)
+  TITLE:=Catalan (by Eduard Duran)
+endef
+
+define Package/luci-i18n-catalan/install
+       $(call Package/luci/install/template,$(1),i18n/catalan)
+endef
+
+
+define Package/luci-i18n-portuguese
+  $(call Package/luci/i18ntemplate)
+  TITLE:=Portuguese (by Jose Monteiro)
+endef
+
+define Package/luci-i18n-portuguese/install
+       $(call Package/luci/install/template,$(1),i18n/portuguese)
+endef
+
+
 ### Compile ###
 ifneq ($(CONFIG_PACKAGE_luci-core),)
        PKG_SELECTED_MODULES+=libs/core
@@ -748,12 +900,27 @@ endif
 ifneq ($(CONFIG_PACKAGE_luci-http),)
        PKG_SELECTED_MODULES+=libs/http
 endif
+ifneq ($(CONFIG_PACKAGE_luci-httpclient),)
+       PKG_SELECTED_MODULES+=libs/httpclient
+endif
 ifneq ($(CONFIG_PACKAGE_luci-ipkg),)
        PKG_SELECTED_MODULES+=libs/ipkg
 endif
 ifneq ($(CONFIG_PACKAGE_luci-json),)
        PKG_SELECTED_MODULES+=libs/json
 endif
+ifneq ($(CONFIG_PACKAGE_luci-luanet),)
+       PKG_SELECTED_MODULES+=libs/luanet
+endif
+ifneq ($(CONFIG_PACKAGE_luci-lucid),)
+       PKG_SELECTED_MODULES+=libs/lucid libs/lucid-http
+endif
+ifneq ($(CONFIG_PACKAGE_luci-nixio),)
+       PKG_SELECTED_MODULES+=libs/nixio
+endif
+ifneq ($(CONFIG_PACKAGE_luci-px5g),)
+       PKG_SELECTED_MODULES+=libs/px5g
+endif
 ifneq ($(CONFIG_PACKAGE_luci-uci),)
        PKG_SELECTED_MODULES+=libs/uci
 endif
@@ -857,6 +1024,9 @@ endif
 ifneq ($(CONFIG_PACKAGE_luci-app-openvpn),)
        PKG_SELECTED_MODULES+=applications/luci-openvpn
 endif
+ifneq ($(CONFIG_PACKAGE_luci-app-p2pblock),)
+       PKG_SELECTED_MODULES+=applications/luci-p2pblock
+endif
 
 
 ifneq ($(CONFIG_PACKAGE_luci-sgi-cgi),)
@@ -878,6 +1048,9 @@ endif
 ifneq ($(CONFIG_PACKAGE_luci-theme-freifunk-bno),)
        PKG_SELECTED_MODULES+=themes/freifunk-bno
 endif
+ifneq ($(CONFIG_PACKAGE_luci-theme-freifunk-hannover),)
+       PKG_SELECTED_MODULES+=themes/freifunk-hannover
+endif
 ifneq ($(CONFIG_PACKAGE_luci-theme-freifunk),)
        PKG_SELECTED_MODULES+=themes/freifunk
 endif
@@ -906,23 +1079,40 @@ endif
 ifneq ($(CONFIG_PACKAGE_luci-i18n-portuguese_brazilian),)
        PKG_SELECTED_MODULES+=i18n/portuguese_brazilian
 endif
+ifneq ($(CONFIG_PACKAGE_luci-i18n-japanese),)
+       PKG_SELECTED_MODULES+=i18n/japanese
+endif
+ifneq ($(CONFIG_PACKAGE_luci-i18n-greek),)
+       PKG_SELECTED_MODULES+=i18n/greek
+endif
+ifneq ($(CONFIG_PACKAGE_luci-i18n-catalan),)
+       PKG_SELECTED_MODULES+=i18n/catalan
+endif
+ifneq ($(CONFIG_PACKAGE_luci-i18n-portuguese),)
+       PKG_SELECTED_MODULES+=i18n/portuguese
+endif
 
 
 MAKE_FLAGS += \
        MODULES="$(PKG_SELECTED_MODULES)" \
        LUA_TARGET="$(LUA_TARGET)" \
        LUA_SHLIBS="-llua -lm -ldl -lcrypt" \
-       CFLAGS="$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include" \
+       CFLAGS="$(TARGET_CFLAGS) $(LUCI_CFLAGS) -I$(STAGING_DIR)/usr/include" \
        LDFLAGS="$(TARGET_LDFLAGS) -L$(STAGING_DIR)/usr/lib" \
-       OS="Linux"
+       NIXIO_TLS="$(NIXIO_TLS)" OS="Linux"
 
 
 $(eval $(call BuildPackage,luci-core))
 $(eval $(call BuildPackage,luci-cbi))
 $(eval $(call BuildPackage,luci-fastindex))
 $(eval $(call BuildPackage,luci-http))
+$(eval $(call BuildPackage,luci-httpclient))
 $(eval $(call BuildPackage,luci-ipkg))
 $(eval $(call BuildPackage,luci-json))
+$(eval $(call BuildPackage,luci-luanet))
+$(eval $(call BuildPackage,luci-lucid))
+$(eval $(call BuildPackage,luci-nixio))
+$(eval $(call BuildPackage,luci-px5g))
 $(eval $(call BuildPackage,luci-uci))
 $(eval $(call BuildPackage,luci-sys))
 $(eval $(call BuildPackage,luci-web))
@@ -960,15 +1150,15 @@ $(eval $(call BuildPackage,luci-app-livestats))
 $(eval $(call BuildPackage,luci-app-asterisk))
 $(eval $(call BuildPackage,luci-app-polipo))
 $(eval $(call BuildPackage,luci-app-openvpn))
+$(eval $(call BuildPackage,luci-app-p2pblock))
 
 $(eval $(call BuildPackage,luci-sgi-cgi))
-$(eval $(call BuildPackage,luci-sgi-luci))
-$(eval $(call BuildPackage,luci-sgi-webuci))
 
 $(eval $(call BuildPackage,luci-theme-base))
 $(eval $(call BuildPackage,luci-theme-fledermaus))
 $(eval $(call BuildPackage,luci-theme-freifunk))
 $(eval $(call BuildPackage,luci-theme-freifunk-bno))
+$(eval $(call BuildPackage,luci-theme-freifunk-hannover))
 $(eval $(call BuildPackage,luci-theme-openwrt))
 $(eval $(call BuildPackage,luci-theme-openwrtlight))
 
@@ -978,3 +1168,7 @@ $(eval $(call BuildPackage,luci-i18n-french))
 $(eval $(call BuildPackage,luci-i18n-italian))
 $(eval $(call BuildPackage,luci-i18n-russian))
 $(eval $(call BuildPackage,luci-i18n-portuguese_brazilian))
+$(eval $(call BuildPackage,luci-i18n-japanese))
+$(eval $(call BuildPackage,luci-i18n-greek))
+$(eval $(call BuildPackage,luci-i18n-catalan))
+$(eval $(call BuildPackage,luci-i18n-portuguese))