Makefile 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636
  1. #
  2. # Copyright (C) 2008-2015 OpenWrt.org
  3. #
  4. # This is free software, licensed under the GNU General Public License v2.
  5. # See /LICENSE for more information.
  6. #
  7. include $(TOPDIR)/rules.mk
  8. PKG_NAME:=freeradius2
  9. PKG_VERSION:=2.2.9
  10. PKG_RELEASE:=1
  11. PKG_SOURCE:=freeradius-server-$(PKG_VERSION).tar.bz2
  12. PKG_SOURCE_URL:=\
  13. ftp://ftp.freeradius.org/pub/freeradius/ \
  14. ftp://ftp.freeradius.org/pub/freeradius/old/
  15. PKG_MD5SUM:=d1398327ba4e23c75da06d8a0e01096b
  16. PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org>
  17. PKG_LICENSE:=GPL-2.0
  18. PKG_LICENSE_FILES:=COPYRIGHT LICENSE
  19. PKG_BUILD_DIR:=$(BUILD_DIR)/freeradius-server-$(PKG_VERSION)
  20. PKG_FIXUP:=autoreconf
  21. PKG_CHECK_FORMAT_SECURITY:=0
  22. PKG_CONFIG_DEPENDS := \
  23. FREERADIUS_OPENSSL \
  24. FREERADIUS_NOSSL
  25. PKG_CHECK_FORMAT_SECURITY:=0
  26. include $(INCLUDE_DIR)/package.mk
  27. define Package/freeradius2/config
  28. source "$(SOURCE)/Config.in"
  29. endef
  30. define Package/freeradius2/Default
  31. SECTION:=net
  32. CATEGORY:=Network
  33. URL:=http://freeradius.org/
  34. SUBMENU:=FreeRADIUS (version 2)
  35. endef
  36. define Package/freeradius2
  37. $(call Package/freeradius2/Default)
  38. DEPENDS:=+libltdl +libreadline +freeradius2-common
  39. TITLE:=A flexible RADIUS server (version 2)
  40. endef
  41. define Package/freeradius2/conffiles
  42. /etc/freeradius2/clients.conf
  43. /etc/freeradius2/radiusd.conf
  44. /etc/freeradius2/sites/default
  45. endef
  46. define Package/freeradius2-democerts
  47. $(call Package/freeradius2/Default)
  48. DEPENDS:=freeradius2
  49. TITLE:=Demo certificates to test the server
  50. endef
  51. define Package/freeradius2-common
  52. $(call Package/freeradius2/Default)
  53. TITLE:=common files
  54. DEPENDS:=+libpthread +FREERADIUS_OPENSSL:libopenssl +zlib
  55. endef
  56. define Package/freeradius2-mod-chap
  57. $(call Package/freeradius2/Default)
  58. DEPENDS:=freeradius2
  59. TITLE:=CHAP module
  60. endef
  61. define Package/freeradius2-mod-chap/conffiles
  62. /etc/freeradius2/modules/chap
  63. endef
  64. define Package/freeradius2-mod-detail
  65. $(call Package/freeradius2/Default)
  66. DEPENDS:=freeradius2
  67. TITLE:=Detailed accounting module
  68. endef
  69. define Package/freeradius2-mod-detail/conffiles
  70. /etc/freeradius2/modules/detail
  71. endef
  72. define Package/freeradius2-mod-eap
  73. $(call Package/freeradius2/Default)
  74. DEPENDS:=freeradius2
  75. TITLE:=Base EAP module
  76. endef
  77. define Package/freeradius2-mod-eap/conffiles
  78. /etc/freeradius2/eap.conf
  79. endef
  80. define Package/freeradius2-mod-eap-gtc
  81. $(call Package/freeradius2/Default)
  82. DEPENDS:=freeradius2-mod-eap
  83. TITLE:=EAP/GTC module
  84. endef
  85. define Package/freeradius2-mod-eap-md5
  86. $(call Package/freeradius2/Default)
  87. DEPENDS:=freeradius2-mod-eap
  88. TITLE:=EAP/MD5 module
  89. endef
  90. define Package/freeradius2-mod-eap-mschapv2
  91. $(call Package/freeradius2/Default)
  92. DEPENDS:=freeradius2-mod-eap +freeradius2-mod-mschap
  93. TITLE:=EAP/MS-CHAPv2 module
  94. endef
  95. define Package/freeradius2-mod-eap-peap
  96. $(call Package/freeradius2/Default)
  97. DEPENDS:=freeradius2-mod-eap @FREERADIUS_OPENSSL
  98. TITLE:=EAP/PEAP module
  99. endef
  100. define Package/freeradius2-mod-eap-tls
  101. $(call Package/freeradius2/Default)
  102. DEPENDS:=freeradius2-mod-eap @FREERADIUS_OPENSSL
  103. TITLE:=EAP/TLS module
  104. endef
  105. define Package/freeradius2-mod-eap-ttls
  106. $(call Package/freeradius2/Default)
  107. DEPENDS:=freeradius2-mod-eap-tls
  108. TITLE:=EAP/TTLS module
  109. endef
  110. define Package/freeradius2-mod-exec
  111. $(call Package/freeradius2/Default)
  112. DEPENDS:=freeradius2
  113. TITLE:=EXEC module
  114. endef
  115. define Package/freeradius2-mod-exec/conffiles
  116. /etc/freeradius2/modules/exec
  117. endef
  118. define Package/freeradius2-mod-expiration
  119. $(call Package/freeradius2/Default)
  120. DEPENDS:=freeradius2
  121. TITLE:=Expiration module
  122. endef
  123. define Package/freeradius2-mod-expiration/conffiles
  124. /etc/freeradius2/modules/expiration
  125. endef
  126. define Package/freeradius2-mod-always
  127. $(call Package/freeradius2/Default)
  128. DEPENDS:=freeradius2
  129. TITLE:=Always module
  130. endef
  131. define Package/freeradius2-mod-always/conffiles
  132. /etc/freeradius2/modules/always
  133. endef
  134. define Package/freeradius2-mod-expr
  135. $(call Package/freeradius2/Default)
  136. DEPENDS:=freeradius2
  137. TITLE:=EXPR module
  138. endef
  139. define Package/freeradius2-mod-expr/conffiles
  140. /etc/freeradius2/modules/expr
  141. endef
  142. define Package/freeradius2-mod-attr-filter
  143. $(call Package/freeradius2/Default)
  144. DEPENDS:=freeradius2
  145. TITLE:=ATTR filter module
  146. endef
  147. define Package/freeradius2-mod-attr-filter/conffiles
  148. /etc/freeradius2/modules/attr_filter
  149. /etc/freeradius2/attrs
  150. /etc/freeradius2/attrs.access_reject
  151. /etc/freeradius2/attrs.accounting_response
  152. /etc/freeradius2/attrs.pre-proxy
  153. endef
  154. define Package/freeradius2-mod-attr-rewrite
  155. $(call Package/freeradius2/Default)
  156. DEPENDS:=freeradius2
  157. TITLE:=ATTR rewrite module
  158. endef
  159. define Package/freeradius2-mod-attr-rewrite/conffiles
  160. /etc/freeradius2/modules/attr_rewrite
  161. endef
  162. define Package/freeradius2-mod-files
  163. $(call Package/freeradius2/Default)
  164. DEPENDS:=freeradius2
  165. TITLE:=Module using local files for authorization
  166. endef
  167. define Package/freeradius2-mod-files/conffiles
  168. /etc/freeradius2/acct_users
  169. /etc/freeradius2/preproxy_users
  170. /etc/freeradius2/users
  171. /etc/freeradius2/modules/files
  172. endef
  173. define Package/freeradius2-mod-passwd
  174. $(call Package/freeradius2/Default)
  175. DEPENDS:=freeradius2
  176. TITLE:=Rlm passwd module
  177. endef
  178. define Package/freeradius2-mod-passwd/conffiles
  179. /etc/freeradius2/modules/passwd
  180. endef
  181. define Package/freeradius2-mod-ldap
  182. $(call Package/freeradius2/Default)
  183. DEPENDS:=freeradius2 +libopenldap
  184. TITLE:=LDAP module
  185. endef
  186. define Package/freeradius2-mod-ldap/conffiles
  187. /etc/freeradius2/ldap.attrmap
  188. /etc/freeradius2/modules/ldap
  189. endef
  190. define Package/freeradius2-mod-logintime
  191. $(call Package/freeradius2/Default)
  192. DEPENDS:=freeradius2
  193. TITLE:=Logintime module
  194. endef
  195. define Package/freeradius2-mod-logintime/conffiles
  196. /etc/freeradius2/modules/logintime
  197. endef
  198. define Package/freeradius2-mod-mschap
  199. $(call Package/freeradius2/Default)
  200. DEPENDS:=freeradius2
  201. TITLE:=MS-CHAP and MS-CHAPv2 module
  202. endef
  203. define Package/freeradius2-mod-mschap/conffiles
  204. /etc/freeradius2/modules/mschap
  205. endef
  206. define Package/freeradius2-mod-pap
  207. $(call Package/freeradius2/Default)
  208. DEPENDS:=freeradius2
  209. TITLE:=PAP module
  210. endef
  211. define Package/freeradius2-mod-pap/conffiles
  212. /etc/freeradius2/modules/pap
  213. endef
  214. define Package/freeradius2-mod-preprocess
  215. $(call Package/freeradius2/Default)
  216. DEPENDS:=freeradius2
  217. TITLE:=Request pre-processing module
  218. endef
  219. define Package/freeradius2-mod-preprocess/conffiles
  220. /etc/freeradius2/hints
  221. /etc/freeradius2/huntgroups
  222. /etc/freeradius2/modules/preprocess
  223. endef
  224. define Package/freeradius2-mod-realm
  225. $(call Package/freeradius2/Default)
  226. DEPENDS:=freeradius2
  227. TITLE:=Realms handling module
  228. endef
  229. define Package/freeradius2-mod-realm/conffiles
  230. /etc/freeradius2/proxy.conf
  231. /etc/freeradius2/modules/realm
  232. endef
  233. define Package/freeradius2-mod-sql
  234. $(call Package/freeradius2/Default)
  235. DEPENDS:=freeradius2
  236. TITLE:=Base SQL module
  237. endef
  238. define Package/freeradius2-mod-sql/conffiles
  239. /etc/freeradius2/sql.conf
  240. endef
  241. define Package/freeradius2-mod-sql-mysql
  242. $(call Package/freeradius2/Default)
  243. DEPENDS:=freeradius2-mod-sql +libmysqlclient-r
  244. TITLE:=MySQL module
  245. endef
  246. define Package/freeradius2-mod-sql-pgsql
  247. $(call Package/freeradius2/Default)
  248. DEPENDS:=freeradius2-mod-sql +libpq
  249. TITLE:=PostgreSQL module
  250. endef
  251. define Package/freeradius2-mod-sql-sqlite
  252. $(call Package/freeradius2/Default)
  253. DEPENDS:=freeradius2-mod-sql +libsqlite3
  254. TITLE:=SQLite module
  255. endef
  256. define Package/freeradius2-mod-sqlcounter
  257. $(call Package/freeradius2/Default)
  258. DEPENDS:=freeradius2-mod-sql
  259. TITLE:=Generic SQL Counter module
  260. endef
  261. define Package/freeradius2-mod-radutmp
  262. $(call Package/freeradius2/Default)
  263. DEPENDS:=freeradius2
  264. TITLE:=Radius UTMP module
  265. endef
  266. define Package/freeradius2-mod-radutmp/conffiles
  267. /etc/freeradius2/modules/radutmp
  268. /etc/freeradius2/modules/sradutmp
  269. endef
  270. define Package/freeradius2-utils
  271. $(call Package/freeradius2/Default)
  272. DEPENDS:=+freeradius2-common
  273. TITLE:=Misc. client utilities
  274. endef
  275. define Package/freeradius2-mod-sqllog
  276. $(call Package/freeradius2/Default)
  277. DEPENDS:=freeradius2
  278. TITLE:=SQL Logging module
  279. endef
  280. CONFIGURE_ARGS+= \
  281. --libdir=/usr/lib/freeradius2 \
  282. --libexecdir=/usr/lib/freeradius2 \
  283. --enable-shared \
  284. --disable-static \
  285. --disable-developer \
  286. --with-threads \
  287. $(if $(CONFIG_FREERADIUS_OPENSSL),--with,--without)-openssl \
  288. $(if $(CONFIG_FREERADIUS_OPENSSL),--with-openssl-includes="$(STAGING_DIR)/usr/include",) \
  289. $(if $(CONFIG_FREERADIUS_OPENSSL),--with-openssl-libraries="$(STAGING_DIR)/usr/lib",) \
  290. $(if $(CONFIG_FREERADIUS_OPENSSL),--disable-openssl-version-check,) \
  291. --with-system-libtool \
  292. --with-system-libltdl \
  293. --enable-strict-dependencies \
  294. --with-raddbdir=/etc/freeradius2 \
  295. --with-radacctdir=/var/db/radacct \
  296. --with-logdir=/var/log \
  297. --without-edir \
  298. --without-snmp \
  299. --without-rlm_checkval \
  300. --without-rlm_dbm \
  301. --without-rlm_counter \
  302. --with-rlm_expr \
  303. --with-rlm_eap \
  304. --without-rlm_eap_sim \
  305. --without-rlm_example \
  306. --without-rlm_ippool \
  307. --without-rlm_krb5 \
  308. --without-rlm_otp \
  309. --without-rlm_smsotp \
  310. --without-rlm_pam \
  311. --without-rlm_perl \
  312. --without-rlm_python \
  313. --without-rlm_smb \
  314. --with-rlm_sql \
  315. --with-rlm_sqlcounter \
  316. --without-rlm_sqlhpwippool \
  317. --without-rlm_sqlippool \
  318. --without-rlm_sql_db2 \
  319. --without-rlm_sql_firebird \
  320. --without-rlm_sql_freetds \
  321. --without-rlm_sql_iodbc \
  322. --without-rlm_sql_oracle \
  323. --without-rlm_sql_sybase \
  324. --without-rlm_sql_unixodbc \
  325. --without-rlm_sql_log \
  326. --without-rlm_unix \
  327. --without-rlm_eap_tnc \
  328. --without-rlm_eap_ikev2 \
  329. --without-rlm_opendirectory \
  330. --without-rlm_wimax \
  331. --without-rlm_ruby \
  332. --without-rlm_caching \
  333. --without-rlm_redis \
  334. --without-rlm_rediswho \
  335. --without-rlm_soh \
  336. --without-rlm_sim \
  337. --without-rlm_replicate \
  338. --without-rlm_protocol_filter \
  339. --without-rlm_policy \
  340. --without-rlm_linelog \
  341. --without-rlm_jradius \
  342. --without-rlm_fastusers \
  343. --without-rlm_eap_leap \
  344. --without-rlm_dynamic_clients \
  345. --without-rlm_digest \
  346. --without-rlm_cram \
  347. --without-rlm_copy_packet \
  348. --without-rlm_acct_unique \
  349. --without-rlm_acctlog
  350. PKG_DICTIONARIES:= \
  351. freeradius freeradius.internal \
  352. rfc2865 rfc2866 rfc2867 rfc2868 rfc2869 rfc3162 rfc3576 rfc3580 \
  353. rfc4372 rfc4675 rfc4679 \
  354. microsoft \
  355. wispr \
  356. ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius2-mod-ldap),)
  357. CONFIGURE_ARGS+= \
  358. --with-rlm_ldap-include-dir="$(STAGING_DIR)/usr/include" \
  359. --with-rlm_ldap-lib-dir="$(STAGING_DIR)/usr/lib"
  360. CONFIGURE_LIBS+= -lcrypto -lssl
  361. else
  362. CONFIGURE_ARGS+= --without-rlm_ldap
  363. endif
  364. ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius2-mod-sql-mysql),)
  365. CONFIGURE_ARGS+= \
  366. --with-mysql-include-dir="$(STAGING_DIR)/usr/include" \
  367. --with-mysql-lib-dir="$(STAGING_DIR)/usr/lib/mysql"
  368. CONFIGURE_LIBS+= -lz
  369. CONFIGURE_VARS+= ac_cv_lib_mysqlclient_r_mysql_init=yes
  370. else
  371. CONFIGURE_ARGS+= --without-rlm_sql_mysql
  372. endif
  373. ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius2-mod-sql-pgsql),)
  374. CONFIGURE_ARGS+= \
  375. --with-rlm_sql_postgresql-include-dir="$(STAGING_DIR)/usr/include" \
  376. --with-rlm_sql_postgresql-lib-dir="$(STAGING_DIR)/usr/lib"
  377. else
  378. CONFIGURE_ARGS+= --without-rlm_sql_postgresql
  379. endif
  380. ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius2-mod-sqllog),)
  381. CONFIGURE_ARGS+= \
  382. --with-rlm_sql_log \
  383. --with-experimental-modules \
  384. else
  385. CONFIGURE_ARGS+= --without-rlm_sql_log
  386. endif
  387. ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius2-mod-sql-sqlite),)
  388. CONFIGURE_ARGS+= \
  389. --with-rlm_sql_sqlite \
  390. --with-experimental-modules \
  391. --with-sqlite-include-dir="$(STAGING_DIR)/usr/include" \
  392. --with-sqlite-lib-dir="$(STAGING_DIR)/usr/lib"
  393. else
  394. CONFIGURE_ARGS+= --without-rlm_sql_sqlite
  395. endif
  396. ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius2-mod-eap-peap),)
  397. CONFIGURE_ARGS+= \
  398. --with-rlm_eap_peap \
  399. --with-rlm_eap_peap-include-dir="$(STAGING_DIR)/usr/include" \
  400. --with-rlm_eap_peap-lib-dir="$(STAGING_DIR)/usr/lib"
  401. CONFIGURE_LIBS+= -lcrypto -lssl
  402. else
  403. CONFIGURE_ARGS+= --without-rlm_eap_peap
  404. endif
  405. ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius2-mod-eap-tls),)
  406. CONFIGURE_ARGS+= \
  407. --with-rlm_eap_tls \
  408. --with-rlm_eap_tls-include-dir="$(STAGING_DIR)/usr/include" \
  409. --with-rlm_eap_tls-lib-dir="$(STAGING_DIR)/usr/lib"
  410. CONFIGURE_LIBS+= -lcrypto -lssl
  411. else
  412. CONFIGURE_ARGS+= --without-rlm_eap_tls
  413. endif
  414. ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius2-mod-eap-ttls),)
  415. CONFIGURE_ARGS+= \
  416. --with-rlm_eap_ttls \
  417. --with-rlm_eap_ttls-include-dir="$(STAGING_DIR)/usr/include" \
  418. --with-rlm_eap_ttls-lib-dir="$(STAGING_DIR)/usr/lib"
  419. CONFIGURE_LIBS+= -lcrypto -lssl
  420. else
  421. CONFIGURE_ARGS+= --without-rlm_eap_ttls
  422. endif
  423. ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius2-mod-attr-rewrite),)
  424. CONFIGURE_ARGS+= --with-rlm_attr-rewrite
  425. else
  426. CONFIGURE_ARGS+= --without-rlm_attr-rewrite
  427. endif
  428. ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius2-mod-radutmp),)
  429. CONFIGURE_ARGS+= --with-rlm_radutmp
  430. else
  431. CONFIGURE_ARGS+= --without-rlm_radutmp
  432. endif
  433. ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius2-mod-logintime),)
  434. CONFIGURE_ARGS+= --with-rlm_logintime
  435. else
  436. CONFIGURE_ARGS+= --without-rlm_logintime
  437. endif
  438. ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius2-mod-expiration),)
  439. CONFIGURE_ARGS+= --with-rlm_expiration
  440. else
  441. CONFIGURE_ARGS+= --without-rlm_expiration
  442. endif
  443. ifneq ($(SDK)$(CONFIG_PACKAGE_freeradius2-mod-always),)
  444. CONFIGURE_ARGS+= --with-rlm_always
  445. else
  446. CONFIGURE_ARGS+= --without-rlm_always
  447. endif
  448. CONFIGURE_VARS+= \
  449. LDFLAGS="$$$$LDFLAGS" \
  450. LIBS="$(CONFIGURE_LIBS)" \
  451. MYSQL_CONFIG="no" \
  452. ac_cv_lib_readline=no \
  453. define Build/Compile
  454. $(MAKE) -C $(PKG_BUILD_DIR) \
  455. R="$(PKG_INSTALL_DIR)" \
  456. INSTALLSTRIP="" \
  457. all certs install
  458. endef
  459. define Package/freeradius2-common/install
  460. $(INSTALL_DIR) $(1)/etc/freeradius2
  461. chmod 771 $(1)/etc/freeradius2
  462. $(CP) $(PKG_INSTALL_DIR)/etc/freeradius2/dictionary $(1)/etc/freeradius2/ ; \
  463. $(INSTALL_DIR) $(1)/usr/lib/freeradius2
  464. $(CP) $(PKG_INSTALL_DIR)/usr/lib/freeradius2/libfreeradius-radius{,-*}.so $(1)/usr/lib/freeradius2
  465. $(CP) $(PKG_INSTALL_DIR)/usr/lib/freeradius2/libfreeradius-eap{,-*}.so $(1)/usr/lib/freeradius2
  466. $(INSTALL_DIR) $(1)/usr/share/freeradius2
  467. $(CP) $(PKG_INSTALL_DIR)/usr/share/freeradius/dictionary $(1)/usr/share/freeradius2/
  468. $(SED) "s,^\(\$$$$INCLUDE\),#\1,g" $(1)/usr/share/freeradius2/dictionary
  469. for f in $(PKG_DICTIONARIES); do \
  470. $(CP) $(PKG_INSTALL_DIR)/usr/share/freeradius/dictionary.$$$${f} $(1)/usr/share/freeradius2/ ; \
  471. $(SED) "s,^#\(\$$$$INCLUDE dictionary\.$$$${f}\),\1,g" $(1)/usr/share/freeradius2/dictionary ; \
  472. done
  473. endef
  474. define Package/freeradius2/install
  475. $(INSTALL_DIR) $(1)/etc/freeradius2/modules
  476. $(INSTALL_DIR) $(1)/etc/freeradius2/sites
  477. for f in clients.conf radiusd.conf policy.conf; do \
  478. $(CP) $(PKG_INSTALL_DIR)/etc/freeradius2/$$$${f} $(1)/etc/freeradius2/ ; \
  479. done
  480. $(CP) $(PKG_INSTALL_DIR)/etc/freeradius2/sites-available/default $(1)/etc/freeradius2/sites/default
  481. $(INSTALL_DIR) $(1)/usr/sbin
  482. $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/radiusd $(1)/usr/sbin/
  483. $(INSTALL_DIR) $(1)/etc/init.d
  484. $(INSTALL_BIN) ./files/radiusd.init $(1)/etc/init.d/radiusd
  485. endef
  486. define Package/freeradius2-democerts/install
  487. $(INSTALL_DIR) $(1)/etc/freeradius2/certs
  488. $(CP) \
  489. $(PKG_BUILD_DIR)/raddb/certs/ca.pem \
  490. $(PKG_BUILD_DIR)/raddb/certs/dh \
  491. $(PKG_BUILD_DIR)/raddb/certs/random \
  492. $(PKG_BUILD_DIR)/raddb/certs/server.pem \
  493. $(1)/etc/freeradius2/certs/
  494. endef
  495. define Package/freeradius2-utils/install
  496. $(INSTALL_DIR) $(1)/usr/bin
  497. for f in radclient radeapclient radwho; do \
  498. $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/$$$${f} $(1)/usr/bin/ ; \
  499. done
  500. endef
  501. define BuildPlugin
  502. define Package/$(1)/install
  503. [ -z "$(2)" ] || $(INSTALL_DIR) $$(1)/usr/lib/freeradius2
  504. for m in $(2); do \
  505. $(CP) $(PKG_INSTALL_DIR)/usr/lib/freeradius2/$$$$$$$${m}{,-*}.so $$(1)/usr/lib/freeradius2 ; \
  506. done
  507. [ -z "$(3)" ] || $(INSTALL_DIR) $$(1)/etc/freeradius2
  508. [ -z "$(4)" ] || $(INSTALL_DIR) $$(1)/etc/freeradius2/$(4)
  509. for f in $(3); do \
  510. $(CP) $(PKG_INSTALL_DIR)/etc/freeradius2/$$$$$$$${f} $$(1)/etc/freeradius2/$$$$$$$${f} ; \
  511. done
  512. endef
  513. $$(eval $$(call BuildPackage,$(1)))
  514. endef
  515. $(eval $(call BuildPackage,freeradius2))
  516. $(eval $(call BuildPackage,freeradius2-common))
  517. $(eval $(call BuildPackage,freeradius2-democerts))
  518. $(eval $(call BuildPlugin,freeradius2-mod-chap,rlm_chap,modules/chap,modules,))
  519. $(eval $(call BuildPlugin,freeradius2-mod-detail,rlm_detail,modules/detail,modules,))
  520. $(eval $(call BuildPlugin,freeradius2-mod-eap,rlm_eap,eap.conf))
  521. $(eval $(call BuildPlugin,freeradius2-mod-eap-gtc,rlm_eap_gtc,))
  522. $(eval $(call BuildPlugin,freeradius2-mod-eap-md5,rlm_eap_md5,))
  523. $(eval $(call BuildPlugin,freeradius2-mod-eap-mschapv2,rlm_eap_mschapv2,))
  524. $(eval $(call BuildPlugin,freeradius2-mod-eap-peap,rlm_eap_peap,))
  525. $(eval $(call BuildPlugin,freeradius2-mod-eap-tls,rlm_eap_tls,))
  526. $(eval $(call BuildPlugin,freeradius2-mod-eap-ttls,rlm_eap_ttls,))
  527. $(eval $(call BuildPlugin,freeradius2-mod-exec,rlm_exec,modules/exec modules/echo ,modules,))
  528. $(eval $(call BuildPlugin,freeradius2-mod-attr-rewrite,rlm_attr_rewrite,modules/attr_rewrite,modules,))
  529. $(eval $(call BuildPlugin,freeradius2-mod-files,rlm_files,acct_users preproxy_users users modules/files,modules,))
  530. $(eval $(call BuildPlugin,freeradius2-mod-passwd,rlm_passwd,modules/passwd,modules,))
  531. $(eval $(call BuildPlugin,freeradius2-mod-ldap,rlm_ldap,ldap.attrmap modules/ldap,modules,))
  532. $(eval $(call BuildPlugin,freeradius2-mod-mschap,rlm_mschap,modules/mschap,modules,))
  533. $(eval $(call BuildPlugin,freeradius2-mod-pap,rlm_pap,modules/pap,modules,))
  534. $(eval $(call BuildPlugin,freeradius2-mod-preprocess,rlm_preprocess,hints huntgroups modules/preprocess,modules,))
  535. $(eval $(call BuildPlugin,freeradius2-mod-realm,rlm_realm,proxy.conf modules/realm modules/inner-eap,modules,))
  536. $(eval $(call BuildPlugin,freeradius2-mod-sql,rlm_sql,sql.conf,))
  537. $(eval $(call BuildPlugin,freeradius2-mod-sql-mysql,rlm_sql_mysql,))
  538. $(eval $(call BuildPlugin,freeradius2-mod-sql-pgsql,rlm_sql_postgresql,))
  539. $(eval $(call BuildPlugin,freeradius2-mod-sql-sqlite,rlm_sql_sqlite,))
  540. $(eval $(call BuildPlugin,freeradius2-mod-sqlcounter,rlm_sqlcounter,))
  541. $(eval $(call BuildPlugin,freeradius2-mod-sqllog,rlm_sql_log,))
  542. $(eval $(call BuildPlugin,freeradius2-mod-radutmp,rlm_radutmp,modules/radutmp modules/sradutmp,modules,))
  543. $(eval $(call BuildPlugin,freeradius2-mod-logintime,rlm_logintime,modules/logintime,modules,))
  544. $(eval $(call BuildPlugin,freeradius2-mod-expr,rlm_expr,modules/expr,modules,))
  545. $(eval $(call BuildPlugin,freeradius2-mod-attr-filter,rlm_attr_filter,modules/attr_filter attrs attrs.access_reject attrs.accounting_response attrs.pre-proxy,modules,,))
  546. $(eval $(call BuildPlugin,freeradius2-mod-expiration,rlm_expiration,modules/expiration,modules,))
  547. $(eval $(call BuildPlugin,freeradius2-mod-always,rlm_always,modules/always,modules,))
  548. $(eval $(call BuildPackage,freeradius2-utils))