summaryrefslogtreecommitdiff
path: root/debian/rules
diff options
context:
space:
mode:
Diffstat (limited to 'debian/rules')
-rwxr-xr-xdebian/rules143
1 files changed, 44 insertions, 99 deletions
diff --git a/debian/rules b/debian/rules
index e1818d2d..dffe6fd5 100755
--- a/debian/rules
+++ b/debian/rules
@@ -1,123 +1,68 @@
#!/usr/bin/make -f
-# Made with the aid of dh_make, by Craig Small
-# Sample debian/rules that uses debhelper. GNU copyright 1997 by Joey Hess.
-# This version is for a hypothetical package that builds an
-# architecture-dependant package, as well as an architecture-independant
-# package.
LDFLAGS := -Wl,-z,defs
-CFLAGS := -g -D_GNU_SOURCE -D_REENTRANT -fPIC
+CFLAGS := -g
ifeq (,$(findstring noopt, ${DEB_BUILD_OPTIONS}))
CFLAGS += -O2
+else
+CFLAGS += -O0
endif
DEB_HOST_GNU_TYPE := $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
-DEB_BUILD_GNU_TYPE := $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
-
-ifeq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE))
- conf_args = --build $(DEB_BUILD_GNU_TYPE)
-else
- conf_args = --build $(DEB_BUILD_GNU_TYPE) --host $(DEB_HOST_GNU_TYPE)
-endif
LC_COLLATE=C
export LC_COLLATE
-QUILT_PATCH_DIR = debian/patches-applied
-include /usr/share/quilt/quilt.make
-
-BUILD_TREE=$(CURDIR)
+export QUILT_PATCH_DIR = debian/patches-applied
d = $(CURDIR)/debian
dl = $(d)/local
-build: configure build-stamp
-build-stamp:
- dh_testdir
-
- # Compile everything else
- $(MAKE) -C $(BUILD_TREE) CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)"
-
- pod2man --section 8 --release="Debian GNU/Linux" $(dl)/pam_getenv >$(dl)/pam_getenv.8
-
- touch build-stamp
-
-configure: patch configure-stamp
-configure-stamp:
- cd $(BUILD_TREE) && \
- ./configure $(conf_args) \
- --sysconfdir=/etc --prefix=/usr --enable-static --enable-shared \
- --libdir=/lib/$(DEB_HOST_GNU_TYPE) --enable-isadir=/lib/security \
- --sbindir=/sbin --disable-audit
- touch configure-stamp
-
+%:
+ dh $@ --with quilt
-clean: clean-patched unpatch
+override_dh_auto_configure:
+ dh_auto_configure -- --enable-static --enable-shared \
+ --libdir=/lib/$(DEB_HOST_GNU_TYPE) --sbindir=/sbin \
+ --enable-isadir=/lib/security --disable-audit \
+ CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)"
-clean-patched:
- dh_testdir
- dh_testroot
- [ ! -f $(BUILD_TREE)/Makefile ] || $(MAKE) -C $(BUILD_TREE) distclean
- dh_clean
+# make sure the SAG, MWG, ADG are readable with a browser.
+override_dh_compress:
+ dh_compress -Xhtml
-install: build
- dh_testdir
- dh_testroot
- dh_clean -k
- dh_installdirs
+# .install files don't have "except for" handling, so we need to exclude
+# our module that doesn't match right here
+override_dh_install:
+ dh_install -plibpam-modules -Xpam_cracklib
+ dh_install -Nlibpam-modules
- $(MAKE) -C $(BUILD_TREE) DESTDIR=$(CURDIR)/debian/tmp install
-
-# Build architecture-independent files here.
-binary-indep: install
- dh_testdir -i
- dh_testroot -i
- dh_install -i
- dh_installman -i
- dh_installdocs -i
- dh_installdebconf -i
- dh_installchangelogs -i
- dh_compress -i -X.html
- dh_lintian -i
- dh_link -i
- dh_fixperms -i
- dh_installdeb -i
- dh_gencontrol -i
- dh_md5sums -i
- dh_builddeb -i
-
-binary-arch: install
- dh_testdir -a
- dh_testroot -a
-
- dh_install -a -Nlibpam-cracklib -X pam_cracklib
- dh_install -plibpam-cracklib
- sed -e"s,^/lib,/lib/$(DEB_HOST_GNU_TYPE)," $(d)/libpam0g-dev.links.in > $(d)/libpam0g-dev.links
- dh_link -a
- dh_installman -a
+# again, excluding files by hand; also, build our local manpage for pam_getenv
+# from the XML
+override_dh_installman:
+ pod2man --section 8 --release="Debian GNU/Linux" $(dl)/pam_getenv >$(dl)/pam_getenv.8
+ dh_installman
rm -f $(d)/libpam-modules/usr/share/man/man5/pam.conf.5
+ rm -f $(d)/libpam-modules/usr/share/man/man8/pam_cracklib.8
- dh_installdebconf -a
- dh_installdocs -a $(BUILD_TREE)/README
- dh_installexamples -a
-
- dh_installcron -a
-
- dh_installchangelogs -a
- dh_lintian -a
-
- dh_strip -a
- dh_compress -a
- dh_fixperms -a
- chgrp shadow $(d)/libpam-modules-bin/sbin/unix_chkpwd
- chmod 02755 $(d)/libpam-modules-bin/sbin/unix_chkpwd
- dh_makeshlibs -a -V "libpam0g (>= 1.1.0)"
- dh_installdeb -a
- dh_shlibdeps -a
- dh_gencontrol -a
- dh_md5sums -a
- dh_builddeb -a
+# dh_link doesn't do wildcards, so we can't auto-link to the right per-arch
+# directory
+override_dh_link:
+ sed -e"s,^/lib,/lib/$(DEB_HOST_GNU_TYPE)," $(d)/libpam0g-dev.links.in > $(d)/libpam0g-dev.links
+ dh_link
+
+# using perms that differ from upstream (sgid instead of suid) /and/ that
+# dh_fixperms doesn't want
+override_dh_fixperms:
+ dh_fixperms
+ifeq (,$(findstring -i, $(DH_INTERNAL_OPTIONS)))
+ chgrp shadow $(d)/libpam-modules/sbin/unix_chkpwd
+ chmod 02755 $(d)/libpam-modules/sbin/unix_chkpwd
+endif
-binary: binary-indep binary-arch
-.PHONY: build clean binary-indep binary-arch binary patch unpatch install configure
+# ideally, dh_makeshlibs could compute this from the symbols file; or we
+# could drop it since anyone building against this package should have a
+# dpkg-shlibdeps available that knows about symbols files?
+override_dh_makeshlibs:
+ dh_makeshlibs -V "libpam0g (>= 1.1.0)"