Control: tags -1 + patch On Tue, Nov 02, 2021 at 10:11:40PM +0100, Johannes Schauer Marin Rodrigues wrote: > our CI runs for the DPKG_ROOT tests failed today because pam FTBFS. I > rebuilt pam locally in a fresh sbuild chroot without any modifications > and arrived at the same build failure. I attached the log. I also put > the error message at the end of this mail. Some investigation suggests > that for some reason PAM_USERTYPE_UIDMIN is set to the empty string by > configure. Also interestingly I was not able to reproduce this problem > by building the package outside of a chroot nor when building it under > mmdebstrap. The problem only shows when building it inside an sbuild > chroot. I thus suspect that it will also FTBFS on the buildds and mark > this bug as serious.
I think this should be reproducible elsewhere. rebootstrap encounters it. It's a behaviour change in dash: if test x == x; then echo I am no longer executed with the new version; fi In any case, using == is never worked on dash. The attached patch fixes that bashism. Helmut
--- pam-1.4.0.orig/configure.ac +++ pam-1.4.0/configure.ac @@ -658,19 +658,19 @@ dnl Get values for default uid ranges in login.defs used in pam_usertype dnl AC_ARG_WITH([uidmin], AS_HELP_STRING([--with-uidmin=<number>],[default value for regular user min uid (1000)]), opt_uidmin=$withval) -if test x"$opt_uidmin" == x; then +if test x"$opt_uidmin" = x; then opt_uidmin=1000 fi AC_DEFINE_UNQUOTED(PAM_USERTYPE_UIDMIN, $opt_uidmin, [Minimum regular user uid.]) AC_ARG_WITH([sysuidmin], AS_HELP_STRING([--with-sysuidmin=<number>],[default value for system user min uid (101)]), opt_sysuidmin=$withval) -if test x"$opt_sysuidmin" == x; then +if test x"$opt_sysuidmin" = x; then opt_sysuidmin=101 fi AC_DEFINE_UNQUOTED(PAM_USERTYPE_SYSUIDMIN, $opt_sysuidmin, [Minimum system user uid.]) AC_ARG_WITH([kerneloverflowuid], AS_HELP_STRING([--with-kernel-overflow-uid=<number>],[kernel overflow uid, default (uint16_t)-2=65534]), opt_kerneloverflowuid=$withval) -if test x"$opt_kerneloverflowuid" == x; then +if test x"$opt_kerneloverflowuid" = x; then opt_kerneloverflowuid=65534 fi AC_DEFINE_UNQUOTED(PAM_USERTYPE_OVERFLOW_UID, $opt_kerneloverflowuid, [Kernel overflow uid.])