Re: s6: compatibility with make<3.82

From: Buck Evan <>
Date: Fri, 7 Aug 2015 16:29:01 -0700

On Fri, Aug 7, 2015 at 4:24 PM, Laurent Bercot <>

> On 07/08/2015 23:22, Avery Payne wrote:
>> That means I'm stuck with a make that won't build s6, unless I
>> download, build, and install a separate make, which may or may not
>> conflict with the existing install, leading to all kinds of "good
>> times" that I really don't need.
> As Buck said, there's no possible difficulty in
> mkdir /opt/make-4.1
> cd /opt/make-4.1
> wget
> tar jxpvf make-4.1.tar.bz2
> mv make-4.1 src
> cd src
> ./configure --prefix=/opt/make-4.1 && make && make install

Well there's a "possible difficulty" if you don't know about --prefix.
Avery didn't.

 Also note that make is backwards compatible: everything that builds
> under make-3.81 will build under make-4.1, so even if you inadvertently
> replaced /usr/bin/make, your servers still wouldn't break.

Laurent, I've just run across a counter example: (this gives me a bonafide
issue when handling your -lskarnet rules)

s6-user_at_696f14e9c9bd:~/scratch$ cat Makefile
all: -lc
echo $^

s6-user_at_696f14e9c9bd:~/scratch$ make
echo /usr/lib/x86_64-linux-gnu/

s6-user_at_696f14e9c9bd:~/scratch$ make --version
GNU Make 3.81

s6-user_at_696f14e9c9bd:~/scratch$ /opt/make/make
make: *** No rule to make target '-lc', needed by 'all'. Stop.

s6-user_at_696f14e9c9bd:~/scratch$ /opt/make/make --version
GNU Make 4.1
Built for x86_64-unknown-linux-gnu
Received on Fri Aug 07 2015 - 23:29:01 UTC

This archive was generated by hypermail 2.3.0 : Sun May 09 2021 - 19:44:19 UTC