Hey Cedric,

I can confirm this issue when rebuilding Perl on powerful systems. Multiple 
builds of ‚generate_uudmap.o‘ are
created during the compile time and at some point it fails with:

    make -j88 […]
    ./generate_uudmap uudmap.h bitcount.h mg_data.h
    6584make[3]: ./generate_uudmap: Text file busy
    6585make[3]: *** [Makefile:329: bitcount.h] Error 127

As a result, I patched the ‚rules‘ file to run ‚dh_auto_build‘ with 
‚--no-parallel‘ option.
You can find attached my patch file:

Subject: Avoid build failures on powerful machines

+++ perl-5.34.0/debian/rules
@@ -115,11 +115,11 @@
        if [ "$*" = "shared" ]; then \
          ln -s libperl.so.$(fullversion) build-$*/libperl.so.$(version); \
          ln -s libperl.so.$(version) build-$*/libperl.so; \
-         dh_auto_build --builddirectory=build-$* -- SHRPLDFLAGS='$$(LDDLFLAGS) 
-Wl,-soname,libperl.so.$(version)'; \
+         dh_auto_build --no-parallel --builddirectory=build-$* -- 
SHRPLDFLAGS='$$(LDDLFLAGS) -Wl,-soname,libperl.so.$(version)'; \
        elif [ "$*" = "debug" ]; then \
-         dh_auto_build --builddirectory=build-$* -- perl; \
+         dh_auto_build --no-parallel --builddirectory=build-$* -- perl; \
        else \
-         dh_auto_build --builddirectory=build-$*; \
+         dh_auto_build --no-parallel --builddirectory=build-$*; \
        fi
        touch $@


Regards,
gyptazy

Attachment: perl_debian_rules.patch
Description: Binary data


Reply via email to