diff options
Diffstat (limited to 'openwrt/package/freeradius/Makefile')
-rw-r--r-- | openwrt/package/freeradius/Makefile | 188 |
1 files changed, 188 insertions, 0 deletions
diff --git a/openwrt/package/freeradius/Makefile b/openwrt/package/freeradius/Makefile new file mode 100644 index 0000000000..54b0403a31 --- /dev/null +++ b/openwrt/package/freeradius/Makefile @@ -0,0 +1,188 @@ +# $Id$ + +include $(TOPDIR)/rules.mk + +PKG_NAME:=freeradius +PKG_VERSION:=1.0.2 +PKG_RELEASE:=1 +PKG_MD5SUM:=f5dfce4efbb03bbc47ceae08270a875e + +PKG_SOURCE_URL:=ftp://ftp.freeradius.org/pub/radius/ +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_CAT:=zcat + +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) +PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install + +include $(TOPDIR)/package/rules.mk + +define PKG_mod_template + +$$(IPKG_$(1)): + install -d -m0755 $$(IDIR_$(1))/usr/lib/freeradius + for m in $(2); do \ + cp -fpR $(PKG_INSTALL_DIR)/usr/lib/freeradius/$$$${m}{,-*}.so \ + $$(IDIR_$(1))/usr/lib/freeradius/ ; \ + done + install -d -m0755 $$(IDIR_$(1))/etc/freeradius + for f in $(3); do \ + cp -fpR $(PKG_INSTALL_DIR)/etc/freeradius/$$$${f} \ + $$(IDIR_$(1))/etc/freeradius/ ; \ + done + $(RSTRIP) $$(IDIR_$(1)) + $(IPKG_BUILD) $$(IDIR_$(1)) $(PACKAGE_DIR) + +endef + +$(eval $(call PKG_template,FREERADIUS,freeradius,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) +$(eval $(call PKG_template,FREERADIUS_DEMOCERTS,freeradius-democerts,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) +$(eval $(call PKG_template,FREERADIUS_MOD_CHAP,freeradius-mod-chap,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) +$(eval $(call PKG_template,FREERADIUS_MOD_EAP,freeradius-mod-eap,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) +$(eval $(call PKG_template,FREERADIUS_MOD_EAP_GTC,freeradius-mod-eap-gtc,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) +$(eval $(call PKG_template,FREERADIUS_MOD_EAP_MD5,freeradius-mod-eap-md5,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) +$(eval $(call PKG_template,FREERADIUS_MOD_EAP_MSCHAPV2,freeradius-mod-eap-mschapv2,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) +$(eval $(call PKG_template,FREERADIUS_MOD_EAP_PEAP,freeradius-mod-eap-peap,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) +$(eval $(call PKG_template,FREERADIUS_MOD_EAP_TLS,freeradius-mod-eap-tls,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) +$(eval $(call PKG_template,FREERADIUS_MOD_EAP_TTLS,freeradius-mod-eap-ttls,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) +$(eval $(call PKG_template,FREERADIUS_MOD_FILES,freeradius-mod-files,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) +$(eval $(call PKG_template,FREERADIUS_MOD_LDAP,freeradius-mod-ldap,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) +$(eval $(call PKG_template,FREERADIUS_MOD_MSCHAP,freeradius-mod-mschap,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) +$(eval $(call PKG_template,FREERADIUS_MOD_PAP,freeradius-mod-pap,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) +$(eval $(call PKG_template,FREERADIUS_MOD_SQL,freeradius-mod-sql,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) +$(eval $(call PKG_template,FREERADIUS_MOD_SQL_MYSQL,freeradius-mod-sql-mysql,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) +$(eval $(call PKG_template,FREERADIUS_MOD_SQL_PGSQL,freeradius-mod-sql-pgsql,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) +$(eval $(call PKG_template,FREERADIUS_UTILS,freeradius-utils,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) + +$(eval $(call PKG_mod_template,FREERADIUS_MOD_CHAP,rlm_chap,)) +$(eval $(call PKG_mod_template,FREERADIUS_MOD_EAP,libeap rlm_eap,eap.conf)) +$(eval $(call PKG_mod_template,FREERADIUS_MOD_EAP_GTC,rlm_eap_gtc,)) +$(eval $(call PKG_mod_template,FREERADIUS_MOD_EAP_MD5,rlm_eap_md5,)) +$(eval $(call PKG_mod_template,FREERADIUS_MOD_EAP_MSCHAPV2,rlm_eap_mschapv2,)) +$(eval $(call PKG_mod_template,FREERADIUS_MOD_EAP_PEAP,rlm_eap_peap,)) +$(eval $(call PKG_mod_template,FREERADIUS_MOD_EAP_TLS,rlm_eap_tls,)) +$(eval $(call PKG_mod_template,FREERADIUS_MOD_EAP_TTLS,rlm_eap_ttls,)) +$(eval $(call PKG_mod_template,FREERADIUS_MOD_FILES,rlm_files,acct_users preproxy_users users)) +$(eval $(call PKG_mod_template,FREERADIUS_MOD_LDAP,rlm_ldap,ldap.attrmap)) +$(eval $(call PKG_mod_template,FREERADIUS_MOD_MSCHAP,rlm_mschap,)) +$(eval $(call PKG_mod_template,FREERADIUS_MOD_PAP,rlm_pap,)) +$(eval $(call PKG_mod_template,FREERADIUS_MOD_SQL,rlm_sql,sql.conf)) +$(eval $(call PKG_mod_template,FREERADIUS_MOD_SQL_MYSQL,rlm_sql_mysql,)) +$(eval $(call PKG_mod_template,FREERADIUS_MOD_SQL_PGSQL,rlm_sql_postgresql,)) + +$(PKG_BUILD_DIR)/.configured: + (cd $(PKG_BUILD_DIR); rm -rf config.{cache,status} ; \ + $(TARGET_CONFIGURE_OPTS) \ + CFLAGS="$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include" \ + CPPFLAGS="-I$(STAGING_DIR)/usr/include" \ + LDFLAGS="-L$(STAGING_DIR)/usr/lib -L$(PKG_INSTALL_DIR)/usr/lib/freeradius" \ + lt_sys_lib_search_path_spec="$(STAGING_DIR)/usr/lib" \ + MYSQL_CONFIG="no" \ + ./configure \ + --target=$(GNU_TARGET_NAME) \ + --host=$(GNU_TARGET_NAME) \ + --build=$(GNU_HOST_NAME) \ + --program-prefix="" \ + --program-suffix="" \ + --prefix=/usr \ + --exec-prefix=/usr \ + --bindir=/usr/bin \ + --datadir=/usr/share \ + --includedir=/usr/include \ + --infodir=/usr/share/info \ + --libdir=/usr/lib/freeradius \ + --libexecdir=/usr/lib/freeradius \ + --localstatedir=/var \ + --mandir=/usr/share/man \ + --sbindir=/usr/sbin \ + --sysconfdir=/etc \ + $(DISABLE_LARGEFILE) \ + $(DISABLE_NLS) \ + --enable-shared \ + --disable-static \ + --disable-ltdl-install \ + --with-ltdl-include="$(STAGING_DIR)/usr/include" \ + --with-ltdl-lib="$(STAGING_DIR)/usr/lib" \ + --with-openssl-includes="$(STAGING_DIR)/usr/include" \ + --with-openssl-libraries="$(STAGING_DIR)/usr/lib" \ + --enable-strict-dependencies \ + --with-raddbdir=/etc/freeradius \ + --without-edir \ + --without-snmp \ + --without-rlm_attr-rewrite \ + --with-rlm_checkval \ + --without-rlm_counter \ + --without-rlm_dbm \ + --with-rlm_eap \ + --without-rlm_eap_sim \ + --with-rlm_files \ + --without-rlm_ippool \ + --without-rlm_krb5 \ + --with-rlm_ldap-include-dir="$(STAGING_DIR)/usr/include" \ + --with-rlm_ldap-lib-dir="$(STAGING_DIR)/usr/lib" \ + --without-rlm_pam \ + --without-rlm_radutmp \ + --without-rlm_sql_iodbc \ + --with-mysql-include-dir="$(STAGING_DIR)/usr/include/mysql" \ + --with-mysql-lib-dir="$(STAGING_DIR)/usr/lib/mysql" \ + --without-rlm_sql_oracle \ + --with-rlm_sql_postgresql-include-dir="$(STAGING_DIR)/usr/include" \ + --with-rlm_sql_postgresql-lib-dir="$(STAGING_DIR)/usr/lib" \ + --without-rlm_sql_unixodbc \ + --without-rlm_unix \ + --without-rlm_x99-token \ + ) + touch $(PKG_BUILD_DIR)/.configured + +$(PKG_BUILD_DIR)/.built: + $(MAKE) -C $(PKG_BUILD_DIR) + mkdir -p $(PKG_INSTALL_DIR) + $(MAKE) -C $(PKG_BUILD_DIR) \ + R="$(PKG_INSTALL_DIR)" \ + INSTALLSTRIP="" \ + install + touch $(PKG_BUILD_DIR)/.built + +$(IPKG_FREERADIUS): + install -m0755 -d $(IDIR_FREERADIUS)/etc/init.d + install -m0755 ./files/radiusd.init $(IDIR_FREERADIUS)/etc/init.d/radiusd + install -m0755 -d $(IDIR_FREERADIUS)/etc/freeradius + for f in clients.conf dictionary radiusd.conf; do \ + cp -fpR $(PKG_INSTALL_DIR)/etc/freeradius/$${f} \ + $(IDIR_FREERADIUS)/etc/freeradius/ ; \ + done + install -m0755 -d $(IDIR_FREERADIUS)/usr/share/freeradius + cp -fpR $(PKG_INSTALL_DIR)/usr/share/freeradius/dictionary \ + $(IDIR_FREERADIUS)/usr/share/freeradius/ + for f in cisco freeradius microsoft tunnel wispr; do \ + cp -fpR $(PKG_INSTALL_DIR)/usr/share/freeradius/dictionary.$${f} \ + $(IDIR_FREERADIUS)/usr/share/freeradius/ ; \ + done + install -m0755 -d $(IDIR_FREERADIUS)/usr/lib/freeradius + cp -fpR $(PKG_INSTALL_DIR)/usr/lib/freeradius/libradius{,-*}.so \ + $(IDIR_FREERADIUS)/usr/lib/freeradius/ + install -m0755 -d $(IDIR_FREERADIUS)/usr/sbin + cp -fpR $(PKG_INSTALL_DIR)/usr/sbin/radiusd \ + $(IDIR_FREERADIUS)/usr/sbin/ + $(RSTRIP) $(IDIR_FREERADIUS) + $(IPKG_BUILD) $(IDIR_FREERADIUS) $(PACKAGE_DIR) + +$(IPKG_FREERADIUS_DEMOCERTS): + install -m0755 -d $(IDIR_FREERADIUS_DEMOCERTS)/etc/freeradius + cp -fpR $(PKG_INSTALL_DIR)/etc/freeradius/certs \ + $(IDIR_FREERADIUS_DEMOCERTS)/etc/freeradius/ + rm -rf $(IDIR_FREERADIUS_DEMOCERTS)/etc/freeradius/certs/README + rm -rf $(IDIR_FREERADIUS_DEMOCERTS)/etc/freeradius/certs/new* + rm -rf $(IDIR_FREERADIUS_DEMOCERTS)/etc/freeradius/certs/demoCA/index* + rm -rf $(IDIR_FREERADIUS_DEMOCERTS)/etc/freeradius/certs/demoCA/serial* + $(RSTRIP) $(IDIR_FREERADIUS_DEMOCERTS) + $(IPKG_BUILD) $(IDIR_FREERADIUS_DEMOCERTS) $(PACKAGE_DIR) + +$(IPKG_FREERADIUS_UTILS): + install -m0755 -d $(IDIR_FREERADIUS_UTILS)/usr/bin + for f in radclient radeapclient; do \ + cp -fpR $(PKG_INSTALL_DIR)/usr/bin/$${f} \ + $(IDIR_FREERADIUS_UTILS)/usr/bin/ ; \ + done + $(RSTRIP) $(IDIR_FREERADIUS_UTILS) + $(IPKG_BUILD) $(IDIR_FREERADIUS_UTILS) $(PACKAGE_DIR) + |