On Fri, Aug 7, 2015 at 4:24 PM, Laurent Bercot <ska-supervision_at_skarnet.org>
wrote:
> 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 http://ftp.gnu.org/gnu/make/make-4.1.tar.bz2
> 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/libc.so
/usr/lib/x86_64-linux-gnu/libc.so
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