Dear Maintainers,
atheme-services fails to build from source when built in an environment where /bin/mkdir is provided by an alternative coreutils implementation (such as rust-coreutils in Ubuntu 26.10):
Install: backtrace.so
/bin/bash: line 3: build-aux/install-sh: No such file or directory
make[4]: *** [../buildsys.mk:510: install] Error 127
While top-level configure is regenerated via dh_autoreconf, 'modules/contrib' ships with a static configure script generated by Autoconf 2.69. Autoconf 2.69's AC_PROG_MKDIR_P checks `mkdir --version` against:
'mkdir (GNU coreutils) '* | 'mkdir (coreutils) '* | 'mkdir (fileutils) '4.1*
Because non-GNU implementations do not match this pattern, configure falls back to `MKDIR_P = build-aux/install-sh -c -d`. During `make install` from build subdirectories, invoking `$(MKDIR_P)` fails because `build-aux/install-sh` is not found relative to that subdirectory.
Adding 'export MKDIR_P = /bin/mkdir -p' in debian/rules pre-populates MKDIR_P across all sub-configures and make sub-invocations, ensuring clean builds regardless of the underlying coreutils provider.
Below is the patch against atheme-services 7.2.12-2.1.
Thank you,
Viktor Pashaiev <w.paszajew@gmail.com>
--- a/debian/rules
+++ b/debian/rules
@@ -8,6 +8,7 @@
# the build system silences build flags without this set
export V=1
+export MKDIR_P = /bin/mkdir -p
%:
dh $@