#1105270 alpine: FTBFS with make --shuffle=reverse: cat: OSTYPE: No such file or directory

#1105270#5
Date:
2025-05-13 18:51:07 UTC
From:
To:
Hi,

GNU Make now has a --shuffle option that simulates non-deterministic ordering
of target prerequisites. See
https://trofi.github.io/posts/238-new-make-shuffle-mode.html and also previous
work in Debian by Santiago Vila:
https://people.debian.org/~sanvila/make-shuffle/

This package fails to build with make --shuffle=reverse.
This is likely to be caused by a missing dependency in
debian/rules or an upstream Makefile.

More information about this mass bug filing is available at
https://wiki.debian.org/qa.debian.org/FTBFS/Shuffle

Relevant part (hopefully):
The full build log is available from:
http://qa-logs.debian.net/2025/05/05/shuffle/reverse/alpine_2.26+dfsg-3_unstable_reverse.log

If you reassign this bug to another package, please mark it as 'affects'-ing
this package. See https://www.debian.org/Bugs/server-control#affects

#1105270#10
Date:
2025-05-29 10:51:15 UTC
From:
To:
severity 1105270 wishlist
tags 1105270 - ftbfs
thanks

El 13/5/25 a las 20:51, Lucas Nussbaum escribió:

We know the Makefile does not work if you alter the default build
order, and that's why the package currently has --max-parallel=1.

I'm removing the ftbfs tag because buildd.debian.org says
"FTBFS bugs affecting alpine in unstable"

https://buildd.debian.org/status/package.php?p=alpine

which is not really true.

Thanks.

#1105270#21
Date:
2025-09-25 01:08:03 UTC
From:
To:
Hello from Debian.

We have detected that alpine Makefiles are not ready to be run in parallel.
(Maybe this was already known, maybe not).

There are two bugs about this in the Debian bug system:

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1089250
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1105270

The first one, now closed, is part of a full archive rebuild made with
make 4.4 before make 4.4 was uploaded for Debian unstable.

We solved the problem by limiting parallelism to one thread (that's
essentially what is achieved by using --max-parallel=1).

The second one (which is the one I'm forwarding now, since the
underlying problem is still there) is also part of a full archive
rebuild, but made with "make --shuffle=reverse" to intentionally
trigger build errors.

If you ever decide to review the Makefiles so that they allow
parallelism (which would be great, as it would allow everybody to use
make -jN), there is an interesting reading here from the programmer
who implemented the --shuffle option:

https://trofi.github.io/posts/238-new-make-shuffle-mode.html

[ If you want to reply, please keep 1105270@bugs.debian.org in the Cc ]

Thanks.

#1105270#24
Date:
2025-09-25 01:08:03 UTC
From:
To:
Hello from Debian.

We have detected that alpine Makefiles are not ready to be run in parallel.
(Maybe this was already known, maybe not).

There are two bugs about this in the Debian bug system:

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1089250
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1105270

The first one, now closed, is part of a full archive rebuild made with
make 4.4 before make 4.4 was uploaded for Debian unstable.

We solved the problem by limiting parallelism to one thread (that's
essentially what is achieved by using --max-parallel=1).

The second one (which is the one I'm forwarding now, since the
underlying problem is still there) is also part of a full archive
rebuild, but made with "make --shuffle=reverse" to intentionally
trigger build errors.

If you ever decide to review the Makefiles so that they allow
parallelism (which would be great, as it would allow everybody to use
make -jN), there is an interesting reading here from the programmer
who implemented the --shuffle option:

https://trofi.github.io/posts/238-new-make-shuffle-mode.html

[ If you want to reply, please keep 1105270@bugs.debian.org in the Cc ]

Thanks.

#1105270#29
Date:
2025-10-06 00:36:10 UTC
From:
To:
Dear Santiago,

   i am unable to reproduce the issue right now. Please ping me later so
that I can retest again. My opensuse 15.6 does not have make 4.4, so I
cannot test at this moment.

   If, however, you would like to submit a fix, do not hesitate to do so.
Thank you.

#1105270#34
Date:
2025-12-15 16:49:23 UTC
From:
To:
Hello.

Sorry, we don't have a fix for now, but I forgot that there is
an easy workaround for the case your distribution does not include
make 4.4 yet:

You can download the official tarball from the GNU ftp site:

https://ftp.gnu.org/gnu/make/make-4.4.1.tar.gz

and then compile it with "./configure; make", as always.

In this case only the generated "make" executable is required, so you
can just put it in /usr/local/bin (assuming it's early in your PATH)
and forget completely about "make install" and anything else.

Thanks.