Add freeradius package
[openwrt/svn-archive/archive.git] / openwrt / package / freeradius / Makefile
1 # $Id$
2
3 include $(TOPDIR)/rules.mk
4
5 PKG_NAME:=freeradius
6 PKG_VERSION:=1.0.2
7 PKG_RELEASE:=1
8 PKG_MD5SUM:=f5dfce4efbb03bbc47ceae08270a875e
9
10 PKG_SOURCE_URL:=ftp://ftp.freeradius.org/pub/radius/
11 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
12 PKG_CAT:=zcat
13
14 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
15 PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
16
17 include $(TOPDIR)/package/rules.mk
18
19 define PKG_mod_template
20
21 $$(IPKG_$(1)):
22 install -d -m0755 $$(IDIR_$(1))/usr/lib/freeradius
23 for m in $(2); do \
24 cp -fpR $(PKG_INSTALL_DIR)/usr/lib/freeradius/$$$${m}{,-*}.so \
25 $$(IDIR_$(1))/usr/lib/freeradius/ ; \
26 done
27 install -d -m0755 $$(IDIR_$(1))/etc/freeradius
28 for f in $(3); do \
29 cp -fpR $(PKG_INSTALL_DIR)/etc/freeradius/$$$${f} \
30 $$(IDIR_$(1))/etc/freeradius/ ; \
31 done
32 $(RSTRIP) $$(IDIR_$(1))
33 $(IPKG_BUILD) $$(IDIR_$(1)) $(PACKAGE_DIR)
34
35 endef
36
37 $(eval $(call PKG_template,FREERADIUS,freeradius,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
38 $(eval $(call PKG_template,FREERADIUS_DEMOCERTS,freeradius-democerts,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
39 $(eval $(call PKG_template,FREERADIUS_MOD_CHAP,freeradius-mod-chap,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
40 $(eval $(call PKG_template,FREERADIUS_MOD_EAP,freeradius-mod-eap,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
41 $(eval $(call PKG_template,FREERADIUS_MOD_EAP_GTC,freeradius-mod-eap-gtc,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
42 $(eval $(call PKG_template,FREERADIUS_MOD_EAP_MD5,freeradius-mod-eap-md5,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
43 $(eval $(call PKG_template,FREERADIUS_MOD_EAP_MSCHAPV2,freeradius-mod-eap-mschapv2,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
44 $(eval $(call PKG_template,FREERADIUS_MOD_EAP_PEAP,freeradius-mod-eap-peap,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
45 $(eval $(call PKG_template,FREERADIUS_MOD_EAP_TLS,freeradius-mod-eap-tls,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
46 $(eval $(call PKG_template,FREERADIUS_MOD_EAP_TTLS,freeradius-mod-eap-ttls,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
47 $(eval $(call PKG_template,FREERADIUS_MOD_FILES,freeradius-mod-files,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
48 $(eval $(call PKG_template,FREERADIUS_MOD_LDAP,freeradius-mod-ldap,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
49 $(eval $(call PKG_template,FREERADIUS_MOD_MSCHAP,freeradius-mod-mschap,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
50 $(eval $(call PKG_template,FREERADIUS_MOD_PAP,freeradius-mod-pap,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
51 $(eval $(call PKG_template,FREERADIUS_MOD_SQL,freeradius-mod-sql,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
52 $(eval $(call PKG_template,FREERADIUS_MOD_SQL_MYSQL,freeradius-mod-sql-mysql,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
53 $(eval $(call PKG_template,FREERADIUS_MOD_SQL_PGSQL,freeradius-mod-sql-pgsql,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
54 $(eval $(call PKG_template,FREERADIUS_UTILS,freeradius-utils,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
55
56 $(eval $(call PKG_mod_template,FREERADIUS_MOD_CHAP,rlm_chap,))
57 $(eval $(call PKG_mod_template,FREERADIUS_MOD_EAP,libeap rlm_eap,eap.conf))
58 $(eval $(call PKG_mod_template,FREERADIUS_MOD_EAP_GTC,rlm_eap_gtc,))
59 $(eval $(call PKG_mod_template,FREERADIUS_MOD_EAP_MD5,rlm_eap_md5,))
60 $(eval $(call PKG_mod_template,FREERADIUS_MOD_EAP_MSCHAPV2,rlm_eap_mschapv2,))
61 $(eval $(call PKG_mod_template,FREERADIUS_MOD_EAP_PEAP,rlm_eap_peap,))
62 $(eval $(call PKG_mod_template,FREERADIUS_MOD_EAP_TLS,rlm_eap_tls,))
63 $(eval $(call PKG_mod_template,FREERADIUS_MOD_EAP_TTLS,rlm_eap_ttls,))
64 $(eval $(call PKG_mod_template,FREERADIUS_MOD_FILES,rlm_files,acct_users preproxy_users users))
65 $(eval $(call PKG_mod_template,FREERADIUS_MOD_LDAP,rlm_ldap,ldap.attrmap))
66 $(eval $(call PKG_mod_template,FREERADIUS_MOD_MSCHAP,rlm_mschap,))
67 $(eval $(call PKG_mod_template,FREERADIUS_MOD_PAP,rlm_pap,))
68 $(eval $(call PKG_mod_template,FREERADIUS_MOD_SQL,rlm_sql,sql.conf))
69 $(eval $(call PKG_mod_template,FREERADIUS_MOD_SQL_MYSQL,rlm_sql_mysql,))
70 $(eval $(call PKG_mod_template,FREERADIUS_MOD_SQL_PGSQL,rlm_sql_postgresql,))
71
72 $(PKG_BUILD_DIR)/.configured:
73 (cd $(PKG_BUILD_DIR); rm -rf config.{cache,status} ; \
74 $(TARGET_CONFIGURE_OPTS) \
75 CFLAGS="$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include" \
76 CPPFLAGS="-I$(STAGING_DIR)/usr/include" \
77 LDFLAGS="-L$(STAGING_DIR)/usr/lib -L$(PKG_INSTALL_DIR)/usr/lib/freeradius" \
78 lt_sys_lib_search_path_spec="$(STAGING_DIR)/usr/lib" \
79 MYSQL_CONFIG="no" \
80 ./configure \
81 --target=$(GNU_TARGET_NAME) \
82 --host=$(GNU_TARGET_NAME) \
83 --build=$(GNU_HOST_NAME) \
84 --program-prefix="" \
85 --program-suffix="" \
86 --prefix=/usr \
87 --exec-prefix=/usr \
88 --bindir=/usr/bin \
89 --datadir=/usr/share \
90 --includedir=/usr/include \
91 --infodir=/usr/share/info \
92 --libdir=/usr/lib/freeradius \
93 --libexecdir=/usr/lib/freeradius \
94 --localstatedir=/var \
95 --mandir=/usr/share/man \
96 --sbindir=/usr/sbin \
97 --sysconfdir=/etc \
98 $(DISABLE_LARGEFILE) \
99 $(DISABLE_NLS) \
100 --enable-shared \
101 --disable-static \
102 --disable-ltdl-install \
103 --with-ltdl-include="$(STAGING_DIR)/usr/include" \
104 --with-ltdl-lib="$(STAGING_DIR)/usr/lib" \
105 --with-openssl-includes="$(STAGING_DIR)/usr/include" \
106 --with-openssl-libraries="$(STAGING_DIR)/usr/lib" \
107 --enable-strict-dependencies \
108 --with-raddbdir=/etc/freeradius \
109 --without-edir \
110 --without-snmp \
111 --without-rlm_attr-rewrite \
112 --with-rlm_checkval \
113 --without-rlm_counter \
114 --without-rlm_dbm \
115 --with-rlm_eap \
116 --without-rlm_eap_sim \
117 --with-rlm_files \
118 --without-rlm_ippool \
119 --without-rlm_krb5 \
120 --with-rlm_ldap-include-dir="$(STAGING_DIR)/usr/include" \
121 --with-rlm_ldap-lib-dir="$(STAGING_DIR)/usr/lib" \
122 --without-rlm_pam \
123 --without-rlm_radutmp \
124 --without-rlm_sql_iodbc \
125 --with-mysql-include-dir="$(STAGING_DIR)/usr/include/mysql" \
126 --with-mysql-lib-dir="$(STAGING_DIR)/usr/lib/mysql" \
127 --without-rlm_sql_oracle \
128 --with-rlm_sql_postgresql-include-dir="$(STAGING_DIR)/usr/include" \
129 --with-rlm_sql_postgresql-lib-dir="$(STAGING_DIR)/usr/lib" \
130 --without-rlm_sql_unixodbc \
131 --without-rlm_unix \
132 --without-rlm_x99-token \
133 )
134 touch $(PKG_BUILD_DIR)/.configured
135
136 $(PKG_BUILD_DIR)/.built:
137 $(MAKE) -C $(PKG_BUILD_DIR)
138 mkdir -p $(PKG_INSTALL_DIR)
139 $(MAKE) -C $(PKG_BUILD_DIR) \
140 R="$(PKG_INSTALL_DIR)" \
141 INSTALLSTRIP="" \
142 install
143 touch $(PKG_BUILD_DIR)/.built
144
145 $(IPKG_FREERADIUS):
146 install -m0755 -d $(IDIR_FREERADIUS)/etc/init.d
147 install -m0755 ./files/radiusd.init $(IDIR_FREERADIUS)/etc/init.d/radiusd
148 install -m0755 -d $(IDIR_FREERADIUS)/etc/freeradius
149 for f in clients.conf dictionary radiusd.conf; do \
150 cp -fpR $(PKG_INSTALL_DIR)/etc/freeradius/$${f} \
151 $(IDIR_FREERADIUS)/etc/freeradius/ ; \
152 done
153 install -m0755 -d $(IDIR_FREERADIUS)/usr/share/freeradius
154 cp -fpR $(PKG_INSTALL_DIR)/usr/share/freeradius/dictionary \
155 $(IDIR_FREERADIUS)/usr/share/freeradius/
156 for f in cisco freeradius microsoft tunnel wispr; do \
157 cp -fpR $(PKG_INSTALL_DIR)/usr/share/freeradius/dictionary.$${f} \
158 $(IDIR_FREERADIUS)/usr/share/freeradius/ ; \
159 done
160 install -m0755 -d $(IDIR_FREERADIUS)/usr/lib/freeradius
161 cp -fpR $(PKG_INSTALL_DIR)/usr/lib/freeradius/libradius{,-*}.so \
162 $(IDIR_FREERADIUS)/usr/lib/freeradius/
163 install -m0755 -d $(IDIR_FREERADIUS)/usr/sbin
164 cp -fpR $(PKG_INSTALL_DIR)/usr/sbin/radiusd \
165 $(IDIR_FREERADIUS)/usr/sbin/
166 $(RSTRIP) $(IDIR_FREERADIUS)
167 $(IPKG_BUILD) $(IDIR_FREERADIUS) $(PACKAGE_DIR)
168
169 $(IPKG_FREERADIUS_DEMOCERTS):
170 install -m0755 -d $(IDIR_FREERADIUS_DEMOCERTS)/etc/freeradius
171 cp -fpR $(PKG_INSTALL_DIR)/etc/freeradius/certs \
172 $(IDIR_FREERADIUS_DEMOCERTS)/etc/freeradius/
173 rm -rf $(IDIR_FREERADIUS_DEMOCERTS)/etc/freeradius/certs/README
174 rm -rf $(IDIR_FREERADIUS_DEMOCERTS)/etc/freeradius/certs/new*
175 rm -rf $(IDIR_FREERADIUS_DEMOCERTS)/etc/freeradius/certs/demoCA/index*
176 rm -rf $(IDIR_FREERADIUS_DEMOCERTS)/etc/freeradius/certs/demoCA/serial*
177 $(RSTRIP) $(IDIR_FREERADIUS_DEMOCERTS)
178 $(IPKG_BUILD) $(IDIR_FREERADIUS_DEMOCERTS) $(PACKAGE_DIR)
179
180 $(IPKG_FREERADIUS_UTILS):
181 install -m0755 -d $(IDIR_FREERADIUS_UTILS)/usr/bin
182 for f in radclient radeapclient; do \
183 cp -fpR $(PKG_INSTALL_DIR)/usr/bin/$${f} \
184 $(IDIR_FREERADIUS_UTILS)/usr/bin/ ; \
185 done
186 $(RSTRIP) $(IDIR_FREERADIUS_UTILS)
187 $(IPKG_BUILD) $(IDIR_FREERADIUS_UTILS) $(PACKAGE_DIR)
188