]> git.pld-linux.org Git - packages/freeradius.git/blame - freeradius.spec
- update finished
[packages/freeradius.git] / freeradius.spec
CommitLineData
a35c3a00 1#
f1e65093 2%include /usr/lib/rpm/macros.perl
6c1c28f9
ER
3# FIXME:
4# - won't be good to include these contrib examples?
5# Source1: http://www.ping.de/~fdc/radius/radacct-replay
6# Source3: ftp://ftp.freeradius.org/pub/radius/contrib/radwho.cgi
4e6a6407 7Summary: High-performance and highly configurable RADIUS server
62d00dee 8Summary(pl.UTF-8): Szybki i wysoce konfigurowalny serwer RADIUS
94afa185 9Name: freeradius
7eb28883 10Version: 1.1.6
e218a559 11Release: 0.2
94afa185 12License: GPL
4e6a6407 13Group: Networking/Daemons
a96a40cf 14Source0: ftp://ftp.freeradius.org/pub/radius/%{name}-%{version}.tar.gz
7eb28883 15# Source0-md5: a053d353ce5f393cb70795fd363a586f
f8b238b6
AM
16Source1: %{name}.logrotate
17Source2: %{name}.init
18Source3: %{name}.pam
fd0f773b 19Patch0: %{name}-makefile.patch
e218a559 20Patch1: %{name}-linking.patch
21Patch2: %{name}-moduledir.patch
22Patch3: %{name}-rundir.patch
23Patch4: %{name}-config.patch
a96a40cf 24URL: http://www.freeradius.org/
041912e5
JB
25BuildRequires: autoconf
26BuildRequires: automake
27BuildRequires: cyrus-sasl-devel
28BuildRequires: gdbm-devel
82b1026c 29BuildRequires: krb5-devel
e218a559 30BuildRequires: libcom_err-devel
4e6a6407 31BuildRequires: libltdl-devel
041912e5 32BuildRequires: libtool
4e6a6407 33BuildRequires: mysql-devel
062d3f7c 34BuildRequires: net-snmp-devel
aaab8964 35BuildRequires: openldap-devel >= 2.3.0
17d2eca0 36BuildRequires: openssl-devel >= 0.9.7d
4e6a6407 37BuildRequires: pam-devel
f8b238b6
AM
38BuildRequires: perl-devel
39BuildRequires: postgresql-backend-devel
40BuildRequires: postgresql-devel
7c19d94e 41BuildRequires: python
f8b238b6 42BuildRequires: python-devel
f8b238b6 43BuildRequires: rpm-perlprov
062d3f7c
ER
44BuildRequires: rpmbuild(macros) >= 1.268
45BuildRequires: unixODBC-devel
46Requires(post,preun): /sbin/chkconfig
47Requires(postun): /usr/sbin/groupdel
48Requires(postun): /usr/sbin/userdel
9c9b6568 49Requires(pre): /bin/id
062d3f7c 50Requires(pre): /usr/bin/getgid
9c9b6568 51Requires(pre): /usr/sbin/groupadd
9c9b6568 52Requires(pre): /usr/sbin/useradd
062d3f7c 53Requires(pre): /usr/sbin/usermod
24927a7b 54Requires: perl(DynaLoader) = %(%{__perl} -MDynaLoader -e 'print DynaLoader->VERSION')
dccca3ce 55Requires: rc-scripts
dccca3ce 56Provides: group(radius)
062d3f7c 57Provides: user(radius)
4e6a6407 58Obsoletes: cistron-radius
dccca3ce 59BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
4e6a6407 60
4e6a6407 61%description
94afa185
MP
62The FreeRADIUS Server Project is an attempt to create a
63high-performance and highly configurable GPL'd RADIUS server. It is
64generally similar to the Livingston 2.0 RADIUS server, but has a lot
65more features, and is much more configurable.
4e6a6407 66
ca834a53 67%description -l pl.UTF-8
94afa185
MP
68Projekt FreeRadius ma na celu stworzenie szybkiego i wysoce
69konfigurowalnego serwera RADIUS na licencji GPL. Ten jest podobny do
ca834a53
JR
70Livingston 2.0 RADIUS server ale ma o wiele więcej funkcji i posiada
71większe możliwości konfigurowania.
4e6a6407 72
4ba06a7d 73%prep
4e6a6407 74%setup -q
fd0f773b 75%patch0 -p1
e218a559 76%patch1 -p1
42226f79 77%patch2 -p1
e218a559 78%patch3 -p1
79%patch4 -p1
598a5b29 80
7eb28883 81sed -e '/m4_include..libtool/d' < aclocal.m4 > acinclude.m4
598a5b29 82
041912e5
JB
83%build
84maindir="$(pwd)"
85for d in rlm_attr_rewrite rlm_checkval rlm_counter rlm_dbm \
598a5b29 86 rlm_eap/types/rlm_eap_{md5,mschapv2,peap,sim,tls,ttls} \
31c93271
JR
87 rlm_eap rlm_example rlm_ippool rlm_krb5 rlm_ldap rlm_otp \
88 rlm_pam rlm_perl rlm_python rlm_radutmp rlm_smb \
041912e5 89 rlm_sql/drivers/rlm_sql_{db2,iodbc,mysql,oracle,postgresql,unixodbc} \
e218a559 90 rlm_sql rlm_sqlcounter rlm_sql_log rlm_unix ; do
598a5b29 91
041912e5 92 cd src/modules/${d}
e218a559 93 if [ -f configure.in ]; then
94 %{__aclocal} -I ${maindir}
95 %{__autoconf}
96 fi
041912e5
JB
97 if [ -f config.h.in ]; then
98 %{__autoheader}
99 fi
100 cd ${maindir}
101done
041912e5
JB
102%{__libtoolize}
103%{__aclocal}
104%{__autoconf}
105%{__autoheader}
106%configure \
15aabf61
JB
107 SNMPGET="/usr/bin/snmpget" \
108 SNMPWALK="/usr/bin/snmpwalk" \
f8b238b6
AM
109 --enable-strict-dependencies \
110 --with-logdir=%{_var}/log/freeradius \
111 --with-experimental-modules \
4e6a6407 112 --with-threads \
113 --with-thread-pool \
114 --with-gnu-ld \
f8b238b6
AM
115 --with-ltdl-include=%{_includedir}/none \
116 --with-ltdl-lib=%{_libdir} \
117 --disable-ltdl-install \
e218a559 118 --with-rlm_krb5
42226f79 119%{__make} -j1 \
598a5b29 120 LIBTOOL="`pwd`/libtool --tag=CC"
4e6a6407 121
4e6a6407 122%install
4e6a6407 123rm -rf $RPM_BUILD_ROOT
598a5b29 124install -d $RPM_BUILD_ROOT{%{_sysconfdir}/raddb,%{_libdir}/%{name}} \
cbb8711d 125 $RPM_BUILD_ROOT/etc/{logrotate.d,pam.d,rc.d/init.d} \
1a569c7d 126 $RPM_BUILD_ROOT%{_var}/log/{,archive}/freeradius/radacct
4e6a6407 127
42226f79 128%{__make} -j1 install \
598a5b29 129 LIBTOOL="`pwd`/libtool --tag=CC" \
f8b238b6 130 R=$RPM_BUILD_ROOT
4e6a6407 131
f8b238b6
AM
132rm -f $RPM_BUILD_ROOT{%{_mandir}/man8/builddbm.8,%{_sbindir}/rc.radiusd}
133rm -f $RPM_BUILD_ROOT%{_sysconfdir}/raddb/{clients,*.pl}
4e6a6407 134
c1bdca4c 135install %{SOURCE1} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
1abb7669 136install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
c1bdca4c 137install %{SOURCE3} $RPM_BUILD_ROOT/etc/pam.d/radius
2512122e 138
041912e5
JB
139# remove useless static modules and library
140# rlm*.la are used (lt_dlopen)
91c21a2d
JK
141rm -f $RPM_BUILD_ROOT%{_libdir}/{*.a,*.la}
142rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/*.a
041912e5 143
a96a40cf
JB
144%clean
145rm -rf $RPM_BUILD_ROOT
146
9794d47a 147%pre
9c9b6568
ER
148%groupadd -g 29 -r -f radius
149%useradd -u 29 -d %{_localstatedir} -s /bin/false -M -r -c "%{name}" -g radius radius
150
151# TODO: should be in trigger instead.
152# upgrade from previous versions of the package, where radius' gid was "nobody"
153if [ "`id -g radius`" = "99" ]; then
154 usermod -g 29 radius
155 chown radius:radius /var/log/%{name}/*.log >/dev/null 2>&1 || :
156 chown radius:radius /var/log/%{name}/radacct/* >/dev/null 2>&1 || :
9794d47a 157fi
158
a96a40cf 159%post
f8b238b6 160/sbin/chkconfig --add %{name}
062d3f7c 161%service %{name} restart "%{name} daemon"
a96a40cf 162
4e6a6407 163%preun
586d47cd 164if [ "$1" = "0" ]; then
062d3f7c 165 %service %{name} stop
f1e65093 166 /sbin/chkconfig --del %{name}
f8b238b6
AM
167fi
168
9794d47a 169%postun
170if [ "$1" = "0" ]; then
598a5b29
JK
171 %userremove radius
172 %groupremove radius
9794d47a 173fi
174
4e6a6407 175%files
94afa185 176%defattr(644,root,root,755)
f8b238b6 177%doc doc/*
94afa185
MP
178%attr(755,root,root) %{_bindir}/*
179%attr(755,root,root) %{_sbindir}/*
f8b238b6 180%attr(755,root,root) %{_libdir}/*.so
598a5b29 181%dir %{_libdir}/%{name}
e218a559 182%attr(755,root,root) %{_libdir}/%{name}/*.so
183%{_libdir}/%{name}/*.la
041912e5 184%{_datadir}/freeradius
f8b238b6
AM
185
186%dir %{_sysconfdir}/raddb
e7f77506 187%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/*
f8b238b6 188
83fab564
JK
189%attr(771,root,radius) %dir %{_var}/log/%{name}
190%attr(771,root,radius) %dir %{_var}/log/%{name}/radacct
a9e309e5
JR
191%attr(771,root,radius) %dir %{_var}/log/archive/%{name}
192%attr(771,root,radius) %dir %{_var}/log/archive/%{name}/radacct
e218a559 193%attr(775,root,radius) %dir /var/run/%{name}
f8b238b6 194
1abb7669 195%attr(754,root,root) /etc/rc.d/init.d/%{name}
e7f77506
ER
196%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/*
197%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/*
f8b238b6
AM
198
199%{_mandir}/man?/*
This page took 0.108927 seconds and 4 git commands to generate.