2 # Copyright (C) 2006 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
9 include $(TOPDIR
)/rules.mk
15 PKG_SOURCE
:=$(PKG_NAME
)-$(PKG_VERSION
).
tar.gz
16 PKG_SOURCE_URL
:=ftp
://ftp.freeradius.org
/pub
/radius
/ \
17 http
://freeradius.portal-to-web.de
/ \
18 ftp
://ftp.uk.freeradius.org
/pub
/radius
/
22 PKG_BUILD_DIR
:=$(BUILD_DIR
)/$(PKG_NAME
)-$(PKG_VERSION
)
23 PKG_INSTALL_DIR
:=$(PKG_BUILD_DIR
)/ipkg-install
25 include $(INCLUDE_DIR
)/package.mk
27 define Package
/freeradius
/Default
30 URL
:=http
://www.freeradius.org
/
33 define Package
/freeradius
34 $(call Package
/freeradius
/Default
)
35 DEPENDS
:=+libltdl
+libopenssl
+libpthread
+libreadline
36 TITLE
:=A flexible RADIUS server
40 define Package
/freeradius
/conffiles
41 /etc
/freeradius
/clients.conf
42 /etc
/freeradius
/radiusd.conf
45 define Package
/freeradius-democerts
46 $(call Package
/freeradius
/Default
)
48 TITLE
:=Demo certificates to
test the server
51 define Package
/freeradius-mod-chap
52 $(call Package
/freeradius
/Default
)
57 define Package
/freeradius-mod-detail
58 $(call Package
/freeradius
/Default
)
60 TITLE
:=Detailed accounting module
63 define Package
/freeradius-mod-eap
64 $(call Package
/freeradius
/Default
)
66 TITLE
:=Base EAP module
69 define Package
/freeradius-mod-eap
/conffiles
70 /etc
/freeradius
/eap.conf
73 define Package
/freeradius-mod-eap-gtc
74 $(call Package
/freeradius
/Default
)
75 DEPENDS
:=freeradius-mod-eap
79 define Package
/freeradius-mod-eap-md5
80 $(call Package
/freeradius
/Default
)
81 DEPENDS
:=freeradius-mod-eap
85 define Package
/freeradius-mod-eap-mschapv2
86 $(call Package
/freeradius
/Default
)
87 DEPENDS
:=freeradius-mod-eap
88 TITLE
:=EAP
/MS-CHAPv2 module
91 define Package
/freeradius-mod-eap-peap
92 $(call Package
/freeradius
/Default
)
93 DEPENDS
:=freeradius-mod-eap
94 TITLE
:=EAP
/PEAP module
97 define Package
/freeradius-mod-eap-tls
98 $(call Package
/freeradius
/Default
)
99 DEPENDS
:=freeradius-mod-eap
100 TITLE
:=EAP
/TLS module
103 define Package
/freeradius-mod-eap-ttls
104 $(call Package
/freeradius
/Default
)
105 DEPENDS
:=freeradius-mod-eap-tls
106 TITLE
:=EAP
/TTLS module
109 define Package
/freeradius-mod-files
110 $(call Package
/freeradius
/Default
)
112 TITLE
:=Module using local files for authorization
115 define Package
/freeradius-mod-files
/conffiles
116 /etc
/freeradius
/acct_users
117 /etc
/freeradius
/preproxy_users
118 /etc
/freeradius
/users
121 define Package
/freeradius-mod-ldap
122 $(call Package
/freeradius
/Default
)
123 DEPENDS
:=freeradius
+libopenldap
127 define Package
/freeradius-mod-ldap
/conffiles
128 /etc
/freeradius
/ldap.attrmap
131 define Package
/freeradius-mod-mschap
132 $(call Package
/freeradius
/Default
)
134 TITLE
:=MS-CHAP and MS-CHAPv2 module
137 define Package
/freeradius-mod-pap
138 $(call Package
/freeradius
/Default
)
143 define Package
/freeradius-mod-preprocess
144 $(call Package
/freeradius
/Default
)
146 TITLE
:=Request pre-processing module
149 define Package
/freeradius-mod-preprocess
/conffiles
150 /etc
/freeradius
/hints
151 /etc
/freeradius
/huntgroups
154 define Package
/freeradius-mod-realm
155 $(call Package
/freeradius
/Default
)
157 TITLE
:=Realms handling module
160 define Package
/freeradius-mod-realm
/conffiles
161 /etc
/freeradius
/proxy.conf
164 define Package
/freeradius-mod-sql
165 $(call Package
/freeradius
/Default
)
167 TITLE
:=Base SQL module
170 define Package
/freeradius-mod-sql-mysql
171 $(call Package
/freeradius
/Default
)
172 DEPENDS
:=freeradius-mod-sql
+libmysqlclient
176 define Package
/freeradius-mod-sql-pgsql
177 $(call Package
/freeradius
/Default
)
178 DEPENDS
:=freeradius-mod-sql
+libpq
179 TITLE
:=PostgreSQL module
182 define Package
/freeradius-mod-sqlcounter
183 $(call Package
/freeradius
/Default
)
184 DEPENDS
:=freeradius-mod-sql
185 TITLE
:=Generic SQL Counter module
188 define Package
/freeradius-utils
189 $(call Package
/freeradius
/Default
)
191 TITLE
:=Misc. client utilities
194 PKG_CONFIGURE_ARGS
:= \
197 --disable-developer \
198 --with-openssl-includes
="$(STAGING_DIR)/usr/include" \
199 --with-openssl-libraries
="$(STAGING_DIR)/usr/lib" \
200 --enable-strict-dependencies \
201 --with-raddbdir
=/etc
/freeradius \
204 --with-experimental-modules \
205 --without-rlm_attr-rewrite \
206 --without-rlm_checkval \
207 --without-rlm_counter \
210 --without-rlm_eap_sim \
211 --without-rlm_example \
212 --without-rlm_ippool \
217 --without-rlm_python \
218 --without-rlm_radutmp \
221 --with-rlm_sqlcounter \
222 --without-rlm_sqlhpwippool \
223 --without-rlm_sqlippool \
224 --without-rlm_sql_db2 \
225 --without-rlm_sql_firebird \
226 --without-rlm_sql_freetds \
227 --without-rlm_sql_iodbc \
228 --without-rlm_sql_oracle \
229 --without-rlm_sql_sybase \
230 --without-rlm_sql_unixodbc \
231 --without-rlm_sql_log \
235 freeradius freeradius.internal \
236 rfc2865 rfc2866 rfc2867 rfc2868 rfc2869 rfc3162 rfc3576 rfc3580 \
237 rfc4372 rfc4675 rfc4679 \
241 ifneq ($(SDK
)$(CONFIG_PACKAGE_freeradius-mod-ldap
),)
242 PKG_CONFIGURE_ARGS
+= \
243 --with-rlm_ldap-include-dir
="$(STAGING_DIR)/usr/include" \
244 --with-rlm_ldap-lib-dir
="$(STAGING_DIR)/usr/lib"
245 PKG_CONFIGURE_LIBS
+= -lcrypto
-lssl
247 PKG_CONFIGURE_ARGS
+= --without-rlm_ldap
250 ifneq ($(SDK
)$(CONFIG_PACKAGE_freeradius-mod-sql-mysql
),)
251 PKG_CONFIGURE_ARGS
+= \
252 --with-mysql-include-dir
="$(STAGING_DIR)/usr/include" \
253 --with-mysql-lib-dir
="$(STAGING_DIR)/usr/lib/mysql" \
255 PKG_CONFIGURE_LIBS
+= -lz
257 PKG_CONFIGURE_ARGS
+= --without-rlm_sql_mysql
260 ifneq ($(SDK
)$(CONFIG_PACKAGE_freeradius-mod-sql-pgsql
),)
261 PKG_CONFIGURE_ARGS
+= \
262 --with-rlm_sql_postgresql-include-dir
="$(STAGING_DIR)/usr/include" \
263 --with-rlm_sql_postgresql-lib-dir
="$(STAGING_DIR)/usr/lib"
265 PKG_CONFIGURE_ARGS
+= --without-rlm_sql_postgresql
268 ifneq ($(SDK
)$(CONFIG_PACKAGE_freeradius-mod-eap-peap
),)
269 PKG_CONFIGURE_ARGS
+= --with-rlm_eap_peap
270 PKG_CONFIGURE_LIBS
+= -lcrypto
-lssl
272 PKG_CONFIGURE_ARGS
+= --without-rlm_eap_peap
275 ifneq ($(SDK
)$(CONFIG_PACKAGE_freeradius-mod-eap-tls
),)
276 PKG_CONFIGURE_ARGS
+= --with-rlm_eap_tls
277 PKG_CONFIGURE_LIBS
+= -lcrypto
-lssl
279 PKG_CONFIGURE_ARGS
+= --without-rlm_eap_tls
282 ifneq ($(SDK
)$(CONFIG_PACKAGE_freeradius-mod-eap-ttls
),)
283 PKG_CONFIGURE_ARGS
+= --with-rlm_eap_ttls
284 PKG_CONFIGURE_LIBS
+= -lcrypto
-lssl
286 PKG_CONFIGURE_ARGS
+= --without-rlm_eap_ttls
289 define Build
/Configure
290 $(call Build
/Configure
/Default
, \
292 --libexecdir
=/usr
/lib
/ \
293 $(PKG_CONFIGURE_ARGS
) \
295 LDFLAGS
="$$$$LDFLAGS -L$(PKG_INSTALL_DIR)/usr/lib/" \
296 LIBS
="$(PKG_CONFIGURE_LIBS)" \
302 $(MAKE
) -C
$(PKG_BUILD_DIR
) \
303 R
="$(PKG_INSTALL_DIR)" \
308 define Package
/freeradius
/install
309 $(INSTALL_DIR
) $(1)/etc
/freeradius
310 for f in clients.conf dictionary radiusd.conf
; do \
311 $(CP
) $(PKG_INSTALL_DIR
)/etc
/freeradius
/$$$${f} $(1)/etc
/freeradius
/ ; \
313 $(INSTALL_DIR
) $(1)/usr
/share
/freeradius
314 $(CP
) $(PKG_INSTALL_DIR
)/usr
/share
/freeradius
/dictionary
$(1)/usr
/share
/freeradius
/
315 $(SED
) "s,^\(\$$$$INCLUDE\),#\1,g" $(1)/usr
/share
/freeradius
/dictionary
316 for f in
$(PKG_DICTIONARIES
); do \
317 $(CP
) $(PKG_INSTALL_DIR
)/usr
/share
/freeradius
/dictionary.
$$$${f} $(1)/usr
/share
/freeradius
/ ; \
318 $(SED
) "s,^#\(\$$$$INCLUDE dictionary\.$$$${f}\),\1,g" $(1)/usr
/share
/freeradius
/dictionary
; \
320 $(INSTALL_DIR
) $(1)/usr
/lib
/
321 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/libradius
{,-*}.so
$(1)/usr
/lib
/
322 $(INSTALL_DIR
) $(1)/usr
/sbin
323 $(CP
) $(PKG_INSTALL_DIR
)/usr
/sbin
/radiusd
$(1)/usr
/sbin
/
324 $(INSTALL_DIR
) $(1)/etc
/init.d
325 $(INSTALL_BIN
) .
/files
/radiusd.init
$(1)/etc
/init.d
/radiusd
328 define Package
/freeradius-democerts
/install
329 $(INSTALL_DIR
) $(1)/etc
/freeradius
330 $(CP
) $(PKG_INSTALL_DIR
)/etc
/freeradius
/certs
$(1)/etc
/freeradius
/
331 rm -rf
$(1)/etc
/freeradius
/certs
/README
332 rm -rf
$(1)/etc
/freeradius
/certs
/new
*
333 rm -rf
$(1)/etc
/freeradius
/certs
/demoCA
/index
*
334 rm -rf
$(1)/etc
/freeradius
/certs
/demoCA
/serial
*
337 define Package
/freeradius-utils
/install
338 $(INSTALL_DIR
) $(1)/usr
/bin
339 for f in radclient radeapclient
; do \
340 $(CP
) $(PKG_INSTALL_DIR
)/usr
/bin
/$$$${f} $(1)/usr
/bin
/ ; \
345 define Package
/$(1)/install
346 [ -z
"$(2)" ] ||
$(INSTALL_DIR
) $$(1)/usr
/lib
/
348 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/$$$$$$$${m}{,-*}.so
$$(1)/usr
/lib
/ ; \
350 [ -z
"$(3)" ] ||
$(INSTALL_DIR
) $$(1)/etc
/freeradius
352 $(CP
) $(PKG_INSTALL_DIR
)/etc
/freeradius
/$$$$$$$${f} $$(1)/etc
/freeradius
/ ; \
356 $$(eval
$$(call BuildPackage
,$(1)))
359 $(eval
$(call BuildPackage
,freeradius
))
360 $(eval
$(call BuildPackage
,freeradius-democerts
))
361 $(eval
$(call BuildPlugin
,freeradius-mod-chap
,rlm_chap
,))
362 $(eval
$(call BuildPlugin
,freeradius-mod-detail
,rlm_detail
,))
363 $(eval
$(call BuildPlugin
,freeradius-mod-eap
,libeap rlm_eap
,eap.conf
))
364 $(eval
$(call BuildPlugin
,freeradius-mod-eap-gtc
,rlm_eap_gtc
,))
365 $(eval
$(call BuildPlugin
,freeradius-mod-eap-md5
,rlm_eap_md5
,))
366 $(eval
$(call BuildPlugin
,freeradius-mod-eap-mschapv2
,rlm_eap_mschapv2
,))
367 $(eval
$(call BuildPlugin
,freeradius-mod-eap-peap
,rlm_eap_peap
,))
368 $(eval
$(call BuildPlugin
,freeradius-mod-eap-tls
,rlm_eap_tls
,))
369 $(eval
$(call BuildPlugin
,freeradius-mod-eap-ttls
,rlm_eap_ttls
,))
370 $(eval
$(call BuildPlugin
,freeradius-mod-files
,rlm_files
,acct_users preproxy_users users
))
371 $(eval
$(call BuildPlugin
,freeradius-mod-ldap
,rlm_ldap
,ldap.attrmap
))
372 $(eval
$(call BuildPlugin
,freeradius-mod-mschap
,rlm_mschap
,))
373 $(eval
$(call BuildPlugin
,freeradius-mod-pap
,rlm_pap
,))
374 $(eval
$(call BuildPlugin
,freeradius-mod-preprocess
,rlm_preprocess
,hints huntgroups
))
375 $(eval
$(call BuildPlugin
,freeradius-mod-realm
,rlm_realm
,proxy.conf
))
376 $(eval
$(call BuildPlugin
,freeradius-mod-sql
,rlm_sql
,sql.conf
))
377 $(eval
$(call BuildPlugin
,freeradius-mod-sql-mysql
,rlm_sql_mysql
,))
378 $(eval
$(call BuildPlugin
,freeradius-mod-sql-pgsql
,rlm_sql_postgresql
,))
379 $(eval
$(call BuildPlugin
,freeradius-mod-sqlcounter
,rlm_sqlcounter
,))
380 $(eval
$(call BuildPackage
,freeradius-utils
))