2e6537779be1d0c5be92c75093ff5b5b56b6fff9
[project/luci.git] / contrib / package / ffluci / Makefile
1 include $(TOPDIR)/rules.mk
2
3 PKG_BRANCH:=trunk
4 PKG_SOURCE_URL:=https://dev.leipzig.freifunk.net/svn/ff-luci/$(PKG_BRANCH)
5 PKG_REV:=$(shell LC_ALL=C svn info ${PKG_SOURCE_URL} | sed -ne's/^Last Changed Rev: //p')
6
7 PKG_NAME:=ffluci
8 PKG_VERSION:=0.4+svn$(PKG_REV)
9 PKG_RELEASE:=1
10
11 PKG_SOURCE:=$(PKG_SOURCE_SUBDIR).tar.gz
12 PKG_SOURCE_PROTO:=svn
13 PKG_SOURCE_VERSION:=$(PKG_REV)
14 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
15
16 PKG_BUILD_DEPENDS:=lua-luci
17
18 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
19 PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
20
21 # LUA_TARGET:=compile LUAC=$(BUILD_DIR_HOST)/lua-luci/luac
22 LUA_TARGET:=source
23
24
25 include $(INCLUDE_DIR)/package.mk
26
27 define Build/Configure
28 endef
29
30 define Build/Compile
31 $(MAKE) -C$(PKG_BUILD_DIR) build LUA_TARGET=$(LUA_TARGET)
32 endef
33
34
35 define Package/ffluci/template
36 SECTION:=admin
37 CATEGORY:=Administration
38 TITLE:=FFLuCI - Freifunk Lua Configuration Interface
39 URL:=http://luci.freifunk-halle.net/
40 MAINTAINER:=Steven Barth <steven-at-midlink-dot-org>
41 endef
42
43 define Package/ffluci/install/template
44 $(CP) $(PKG_BUILD_DIR)/$(2)/dist/* $(1)/ -R
45
46 for i in $(PKG_BUILD_DIR)/$(2)/dist/usr/bin/*; do $(INSTALL_BIN) $$i $(1)/usr/bin/; done
47 for i in $(PKG_BUILD_DIR)/$(2)/dist/usr/sbin/*; do $(INSTALL_BIN) $$i $(1)/usr/sbin/; done
48 for i in $(PKG_BUILD_DIR)/$(2)/dist/bin/*; do $(INSTALL_BIN) $$i $(1)/bin/; done
49 for i in $(PKG_BUILD_DIR)/$(2)/dist/sbin/*; do $(INSTALL_BIN) $$i $(1)/sbin/; done
50 endef
51
52
53 define Package/ffluci
54 $(call Package/ffluci/template)
55 MENU:=1
56 DEPENDS:=+lua-luci +luaposix +luci-addons
57 endef
58
59 define Package/ffluci/conffiles
60 /etc/config/luci
61 endef
62
63 define Package/ffluci/install
64 $(call Package/ffluci/install/template,$(1),core)
65 $(call Package/ffluci/install/template,$(1),themes/fledermaus)
66 endef
67
68
69 ### Community Packages ###
70
71 define Package/ffluci-ff-halle
72 $(call Package/ffluci/template)
73 DEPENDS:=ffluci \
74 +ffluci-sgi-haserl +ffluci-mod-freifunk +ffluci-app-firewall +ffluci-app-splash \
75 +olsrd +olsrd-mod-dyn-gw +olsrd-mod-txtinfo +olsrd-mod-nameservice \
76 +kmod-tun
77 TITLE:=Freifunk Halle Community Meta-Package
78 endef
79
80 define Package/ffluci-ff-halle/install
81 endef
82
83
84 define Package/ffluci-ff-leipzig
85 $(call Package/ffluci/template)
86 DEPENDS:=ffluci \
87 +ffluci-sgi-haserl +ffluci-mod-freifunk +ffluci-app-firewall +ffluci-app-splash \
88 +olsrd +olsrd-mod-dyn-gw +olsrd-mod-txtinfo +olsrd-mod-nameservice \
89 +kmod-tun
90 TITLE:=Freifunk Leipzig Community Meta-Package
91 endef
92
93 define Package/ffluci-ff-leipzig/install
94 $(call Package/ffluci/install/template,$(1),applications/community-leipzig)
95 endef
96
97
98
99 ### Modules ###
100
101 define Package/ffluci-mod-admin-core
102 $(call Package/ffluci/template)
103 DEPENDS:=ffluci
104 TITLE:=Core administrative pages
105 endef
106
107 define Package/ffluci-mod-admin-core/install
108 $(call Package/ffluci/install/template,$(1),modules/admin-core)
109 endef
110
111
112 define Package/ffluci-mod-freifunk
113 $(call Package/ffluci/template)
114 DEPENDS:=ffluci +ffluci-mod-admin-core
115 TITLE:=Freifunk public and administrative pages
116 endef
117
118 define Package/ffluci-mod-freifunk/conffiles
119 /etc/config/freifunk
120 endef
121
122 define Package/ffluci-mod-freifunk/install
123 $(call Package/ffluci/install/template,$(1),modules/freifunk)
124 endef
125
126
127
128 ### Applications ###
129
130 define Package/ffluci-app-firewall
131 $(call Package/ffluci/template)
132 DEPENDS:=ffluci +ffluci-mod-admin-core
133 TITLE:=Firewall and Portforwarding application
134 endef
135
136 define Package/ffluci-app-firewall/conffiles
137 /etc/config/luci_fw
138 endef
139
140 define Package/ffluci-app-firewall/install
141 $(call Package/ffluci/install/template,$(1),applications/luci-fw)
142 endef
143
144
145 define Package/ffluci-app-splash
146 $(call Package/ffluci/template)
147 DEPENDS:=ffluci +ffluci-mod-freifunk +ffluci-sgi-haserl +iptables-mod-nat
148 TITLE:=Freifunk DHCP-Splash application
149 endef
150
151 define Package/ffluci-app-splash/conffiles
152 /etc/config/luci_splash
153 endef
154
155 define Package/ffluci-app-splash/install
156 $(call Package/ffluci/install/template,$(1),applications/luci-splash)
157 endef
158
159
160
161 ### Server Gateway Interfaces ###
162
163 define Package/ffluci-sgi-haserl
164 $(call Package/ffluci/template)
165 DEPENDS:=ffluci +haserl-lua
166 TITLE:=SGI for Haserl
167 endef
168
169 define Package/ffluci-sgi-haserl/install
170 $(call Package/ffluci/install/template,$(1),applications/sgi-haserl)
171 endef
172
173
174 define Package/ffluci-sgi-webuci
175 $(call Package/ffluci/template)
176 DEPENDS:=ffluci
177 TITLE:=SGI for Webuci
178 endef
179
180 define Package/ffluci-sgi-webuci/install
181 $(call Package/ffluci/install/template,$(1),applications/sgi-webuci)
182 endef
183
184
185
186
187 $(eval $(call BuildPackage,ffluci))
188
189
190 $(eval $(call BuildPackage,ffluci-ff-halle))
191 $(eval $(call BuildPackage,ffluci-ff-leipzig))
192
193 $(eval $(call BuildPackage,ffluci-mod-admin-core))
194 $(eval $(call BuildPackage,ffluci-mod-freifunk))
195
196 $(eval $(call BuildPackage,ffluci-app-firewall))
197 $(eval $(call BuildPackage,ffluci-app-splash))
198
199 $(eval $(call BuildPackage,ffluci-sgi-haserl))
200 $(eval $(call BuildPackage,ffluci-sgi-webuci))