3 # debian/rules file for freeradius
11 debiandir = $(shell pwd)/debian
12 radiusd_freeradius_dir = $(debiandir)/radiusd-freeradius
16 mandir = $(exec_prefix)/share/man
17 libdir = $(exec_prefix)/lib/freeradius
18 logdir = /var/log/radiusd-freeradius
19 pkgdocdir = $(exec_prefix)/share/doc/radiusd-freeradius
20 raddbdir = $(prefix)/etc/raddb
23 # Builds the binary package.
26 ./configure --prefix=$(prefix) --exec-prefix=$(exec_prefix) --libdir=$(libdir) --mandir=$(mandir) --with-logdir=$(logdir) --with-thread-pool --enable-ltdl-install=no --enable-strict-dependencies
30 # Architecture independant files.
33 # Make a binary package (.deb file)
37 make install prefix=$(prefix) exec_prefix=$(exec_prefix) mandir=$(mandir) libdir=$(libdir) R=$(radiusd_freeradius_dir)
38 # clean up install cruft. $$&@!%
39 rmdir $(radiusd_freeradius_dir)/$(execprefix)/include
40 rm $(radiusd_freeradius_dir)/$(execprefix)/usr/sbin/rc.radiusd
41 # split out inconvenient/controversal modules to other places
42 for modname in krb5 ldap mysql postgresql; do \
43 mkdir -p $(debiandir)/radiusd-freeradius-$${modname}/$(libdir); \
44 mv $(radiusd_freeradius_dir)/$(libdir)/rlm*_$${modname}.* $(debiandir)/radiusd-freeradius-$${modname}/$(libdir)/; \
48 install -g root -m 644 CREDITS $(radiusd_freeradius_dir)/$(pkgdocdir)/credits
49 find doc -type f -maxdepth 1 ! -path doc/ChangeLog -exec dh_installdocs {} \;
50 find src/modules/rlm_sql/drivers -type f -name \*.sql -exec dh_installdocs {} \;
51 # dh_installchangelogs doc/ChangeLog
55 install -g root -m 755 $(debiandir)/initscript $(radiusd_freeradius_dir)/$(prefix)/etc/init.d/freeradius
56 TEMPFILE=`mktemp /tmp/radconf-XXXXXX`; \
57 cp $(radiusd_freeradius_dir)/$(raddbdir)/radiusd.conf $$TEMPFILE; \
60 | sed -e '/^ example {/,/^ }/s/^/#/' \
61 | sed -e 's/^ # shadow =/ shadow =/' \
62 | sed -e 's#^\(run_dir = .{localstatedir}/run\)#\1/radiusd#' \
63 | sed -e 's/^group = nobody/group = freerad/' \
64 | sed -e 's/^user = nobody/user = freerad/' \
65 > $(radiusd_freeradius_dir)/$(raddbdir)/radiusd.conf; \
80 rm -f build debian/{files,substvars} debian/*.debhelper
81 [ -f Make.inc ] && make distclean || true
83 rm -rf $(radiusd_freeradius_dir) radiusd-freeradius-{ldap,postgresql,mysql,krb5}{,.substvars}
85 binary: binary-indep binary-arch
87 # for the maintainer only
89 @echo -n "sanity: checking for overzealous undocumented file... "
90 @find man/ -type f |grep \. |sed -e 's%man/man./%%' | { \
91 while read manpage; do \
92 grep $$manpage debian/radiusd-freeradius.undocumented | read filename && echo -n $$filename; \
98 .PHONY: binary binary-arch binary-indep clean sanitycheck