#!/usr/bin/make -f # -*- mode: makefile; coding: utf-8 -*- # Enable PIE, BINDNOW, and possible future flags. export DEB_BUILD_MAINT_OPTIONS = hardening=+all DPKG_EXPORT_BUILDFLAGS = 1 include /usr/share/dpkg/buildflags.mk # TODO test if this can be dropped: # Specify where dh_install will find the files that it needs to move: DEB_DH_INSTALL_SOURCEDIR=debian/tmp # Specify the destination of shadow's "make install" # (This is only needed on The Hurd, where only one package is built. On # the other arch, DEB_DESTDIR already points to debian/tmp) DEB_DESTDIR=$(CURDIR)/debian/tmp # Adds extra options when calling the configure script: DEB_CONFIGURE_EXTRA_FLAGS := --disable-shared \ --without-libcrack \ --mandir=/usr/share/man \ --with-libpam \ --enable-shadowgrp \ --enable-man \ --disable-account-tools-setuid \ --with-group-name-max-length=32 \ --without-acl \ --without-attr \ --without-su \ --without-tcb \ SHELL=/bin/sh # Set the default editor for vipw/vigr CFLAGS += -DDEFAULT_EDITOR="\"sensible-editor\"" %: dh $@ override_dh_auto_configure: cp debian/HOME_MODE.xml man/login.defs.d/HOME_MODE.xml dh_auto_configure -- $(DEB_CONFIGURE_EXTRA_FLAGS) override_dh_install-arch: ifneq ($(DEB_HOST_ARCH_OS),linux) sed -i 's/session optional pam_keyinit.so/# Linux only # session optional pam_keyinit.so/' debian/login.pam endif dh_install -a ifeq ($(DEB_HOST_ARCH_OS),hurd) # /bin/login is provided by the hurd package. rm -f debian/login/bin/login endif override_dh_installpam: # Distribute the pam.d files; unless for the commands with disabled PAM # support dh_installpam -p login dh_installpam -p passwd --name=passwd dh_installpam -p passwd --name=chfn dh_installpam -p passwd --name=chsh dh_installpam -p passwd --name=chpasswd dh_installpam -p passwd --name=newusers override_dh_builddeb-arch: # uidmap chmod u+s debian/uidmap/usr/bin/newuidmap chmod u+s debian/uidmap/usr/bin/newgidmap # login # No real need for login to be setuid root # chmod u+s debian/login/bin/login chmod u+s debian/login/usr/bin/newgrp # passwd chmod u+s debian/passwd/usr/bin/chfn chmod u+s debian/passwd/usr/bin/chsh chmod u+s debian/passwd/usr/bin/gpasswd chmod u+s debian/passwd/usr/bin/passwd chgrp shadow debian/passwd/usr/bin/chage chgrp shadow debian/passwd/usr/bin/expiry chmod g+s debian/passwd/usr/bin/chage chmod g+s debian/passwd/usr/bin/expiry dh_builddeb -a override_dh_auto_clean: sed -i 's/# Linux only # //' debian/login.pam dh_auto_clean override_dh_clean: dh_clean ./man/login.defs.d/HOME_MODE.xml