liburing: Update to v2.6
[feed/packages.git] / net / freeradius3 / Makefile
1 #
2 # Copyright (C) 2008-2020 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:=3_0_26
12 PKG_RELEASE:=4
13
14 PKG_SOURCE:=release_$(PKG_VERSION).tar.gz
15 PKG_SOURCE_URL:=https://codeload.github.com/FreeRADIUS/freeradius-server/tar.gz/release_$(PKG_VERSION)?
16 PKG_HASH:=6aea98d6126035e7ccca483d8b3faea447030169639807017ec98985b78fb2ca
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-release_$(PKG_VERSION)
24 PKG_FIXUP:=autoreconf
25 PYTHON3_PKG_BUILD:=0
26
27 PKG_CONFIG_DEPENDS := \
28 FREERADIUS3_OPENSSL \
29 FREERADIUS3_NOSSL
30
31 CFLAGS += $(FPIC)
32
33 include $(INCLUDE_DIR)/package.mk
34 include ../../lang/python/python3-package.mk
35
36 define Package/freeradius3/config
37 source "$(SOURCE)/Config.in"
38 endef
39
40 define Package/freeradius3/Default
41 SECTION:=net
42 CATEGORY:=Network
43 URL:=https://freeradius.org/
44 SUBMENU:=FreeRADIUS (version 3)
45 endef
46
47 define Package/freeradius3
48 $(call Package/freeradius3/Default)
49 DEPENDS:=+freeradius3-common
50 TITLE:=A flexible RADIUS server (version 3)
51 endef
52
53 define Package/freeradius3/conffiles
54 /etc/freeradius3/clients.conf
55 /etc/freeradius3/policy.d/accounting
56 /etc/freeradius3/policy.d/filter
57 /etc/freeradius3/proxy.conf
58 /etc/freeradius3/radiusd.conf
59 /etc/freeradius3/sites-available/default
60 /etc/freeradius3/sites-enabled/default
61 endef
62
63 define Package/freeradius3-common
64 $(call Package/freeradius3/Default)
65 TITLE:=common files
66 DEPENDS:=+USE_GLIBC:libpthread +USE_GLIBC:libbsd +FREERADIUS3_OPENSSL:libopenssl +libcap +libpcap +libncurses +libreadline +libtalloc +libatomic
67 endef
68
69 define Package/freeradius3-default
70 $(call Package/freeradius3/Default)
71 DEPENDS:=freeradius3 \
72 +freeradius3-democerts \
73 +freeradius3-mod-always \
74 +freeradius3-mod-attr-filter \
75 +freeradius3-mod-chap \
76 +freeradius3-mod-detail \
77 +freeradius3-mod-digest \
78 +freeradius3-mod-eap \
79 +freeradius3-mod-eap-gtc \
80 +freeradius3-mod-eap-md5 \
81 +freeradius3-mod-eap-mschapv2 \
82 +freeradius3-mod-eap-peap \
83 +freeradius3-mod-eap-pwd \
84 +freeradius3-mod-eap-tls \
85 +freeradius3-mod-eap-ttls \
86 +freeradius3-mod-exec \
87 +freeradius3-mod-expiration \
88 +freeradius3-mod-expr \
89 +freeradius3-mod-files \
90 +freeradius3-mod-logintime \
91 +freeradius3-mod-mschap \
92 +freeradius3-mod-pap \
93 +freeradius3-mod-preprocess \
94 +freeradius3-mod-radutmp \
95 +freeradius3-mod-realm \
96 +freeradius3-mod-unix
97 TITLE:=Modules needed for Radius default configuration
98 endef
99
100 define Package/freeradius3-default/description
101 This meta-package contains only dependencies for modules needed in
102 FreeRADIUS default configuration.
103 endef
104
105 define Package/freeradius3-democerts
106 $(call Package/freeradius3/Default)
107 DEPENDS:=freeradius3
108 TITLE:=Demo certificates to test the server
109 endef
110
111 define Package/freeradius3-mod-always
112 $(call Package/freeradius3/Default)
113 DEPENDS:=freeradius3
114 TITLE:=Always module
115 endef
116
117 define Package/freeradius3-mod-always/conffiles
118 /etc/freeradius3/mods-available/always
119 /etc/freeradius3/mods-enabled/always
120 endef
121
122 define Package/freeradius3-mod-attr-filter
123 $(call Package/freeradius3/Default)
124 DEPENDS:=freeradius3
125 TITLE:=ATTR filter module
126 endef
127
128 define Package/freeradius3-mod-attr-filter/conffiles
129 /etc/freeradius3/mods-available/attr_filter
130 /etc/freeradius3/mods-enabled/attr_filter
131 /etc/freeradius3/mods-config/attr_filter/access_challenge
132 /etc/freeradius3/mods-config/attr_filter/access_reject
133 /etc/freeradius3/mods-config/attr_filter/accounting_response
134 /etc/freeradius3/mods-config/attr_filter/coa
135 /etc/freeradius3/mods-config/attr_filter/post-proxy
136 /etc/freeradius3/mods-config/attr_filter/pre-proxy
137 endef
138
139 define Package/freeradius3-mod-chap
140 $(call Package/freeradius3/Default)
141 DEPENDS:=freeradius3
142 TITLE:=CHAP module
143 endef
144
145 define Package/freeradius3-mod-chap/conffiles
146 /etc/freeradius3/mods-available/chap
147 /etc/freeradius3/mods-enabled/chap
148 endef
149
150 define Package/freeradius3-mod-counter
151 $(call Package/freeradius3/Default)
152 DEPENDS:=freeradius3 +libgdbm
153 TITLE:=Module counter
154 endef
155
156 define Package/freeradius3-mod-counter/conffiles
157 /etc/freeradius3/mods-available/counter
158 endef
159
160 define Package/freeradius3-mod-date
161 $(call Package/freeradius3/Default)
162 DEPENDS:=freeradius3
163 TITLE:=Module date
164 endef
165
166 define Package/freeradius3-mod-date/conffiles
167 /etc/freeradius3/mods-available/date
168 endef
169
170 define Package/freeradius3-mod-detail
171 $(call Package/freeradius3/Default)
172 DEPENDS:=freeradius3
173 TITLE:=Detailed accounting module
174 endef
175
176 define Package/freeradius3-mod-detail/conffiles
177 /etc/freeradius3/mods-available/detail
178 /etc/freeradius3/mods-enabled/detail
179 endef
180
181 define Package/freeradius3-mod-digest
182 $(call Package/freeradius3/Default)
183 DEPENDS:=freeradius3
184 TITLE:=HTTP Digest Authentication
185 endef
186
187 define Package/freeradius3-mod-digest/conffiles
188 /etc/freeradius3/mods-available/digest
189 /etc/freeradius3/mods-enabled/digest
190 endef
191
192 define Package/freeradius3-mod-dynamic-clients
193 $(call Package/freeradius3/Default)
194 DEPENDS:=freeradius3
195 TITLE:=Dynamic Clients Authentication
196 endef
197
198 define Package/freeradius3-mod-dynamic-clients/conffiles
199 /etc/freeradius3/mods-available/dynamic_clients
200 /etc/freeradius3/sites-available/dynamic-clients
201 endef
202
203 define Package/freeradius3-mod-eap
204 $(call Package/freeradius3/Default)
205 DEPENDS:=freeradius3
206 TITLE:=Base EAP module
207 endef
208
209 define Package/freeradius3-mod-eap/conffiles
210 /etc/freeradius3/mods-available/eap
211 /etc/freeradius3/mods-enabled/eap
212 /etc/freeradius3/policy.d/eap
213 /etc/freeradius3/sites-enabled/inner-tunnel
214 /etc/freeradius3/sites-available/inner-tunnel
215 endef
216
217 define Package/freeradius3-mod-eap-fast
218 $(call Package/freeradius3/Default)
219 DEPENDS:=freeradius3-mod-eap @FREERADIUS3_OPENSSL
220 TITLE:=EAP/FAST module
221 endef
222
223 define Package/freeradius3-mod-eap-gtc
224 $(call Package/freeradius3/Default)
225 DEPENDS:=freeradius3-mod-eap
226 TITLE:=EAP/GTC module
227 endef
228
229 define Package/freeradius3-mod-eap-md5
230 $(call Package/freeradius3/Default)
231 DEPENDS:=freeradius3-mod-eap
232 TITLE:=EAP/MD5 module
233 endef
234
235 define Package/freeradius3-mod-eap-mschapv2
236 $(call Package/freeradius3/Default)
237 DEPENDS:=freeradius3-mod-eap +freeradius3-mod-mschap
238 TITLE:=EAP/MS-CHAPv2 module
239 endef
240
241 define Package/freeradius3-mod-eap-peap
242 $(call Package/freeradius3/Default)
243 DEPENDS:=freeradius3-mod-eap @FREERADIUS3_OPENSSL
244 TITLE:=EAP/PEAP module
245 endef
246
247 define Package/freeradius3-mod-eap-pwd
248 $(call Package/freeradius3/Default)
249 DEPENDS:=freeradius3-mod-eap @FREERADIUS3_OPENSSL
250 TITLE:=EAP/PWD module
251 endef
252
253 define Package/freeradius3-mod-eap-tls
254 $(call Package/freeradius3/Default)
255 DEPENDS:=freeradius3-mod-eap @FREERADIUS3_OPENSSL
256 TITLE:=EAP/TLS module
257 endef
258
259 define Package/freeradius3-mod-eap-ttls
260 $(call Package/freeradius3/Default)
261 DEPENDS:=freeradius3-mod-eap-tls
262 TITLE:=EAP/TTLS module
263 endef
264
265 define Package/freeradius3-mod-exec
266 $(call Package/freeradius3/Default)
267 DEPENDS:=freeradius3
268 TITLE:=EXEC module
269 endef
270
271 define Package/freeradius3-mod-exec/conffiles
272 /etc/freeradius3/mods-available/exec
273 /etc/freeradius3/mods-enabled/exec
274 endef
275
276 define Package/freeradius3-mod-expiration
277 $(call Package/freeradius3/Default)
278 DEPENDS:=freeradius3
279 TITLE:=Expiration module
280 endef
281
282 define Package/freeradius3-mod-expiration/conffiles
283 /etc/freeradius3/mods-available/expiration
284 /etc/freeradius3/mods-enabled/expiration
285 endef
286
287 define Package/freeradius3-mod-expr
288 $(call Package/freeradius3/Default)
289 DEPENDS:=freeradius3
290 TITLE:=EXPR module
291 endef
292
293 define Package/freeradius3-mod-expr/conffiles
294 /etc/freeradius3/mods-available/expr
295 /etc/freeradius3/mods-enabled/expr
296 endef
297
298 define Package/freeradius3-mod-files
299 $(call Package/freeradius3/Default)
300 DEPENDS:=freeradius3
301 TITLE:=Module using local files for authorization
302 endef
303
304 define Package/freeradius3-mod-files/conffiles
305 /etc/freeradius3/mods-available/files
306 /etc/freeradius3/mods-enabled/files
307 /etc/freeradius3/mods-config/files/accounting
308 /etc/freeradius3/mods-config/files/authorize
309 /etc/freeradius3/mods-config/files/pre-proxy
310 endef
311
312 define Package/freeradius3-mod-ippool
313 $(call Package/freeradius3/Default)
314 DEPENDS:=freeradius3 +libgdbm
315 TITLE:=Radius IP Pool module
316 endef
317
318 define Package/freeradius3-mod-ippool/conffiles
319 /etc/freeradius3/mods-available/ippool
320 endef
321
322 define Package/freeradius3-mod-krb5
323 $(call Package/freeradius3/Default)
324 DEPENDS:=freeradius3 +krb5-libs
325 TITLE:=Krb5 module
326 endef
327
328 define Package/freeradius3-mod-krb5/conffiles
329 /etc/freeradius3/mods-available/krb5
330 endef
331
332 define Package/freeradius3-mod-ldap
333 $(call Package/freeradius3/Default)
334 DEPENDS:=freeradius3 +libopenldap @FREERADIUS3_OPENSSL
335 TITLE:=LDAP Authentication
336 endef
337
338 define Package/freeradius3-mod-ldap/conffiles
339 /etc/freeradius3/mods-available/ldap
340 endef
341
342 define Package/freeradius3-mod-linelog
343 $(call Package/freeradius3/Default)
344 DEPENDS:=freeradius3
345 TITLE:=Linelog module
346 endef
347
348 define Package/freeradius3-mod-linelog/conffiles
349 /etc/freeradius3/mods-available/linelog
350 endef
351
352 define Package/freeradius3-mod-logintime
353 $(call Package/freeradius3/Default)
354 DEPENDS:=freeradius3
355 TITLE:=Logintime module
356 endef
357
358 define Package/freeradius3-mod-logintime/conffiles
359 /etc/freeradius3/mods-available/logintime
360 /etc/freeradius3/mods-enabled/logintime
361 endef
362
363 define Package/freeradius3-mod-mschap
364 $(call Package/freeradius3/Default)
365 DEPENDS:=freeradius3
366 TITLE:=MS-CHAP and MS-CHAPv2 module
367 endef
368
369 define Package/freeradius3-mod-mschap/conffiles
370 /etc/freeradius3/mods-available/mschap
371 /etc/freeradius3/mods-enabled/mschap
372 endef
373
374 define Package/freeradius3-mod-pam
375 $(call Package/freeradius3/Default)
376 DEPENDS:=freeradius3 +libpam
377 TITLE:=PAM module
378 endef
379
380 define Package/freeradius3-mod-pam/conffiles
381 /etc/freeradius3/mods-available/pam
382 endef
383
384 define Package/freeradius3-mod-pap
385 $(call Package/freeradius3/Default)
386 DEPENDS:=freeradius3
387 TITLE:=PAP module
388 endef
389
390 define Package/freeradius3-mod-pap/conffiles
391 /etc/freeradius3/mods-available/pap
392 /etc/freeradius3/mods-enabled/pap
393 endef
394
395 define Package/freeradius3-mod-passwd
396 $(call Package/freeradius3/Default)
397 DEPENDS:=freeradius3
398 TITLE:=Rlm passwd module
399 endef
400
401 define Package/freeradius3-mod-passwd/conffiles
402 /etc/freeradius3/mods-available/passwd
403 /etc/freeradius3/mods-enabled/passwd
404 endef
405
406 define Package/freeradius3-mod-preprocess
407 $(call Package/freeradius3/Default)
408 DEPENDS:=freeradius3
409 TITLE:=Request pre-processing module
410 endef
411
412 define Package/freeradius3-mod-preprocess/conffiles
413 /etc/freeradius3/mods-config/preprocess/hints
414 /etc/freeradius3/mods-config/preprocess/huntgroups
415 /etc/freeradius3/mods-available/preprocess
416 /etc/freeradius3/mods-enabled/preprocess
417 endef
418
419 define Package/freeradius3-mod-python3
420 $(call Package/freeradius3/Default)
421 DEPENDS:=freeradius3 +python3
422 TITLE:=Python3 module
423 endef
424
425 define Package/freeradius3-mod-python3/conffiles
426 /etc/freeradius3/mods-available/python3
427 endef
428
429 define Package/freeradius3-mod-radutmp
430 $(call Package/freeradius3/Default)
431 DEPENDS:=freeradius3
432 TITLE:=Radius UTMP module
433 endef
434
435 define Package/freeradius3-mod-radutmp/conffiles
436 /etc/freeradius3/mods-available/radutmp
437 /etc/freeradius3/mods-enabled/radutmp
438 /etc/freeradius3/mods-available/sradutmp
439 /etc/freeradius3/mods-enabled/sradutmp
440 endef
441
442 define Package/freeradius3-mod-realm
443 $(call Package/freeradius3/Default)
444 DEPENDS:=freeradius3
445 TITLE:=Realms handling module
446 endef
447
448 define Package/freeradius3-mod-realm/conffiles
449 /etc/freeradius3/mods-available/realm
450 /etc/freeradius3/mods-enabled/realm
451 endef
452
453 define Package/freeradius3-mod-redis
454 $(call Package/freeradius3/Default)
455 DEPENDS:=freeradius3 +libhiredis
456 TITLE:=Redis module
457 endef
458
459 define Package/freeradius3-mod-redis/conffiles
460 /etc/freeradius3/mods-available/redis
461 endef
462
463 define Package/freeradius3-mod-rediswho
464 $(call Package/freeradius3/Default)
465 DEPENDS:=freeradius3 freeradius3-mod-redis
466 TITLE:=Rediswho module
467 endef
468
469 define Package/freeradius3-mod-rediswho/conffiles
470 /etc/freeradius3/mods-available/rediswho
471 endef
472
473 define Package/freeradius3-mod-replicate
474 $(call Package/freeradius3/Default)
475 DEPENDS:=freeradius3
476 TITLE:=Replicate module
477 endef
478
479 define Package/freeradius3-mod-replicate/conffiles
480 /etc/freeradius3/mods-available/replicate
481 endef
482
483 define Package/freeradius3-mod-rest
484 $(call Package/freeradius3/Default)
485 DEPENDS:=freeradius3 +libcurl +libjson-c
486 TITLE:=Radius REST module
487 endef
488
489 define Package/freeradius3-mod-rest/conffiles
490 /etc/freeradius3/mods-available/rest
491 endef
492
493 define Package/freeradius3-mod-soh
494 $(call Package/freeradius3/Default)
495 DEPENDS:=freeradius3
496 TITLE:=SoH module
497 endef
498
499 define Package/freeradius3-mod-soh/conffiles
500 /etc/freeradius3/mods-available/soh
501 /etc/freeradius3/sites-available/soh
502 endef
503
504 define Package/freeradius3-mod-sometimes
505 $(call Package/freeradius3/Default)
506 DEPENDS:=freeradius3
507 TITLE:=Sometimes module
508 endef
509
510 define Package/freeradius3-mod-sometimes/conffiles
511 /etc/freeradius3/mods-available/sometimes
512 endef
513
514 define Package/freeradius3-mod-sql
515 $(call Package/freeradius3/Default)
516 DEPENDS:=freeradius3
517 TITLE:=Radius generic SQL front-end
518 endef
519
520 define Package/freeradius3-mod-sql/conffiles
521 /etc/freeradius3/mods-available/sql
522 endef
523
524 define Package/freeradius3-mod-sql-map
525 $(call Package/freeradius3/Default)
526 DEPENDS:=freeradius3
527 TITLE:=Map module
528 endef
529
530 define Package/freeradius3-mod-map/conffiles
531 /etc/freeradius3/mods-available/sql_map
532 endef
533
534 define Package/freeradius3-mod-sql-mysql
535 $(call Package/freeradius3/Default)
536 DEPENDS:=freeradius3-mod-sql +libmysqlclient
537 TITLE:=Radius MySQL back-end drivers
538 endef
539
540 define Package/freeradius3-mod-sql-mysql/conffiles
541 /etc/freeradius3/mods-config/sql/main/mysql
542 endef
543
544 define Package/freeradius3-mod-sql-null
545 $(call Package/freeradius3/Default)
546 DEPENDS:=freeradius3-mod-sql
547 TITLE:=Radius Dummy SQL back-end drivers
548 endef
549
550 define Package/freeradius3-mod-sql-postgresql
551 $(call Package/freeradius3/Default)
552 DEPENDS:=freeradius3-mod-sql +libpq
553 TITLE:=Radius PostgreSQL back-end drivers
554 endef
555
556 define Package/freeradius3-mod-sql-postgresql/conffiles
557 /etc/freeradius3/mods-config/sql/main/postgresql
558 endef
559
560 define Package/freeradius3-mod-sql-sqlite
561 $(call Package/freeradius3/Default)
562 DEPENDS:=freeradius3-mod-sql +libsqlite3
563 TITLE:=Radius SQLite back-end drivers
564 endef
565
566 define Package/freeradius3-mod-sql-sqlite/conffiles
567 /etc/freeradius3/mods-config/sql/main/sqlite
568 endef
569
570 define Package/freeradius3-mod-sqlcounter
571 $(call Package/freeradius3/Default)
572 DEPENDS:=+freeradius3-mod-sql
573 TITLE:=Module sqlcounter
574 endef
575
576 define Package/freeradius3-mod-sqlcounter/conffiles
577 /etc/freeradius3/mods-config/sql/counter
578 /etc/freeradius3/mods-available/sqlcounter
579 endef
580
581 define Package/freeradius3-mod-sqlippool
582 $(call Package/freeradius3/Default)
583 DEPENDS:=+freeradius3-mod-sql
584 TITLE:=Radius SQL Based IP Pool module
585 endef
586
587 define Package/freeradius3-mod-sqlippool/conffiles
588 /etc/freeradius3/mods-config/sql/ippool
589 /etc/freeradius3/mods-config/sql/ippool-dhcp
590 /etc/freeradius3/mods-available/dhcp_sqlippool
591 /etc/freeradius3/mods-available/sqlippool
592 endef
593
594 define Package/freeradius3-mod-unix
595 $(call Package/freeradius3/Default)
596 DEPENDS:=freeradius3
597 TITLE:=System Authentication
598 endef
599
600 define Package/freeradius3-mod-unix/conffiles
601 /etc/freeradius3/mods-available/unix
602 /etc/freeradius3/mods-enabled/unix
603 endef
604
605 define Package/freeradius3-mod-unpack
606 $(call Package/freeradius3/Default)
607 DEPENDS:=freeradius3
608 TITLE:=Unpack module
609 endef
610
611 define Package/freeradius3-mod-unpack/conffiles
612 /etc/freeradius3/mods-available/unpack
613 endef
614
615 define Package/freeradius3-mod-utf8
616 $(call Package/freeradius3/Default)
617 DEPENDS:=freeradius3
618 TITLE:=UTF8 module
619 endef
620
621 define Package/freeradius3-mod-utf8/conffiles
622 /etc/freeradius3/mods-available/utf8
623 endef
624
625 define Package/freeradius3-mod-wimax
626 $(call Package/freeradius3/Default)
627 DEPENDS:=freeradius3
628 TITLE:=Wimax Authentication
629 endef
630
631 define Package/freeradius3-mod-wimax/conffiles
632 /etc/freeradius3/mods-available/wimax
633 endef
634
635 define Package/freeradius3-mod-yubikey
636 $(call Package/freeradius3/Default)
637 DEPENDS:=freeradius3 +libyubikey +ykclient
638 TITLE:=Yubikey Authentication
639 endef
640
641 define Package/freeradius3-mod-yubikey/conffiles
642 /etc/freeradius3/mods-available/yubikey
643 endef
644
645 define Package/freeradius3-utils
646 $(call Package/freeradius3/Default)
647 DEPENDS:=+freeradius3-common
648 TITLE:=Misc. client utilities
649 endef
650
651 # This is a workaround for a bug in configure.ac, that does not check
652 # for the openss/rand.h header. Setting the macro is safe for openwrt,
653 # and faster than rebuilding configure.
654 # This has been fixed upstream in the 3.0.x branch, and should not be
655 # needed in a future release.
656 EXTRA_CFLAGS+= -DHAVE_OPENSSL_RAND_H
657
658 CONFIGURE_ARGS+= \
659 --libdir=/usr/lib/freeradius3 \
660 --libexecdir=/usr/lib/freeradius3 \
661 --disable-developer \
662 --with-threads \
663 $(if $(CONFIG_FREERADIUS3_OPENSSL),--with,--without)-openssl \
664 $(if $(CONFIG_FREERADIUS3_OPENSSL),--with-openssl-includes="$(STAGING_DIR)/usr/include",) \
665 $(if $(CONFIG_FREERADIUS3_OPENSSL),--with-openssl-libraries="$(STAGING_DIR)/usr/lib",) \
666 $(if $(CONFIG_FREERADIUS3_OPENSSL),--disable-openssl-version-check,) \
667 --with-talloc-include-dir="$(STAGING_DIR)/usr/include" \
668 --with-talloc-lib-dir="$(STAGING_DIR)/usr/lib" \
669 --enable-strict-dependencies \
670 --with-dictdir=/usr/share/freeradius3 \
671 --with-raddbdir=/etc/freeradius3 \
672 --with-radacctdir=/var/db/radacct \
673 --with-logdir=/var/log \
674 --without-pcre \
675 --without-rlm_cache \
676 --without-rlm_cache_memcached \
677 --without-rlm_couchbase \
678 --without-rlm_eap_ikev2 \
679 --without-rlm_eap_sim \
680 --without-rlm_eap_tnc \
681 --without-rlm_perl \
682 --without-rlm_python \
683 --without-rlm_sql_db2 \
684 --without-rlm_sql_firebird \
685 --without-rlm_sql_freetds \
686 --without-rlm_sql_iodbc \
687 --without-rlm_sql_oracle \
688 --without-rlm_sql_unixodbc \
689
690 CONFIGURE_LIBS+= -latomic
691
692 PKG_DICTIONARIES:= \
693 compat \
694 freeradius freeradius.internal \
695 rfc2865 rfc2866 rfc2867 rfc2868 rfc2869 rfc3162 rfc3576 rfc3580 \
696 rfc4072 rfc4372 rfc4675 rfc4679 rfc5580 rfc6911 \
697 microsoft \
698 wispr \
699
700 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-eap-fast),)
701 CONFIGURE_ARGS+= \
702 --with-rlm_eap_fast \
703 --with-rlm_eap_fast-include-dir="$(STAGING_DIR)/usr/include" \
704 --with-rlm_eap_fast-lib-dir="$(STAGING_DIR)/usr/lib"
705 CONFIGURE_LIBS+= -lcrypto -lssl
706 else
707 CONFIGURE_ARGS+= --without-rlm_eap_fast
708 endif
709
710 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-eap-peap),)
711 CONFIGURE_ARGS+= \
712 --with-rlm_eap_peap \
713 --with-rlm_eap_peap-include-dir="$(STAGING_DIR)/usr/include" \
714 --with-rlm_eap_peap-lib-dir="$(STAGING_DIR)/usr/lib"
715 CONFIGURE_LIBS+= -lcrypto -lssl
716 else
717 CONFIGURE_ARGS+= --without-rlm_eap_peap
718 endif
719
720 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-eap-pwd),)
721 CONFIGURE_ARGS+= \
722 --with-rlm_eap_pwd \
723 --with-rlm_eap_pwd-include-dir="$(STAGING_DIR)/usr/include" \
724 --with-rlm_eap_pwd-lib-dir="$(STAGING_DIR)/usr/lib"
725 CONFIGURE_LIBS+= -lcrypto -lssl
726 else
727 CONFIGURE_ARGS+= --without-rlm_eap_pwd
728 endif
729
730 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-eap-tls),)
731 CONFIGURE_ARGS+= \
732 --with-rlm_eap_tls \
733 --with-rlm_eap_tls-include-dir="$(STAGING_DIR)/usr/include" \
734 --with-rlm_eap_tls-lib-dir="$(STAGING_DIR)/usr/lib"
735 CONFIGURE_LIBS+= -lcrypto -lssl
736 else
737 CONFIGURE_ARGS+= --without-rlm_eap_tls
738 endif
739
740 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-eap-ttls),)
741 CONFIGURE_ARGS+= \
742 --with-rlm_eap_ttls \
743 --with-rlm_eap_ttls-include-dir="$(STAGING_DIR)/usr/include" \
744 --with-rlm_eap_ttls-lib-dir="$(STAGING_DIR)/usr/lib"
745 CONFIGURE_LIBS+= -lcrypto -lssl
746 else
747 CONFIGURE_ARGS+= --without-rlm_eap_ttls
748 endif
749
750 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-ippool),)
751 CONFIGURE_ARGS+= --with-rlm_ippool \
752 --with-rlm_ippool-include-dir="$(STAGING_DIR)/usr/include" \
753 --with-rlm_ippool-lib-dir="$(STAGING_DIR)/usr/lib"
754 else
755 CONFIGURE_ARGS+= --without-rlm_ippool
756 endif
757
758 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-ldap),)
759 CONFIGURE_ARGS+= --with-rlm_ldap \
760 --with-rlm_ldap-include-dir="$(STAGING_DIR)/usr/include" \
761 --with-rlm_ldap-lib-dir="$(STAGING_DIR)/usr/lib"
762 else
763 CONFIGURE_ARGS+= --without-rlm_ldap
764 endif
765
766 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-python3),)
767 CFLAGS+= -fPIC
768 CONFIGURE_ARGS+= \
769 --with-modules="rlm_python3" \
770 --with-rlm-python3-config-bin="$(STAGING_DIR)/host/bin/python$(PYTHON3_VERSION)-config"
771 else
772 CONFIGURE_ARGS+= --without-rlm_python3
773 endif
774
775 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-radutmp),)
776 CONFIGURE_ARGS+= --with-rlm_radutmp
777 else
778 CONFIGURE_ARGS+= --without-rlm_radutmp
779 endif
780
781 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-redis),)
782 CONFIGURE_ARGS+= \
783 --with-rlm_redis \
784 --with-rlm_redis-include-dir="$(STAGING_DIR)/usr/include" \
785 --with-rlm_redis-lib-dir="$(STAGING_DIR)/usr/lib"
786 else
787 CONFIGURE_ARGS+= --without-rlm_redis
788 endif
789
790 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-rediswho),)
791 CONFIGURE_ARGS+= \
792 --with-rlm_rediswho \
793 --with-rlm_rediswho-include-dir="$(STAGING_DIR)/usr/include" \
794 --with-rlm_rediswho-lib-dir="$(STAGING_DIR)/usr/lib"
795 else
796 CONFIGURE_ARGS+= --without-rlm_rediswho
797 endif
798
799 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-rest),)
800 CONFIGURE_ARGS+= --with-rlm_rest
801 else
802 CONFIGURE_ARGS+= --without-rlm_rest
803 endif
804
805 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-sql),)
806 CONFIGURE_ARGS+= --with-rlm_sql
807 else
808 CONFIGURE_ARGS+= --without-rlm_sql
809 endif
810
811 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-sql-mysql),)
812 CONFIGURE_ARGS+= \
813 --with-rlm_sql_mysql \
814 --with-mysql-include-dir="$(STAGING_DIR)/usr/include/mysql"
815 else
816 CONFIGURE_ARGS+= --without-rlm_sql_mysql
817 endif
818
819 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-sql-postgresql),)
820 CONFIGURE_ARGS+= --with-rlm_sql_postgresql
821 else
822 CONFIGURE_ARGS+= --without-rlm_sql_postgresql
823 endif
824
825 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-sql-sqlite),)
826 CONFIGURE_ARGS+= --with-rlm_sql_sqlite
827 else
828 CONFIGURE_ARGS+= --without-rlm_sql_sqlite
829 endif
830
831 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-sqlcounter),)
832 CONFIGURE_ARGS+= --with-rlm_sqlcounter
833 else
834 CONFIGURE_ARGS+= --without-rlm_sqlcounter
835 endif
836
837 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-sqlippool),)
838 CONFIGURE_ARGS+= --with-rlm_sqlippool
839 else
840 CONFIGURE_ARGS+= --without-rlm_sqlippool
841 endif
842
843 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-unix),)
844 CONFIGURE_ARGS+= --with-rlm_unix
845 else
846 CONFIGURE_ARGS+= --without-rlm_unix
847 endif
848
849 ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius3-mod-yubikey),)
850 CONFIGURE_ARGS+= \
851 --with-rlm_yubikey \
852 --with-rlm_yubikey-include-dir="$(STAGING_DIR)/usr/include" \
853 --with-rlm_yubikey-lib-dir="$(STAGING_DIR)/usr/lib"
854 else
855 CONFIGURE_ARGS+= --without-rlm_yubikey
856 endif
857
858 ifeq ($(CONFIG_USE_GLIBC),y)
859 TARGET_CFLAGS+= -DLIBBSD_OVERLAY -I$(STAGING_DIR)/usr/include/bsd \
860 -D_RPC_NETDB_H
861 #^^^^^^^^^^^^^ avoid inclusion of librpc's netdb.h
862 CONFIGURE_LIBS+= -Wl,--push-state,--as-needed -lbsd -Wl,--pop-state
863 endif
864
865 CONFIGURE_VARS+= \
866 LDFLAGS="$$$$LDFLAGS" \
867 LIBS="$(CONFIGURE_LIBS)" \
868 MYSQL_CONFIG="no" \
869 ac_cv_lib_readline=no \
870 ax_cv_cc_builtin_choose_expr=yes \
871 ax_cv_cc_builtin_types_compatible_p=yes ax_cv_cc_builtin_bswap64=yes \
872 ax_cv_cc_bounded_attribute=no \
873 ac_cv_lib_collectdclient_lcc_connect=no \
874 ac_cv_lib_execinfo_backtrace_symbols=no
875
876 define Build/Compile
877 # Compile jlibtool for the host once the configuration is done
878 (cd $(PKG_BUILD_DIR); \
879 mkdir -p build/make; \
880 $(HOSTCC) $(HOST_CFLAGS) scripts/jlibtool.c -o build/make/jlibtool; \
881 )
882 $(MAKE) -C $(PKG_BUILD_DIR) \
883 R="$(PKG_INSTALL_DIR)" \
884 INSTALLSTRIP="" \
885 all install
886 endef
887
888 define Package/freeradius3-common/install
889 $(INSTALL_DIR) $(1)/etc/freeradius3
890 chmod 771 $(1)/etc/freeradius3
891 $(CP) $(PKG_INSTALL_DIR)/etc/freeradius3/dictionary $(1)/etc/freeradius3/ ; \
892 $(INSTALL_DIR) $(1)/usr/lib/freeradius3
893 $(CP) $(PKG_INSTALL_DIR)/usr/lib/freeradius3/libfreeradius-{dhcp,eap,radius,server}.so $(1)/usr/lib/freeradius3
894 $(INSTALL_DIR) $(1)/usr/share/freeradius3
895 $(CP) $(PKG_INSTALL_DIR)/usr/share/freeradius3/dictionary $(1)/usr/share/freeradius3/
896 $(SED) "s,^\(\$$$$INCLUDE\),#\1,g" $(1)/usr/share/freeradius3/dictionary
897 for f in $(PKG_DICTIONARIES); do \
898 $(CP) $(PKG_INSTALL_DIR)/usr/share/freeradius3/dictionary.$$$${f} $(1)/usr/share/freeradius3/ ; \
899 $(SED) "s,^#\(\$$$$INCLUDE dictionary\.$$$${f}\)$$$$,\1,g" $(1)/usr/share/freeradius3/dictionary ; \
900 done
901 endef
902
903 define Package/freeradius3/install
904 $(INSTALL_DIR) $(1)/etc/freeradius3
905 $(INSTALL_DIR) $(1)/etc/freeradius3/policy.d
906 $(INSTALL_DIR) $(1)/etc/freeradius3/sites-available
907 $(INSTALL_DIR) $(1)/etc/freeradius3/sites-enabled
908 for f in clients.conf radiusd.conf proxy.conf; do \
909 $(CP) $(PKG_INSTALL_DIR)/etc/freeradius3/$$$${f} $(1)/etc/freeradius3/ ; \
910 done
911 for f in accounting filter; do \
912 $(CP) $(PKG_INSTALL_DIR)/etc/freeradius3/policy.d/$$$${f} $(1)/etc/freeradius3/policy.d/ ; \
913 done
914 for f in default; do \
915 $(CP) $(PKG_INSTALL_DIR)/etc/freeradius3/sites-available/$$$${f} $(1)/etc/freeradius3/sites-available/ ; \
916 $(CP) $(PKG_INSTALL_DIR)/etc/freeradius3/sites-enabled/$$$${f} $(1)/etc/freeradius3/sites-enabled/ ; \
917 done
918
919 $(INSTALL_DIR) $(1)/usr/sbin
920 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/radiusd $(1)/usr/sbin/
921 $(INSTALL_DIR) $(1)/etc/init.d
922 $(INSTALL_BIN) ./files/radiusd.init $(1)/etc/init.d/radiusd
923 endef
924
925 define Package/freeradius3-default/install
926 true
927 endef
928
929 define Package/freeradius3-democerts/install
930 $(INSTALL_DIR) $(1)/etc/freeradius3/certs
931 $(CP) \
932 $(PKG_INSTALL_DIR)/etc/freeradius3/certs/ca.pem \
933 $(PKG_INSTALL_DIR)/etc/freeradius3/certs/dh \
934 $(PKG_INSTALL_DIR)/etc/freeradius3/certs/server.pem \
935 $(1)/etc/freeradius3/certs/
936 endef
937
938 define Package/freeradius3-utils/install
939 $(INSTALL_DIR) $(1)/usr/bin
940 for f in radclient radeapclient radtest radwho; do \
941 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/$$$${f} $(1)/usr/bin/ ; \
942 done
943 endef
944
945 define BuildPlugin
946 define Package/$(1)/install
947 [ -z "$(2)" ] || $(INSTALL_DIR) $$(1)/usr/lib/freeradius3
948 for m in $(2); do \
949 $(CP) $(PKG_INSTALL_DIR)/usr/lib/freeradius3/$$$$$$$${m}.so $$(1)/usr/lib/freeradius3 ; \
950 done
951 # Install configuration files
952 for f in $(strip $(call Package/$(1)/conffiles)); do \
953 $(INSTALL_DIR) $$(1)/$$$$$$$${f%/*} ; \
954 $(CP) $(PKG_INSTALL_DIR)/$$$$$$$${f} $$(1)/$$$$$$$${f}; \
955 done
956 endef
957
958 $$(eval $$(call BuildPackage,$(1)))
959 endef
960
961
962 $(eval $(call BuildPackage,freeradius3))
963 $(eval $(call BuildPackage,freeradius3-common))
964 $(eval $(call BuildPackage,freeradius3-default))
965 $(eval $(call BuildPackage,freeradius3-democerts))
966 $(eval $(call BuildPlugin,freeradius3-mod-always,rlm_always,))
967 $(eval $(call BuildPlugin,freeradius3-mod-attr-filter,rlm_attr_filter,))
968 $(eval $(call BuildPlugin,freeradius3-mod-chap,rlm_chap,))
969 $(eval $(call BuildPlugin,freeradius3-mod-counter,rlm_counter,))
970 $(eval $(call BuildPlugin,freeradius3-mod-date,rlm_date,))
971 $(eval $(call BuildPlugin,freeradius3-mod-detail,rlm_detail,))
972 $(eval $(call BuildPlugin,freeradius3-mod-digest,rlm_digest,))
973 $(eval $(call BuildPlugin,freeradius3-mod-dynamic-clients,rlm_dynamic_clients,))
974 $(eval $(call BuildPlugin,freeradius3-mod-eap,rlm_eap,))
975 $(eval $(call BuildPlugin,freeradius3-mod-eap-fast,rlm_eap_fast,))
976 $(eval $(call BuildPlugin,freeradius3-mod-eap-gtc,rlm_eap_gtc,))
977 $(eval $(call BuildPlugin,freeradius3-mod-eap-md5,rlm_eap_md5,))
978 $(eval $(call BuildPlugin,freeradius3-mod-eap-mschapv2,rlm_eap_mschapv2,))
979 $(eval $(call BuildPlugin,freeradius3-mod-eap-peap,rlm_eap_peap,))
980 $(eval $(call BuildPlugin,freeradius3-mod-eap-pwd,rlm_eap_pwd,))
981 $(eval $(call BuildPlugin,freeradius3-mod-eap-tls,rlm_eap_tls,))
982 $(eval $(call BuildPlugin,freeradius3-mod-eap-ttls,rlm_eap_ttls,))
983 $(eval $(call BuildPlugin,freeradius3-mod-exec,rlm_exec,))
984 $(eval $(call BuildPlugin,freeradius3-mod-expiration,rlm_expiration,))
985 $(eval $(call BuildPlugin,freeradius3-mod-expr,rlm_expr,))
986 $(eval $(call BuildPlugin,freeradius3-mod-files,rlm_files,))
987 $(eval $(call BuildPlugin,freeradius3-mod-ippool,rlm_ippool,))
988 $(eval $(call BuildPlugin,freeradius3-mod-krb5,rlm_krb5,))
989 $(eval $(call BuildPlugin,freeradius3-mod-ldap,rlm_ldap,))
990 $(eval $(call BuildPlugin,freeradius3-mod-linelog,rlm_linelog,))
991 $(eval $(call BuildPlugin,freeradius3-mod-logintime,rlm_logintime,))
992 $(eval $(call BuildPlugin,freeradius3-mod-mschap,rlm_mschap,))
993 $(eval $(call BuildPlugin,freeradius3-mod-pam,rlm_pam,))
994 $(eval $(call BuildPlugin,freeradius3-mod-pap,rlm_pap,))
995 $(eval $(call BuildPlugin,freeradius3-mod-passwd,rlm_passwd,))
996 $(eval $(call BuildPlugin,freeradius3-mod-preprocess,rlm_preprocess,))
997 $(eval $(call BuildPlugin,freeradius3-mod-python3,rlm_python3,))
998 $(eval $(call BuildPlugin,freeradius3-mod-radutmp,rlm_radutmp,))
999 $(eval $(call BuildPlugin,freeradius3-mod-realm,rlm_realm,))
1000 $(eval $(call BuildPlugin,freeradius3-mod-redis,rlm_redis,))
1001 $(eval $(call BuildPlugin,freeradius3-mod-rediswho,rlm_rediswho,))
1002 $(eval $(call BuildPlugin,freeradius3-mod-replicate,rlm_replicate,))
1003 $(eval $(call BuildPlugin,freeradius3-mod-rest,rlm_rest,))
1004 $(eval $(call BuildPlugin,freeradius3-mod-soh,rlm_soh,))
1005 $(eval $(call BuildPlugin,freeradius3-mod-sometimes,rlm_sometimes,))
1006 $(eval $(call BuildPlugin,freeradius3-mod-sql,rlm_sql,))
1007 $(eval $(call BuildPlugin,freeradius3-mod-sql-map,rlm_sql_map,))
1008 $(eval $(call BuildPlugin,freeradius3-mod-sql-mysql,rlm_sql_mysql,))
1009 $(eval $(call BuildPlugin,freeradius3-mod-sql-null,rlm_sql_null,))
1010 $(eval $(call BuildPlugin,freeradius3-mod-sql-postgresql,rlm_sql_postgresql,))
1011 $(eval $(call BuildPlugin,freeradius3-mod-sql-sqlite,rlm_sql_sqlite,))
1012 $(eval $(call BuildPlugin,freeradius3-mod-sqlcounter,rlm_sqlcounter,))
1013 $(eval $(call BuildPlugin,freeradius3-mod-sqlippool,rlm_sqlippool,))
1014 $(eval $(call BuildPlugin,freeradius3-mod-unix,rlm_unix,))
1015 $(eval $(call BuildPlugin,freeradius3-mod-unpack,rlm_unpack,))
1016 $(eval $(call BuildPlugin,freeradius3-mod-utf8,rlm_utf8,))
1017 $(eval $(call BuildPlugin,freeradius3-mod-wimax,rlm_wimax,))
1018 $(eval $(call BuildPlugin,freeradius3-mod-yubikey,rlm_yubikey,))
1019 $(eval $(call BuildPackage,freeradius3-utils))