X-Git-Url: http://git.openwrt.org/?p=project%2Fluci.git;a=blobdiff_plain;f=contrib%2Fpackage%2Fffluci%2FMakefile;h=32d82b500b7000e837ba42fa6f87180b96deb695;hp=677c865ce1eac67eb3394dfc3c5157eadea70584;hb=aa9ccf77c6648515ba58c37b9345cdbd561028db;hpb=68d142e79287e9b5e9f980f37b546070a38fc478 diff --git a/contrib/package/ffluci/Makefile b/contrib/package/ffluci/Makefile index 677c865ce1..32d82b500b 100644 --- a/contrib/package/ffluci/Makefile +++ b/contrib/package/ffluci/Makefile @@ -1,47 +1,205 @@ include $(TOPDIR)/rules.mk +PKG_BRANCH:=trunk +PKG_SOURCE_URL:=https://dev.leipzig.freifunk.net/svn/ff-luci/$(PKG_BRANCH) +PKG_REV:=$(shell LC_ALL=C svn info ${PKG_SOURCE_URL} | sed -ne's/^Last Changed Rev: //p') + PKG_NAME:=ffluci -PKG_VERSION:=0.2 +PKG_VERSION:=0.4+svn$(PKG_REV) PKG_RELEASE:=1 +PKG_SOURCE:=$(PKG_SOURCE_SUBDIR).tar.gz +PKG_SOURCE_PROTO:=svn +PKG_SOURCE_VERSION:=$(PKG_REV) +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) + +PKG_BUILD_DEPENDS:=lua-luci + PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install -MAKE_ACTION:=dist-source +# LUA_TARGET:=compile LUAC=$(BUILD_DIR_HOST)/lua-luci/luac +LUA_TARGET:=source + include $(INCLUDE_DIR)/package.mk -define Package/ffluci +define Build/Configure +endef + +define Build/Compile + $(MAKE) -C$(PKG_BUILD_DIR) build LUA_TARGET=$(LUA_TARGET) +endef + + +define Package/ffluci/template SECTION:=admin CATEGORY:=Administration - TITLE:=FFLuCI - DEPENDS:=+liblua +luafilesystem +haserl + TITLE:=FFLuCI - Freifunk Lua Configuration Interface + URL:=http://luci.freifunk-halle.net/ MAINTAINER:=Steven Barth endef -define Build/Prepare - mkdir -p $(PKG_BUILD_DIR) - $(CP) ./src/* $(PKG_BUILD_DIR)/ -R +define Package/ffluci/install/template + $(CP) $(PKG_BUILD_DIR)/$(2)/dist/* $(1)/ -R + + for i in $(PKG_BUILD_DIR)/$(2)/dist/usr/bin/*; do $(INSTALL_BIN) $$i $(1)/usr/bin/; done + for i in $(PKG_BUILD_DIR)/$(2)/dist/usr/sbin/*; do $(INSTALL_BIN) $$i $(1)/usr/sbin/; done + for i in $(PKG_BUILD_DIR)/$(2)/dist/bin/*; do $(INSTALL_BIN) $$i $(1)/bin/; done + for i in $(PKG_BUILD_DIR)/$(2)/dist/sbin/*; do $(INSTALL_BIN) $$i $(1)/sbin/; done endef -define Build/Configure + +define Package/ffluci + $(call Package/ffluci/template) + MENU:=1 + DEPENDS:=+lua-luci +luaposix +luci-addons endef -define Build/Compile - $(MAKE) -C $(PKG_BUILD_DIR) $(MAKE_ACTION) +define Package/ffluci/conffiles +/etc/config/luci endef define Package/ffluci/install - $(INSTALL_DIR) $(1)/usr/lib/lua - $(INSTALL_DIR) $(1)/www/cgi-bin - $(INSTALL_DIR) $(1)/www/ffluci - $(CP) $(PKG_BUILD_DIR)/dist/* $(1)/usr/lib/lua/ -R - $(CP) $(PKG_BUILD_DIR)/contrib/media $(1)/www/ffluci/ -R - $(INSTALL_BIN) $(PKG_BUILD_DIR)/contrib/ffluci $(1)/www/cgi-bin - $(INSTALL_BIN) $(PKG_BUILD_DIR)/contrib/index.cgi $(1)/www/cgi-bin - $(CP) $(PKG_BUILD_DIR)/contrib/ffluci.uci $(1)/etc/config/luci - $(CP) -a ./ipkg/ffluci.postinst $(1)/CONTROL/postinst - $(CP) -a ./ipkg/conffiles $(1)/CONTROL/conffiles + $(call Package/ffluci/install/template,$(1),core) + $(call Package/ffluci/install/template,$(1),themes/fledermaus) +endef + + + +### Meta Packages ### + +define Package/ffluci-freifunk-meta + $(call Package/ffluci/template) + DEPENDS:=+ffluci +ffluci-sgi-haserl +ffluci-freifunk +ffluci-firewall +ffluci-splash + TITLE:=Freifunk Meta-Package +endef + +define Package/ffluci-meta/install +endef + + +define Package/ffluci-freifunk-halle + $(call Package/ffluci/template) + DEPENDS:=+ffluci-freifunk-meta +kmod-tun + TITLE:=Community Meta-Package Halle +endef + +define Package/ffluci-freifunk-halle/install +endef + + +define Package/ffluci-freifunk-leipzig + $(call Package/ffluci/template) + DEPENDS:=+ffluci-freifunk-meta +kmod-tun + TITLE:=Community Meta-Package Leipzig +endef + +define Package/ffluci-freifunk-leipzig/install + $(call Package/ffluci/install/template,$(1),applications/community-leipzig) +endef + + + +### Modules ### + +define Package/ffluci-module-admin-core + $(call Package/ffluci/template) + DEPENDS:=+ffluci + TITLE:=Core Administrative pages for FFLuCI +endef + +define Package/ffluci-module-admin-core/install + $(call Package/ffluci/install/template,$(1),modules/admin-core) +endef + + +define Package/ffluci-module-freifunk + $(call Package/ffluci/template) + DEPENDS:=+ffluci +ffluci-module-admin-core + TITLE:=Freifunk public and configuration pages +endef + +define Package/ffluci-module-freifunk/conffiles +/etc/config/freifunk +endef + +define Package/ffluci-module-freifunk/install + $(call Package/ffluci/install/template,$(1),modules/freifunk) +endef + + + +### Applications ### + +define Package/ffluci-firewall + $(call Package/ffluci/template) + DEPENDS:=+ffluci +ffluci-module-admin-core + TITLE:=Firewall and Portforwarding module endef +define Package/ffluci-firewall/conffiles +/etc/config/luci_fw +endef + +define Package/ffluci-firewall/install + $(call Package/ffluci/install/template,$(1),applications/luci-fw) +endef + + +define Package/ffluci-splash + $(call Package/ffluci/template) + DEPENDS:=+ffluci +ffluci-freifunk +ffluci-sgi-haserl +iptables-mod-nat + TITLE:=Freifunk DHCP-Splash +endef + +define Package/ffluci-splash/conffiles +/etc/config/luci_splash +endef + +define Package/ffluci-splash/install + $(call Package/ffluci/install/template,$(1),applications/luci-splash) +endef + + + +### Server Gateway Interfaces ### + +define Package/ffluci-sgi-haserl + $(call Package/ffluci/template) + DEPENDS:=+ffluci +haserl-lua + TITLE:=SGI for Haserl on top of Busybox httpd +endef + +define Package/ffluci-sgi-haserl/install + $(call Package/ffluci/install/template,$(1),applications/sgi-haserl) +endef + + +define Package/ffluci-sgi-webuci + $(call Package/ffluci/template) + DEPENDS:=+ffluci + TITLE:=SGI for Webuci +endef + +define Package/ffluci-sgi-webuci/install + $(call Package/ffluci/install/template,$(1),applications/sgi-webuci) +endef + + + + $(eval $(call BuildPackage,ffluci)) + +$(eval $(call BuildPackage,ffluci-freifunk-meta)) +$(eval $(call BuildPackage,ffluci-freifunk-halle)) +$(eval $(call BuildPackage,ffluci-freifunk-leipzig)) + +$(eval $(call BuildPackage,ffluci-module-admin-core)) +$(eval $(call BuildPackage,ffluci-module-freifunk)) + +$(eval $(call BuildPackage,ffluci-firewall)) +$(eval $(call BuildPackage,ffluci-splash)) + +$(eval $(call BuildPackage,ffluci-sgi-haserl)) +$(eval $(call BuildPackage,ffluci-sgi-webuci)) \ No newline at end of file