Merge remote-tracking branch 'origin/debian'
[hcoop/debian/courier-authlib.git] / debian / rules
dissimilarity index 84%
index 7668ab1..8f6e259 100755 (executable)
-#!/usr/bin/make -f
-#
-# Copyright 2004,2005,2008 by Stefan Hornburg (Racke) <racke@linuxia.de>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public
-# License along with this program; if not, write to the Free
-# Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
-# MA  02111-1307  USA.
-
-BUILD=$(shell pwd)/debian/tmp
-RELUP=$(shell dpkg-parsechangelog | perl -ne 'print $$1 if /^Version: (.*?)-(.*)$$/')
-
-# Uncomment this to turn on verbose mode. 
-# export DH_VERBOSE=1
-
-# This has to be exported to make some magic below work.
-export DH_OPTIONS
-
-export SHELL = /bin/bash
-
-# Common configuration options
-NONSSL_CONFOPTS=--without-certdb --without-authpgsql
-
-CFLAGS = `dpkg-buildflags --get CFLAGS`
-LDFLAGS = `dpkg-buildflags --get LDFLAGS`
-LDFLAGS += -lcrypt
-CPPFLAGS = `dpkg-buildflags --get CPPFLAGS`
-
-COMMON_CONFOPTS=--prefix=/usr --mandir=\$${prefix}/share/man \
-               --with-authdaemonvar=/var/run/courier/authdaemon \
-               CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" LDFLAGS="$(LDFLAGS)" \
-               --sysconfdir=/etc/courier \
-               --with-pkgconfdir=/etc/courier \
-               --libexecdir=\$${prefix}/lib/courier \
-               --datadir=\$${prefix}/lib/courier \
-               --localstatedir=/var/lib/courier \
-               --sbindir=\$${exec_prefix}/sbin \
-               --with-mailuser=daemon \
-               --with-mailgroup=daemon \
-               --without-socks \
-               --with-authpam \
-               --with-authpipe \
-               --without-authpwd \
-               --with-authmysql \
-               --with-mysql-includes=/usr/include/mysql \
-               --with-mysql-libs=/usr/lib \
-               --with-authmysqlrc=/etc/courier/authmysqlrc \
-               --with-authpgsql \
-               --with-pgsql-includes=`pg_config --includedir` \
-               --with-pgsql-libs=/usr/lib \
-               --with-authpgsqlrc=/etc/courier/authpgsqlrc \
-               --without-authshadow \
-               --with-authdaemonvar=/var/run/courier/authdaemon \
-               --with-authldap \
-               --with-authldaprc=/etc/courier/authldaprc \
-               --with-authcram \
-               --with-db=gdbm \
-               --without-fcgi \
-               --with-htmllibdir=/usr/share/sqwebmail \
-               --with-ispell=/usr/bin/ispell \
-               --enable-userdb \
-               --enable-syslog=1 \
-               --disable-root-check
-
-check:
-       dh_testdir
-       chmod +x debian/courier_perms
-
-build: check
-# create a list of files that currently exists
-       if [ ! -f stamp-build ]; then \
-               if [ -d /usr/include/postgresql/8.0/libpq_fe.h ]; then \
-                       ./configure $(COMMON_CONFOPTS) \
-                       --with-postgresql-includes=/usr/include/postgresql/8.0 \
-                       && $(MAKE) && touch stamp-build; \
-               else \
-                       ./configure $(COMMON_CONFOPTS) \
-                       --with-postgresql-includes=/usr/include/postgresql \
-                       && $(MAKE) && touch stamp-build; \
-               fi \
-       fi
-
-stamp-build: build
-
-clean: check
-       dh_testroot
-       rm -f stamp-build stamp-install
-
-# Add here commands to clean up after the build process.
-       [ ! -f Makefile ] || $(MAKE) distclean
-       dh_clean
-
-install: check stamp-build
-       dh_testroot
-       dh_clean -k
-       dh_installdirs
-
-# Add here commands to install the package into debian/tmp.
-       $(MAKE) DESTDIR=$(BUILD) install
-       
-       sed -i "/dependency_libs/ s/'.*'/''/" `find $(BUILD) -name '*.la'`
-
-#      (cd $(BUILD)/usr/lib/courier/courier-authlib/changepwd; ln -fs ../../authsystem.passwd ./authsystem.passwd)
-
-# Install authentification test program
-#      mv $(BUILD)/usr/sbin/authtest $(BUILD)/usr/sbin/courierauthtest
-
-# Additional manpages
-       pod2man --center='Debian GNU/Linux Documentation' --release='Debian GNU/Linux '`cat /etc/debian_version` --section=8 debian/authenumerate.pod > $(BUILD)/usr/share/man/man8/authenumerate.8
-#      pod2man --center='Debian GNU/Linux Documentation' --release='Debian GNU/Linux '`cat /etc/debian_version` --section=8 debian/courierauthtest.pod > $(BUILD)/usr/share/man/man8/courierauthtest.8
-
-       dh_installdocs
-# - change authentification default settings
-       perl -pe 's/^authmodulelist=".*?"/authmodulelist="authpam"/' $(BUILD)/etc/courier/authdaemonrc.dist > $(BUILD)/etc/courier/authdaemonrc
-# - change default LDAP server
-       perl -pe 's/^(LDAP_SERVER\s+)ldap.example.com/$$1localhost/' $(BUILD)/etc/courier/authldaprc.dist > $(BUILD)/etc/courier/authldaprc
-# - change default MySQL server
-       perl -pe 's/^(MYSQL_SERVER\s+)mysql.example.com/$$1localhost/;s%^(#?\s*MYSQL_SOCKET\s+)/.*%$$1/var/run/mysqld/mysqld.sock%' $(BUILD)/etc/courier/authmysqlrc.dist > $(BUILD)/etc/courier/authmysqlrc
-       mv $(BUILD)/etc/courier/authpgsqlrc.dist $(BUILD)/etc/courier/authpgsqlrc
-       rm $(BUILD)/etc/courier/*.dist
-
-# Lintian overrides
-       mkdir -p $(BUILD)/usr/share/lintian/overrides
-       for package in courier-authdaemon courier-authlib-ldap courier-authlib-mysql courier-authlib-postgresql; do \
-               cp debian/$$package.lintian $(BUILD)/usr/share/lintian/overrides/$$package; \
-       done
-
-# This seems to be necessary for building in fakeroot 
-# environment (otherwise dh_strip fails)
-# set all binaries to 755, by checking if user has x-bit
-# debian/courier_perms will set the right permissions
-       find $(BUILD) -perm -u+x -type f | xargs chmod u+rwx,go+rx
-
-       dh_movefiles
-
-# Check if all files have moved out
-       if [ `find $(BUILD) -not -type d | wc -l` -ne 0 ]; then find $(BUILD) -not -type d; echo "File(s) found not belonging to any package, please contact maintainer"; exit 1; fi
-
-       touch stamp-install
-
-stamp-install: install
-
-# Build architecture-independent files here.
-binary-indep: stamp-build stamp-install
-       dh_testdir
-       dh_testroot
-#      dh_installdebconf -i
-       dh_installexamples -i
-       dh_installmenu -i
-       dh_installinit -i
-       dh_installinfo -i
-       dh_installchangelogs -i
-       dh_strip -i
-       dh_link -i
-       dh_compress -i 
-       dh_fixperms -i
-       debian/courier_perms -i
-       dh_installdeb -i
-       dh_perl -i
-       dh_shlibdeps -i
-       dh_gencontrol -i
-       dh_md5sums -i
-       dh_builddeb -i
-
-calibdir = debian/courier-authlib/usr/lib/courier-authlib
-
-# Build architecture-dependent files here.
-binary-arch: stamp-build stamp-install
-       dh_testdir
-       dh_testroot
-#      dh_installdebconf -a
-       dh_installexamples -a
-       dh_installmenu -a
-       dh_installinit -a
-       dh_installcron -a
-       dh_installinfo -a
-       dh_installchangelogs -a
-       dh_strip -a
-       dh_link -a
-       dh_compress -a
-       dh_fixperms -a
-       debian/courier_perms -a
-       dh_perl -a
-       dh_makeshlibs -pcourier-authlib -- -Pdebian/courier-authlib -e$(calibdir)/libcourier*.so
-       dh_shlibdeps -a -l$(calibdir)
-       dh_installdeb -a
-       dh_gencontrol -- -VRELUP="$(RELUP)"
-       dh_md5sums -a
-       dh_builddeb -a
-
-binary: binary-arch
-
-.PHONY: check build clean binary-arch binary install
+#!/usr/bin/make -f
+# See debhelper(7) (uncomment to enable)
+# output every command that modifies files on the build system.
+#DH_VERBOSE = 1
+
+# see EXAMPLES in dpkg-buildflags(1) and read /usr/share/dpkg/*
+DPKG_EXPORT_BUILDFLAGS = 1
+include /usr/share/dpkg/default.mk
+
+# see FEATURE AREAS in dpkg-buildflags(1)
+#export DEB_BUILD_MAINT_OPTIONS = hardening=+all
+
+# see ENVIRONMENT in dpkg-buildflags(1)
+# package maintainers to append CFLAGS
+#export DEB_CFLAGS_MAINT_APPEND  = -Wall -pedantic
+# package maintainers to append LDFLAGS
+#export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed
+
+export DPKG_GENSYMBOLS_CHECK_LEVEL=4
+
+# main packaging script based on dh7 syntax
+%:
+       dh $@ --with autoreconf --with autotools-dev
+
+COMMON_CONFOPTS=--with-authdaemonvar=/run/courier/authdaemon \
+               --with-pkgconfdir=/etc/courier \
+               --libdir=\$${prefix}/lib \
+               --libexecdir=\$${prefix}/lib/courier \
+               --datadir=\$${prefix}/lib/courier \
+               --localstatedir=/var/lib/courier \
+               --without-socks \
+               --with-authpam \
+               --with-authpipe \
+               --without-authpwd \
+               --with-authmysql \
+               --with-mysql-includes=/usr/include/mysql \
+               --with-mysql-libs=/usr/lib \
+               --with-authmysqlrc=/etc/courier/authmysqlrc \
+               --with-authpgsql \
+               --with-pgsql-includes=`pg_config --includedir` \
+               --with-pgsql-libs=/usr/lib \
+               --with-authpgsqlrc=/etc/courier/authpgsqlrc \
+               --without-authshadow \
+               --with-authldap \
+               --with-authldaprc=/etc/courier/authldaprc \
+               --with-authsqlite="" \
+               --with-authsqliterc=/etc/courier/authsqliterc \
+               --with-authcram \
+               --with-db=gdbm \
+               --without-fcgi \
+               --with-htmllibdir=/usr/share/sqwebmail \
+               --with-ispell=/usr/bin/ispell \
+               --enable-userdb \
+               --enable-syslog=1 \
+               --disable-root-check \
+
+override_dh_auto_configure:
+       dh_auto_configure -- $(COMMON_CONFOPTS)
+
+override_dh_install:
+       pod2man --center='Debian GNU/Linux Documentation' --release='Debian GNU/Linux '`cat /etc/debian_version` --section=8 debian/authenumerate.pod > debian/tmp/usr/share/man/man8/authenumerate.8
+
+# Change default module list
+       perl -pe 's/^authmodulelist=".*?"/authmodulelist="authpam"/' debian/tmp/etc/courier/authdaemonrc.dist > debian/tmp/etc/courier/authdaemonrc
+       rm debian/tmp/etc/courier/authdaemonrc.dist
+
+# Change default LDAP server to localhost
+       perl -pe 's/^(LDAP_SERVER\s+)ldap.example.com/$$1localhost/' debian/tmp/etc/courier/authldaprc.dist > debian/tmp/etc/courier/authldaprc
+       rm debian/tmp/etc/courier/authldaprc.dist
+
+# Change default MySQL server to localhost
+       perl -pe 's/^(MYSQL_SERVER\s+)mysql.example.com/$$1localhost/;s%^(#?\s*MYSQL_SOCKET\s+)/.*%$$1/var/run/mysqld/mysqld.sock%' debian/tmp/etc/courier/authmysqlrc.dist > debian/tmp/etc/courier/authmysqlrc
+       rm debian/tmp/etc/courier/authmysqlrc.dist
+
+# Change default SQlite 3 path to /var/lib/courier/users.db
+       perl -pe 's%^(SQLITE_DATABASE\s+)/var/users.db%$$1/var/lib/courier/users.db%' debian/tmp/etc/courier/authsqliterc.dist > debian/tmp/etc/courier/authsqliterc
+       rm debian/tmp/etc/courier/authsqliterc.dist
+
+       mv debian/tmp/etc/courier/authpgsqlrc.dist debian/tmp/etc/courier/authpgsqlrc
+
+       dh_install --fail-missing -X.la