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
12 PKG_RELEASE
:=$(AUTORELEASE
)
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
:=26b2bead6fd9c18eb736fb0a0f8709922de4e4fedee1122193f82706eb2b9305
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:=+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
83 TARGET_CFLAGS += $(FPIC) -Wno-error
86 ARCH="$(LINUX_KARCH)" \
87 KERNEL_DIR="$(LINUX_DIR)"
90 ARCH="$(LINUX_KARCH)" \
91 KERNEL_DIR="$(LINUX_DIR)"
93 MAKE_INSTALL_FLAGS += \
94 ARCH="$(LINUX_KARCH)" \
95 KERNEL_DIR="$(LINUX_DIR)" \
96 INSTALL_MOD_PATH="$(PKG_INSTALL_DIR)"
99 $(call Build/Prepare/Default)
100 ( cd $(PKG_BUILD_DIR) ; \
101 [ -f ./configure ] || { \
107 define Build/Configure
108 $(call Build/Configure/Default, \
109 $(if $(CONFIG_COOVACHILLI_PROXY),--enable,--disable)-chilliproxy \
110 $(if $(CONFIG_COOVACHILLI_REDIR),--enable,--disable)-chilliredir \
111 $(if $(CONFIG_COOVACHILLI_MINIPORTAL),--enable,--disable)-miniportal \
112 $(if $(CONFIG_COOVACHILLI_USERAGENT),--enable,--disable)-useragent \
113 $(if $(CONFIG_COOVACHILLI_LARGELIMITS),--enable,--disable)-largelimits \
114 $(if $(CONFIG_COOVACHILLI_JSONINTERFACE),--enable,--disable)-libjson \
115 $(if $(CONFIG_COOVACHILLI_JSONINTERFACE),--enable,--disable)-json \
116 $(if $(CONFIG_COOVACHILLI_UAMDOMAINFILE),--enable,--disable)-uamdomainfile \
117 $(if $(CONFIG_IPV6),--with,--without)-ipv6 \
118 $(if $(CONFIG_COOVACHILLI_WOLFSSL),--with,--without)-cyassl \
119 $(if $(CONFIG_COOVACHILLI_OPENSSL),--with,--without)-openssl \
120 $(if $(CONFIG_PACKAGE_kmod-ipt-coova),--with-nfcoova) \
124 define Package/coova-chilli/conffiles
128 define Package/coova-chilli/install
129 $(INSTALL_DIR) $(1)/etc
130 $(INSTALL_CONF) $(PKG_INSTALL_DIR)/etc/chilli.conf $(1)/etc/
131 $(INSTALL_DIR) $(1)/etc/chilli
132 $(CP) $(PKG_INSTALL_DIR)/etc/chilli/* $(1)/etc/chilli/
133 $(INSTALL_DIR) $(1)/usr/sbin
134 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/chilli* $(1)/usr/sbin/
135 $(INSTALL_DIR) $(1)/usr/lib/
136 $(CP) $(PKG_INSTALL_DIR)/usr/lib/lib*.so.* $(1)/usr/lib/
137 $(if $(CONFIG_PACKAGE_kmod-ipt-coova), \
138 $(INSTALL_DIR) $(1)/usr/lib/iptables; \
139 $(CP) $(PKG_INSTALL_DIR)/usr/lib/iptables/lib*.so $(1)/usr/lib/iptables/ \
141 $(INSTALL_DIR) $(1)/etc/init.d
142 $(INSTALL_BIN) files/chilli.init $(1)/etc/init.d/chilli
143 $(INSTALL_DIR) $(1)/etc/config
144 $(INSTALL_DATA) files/chilli.config $(1)/etc/config/chilli
147 $(eval $(call BuildPackage,coova-chilli))
148 $(eval $(call KernelPackage,ipt-coova))