Remove dependency between luci-admin-full and firewall on user request
[project/luci.git] / contrib / package / luci / Makefile
index 4f93cb2..3a029dd 100644 (file)
@@ -1,6 +1,6 @@
 include $(TOPDIR)/rules.mk
 
-PKG_BRANCH:=tags/0.8.0
+PKG_BRANCH:=branches/luci-0.8
 
 ifeq ($(DUMP),)
   USELOCAL:=$(shell grep luci ../../../.project 2>/dev/null >/dev/null && echo 1)
@@ -12,10 +12,10 @@ PKG_RELEASE:=1
 ifeq ($(USELOCAL),1)
   PKG_VERSION:=0.8+svn
 else
-  PKG_SOURCE_URL:=http://dev.leipzig.freifunk.net/svn/ff-luci/$(PKG_BRANCH)
+  PKG_SOURCE_URL:=http://svn.luci.subsignal.org/luci/$(PKG_BRANCH)
   ifeq ($(DUMP),)
     PKG_REV:=HEAD
-    PKG_VERSION:=0.8.0
+    PKG_VERSION:=0.8.4
   endif
   PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
   PKG_SOURCE:=$(PKG_SOURCE_SUBDIR).tar.gz
@@ -59,6 +59,18 @@ define Package/luci/libtemplate
   DEPENDS:=+luci-core
 endef
 
+define Package/luci/fftemplate
+  $(call Package/luci/libtemplate)
+  SUBMENU:=LuCI Freifunk Support
+  DEPENDS:=+luci-mod-freifunk
+endef
+
+define Package/luci/httpdtemplate
+  $(call Package/luci/libtemplate)
+  SUBMENU:=LuCIttpd
+  DEPENDS:=+luci-httpd
+endef
+
 define Package/luci/i18ntemplate
   $(call Package/luci/libtemplate)
   SUBMENU:=LuCI Translations
@@ -94,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
@@ -221,6 +238,41 @@ define Package/luci-uvl/install
 endef
 
 
+
+### HTTPD ###
+
+define Package/luci-httpd
+  $(call Package/luci/httpdtemplate)
+  DEPENDS:=+luci-http +libuci
+  TITLE:=Server Core
+endef
+
+define Package/luci-httpd/install
+       $(call Package/luci/install/template,$(1),libs/lucittpd)
+endef
+
+
+
+### Community Packages ###
+
+define Package/luci-freifunk-community
+  $(call Package/luci/fftemplate)
+  DEPENDS+= \
+   +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-mod-txtinfo +PACKAGE_luci-freifunk-community:olsrd-luci-mod-nameservice \
+   +PACKAGE_luci-freifunk-community:kmod-tun +PACKAGE_luci-freifunk-community:ip \
+   +luci-app-olsr
+  TITLE:=Freifunk Community Meta-Package
+endef
+
+define Package/luci-freifunk-community/install
+       $(call Package/luci/install/template,$(1),applications/freifunk-community)
+endef
+
 ### Modules ###
 
 define Package/luci-admin-core
@@ -236,6 +288,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
 
 
@@ -272,11 +325,37 @@ define Package/luci-admin-rpc/install
 endef
 
 
+define Package/luci-mod-freifunk
+  $(call Package/luci/fftemplate)
+  DEPENDS:=+luci-admin-full +luci-json
+  TITLE:=LuCI Freifunk module
+endef
+
+define Package/luci-mod-freifunk/conffiles
+/etc/config/freifunk
+endef
+
+define Package/luci-mod-freifunk/install
+       $(call Package/luci/install/template,$(1),modules/freifunk)
+endef
+
+
+
 ### Applications ###
 
+define Package/luci-app-ffwizard-leipzig
+  $(call Package/luci/fftemplate)
+  TITLE:=Freifunk Leipzig configuration wizard
+endef
+
+define Package/luci-app-ffwizard-leipzig/install
+       $(call Package/luci/install/template,$(1),applications/luci-ffwizard-leipzig)
+endef
+
+
 define Package/luci-app-firewall
   $(call Package/luci/webtemplate)
-  DEPENDS+=+luci-admin-core
+  DEPENDS+=+luci-admin-core +PACKAGE_luci-app-firewall:firewall
   TITLE:=Firewall and Portforwarding application
 endef
 
@@ -287,7 +366,7 @@ endef
 
 define Package/luci-app-olsr
   $(call Package/luci/webtemplate)
-  DEPENDS+=+luci-admin-full +olsrd-luci +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
 
@@ -298,7 +377,7 @@ endef
 
 define Package/luci-app-qos
   $(call Package/luci/webtemplate)
-  DEPENDS+=+luci-admin-core +qos-scripts
+  DEPENDS+=+luci-admin-core +PACKAGE_luci-app-qos:qos-scripts
   TITLE:=Quality of Service configuration module
 endef
 
@@ -307,9 +386,25 @@ define Package/luci-app-qos/install
 endef
 
 
+define Package/luci-app-splash
+  $(call Package/luci/fftemplate)
+  DEPENDS+=+PACKAGE_luci-app-splash:luasocket
+  TITLE:=Freifunk DHCP-Splash application
+endef
+
+define Package/luci-app-splash/conffiles
+/etc/config/luci_splash
+endef
+
+define Package/luci-app-splash/install
+       $(call Package/luci/install/template,$(1),applications/luci-splash)
+endef
+
+
 define Package/luci-app-statistics
   $(call Package/luci/webtemplate)
-  DEPENDS+=+luci-admin-full +collectd +collectd-mod-rrdtool1 +rrdtool1
+  DEPENDS+=+luci-admin-full +PACKAGE_luci-app-statistics:collectd \
+   +PACKAGE_luci-app-statistics:collectd-mod-rrdtool1 +PACKAGE_luci-app-statistics:rrdtool1
   TITLE:=LuCI Statistics Application
 endef
 
@@ -324,7 +419,7 @@ endef
 
 define Package/luci-app-upnp
   $(call Package/luci/webtemplate)
-  DEPENDS+=+luci-admin-core +miniupnpd
+  DEPENDS+=+luci-admin-core +PACKAGE_luci-app-upnp:miniupnpd
   TITLE:=Universal Plug & Play configuration module
 endef
 
@@ -335,7 +430,7 @@ endef
 
 define Package/luci-app-ntpc
   $(call Package/luci/webtemplate)
-  DEPENDS+=+luci-admin-core +ntpclient
+  DEPENDS+=+luci-admin-core +PACKAGE_luci-app-ntpc:ntpclient
   TITLE:=NTP time synchronisation client configuration module
 endef
 
@@ -346,7 +441,7 @@ endef
 
 define Package/luci-app-ddns
   $(call Package/luci/webtemplate)
-  DEPENDS+=+luci-admin-core +ddns-scripts
+  DEPENDS+=+luci-admin-core +PACKAGE_luci-app-ddns:ddns-scripts
   TITLE:=Dynamic DNS configuration module
 endef
 
@@ -357,7 +452,7 @@ endef
 
 define Package/luci-app-samba
   $(call Package/luci/webtemplate)
-  DEPENDS+=+luci-admin-full +samba3
+  DEPENDS+=+luci-admin-full +PACKAGE_luci-app-samba:samba3
   TITLE:=Network Shares - Samba SMB/CIFS module
 endef
 
@@ -368,7 +463,7 @@ endef
 
 define Package/luci-app-uvc_streamer
   $(call Package/luci/webtemplate)
-  DEPENDS+=+luci-admin-full +uvc-streamer
+  DEPENDS+=+luci-admin-full +PACKAGE_luci-app-uvc_streamer:uvc-streamer
   TITLE:=Webcam Streaming - UVC-Streamer module
 endef
 
@@ -377,9 +472,20 @@ define Package/luci-app-uvc_streamer/install
 endef
 
 
+define Package/luci-app-mmc_over_gpio
+  $(call Package/luci/webtemplate)
+  DEPENDS+=+luci-admin-full +PACKAGE_luci-app-mmc_over_gpio:kmod-mmc-over-gpio
+  TITLE:=mmc_over_gpio
+endef
+
+define Package/luci-app-mmc_over_gpio/install
+        $(call Package/luci/install/template,$(1),applications/luci-mmc_over_gpio)
+endef
+
+
 define Package/luci-app-p910nd
   $(call Package/luci/webtemplate)
-  DEPENDS+=+luci-admin-full +p910nd
+  DEPENDS+=+luci-admin-full +PACKAGE_luci-app-p910nd:p910nd
   TITLE:=p910nd - Printer server module
 endef
 
@@ -390,7 +496,7 @@ endef
 
 define Package/luci-app-ushare
   $(call Package/luci/webtemplate)
-  DEPENDS+=+luci-admin-full +ushare
+  DEPENDS+=+luci-admin-full +PACKAGE_luci-app-ushare:ushare
   TITLE:=ushare - UPnP A/V & DLNA Media Server
 endef
 
@@ -400,7 +506,7 @@ endef
 
 define Package/luci-app-hd_idle
   $(call Package/luci/webtemplate)
-  DEPENDS+=+luci-admin-full +hd-idle
+  DEPENDS+=+luci-admin-full +PACKAGE_luci-app-hd_idle:hd-idle
   TITLE:=hd-idle
 endef
 
@@ -410,7 +516,7 @@ endef
 
 define Package/luci-app-tinyproxy
   $(call Package/luci/webtemplate)
-  DEPENDS+=+luci-admin-full +tinyproxy
+  DEPENDS+=+luci-admin-full +PACKAGE_luci-app-tinyproxy:tinyproxy
   TITLE:=Tinyproxy - HTTP(S)-Proxy
 endef
 
@@ -428,6 +534,26 @@ define Package/luci-app-initmgr/install
         $(call Package/luci/install/template,$(1),applications/luci-initmgr)
 endef
 
+define Package/luci-app-livestats
+  $(call Package/luci/webtemplate)
+  DEPENDS+=+luci-admin-core +luci-admin-rpc
+  TITLE:=LuCI Realtime Statistics
+endef
+
+define Package/luci-app-livestats/install
+        $(call Package/luci/install/template,$(1),applications/luci-livestats)
+endef
+
+define Package/luci-app-polipo
+  $(call Package/luci/webtemplate)
+  TITLE:=LuCI Support for the Polipo Proxy
+  DEPENDS+=+luci-admin-core +PACKAGE_luci-app-polipo:polipo
+endef
+
+define Package/luci-app-polipo/install
+        $(call Package/luci/install/template,$(1),applications/luci-polipo)
+endef
+
 
 ### Server Gateway Interfaces ###
 
@@ -440,11 +566,72 @@ 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)
+  DEPENDS:=+luci-web
+  TITLE:=Common base for all themes
+endef
+
+define Package/luci-theme-base/install
+       $(call Package/luci/install/template,$(1),themes/base)
+endef
+
+define Package/luci-theme-fledermaus
+  $(call Package/luci/fftemplate)
+  DEPENDS:=+luci-web
+  TITLE:=Fledermaus Theme
+endef
+
+define Package/luci-theme-fledermaus/install
+       $(call Package/luci/install/template,$(1),themes/fledermaus)
+endef
+
+define Package/luci-theme-freifunk
+  $(call Package/luci/fftemplate)
+  DEPENDS:=+luci-web
+  MAINTAINER:=Stefan Pirwitz <stefan-at-freifunk-bno-dot-de>
+  TITLE:=alternative Freifunk Theme
+endef
+
+define Package/luci-theme-freifunk/install
+        $(call Package/luci/install/template,$(1),themes/freifunk)
+endef
+
+define Package/luci-theme-freifunk-bno
+  $(call Package/luci/fftemplate)
+  DEPENDS:=+luci-web
+  MAINTAINER:=Stefan Pirwitz <stefan-at-freifunk-bno-dot-de>
+  TITLE:=Freifunk Berlin Nordost Theme
+endef
+
+define Package/luci-theme-freifunk-bno/install
+       $(call Package/luci/install/template,$(1),themes/freifunk-bno)
+endef
+
 define Package/luci-theme-openwrt
   $(call Package/luci/thtemplate)
-  TITLE:=OpenWRT.org (default)
+  TITLE:=OpenWrt.org (default)
+  DEPENDS:=+luci-theme-base
 endef
 
 define Package/luci-theme-openwrt/install
@@ -453,7 +640,8 @@ endef
 
 define Package/luci-theme-openwrtlight
   $(call Package/luci/thtemplate)
-  TITLE:=OpenWRT.org - light variant without images
+  TITLE:=OpenWrt.org - light variant without images
+  DEPENDS:=+luci-theme-base
 endef
 
 define Package/luci-theme-openwrtlight/install
@@ -492,6 +680,16 @@ define Package/luci-i18n-french/install
 endef
 
 
+define Package/luci-i18n-italian
+  $(call Package/luci/i18ntemplate)
+  TITLE:=Italian (by Matteo Croce)
+endef
+
+define Package/luci-i18n-italian/install
+       $(call Package/luci/install/template,$(1),i18n/italian)
+endef
+
+
 define Package/luci-i18n-russian
   $(call Package/luci/i18ntemplate)
   TITLE:=Russian (by Skryabin Dmitry)
@@ -512,7 +710,6 @@ define Package/luci-i18n-portuguese_brazilian/install
 endef
 
 
-
 ### Compile ###
 ifneq ($(CONFIG_PACKAGE_luci-core),)
        PKG_SELECTED_MODULES+=libs/core
@@ -545,6 +742,10 @@ ifneq ($(CONFIG_PACKAGE_luci-uvl),)
        PKG_SELECTED_MODULES+=libs/uvl
 endif
 
+ifneq ($(CONFIG_PACKAGE_luci-httpd),)
+       PKG_SELECTED_MODULES+=libs/lucittpd
+endif
+
 ifneq ($(CONFIG_PACKAGE_luci-admin-core),)
        PKG_SELECTED_MODULES+=modules/admin-core
 endif
@@ -557,7 +758,17 @@ endif
 ifneq ($(CONFIG_PACKAGE_luci-admin-rpc),)
        PKG_SELECTED_MODULES+=modules/rpc
 endif
+ifneq ($(CONFIG_PACKAGE_luci-mod-freifunk),)
+       PKG_SELECTED_MODULES+=modules/freifunk
+endif
+
+ifneq ($(CONFIG_PACKAGE_luci-freifunk-community),)
+       PKG_SELECTED_MODULES+=applications/freifunk-community
+endif
 
+ifneq ($(CONFIG_PACKAGE_luci-app-ffwizard-leipzig),)
+       PKG_SELECTED_MODULES+=applications/luci-ffwizard-leipzig
+endif
 ifneq ($(CONFIG_PACKAGE_luci-app-firewall),)
        PKG_SELECTED_MODULES+=applications/luci-fw
 endif
@@ -567,6 +778,9 @@ endif
 ifneq ($(CONFIG_PACKAGE_luci-app-qos),)
        PKG_SELECTED_MODULES+=applications/luci-qos
 endif
+ifneq ($(CONFIG_PACKAGE_luci-app-splash),)
+       PKG_SELECTED_MODULES+=applications/luci-splash
+endif
 ifneq ($(CONFIG_PACKAGE_luci-app-statistics),)
        PKG_SELECTED_MODULES+=applications/luci-statistics
 endif
@@ -585,6 +799,9 @@ endif
 ifneq ($(CONFIG_PACKAGE_luci-app-uvc_streamer),)
        PKG_SELECTED_MODULES+=applications/luci-uvc_streamer
 endif
+ifneq ($(CONFIG_PACKAGE_luci-app-mmc_over_gpio),)
+        PKG_SELECTED_MODULES+=applications/luci-mmc_over_gpio
+endif
 ifneq ($(CONFIG_PACKAGE_luci-app-p910nd),)
         PKG_SELECTED_MODULES+=applications/luci-p910nd
 endif
@@ -600,12 +817,36 @@ endif
 ifneq ($(CONFIG_PACKAGE_luci-app-initmgr),)
        PKG_SELECTED_MODULES+=applications/luci-initmgr
 endif
+ifneq ($(CONFIG_PACKAGE_luci-app-livestats),)
+       PKG_SELECTED_MODULES+=applications/luci-livestats
+endif
+ifneq ($(CONFIG_PACKAGE_luci-app-polipo),)
+       PKG_SELECTED_MODULES+=applications/luci-polipo
+endif
 
 
 ifneq ($(CONFIG_PACKAGE_luci-sgi-cgi),)
        PKG_SELECTED_MODULES+=libs/sgi-cgi
 endif
+ifneq ($(CONFIG_PACKAGE_luci-sgi-luci),)
+       PKG_SELECTED_MODULES+=libs/sgi-luci
+endif
+ifneq ($(CONFIG_PACKAGE_luci-sgi-webuci),)
+       PKG_SELECTED_MODULES+=libs/sgi-webuci
+endif
 
+ifneq ($(CONFIG_PACKAGE_luci-theme-base),)
+       PKG_SELECTED_MODULES+=themes/base
+endif
+ifneq ($(CONFIG_PACKAGE_luci-theme-fledermaus),)
+       PKG_SELECTED_MODULES+=themes/fledermaus
+endif
+ifneq ($(CONFIG_PACKAGE_luci-theme-freifunk-bno),)
+       PKG_SELECTED_MODULES+=themes/freifunk-bno
+endif
+ifneq ($(CONFIG_PACKAGE_luci-theme-freifunk),)
+       PKG_SELECTED_MODULES+=themes/freifunk
+endif
 ifneq ($(CONFIG_PACKAGE_luci-theme-openwrt),)
        PKG_SELECTED_MODULES+=themes/openwrt.org
 endif
@@ -622,6 +863,9 @@ endif
 ifneq ($(CONFIG_PACKAGE_luci-i18n-french),)
        PKG_SELECTED_MODULES+=i18n/french
 endif
+ifneq ($(CONFIG_PACKAGE_luci-i18n-italian),)
+       PKG_SELECTED_MODULES+=i18n/italian
+endif
 ifneq ($(CONFIG_PACKAGE_luci-i18n-russian),)
        PKG_SELECTED_MODULES+=i18n/russian
 endif
@@ -633,7 +877,7 @@ endif
 MAKE_FLAGS += \
        MODULES="$(PKG_SELECTED_MODULES)" \
        LUA_TARGET="$(LUA_TARGET)" \
-       LUA_SHLIBS="-llua -lm" \
+       LUA_SHLIBS="-llua -lm -ldl -lcrypt" \
        CFLAGS="$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include" \
        LDFLAGS="$(TARGET_LDFLAGS) -L$(STAGING_DIR)/usr/lib" \
        OS="Linux"
@@ -650,33 +894,50 @@ $(eval $(call BuildPackage,luci-sys))
 $(eval $(call BuildPackage,luci-web))
 $(eval $(call BuildPackage,luci-uvl))
 
+$(eval $(call BuildPackage,luci-httpd))
+
 $(eval $(call BuildPackage,luci-admin-core))
 $(eval $(call BuildPackage,luci-admin-mini))
 $(eval $(call BuildPackage,luci-admin-full))
 $(eval $(call BuildPackage,luci-admin-rpc))
+$(eval $(call BuildPackage,luci-mod-freifunk))
+
+$(eval $(call BuildPackage,luci-freifunk-community))
 
+$(eval $(call BuildPackage,luci-app-ffwizard-leipzig))
 $(eval $(call BuildPackage,luci-app-firewall))
 $(eval $(call BuildPackage,luci-app-olsr))
 $(eval $(call BuildPackage,luci-app-qos))
+$(eval $(call BuildPackage,luci-app-splash))
 $(eval $(call BuildPackage,luci-app-statistics))
 $(eval $(call BuildPackage,luci-app-upnp))
 $(eval $(call BuildPackage,luci-app-ntpc))
 $(eval $(call BuildPackage,luci-app-ddns))
 $(eval $(call BuildPackage,luci-app-samba))
 $(eval $(call BuildPackage,luci-app-uvc_streamer))
+$(eval $(call BuildPackage,luci-app-mmc_over_gpio))
 $(eval $(call BuildPackage,luci-app-p910nd))
 $(eval $(call BuildPackage,luci-app-ushare))
 $(eval $(call BuildPackage,luci-app-hd_idle))
 $(eval $(call BuildPackage,luci-app-tinyproxy))
 $(eval $(call BuildPackage,luci-app-initmgr))
+$(eval $(call BuildPackage,luci-app-livestats))
+$(eval $(call BuildPackage,luci-app-polipo))
 
 $(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-openwrt))
 $(eval $(call BuildPackage,luci-theme-openwrtlight))
 
 $(eval $(call BuildPackage,luci-i18n-german))
 $(eval $(call BuildPackage,luci-i18n-english))
 $(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))