2 # Copyright (C) 2007-2018 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 include $(TOPDIR
)/rules.mk
10 PKG_NAME
:=coova-chilli
14 PKG_SOURCE
:=$(PKG_NAME
)-$(PKG_VERSION
).
tar.gz
15 PKG_SOURCE_URL
:=https
://codeload.github.com
/coova
/coova-chilli
/tar.gz
/$(PKG_VERSION
)?
16 PKG_HASH
:=75e15fd00a870b8a95df1440977c688a05a109f90b57bf679b931101d427d0fb
18 PKG_MAINTAINER
:=Jaehoon You
<teslamint@gmail.com
>
19 PKG_LICENSE
:=GPL-2.0
-or-later
20 PKG_LICENSE_FILES
:=COPYING
26 PKG_CONFIG_DEPENDS
:= \
27 COOVACHILLI_JSONINTERFACE \
28 COOVACHILLI_LARGELIMITS \
29 COOVACHILLI_MINIPORTAL \
34 COOVACHILLI_UAMDOMAINFILE \
35 COOVACHILLI_USERAGENT \
39 include $(INCLUDE_DIR
)/package.mk
40 include $(INCLUDE_DIR
)/kernel.mk
42 define Package
/coova-chilli
43 SUBMENU
:=Captive Portals
46 DEPENDS
:=+kmod-tun
+librt
+COOVACHILLI_MINIPORTAL
:haserl \
47 +COOVACHILLI_WOLFSSL
:libwolfssl
+COOVACHILLI_OPENSSL
:libopenssl \
48 +COOVACHILLI_JSONINTERFACE
:libjson-c
49 TITLE
:=Wireless LAN HotSpot controller
(Coova Chilli Version
)
50 URL
:=https
://coova.github.io
/
54 define Package
/coova-chilli
/description
55 CoovaChilli is an open source access controller for wireless LAN
56 access points and is based on ChilliSpot. It is used for authenticating
57 users of a wireless
(or wired
) LAN. It supports web based login
(UAM
)
58 which is today
's standard for public HotSpots and it supports Wireless
59 Protected Access (WPA) which is the standard of the future.
60 Authentication, authorization and accounting (AAA) is handled by your
61 favorite radius server.
64 define Package/coova-chilli/config
65 source "$(SOURCE)/Config.in"
68 define KernelPackage/ipt-coova
69 URL:=http://www.coova.org/CoovaChilli
70 SUBMENU:=Netfilter Extensions
71 DEPENDS:=coova-chilli +kmod-ipt-core +libxtables
72 TITLE:=Coova netfilter module
73 FILES:=$(PKG_BUILD_DIR)/src/linux/xt_*.$(LINUX_KMOD_SUFFIX)
74 AUTOLOAD:=$(call AutoProbe,xt_coova)
77 define KernelPackage/ipt-coova/description
78 Netfilter kernel module for CoovaChilli
85 TARGET_CFLAGS += $(FPIC) -Wno-error
88 ARCH="$(LINUX_KARCH)" \
89 KERNEL_DIR="$(LINUX_DIR)"
92 ARCH="$(LINUX_KARCH)" \
93 KERNEL_DIR="$(LINUX_DIR)"
95 MAKE_INSTALL_FLAGS += \
96 ARCH="$(LINUX_KARCH)" \
97 KERNEL_DIR="$(LINUX_DIR)" \
98 INSTALL_MOD_PATH="$(PKG_INSTALL_DIR)"
101 $(call Build/Prepare/Default)
102 ( cd $(PKG_BUILD_DIR) ; \
103 [ -f ./configure ] || { \
109 define Build/Configure
110 $(call Build/Configure/Default, \
111 $(if $(CONFIG_COOVACHILLI_PROXY),--enable,--disable)-chilliproxy \
112 $(if $(CONFIG_COOVACHILLI_REDIR),--enable,--disable)-chilliredir \
113 $(if $(CONFIG_COOVACHILLI_MINIPORTAL),--enable,--disable)-miniportal \
114 $(if $(CONFIG_COOVACHILLI_USERAGENT),--enable,--disable)-useragent \
115 $(if $(CONFIG_COOVACHILLI_LARGELIMITS),--enable,--disable)-largelimits \
116 $(if $(CONFIG_COOVACHILLI_JSONINTERFACE),--enable,--disable)-libjson \
117 $(if $(CONFIG_COOVACHILLI_JSONINTERFACE),--enable,--disable)-json \
118 $(if $(CONFIG_COOVACHILLI_UAMDOMAINFILE),--enable,--disable)-uamdomainfile \
119 $(if $(CONFIG_IPV6),--with,--without)-ipv6 \
120 $(if $(CONFIG_COOVACHILLI_WOLFSSL),--with,--without)-cyassl \
121 $(if $(CONFIG_COOVACHILLI_OPENSSL),--with,--without)-openssl \
122 $(if $(CONFIG_PACKAGE_kmod-ipt-coova),--with-nfcoova) \
126 define Package/coova-chilli/conffiles
130 define Package/coova-chilli/install
131 $(INSTALL_DIR) $(1)/etc
132 $(INSTALL_CONF) $(PKG_INSTALL_DIR)/etc/chilli.conf $(1)/etc/
133 $(INSTALL_DIR) $(1)/etc/chilli
134 $(CP) $(PKG_INSTALL_DIR)/etc/chilli/* $(1)/etc/chilli/
135 $(INSTALL_DIR) $(1)/etc/hotplug.d/iface
136 $(INSTALL_DATA) ./files/chilli.hotplug $(1)/etc/hotplug.d/iface/30-chilli
137 $(INSTALL_DIR) $(1)/usr/sbin
138 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/chilli* $(1)/usr/sbin/
139 $(INSTALL_DIR) $(1)/usr/lib/
140 $(CP) $(PKG_INSTALL_DIR)/usr/lib/lib*.so.* $(1)/usr/lib/
141 $(if $(CONFIG_PACKAGE_kmod-ipt-coova), \
142 $(INSTALL_DIR) $(1)/usr/lib/iptables; \
143 $(CP) $(PKG_INSTALL_DIR)/usr/lib/iptables/lib*.so $(1)/usr/lib/iptables/ \
145 $(INSTALL_DIR) $(1)/etc/init.d
146 $(INSTALL_BIN) files/chilli.init $(1)/etc/init.d/chilli
147 $(INSTALL_DIR) $(1)/etc/config
148 $(INSTALL_DATA) files/chilli.config $(1)/etc/config/chilli
151 $(eval $(call BuildPackage,coova-chilli))
152 $(eval $(call KernelPackage,ipt-coova))