treewide: add PKG_CPE_ID for better cvescanner coverage
[feed/packages.git] / net / freeradius3 / Makefile
1 #
2 # Copyright (C) 2008-2016 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 include $(TOPDIR)/rules.mk
9
10 PKG_NAME:=freeradius3
11 PKG_VERSION:=release_3_0_19
12 PKG_RELEASE:=2
13
14 PKG_SOURCE:=$(PKG_VERSION).tar.gz
15 PKG_SOURCE_URL:=https://github.com/FreeRADIUS/freeradius-server/archive
16 PKG_HASH:=34c50ac47a683b13eae1a02f2d0263c0bd51a83f01b99c02c5fe25df07a1ee77
17
18 PKG_MAINTAINER:=
19 PKG_LICENSE:=GPL-2.0
20 PKG_LICENSE_FILES:=COPYRIGHT LICENSE
21 PKG_CPE_ID:=cpe:/a:freeradius:freeradius
22
23 PKG_BUILD_DIR:=$(BUILD_DIR)/freeradius-server-$(PKG_VERSION)
24 PKG_FIXUP:=autoreconf
25
26 PKG_CONFIG_DEPENDS := \
27 FREERADIUS3_OPENSSL \
28 FREERADIUS3_NOSSL
29
30 include $(INCLUDE_DIR)/package.mk
31
32 define Package/freeradius3/config
33 source "$(SOURCE)/Config.in"
34 endef
35
36 define Package/freeradius3/Default
37 SECTION:=net
38 CATEGORY:=Network
39 URL:=https://freeradius.org/
40 SUBMENU:=FreeRADIUS (version 3)
41 endef
42
43 define Package/freeradius3
44 $(call Package/freeradius3/Default)
45 DEPENDS:=+freeradius3-common
46 TITLE:=A flexible RADIUS server (version 3)
47 endef
48
49 define Package/freeradius3/conffiles
50 /etc/freeradius3/clients.conf
51 /etc/freeradius3/radiusd.conf
52 /etc/freeradius3/sites/default
53 endef
54
55 define Package/freeradius3-common
56 $(call Package/freeradius3/Default)
57 TITLE:=common files
58 DEPENDS:=+USE_GLIBC:libpthread +FREERADIUS3_OPENSSL:libopenssl +libcap +libpcap +libncurses +libpcre +libreadline +libtalloc +libatomic
59 endef
60
61 define Package/freeradius3-default
62 $(call Package/freeradius3/Default)
63 DEPENDS:=freeradius3 \
64 +freeradius3-democerts \
65 +freeradius3-mod-always \
66 +freeradius3-mod-attr-filter \
67 +freeradius3-mod-chap \
68 +freeradius3-mod-detail \
69 +freeradius3-mod-digest \
70 +freeradius3-mod-eap \
71 +freeradius3-mod-eap-gtc \
72 +freeradius3-mod-eap-leap \
73 +freeradius3-mod-eap-md5 \
74 +freeradius3-mod-eap-mschapv2 \
75 +freeradius3-mod-eap-peap \
76 +freeradius3-mod-eap-tls \
77 +freeradius3-mod-eap-ttls \
78 +freeradius3-mod-eap-pwd \
79 +freeradius3-mod-exec \
80 +freeradius3-mod-expiration \
81 +freeradius3-mod-expr \
82 +freeradius3-mod-files \
83 +freeradius3-mod-logintime \
84 +freeradius3-mod-mschap \
85 +freeradius3-mod-pap \
86 +freeradius3-mod-preprocess \
87 +freeradius3-mod-radutmp \
88 +freeradius3-mod-realm \
89 +freeradius3-mod-unix
90 TITLE:=Modules needed for Radius default configuration
91 endef
92
93 define Package/freeradius3-democerts
94 $(call Package/freeradius3/Default)
95 DEPENDS:=freeradius3
96 TITLE:=Demo certificates to test the server
97 endef
98
99 define Package/freeradius3-mod-chap
100 $(call Package/freeradius3/Default)
101 DEPENDS:=freeradius3
102 TITLE:=CHAP module
103 endef
104
105 define Package/freeradius3-mod-chap/conffiles
106 /etc/freeradius3/mods-available/chap
107 /etc/freeradius3/mods-enabled/chap
108 endef
109
110 define Package/freeradius3-mod-detail
111 $(call Package/freeradius3/Default)
112 DEPENDS:=freeradius3
113 TITLE:=Detailed accounting module
114 endef
115
116 define Package/freeradius3-mod-detail/conffiles
117 /etc/freeradius3/mods-available/detail
118 /etc/freeradius3/mods-enabled/detail
119 endef
120
121 define Package/freeradius3-mod-digest
122 $(call Package/freeradius3/Default)
123 DEPENDS:=freeradius3
124 TITLE:=HTTP Digest Authentication
125 endef
126
127 define Package/freeradius3-mod-digest/conffiles
128 /etc/freeradius3/mods-available/digest
129 /etc/freeradius3/mods-enabled/digest
130 endef
131
132 define Package/freeradius3-mod-eap
133 $(call Package/freeradius3/Default)
134 DEPENDS:=freeradius3
135 TITLE:=Base EAP module
136 endef
137
138 define Package/freeradius3-mod-eap/conffiles
139 /etc/freeradius3/mods-available/eap
140 /etc/freeradius3/mods-enabled/eap
141 /etc/freeradius3/policy.d/eap
142 /etc/freeradius3/sites-enabled/inner-tunnel
143 /etc/freeradius3/sites-available/inner-tunnel
144 endef
145
146 define Package/freeradius3-mod-eap-gtc
147 $(call Package/freeradius3/Default)
148 DEPENDS:=freeradius3-mod-eap
149 TITLE:=EAP/GTC module
150 endef
151
152 define Package/freeradius3-mod-eap-leap
153 $(call Package/freeradius3/Default)
154 DEPENDS:=freeradius3-mod-eap
155 TITLE:=EAP/LEAP module
156 endef
157
158 define Package/freeradius3-mod-eap-md5
159 $(call Package/freeradius3/Default)
160 DEPENDS:=freeradius3-mod-eap
161 TITLE:=EAP/MD5 module
162 endef
163
164 define Package/freeradius3-mod-eap-mschapv2
165 $(call Package/freeradius3/Default)
166 DEPENDS:=freeradius3-mod-eap +freeradius3-mod-mschap
167 TITLE:=EAP/MS-CHAPv2 module
168 endef
169
170 define Package/freeradius3-mod-eap-peap
171 $(call Package/freeradius3/Default)
172 DEPENDS:=freeradius3-mod-eap @FREERADIUS3_OPENSSL
173 TITLE:=EAP/PEAP module
174 endef
175
176 define Package/freeradius3-mod-eap-tls
177 $(call Package/freeradius3/Default)
178 DEPENDS:=freeradius3-mod-eap @FREERADIUS3_OPENSSL
179 TITLE:=EAP/TLS module
180 endef
181
182 define Package/freeradius3-mod-eap-ttls
183 $(call Package/freeradius3/Default)
184 DEPENDS:=freeradius3-mod-eap-tls
185 TITLE:=EAP/TTLS module
186 endef
187
188 define Package/freeradius3-mod-eap-pwd
189 $(call Package/freeradius3/Default)
190 DEPENDS:=freeradius3-mod-eap @FREERADIUS3_OPENSSL
191 TITLE:=EAP/PWD module
192 endef
193
194 define Package/freeradius3-mod-exec
195 $(call Package/freeradius3/Default)
196 DEPENDS:=freeradius3
197 TITLE:=EXEC module
198 endef
199
200 define Package/freeradius3-mod-exec/conffiles
201 /etc/freeradius3/mods-available/exec
202 /etc/freeradius3/mods-enabled/exec
203 endef
204
205 define Package/freeradius3-mod-expiration
206 $(call Package/freeradius3/Default)
207 DEPENDS:=freeradius3
208 TITLE:=Expiration module
209 endef
210
211 define Package/freeradius3-mod-expiration/conffiles
212 /etc/freeradius3/mods-available/expiration
213 /etc/freeradius3/mods-enabled/expiration
214 endef
215
216 define Package/freeradius3-mod-always
217 $(call Package/freeradius3/Default)
218 DEPENDS:=freeradius3
219 TITLE:=Always module
220 endef
221
222 define Package/freeradius3-mod-always/conffiles
223 /etc/freeradius3/mods-available/always
224 /etc/freeradius3/mods-enabled/always
225 endef
226
227 define Package/freeradius3-mod-expr
228 $(call Package/freeradius3/Default)
229 DEPENDS:=freeradius3
230 TITLE:=EXPR module
231 endef
232
233 define Package/freeradius3-mod-expr/conffiles
234 /etc/freeradius3/mods-available/expr
235 /etc/freeradius3/mods-enabled/expr
236 endef
237
238 define Package/freeradius3-mod-attr-filter
239 $(call Package/freeradius3/Default)
240 DEPENDS:=freeradius3
241 TITLE:=ATTR filter module
242 endef
243
244 define Package/freeradius3-mod-attr-filter/conffiles
245 /etc/freeradius3/mods-available/attr_filter
246 /etc/freeradius3/mods-enabled/attr_filter
247 /etc/freeradius3/mods-config/attr_filter/access_challenge
248 /etc/freeradius3/mods-config/attr_filter/access_reject
249 /etc/freeradius3/mods-config/attr_filter/accounting_response
250 /etc/freeradius3/mods-config/attr_filter/post-proxy
251 /etc/freeradius3/mods-config/attr_filter/pre-proxy
252 endef
253
254 define Package/freeradius3-mod-attr-rewrite
255 $(call Package/freeradius3/Default)
256 DEPENDS:=freeradius3
257 TITLE:=ATTR rewrite module
258 endef
259
260 define Package/freeradius3-mod-files
261 $(call Package/freeradius3/Default)
262 DEPENDS:=freeradius3
263 TITLE:=Module using local files for authorization
264 endef
265
266 define Package/freeradius3-mod-files/conffiles
267 /etc/freeradius3/mods-available/files
268 /etc/freeradius3/mods-enabled/files
269 /etc/freeradius3/mods-config/files/accounting
270 /etc/freeradius3/mods-config/files/authorize
271 /etc/freeradius3/mods-config/files/pre-proxy
272 endef
273
274 define Package/freeradius3-mod-passwd
275 $(call Package/freeradius3/Default)
276 DEPENDS:=freeradius3
277 TITLE:=Rlm passwd module
278 endef
279
280 define Package/freeradius3-mod-passwd/conffiles
281 /etc/freeradius3/mods-available/passwd
282 /etc/freeradius3/mods-enabled/passwd
283 endef
284
285 define Package/freeradius3-mod-ldap
286 $(call Package/freeradius3/Default)
287 DEPENDS:=freeradius3 +libopenldap @FREERADIUS3_OPENSSL
288 TITLE:=LDAP Authentication
289 endef
290
291 define Package/freeradius3-mod-ldap/conffiles
292 /etc/freeradius3/mods-available/ldap
293 endef
294
295 define Package/freeradius3-mod-logintime
296 $(call Package/freeradius3/Default)
297 DEPENDS:=freeradius3
298 TITLE:=Logintime module
299 endef
300
301 define Package/freeradius3-mod-logintime/conffiles
302 /etc/freeradius3/mods-available/logintime
303 /etc/freeradius3/mods-enabled/logintime
304 endef
305
306 define Package/freeradius3-mod-mschap
307 $(call Package/freeradius3/Default)
308 DEPENDS:=freeradius3
309 TITLE:=MS-CHAP and MS-CHAPv2 module
310 endef
311
312 define Package/freeradius3-mod-mschap/conffiles
313 /etc/freeradius3/mods-available/mschap
314 /etc/freeradius3/mods-enabled/mschap
315 endef
316
317 define Package/freeradius3-mod-pap
318 $(call Package/freeradius3/Default)
319 DEPENDS:=freeradius3
320 TITLE:=PAP module
321 endef
322
323 define Package/freeradius3-mod-pap/conffiles
324 /etc/freeradius3/mods-available/pap
325 /etc/freeradius3/mods-enabled/pap
326 endef
327
328 define Package/freeradius3-mod-preprocess
329 $(call Package/freeradius3/Default)
330 DEPENDS:=freeradius3
331 TITLE:=Request pre-processing module
332 endef
333
334 define Package/freeradius3-mod-preprocess/conffiles
335 /etc/freeradius3/mods-config/preprocess/hints
336 /etc/freeradius3/mods-config/preprocess/huntgroups
337 /etc/freeradius3/mods-available/preprocess
338 /etc/freeradius3/mods-enabled/preprocess
339 endef
340
341 define Package/freeradius3-mod-realm
342 $(call Package/freeradius3/Default)
343 DEPENDS:=freeradius3
344 TITLE:=Realms handling module
345 endef
346
347 define Package/freeradius3-mod-realm/conffiles
348 /etc/freeradius3/proxy.conf
349 /etc/freeradius3/mods-available/realm
350 /etc/freeradius3/mods-enabled/realm
351 endef
352
353 define Package/freeradius3-mod-sql
354 $(call Package/freeradius3/Default)
355 DEPENDS:=freeradius3
356 TITLE:=Radius generic SQL front-end
357 endef
358
359 define Package/freeradius3-mod-sql/conffiles
360 /etc/freeradius3/mods-available/sql
361 endef
362
363 define Package/freeradius3-mod-sql-mysql
364 $(call Package/freeradius3/Default)
365 DEPENDS:=freeradius3-mod-sql +libmysqlclient
366 TITLE:=Radius MySQL back-end drivers
367 endef
368
369 define Package/freeradius3-mod-sql-mysql/conffiles
370 /etc/freeradius3/mods-config/sql/main/mysql
371 endef
372
373 define Package/freeradius3-mod-sql-null
374 $(call Package/freeradius3/Default)
375 DEPENDS:=freeradius3-mod-sql
376 TITLE:=Radius Dummy SQL back-end drivers
377 endef
378
379 define Package/freeradius3-mod-sql-postgresql
380 $(call Package/freeradius3/Default)
381 DEPENDS:=freeradius3-mod-sql +libpq
382 TITLE:=Radius PostgreSQL back-end drivers
383 endef
384
385 define Package/freeradius3-mod-sql-postgresql/conffiles
386 /etc/freeradius3/mods-config/sql/main/postgresql
387 endef
388
389 define Package/freeradius3-mod-sql-sqlite
390 $(call Package/freeradius3/Default)
391 DEPENDS:=freeradius3-mod-sql +libsqlite3
392 TITLE:=Radius SQLite back-end drivers
393 endef
394
395 define Package/freeradius3-mod-sql-sqlite/conffiles
396 /etc/freeradius3/mods-config/sql/main/sqlite
397 endef
398
399 define Package/freeradius3-mod-sqlcounter
400 $(call Package/freeradius3/Default)
401 DEPENDS:=+freeradius3-mod-sql
402 TITLE:=Packet counter using accounting records written into an SQL database
403 endef
404
405 define Package/freeradius3-mod-sqlcounter/conffiles
406 /etc/freeradius3/mods-config/sql/counter
407 /etc/freeradius3/mods-available/sqlcounter
408 endef
409
410 define Package/freeradius3-mod-sqlippool
411 $(call Package/freeradius3/Default)
412 DEPENDS:=+freeradius3-mod-sql
413 TITLE:=Radius SQL Based IP Pool module
414 endef
415
416 define Package/freeradius3-mod-sqlippool/conffiles
417 /etc/freeradius3/mods-config/sql/ippool
418 /etc/freeradius3/mods-config/sql/ippool-dhcp
419 /etc/freeradius3/mods-available/dhcp_sqlippool
420 /etc/freeradius3/mods-available/sqlippool
421 endef
422
423 define Package/freeradius3-mod-radutmp
424 $(call Package/freeradius3/Default)
425 DEPENDS:=freeradius3
426 TITLE:=Radius UTMP module
427 endef
428
429 define Package/freeradius3-mod-radutmp/conffiles
430 /etc/freeradius3/mods-available/radutmp
431 /etc/freeradius3/mods-enabled/radutmp
432 /etc/freeradius3/mods-available/sradutmp
433 /etc/freeradius3/mods-enabled/sradutmp
434 endef
435
436 define Package/freeradius3-mod-unix
437 $(call Package/freeradius3/Default)
438 DEPENDS:=freeradius3
439 TITLE:=System Authentication
440 endef
441
442 define Package/freeradius3-mod-unix/conffiles
443 /etc/freeradius3/mods-available/unix
444 /etc/freeradius3/mods-enabled/unix
445 endef
446
447 define Package/freeradius3-utils
448 $(call Package/freeradius3/Default)
449 DEPENDS:=+freeradius3-common
450 TITLE:=Misc. client utilities
451 endef
452
453 # This is a workaround for a bug in configure.ac, that does not check
454 # for the openss/rand.h header. Setting the macro is safe for openwrt,
455 # and faster than rebuilding configure.
456 # This has been fixed upstream in the 3.0.x branch, and should not be
457 # needed in a future release.
458 EXTRA_CFLAGS+= -DHAVE_OPENSSL_RAND_H
459
460 CONFIGURE_ARGS+= \
461 --libdir=/usr/lib/freeradius3 \
462 --libexecdir=/usr/lib/freeradius3 \
463 --disable-developer \
464 --with-threads \
465 $(if $(CONFIG_FREERADIUS3_OPENSSL),--with,--without)-openssl \
466 $(if $(CONFIG_FREERADIUS3_OPENSSL),--with-openssl-includes="$(STAGING_DIR)/usr/include",) \
467 $(if $(CONFIG_FREERADIUS3_OPENSSL),--with-openssl-libraries="$(STAGING_DIR)/usr/lib",) \
468 $(if $(CONFIG_FREERADIUS3_OPENSSL),--disable-openssl-version-check,) \
469 --with-talloc-include-dir="$(STAGING_DIR)/usr/include" \
470 --with-talloc-lib-dir="$(STAGING_DIR)/usr/lib" \
471 --enable-strict-dependencies \
472 --with-dictdir=/usr/share/freeradius3 \
473 --with-raddbdir=/etc/freeradius3 \
474 --with-radacctdir=/var/db/radacct \
475 --with-logdir=/var/log \
476 --without-edir \
477 --without-snmp \
478 --without-rlm_cache \
479 --without-rlm_cache_memcached \
480 --without-rlm_couchbase \
481 --without-rlm_counter \
482 --without-rlm_eap_ikev2 \
483 --without-rlm_eap_sim \
484 --without-rlm_eap_tnc \
485 --without-rlm_example \
486 --without-rlm_idn \
487 --without-rlm_ippool \
488 --without-rlm_krb5 \
489 --without-rlm_opendirectory \
490 --without-rlm_pam \
491 --without-rlm_perl \
492 --without-rlm_python \
493 --without-rlm_redis \
494 --without-rlm_rediswho \
495 --without-rlm_rest \
496 --without-rlm_ruby \
497 --without-rlm_securid \
498 --without-rlm_smsotp \
499 --without-rlm_sql_db2 \
500 --without-rlm_sql_firebird \
501 --without-rlm_sql_freetds \
502 --without-rlm_sql_iodbc \
503 --without-rlm_sql_oracle \
504 --without-rlm_sql_unixodbc \
505 --without-rlm_unbound \
506 --without-rlm_yubikey \
507
508 CONFIGURE_LIBS+= -latomic
509
510 PKG_DICTIONARIES:= \
511 compat \
512 freeradius freeradius.internal \
513 rfc2865 rfc2866 rfc2867 rfc2868 rfc2869 rfc3162 rfc3576 rfc3580 \
514 rfc4372 rfc4675 rfc4679 rfc5580\
515 microsoft \
516 wispr \
517
518 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-eap-peap),)
519 CONFIGURE_ARGS+= \
520 --with-rlm_eap_peap \
521 --with-rlm_eap_peap-include-dir="$(STAGING_DIR)/usr/include" \
522 --with-rlm_eap_peap-lib-dir="$(STAGING_DIR)/usr/lib"
523 CONFIGURE_LIBS+= -lcrypto -lssl
524 else
525 CONFIGURE_ARGS+= --without-rlm_eap_peap
526 endif
527
528 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-eap-tls),)
529 CONFIGURE_ARGS+= \
530 --with-rlm_eap_tls \
531 --with-rlm_eap_tls-include-dir="$(STAGING_DIR)/usr/include" \
532 --with-rlm_eap_tls-lib-dir="$(STAGING_DIR)/usr/lib"
533 CONFIGURE_LIBS+= -lcrypto -lssl
534 else
535 CONFIGURE_ARGS+= --without-rlm_eap_tls
536 endif
537
538 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-eap-ttls),)
539 CONFIGURE_ARGS+= \
540 --with-rlm_eap_ttls \
541 --with-rlm_eap_ttls-include-dir="$(STAGING_DIR)/usr/include" \
542 --with-rlm_eap_ttls-lib-dir="$(STAGING_DIR)/usr/lib"
543 CONFIGURE_LIBS+= -lcrypto -lssl
544 else
545 CONFIGURE_ARGS+= --without-rlm_eap_ttls
546 endif
547
548 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-eap-pwd),)
549 CONFIGURE_ARGS+= \
550 --with-rlm_eap_pwd \
551 --with-rlm_eap_pwd-include-dir="$(STAGING_DIR)/usr/include" \
552 --with-rlm_eap_pwd-lib-dir="$(STAGING_DIR)/usr/lib"
553 CONFIGURE_LIBS+= -lcrypto -lssl
554 else
555 CONFIGURE_ARGS+= --without-rlm_eap_pwd
556 endif
557
558 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-sql),)
559 CONFIGURE_ARGS+= --with-rlm_sql
560 else
561 CONFIGURE_ARGS+= --without-rlm_sql
562 endif
563
564 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-sql-mysql),)
565 CONFIGURE_ARGS+= \
566 --with-rlm_sql_mysql \
567 --with-mysql-include-dir="$(STAGING_DIR)/usr/include/mysql"
568 else
569 CONFIGURE_ARGS+= --without-rlm_sql_mysql
570 endif
571
572 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-sql-postgresql),)
573 CONFIGURE_ARGS+= --with-rlm_sql_postgresql
574 else
575 CONFIGURE_ARGS+= --without-rlm_sql_postgresql
576 endif
577
578 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-sql-sqlite),)
579 CONFIGURE_ARGS+= --with-rlm_sql_sqlite
580 else
581 CONFIGURE_ARGS+= --without-rlm_sql_sqlite
582 endif
583
584 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-sqlcounter),)
585 CONFIGURE_ARGS+= --with-rlm_sqlcounter
586 else
587 CONFIGURE_ARGS+= --without-rlm_sqlcounter
588 endif
589
590 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-sqlippool),)
591 CONFIGURE_ARGS+= --with-rlm_sqlippool
592 else
593 CONFIGURE_ARGS+= --without-rlm_sqlippool
594 endif
595
596 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-radutmp),)
597 CONFIGURE_ARGS+= --with-rlm_radutmp
598 else
599 CONFIGURE_ARGS+= --without-rlm_radutmp
600 endif
601
602 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-unix),)
603 CONFIGURE_ARGS+= --with-rlm_unix
604 else
605 CONFIGURE_ARGS+= --without-rlm_unix
606 endif
607
608 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-ldap),)
609 CONFIGURE_ARGS+= --with-rlm_ldap \
610 --with-rlm_ldap-include-dir="$(STAGING_DIR)/usr/include" \
611 --with-rlm_ldap-lib-dir="$(STAGING_DIR)/usr/lib"
612 else
613 CONFIGURE_ARGS+= --without-rlm_ldap
614 endif
615
616 ifeq ($(CONFIG_USE_GLIBC),y)
617 TARGET_CFLAGS+= -DLIBBSD_OVERLAY -I$(STAGING_DIR)/usr/include/bsd \
618 -D_RPC_NETDB_H
619 #^^^^^^^^^^^^^ avoid inclusion of librpc's netdb.h
620 CONFIGURE_LIBS+= -Wl,--push-state,--as-needed -lbsd -Wl,--pop-state
621 endif
622
623 CONFIGURE_VARS+= \
624 LDFLAGS="$$$$LDFLAGS" \
625 LIBS="$(CONFIGURE_LIBS)" \
626 MYSQL_CONFIG="no" \
627 ac_cv_lib_readline=no \
628 ax_cv_cc_builtin_choose_expr=yes \
629 ax_cv_cc_builtin_types_compatible_p=yes ax_cv_cc_builtin_bswap64=yes \
630 ax_cv_cc_bounded_attribute=no \
631 ac_cv_lib_collectdclient_lcc_connect=no \
632 ac_cv_lib_execinfo_backtrace_symbols=no
633
634 define Build/Compile
635 # Compile jlibtool for the host once the configuration is done
636 (cd $(PKG_BUILD_DIR); \
637 mkdir -p build/make; \
638 $(HOSTCC) $(HOST_CFLAGS) scripts/jlibtool.c -o build/make/jlibtool; \
639 )
640 $(MAKE) -C $(PKG_BUILD_DIR) \
641 R="$(PKG_INSTALL_DIR)" \
642 INSTALLSTRIP="" \
643 all install
644 endef
645
646 define Package/freeradius3-common/install
647 $(INSTALL_DIR) $(1)/etc/freeradius3
648 chmod 771 $(1)/etc/freeradius3
649 $(CP) $(PKG_INSTALL_DIR)/etc/freeradius3/dictionary $(1)/etc/freeradius3/ ; \
650 $(INSTALL_DIR) $(1)/usr/lib/freeradius3
651 $(CP) $(PKG_INSTALL_DIR)/usr/lib/freeradius3/libfreeradius-{dhcp,eap,radius,server}.so $(1)/usr/lib/freeradius3
652 $(INSTALL_DIR) $(1)/usr/share/freeradius3
653 $(CP) $(PKG_INSTALL_DIR)/usr/share/freeradius3/dictionary $(1)/usr/share/freeradius3/
654 $(SED) "s,^\(\$$$$INCLUDE\),#\1,g" $(1)/usr/share/freeradius3/dictionary
655 for f in $(PKG_DICTIONARIES); do \
656 $(CP) $(PKG_INSTALL_DIR)/usr/share/freeradius3/dictionary.$$$${f} $(1)/usr/share/freeradius3/ ; \
657 $(SED) "s,^#\(\$$$$INCLUDE dictionary\.$$$${f}\)$$$$,\1,g" $(1)/usr/share/freeradius3/dictionary ; \
658 done
659 endef
660
661 define Package/freeradius3/install
662 $(INSTALL_DIR) $(1)/etc/freeradius3
663 $(INSTALL_DIR) $(1)/etc/freeradius3/policy.d
664 $(INSTALL_DIR) $(1)/etc/freeradius3/sites-available
665 $(INSTALL_DIR) $(1)/etc/freeradius3/sites-enabled
666 for f in clients.conf radiusd.conf proxy.conf; do \
667 $(CP) $(PKG_INSTALL_DIR)/etc/freeradius3/$$$${f} $(1)/etc/freeradius3/ ; \
668 done
669 for f in accounting filter; do \
670 $(CP) $(PKG_INSTALL_DIR)/etc/freeradius3/policy.d/$$$${f} $(1)/etc/freeradius3/policy.d/ ; \
671 done
672 for f in default; do \
673 $(CP) $(PKG_INSTALL_DIR)/etc/freeradius3/sites-available/$$$${f} $(1)/etc/freeradius3/sites-available/ ; \
674 $(CP) $(PKG_INSTALL_DIR)/etc/freeradius3/sites-enabled/$$$${f} $(1)/etc/freeradius3/sites-enabled/ ; \
675 done
676
677 $(INSTALL_DIR) $(1)/usr/sbin
678 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/radiusd $(1)/usr/sbin/
679 $(INSTALL_DIR) $(1)/etc/init.d
680 $(INSTALL_BIN) ./files/radiusd.init $(1)/etc/init.d/radiusd
681 endef
682
683 define Package/freeradius3-democerts/install
684 $(INSTALL_DIR) $(1)/etc/freeradius3/certs
685 $(CP) \
686 $(PKG_INSTALL_DIR)/etc/freeradius3/certs/ca.pem \
687 $(PKG_INSTALL_DIR)/etc/freeradius3/certs/dh \
688 $(PKG_INSTALL_DIR)/etc/freeradius3/certs/server.pem \
689 $(1)/etc/freeradius3/certs/
690 endef
691
692 define Package/freeradius3-utils/install
693 $(INSTALL_DIR) $(1)/usr/bin
694 for f in radclient radeapclient radwho; do \
695 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/$$$${f} $(1)/usr/bin/ ; \
696 done
697 endef
698
699 define BuildPlugin
700 define Package/$(1)/install
701 [ -z "$(2)" ] || $(INSTALL_DIR) $$(1)/usr/lib/freeradius3
702 for m in $(2); do \
703 $(CP) $(PKG_INSTALL_DIR)/usr/lib/freeradius3/$$$$$$$${m}.so $$(1)/usr/lib/freeradius3 ; \
704 done
705 # Install configuration files
706 for f in $(strip $(call Package/$(1)/conffiles)); do \
707 $(INSTALL_DIR) $$(1)/$$$$$$$${f%/*} ; \
708 $(CP) $(PKG_INSTALL_DIR)/$$$$$$$${f} $$(1)/$$$$$$$${f}; \
709 done
710 endef
711
712 $$(eval $$(call BuildPackage,$(1)))
713 endef
714
715
716 $(eval $(call BuildPackage,freeradius3))
717 $(eval $(call BuildPackage,freeradius3-common))
718 $(eval $(call BuildPackage,freeradius3-default))
719 $(eval $(call BuildPackage,freeradius3-democerts))
720 $(eval $(call BuildPlugin,freeradius3-mod-always,rlm_always,))
721 $(eval $(call BuildPlugin,freeradius3-mod-attr-filter,rlm_attr_filter,))
722 $(eval $(call BuildPlugin,freeradius3-mod-chap,rlm_chap,))
723 $(eval $(call BuildPlugin,freeradius3-mod-detail,rlm_detail,))
724 $(eval $(call BuildPlugin,freeradius3-mod-digest,rlm_digest,))
725 $(eval $(call BuildPlugin,freeradius3-mod-eap-gtc,rlm_eap_gtc,))
726 $(eval $(call BuildPlugin,freeradius3-mod-eap-leap,rlm_eap_leap,))
727 $(eval $(call BuildPlugin,freeradius3-mod-eap-md5,rlm_eap_md5,))
728 $(eval $(call BuildPlugin,freeradius3-mod-eap-mschapv2,rlm_eap_mschapv2,))
729 $(eval $(call BuildPlugin,freeradius3-mod-eap-peap,rlm_eap_peap,))
730 $(eval $(call BuildPlugin,freeradius3-mod-eap,rlm_eap,))
731 $(eval $(call BuildPlugin,freeradius3-mod-eap-tls,rlm_eap_tls,))
732 $(eval $(call BuildPlugin,freeradius3-mod-eap-ttls,rlm_eap_ttls,))
733 $(eval $(call BuildPlugin,freeradius3-mod-eap-pwd,rlm_eap_pwd,))
734 $(eval $(call BuildPlugin,freeradius3-mod-exec,rlm_exec,))
735 $(eval $(call BuildPlugin,freeradius3-mod-expiration,rlm_expiration,))
736 $(eval $(call BuildPlugin,freeradius3-mod-expr,rlm_expr,))
737 $(eval $(call BuildPlugin,freeradius3-mod-files,rlm_files,))
738 $(eval $(call BuildPlugin,freeradius3-mod-ldap,rlm_ldap,))
739 $(eval $(call BuildPlugin,freeradius3-mod-logintime,rlm_logintime,))
740 $(eval $(call BuildPlugin,freeradius3-mod-mschap,rlm_mschap,))
741 $(eval $(call BuildPlugin,freeradius3-mod-pap,rlm_pap,))
742 $(eval $(call BuildPlugin,freeradius3-mod-passwd,rlm_passwd,))
743 $(eval $(call BuildPlugin,freeradius3-mod-preprocess,rlm_preprocess,))
744 $(eval $(call BuildPlugin,freeradius3-mod-radutmp,rlm_radutmp,))
745 $(eval $(call BuildPlugin,freeradius3-mod-realm,rlm_realm,))
746 $(eval $(call BuildPlugin,freeradius3-mod-sql,rlm_sql,))
747 $(eval $(call BuildPlugin,freeradius3-mod-sql-mysql,rlm_sql_mysql,))
748 $(eval $(call BuildPlugin,freeradius3-mod-sql-null,rlm_sql_null,))
749 $(eval $(call BuildPlugin,freeradius3-mod-sql-postgresql,rlm_sql_postgresql,))
750 $(eval $(call BuildPlugin,freeradius3-mod-sql-sqlite,rlm_sql_sqlite,))
751 $(eval $(call BuildPlugin,freeradius3-mod-sqlcounter,rlm_sqlcounter,))
752 $(eval $(call BuildPlugin,freeradius3-mod-sqlippool,rlm_sqlippool,))
753 $(eval $(call BuildPlugin,freeradius3-mod-unix,rlm_unix,))
754 $(eval $(call BuildPackage,freeradius3-utils))