[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: 4.4: embeds volatile information in MAKEFLAGS
From: |
Steffen Nurpmeso |
Subject: |
Re: 4.4: embeds volatile information in MAKEFLAGS |
Date: |
Mon, 07 Nov 2022 20:32:57 +0100 |
User-agent: |
s-nail v14.9.24-343-g9e3ff607d5 |
Hello.
Steffen Nurpmeso wrote in
<20221105231048.8w3Mb%steffen@sdaoden.eu>:
|Steffen Nurpmeso wrote in
| <20221105230326.qIjDR%steffen@sdaoden.eu>:
||Dmitry Goncharov wrote in
|| <CAG+Z0CtJ_U4X8OTmD-yn5-eo4QHzfXhPYCa4E0MGqWF4PT1EtA@mail.gmail.com>:
|||On Sat, Nov 5, 2022 at 6:24 PM Steffen Nurpmeso <steffen@sdaoden.eu> \
|||wrote:
|||> make[1]: *** Cannot open jobserver /tmp/GMfifo31074: No such file \
|||> or directory. Stop.
|||
|||Can you please tell us how to reproduce?
mkdir /tmp/t
cd /tmp/t
cat > makefile <<'EOT'
.NOTPARALLEL:
.WAIT: # Luckily BSD make supports specifying this as target, too
config:
@{ echo MAKE=\"$(MAKE)\";echo MAKEFLAGS=\"$(MAKEFLAGS)\"; } >
./au;echo config
all:
. ./au;echo all;$${MAKE} internal_
internal_:
@echo MAKE=$(MAKE), MAKEFLAGS=$(MAKEFLAGS)
EOT
If you run this
#?2|kent:y$ make -j4 config OPT_POP3=y;make all;../x/make-4.4/make -j4 config
OPT_POP3=y;make all
config
. ./au;echo all;${MAKE} internal_
all
make[1]: warning: jobserver unavailable: using -j1. Add '+' to parent make
rule.
make[1]: Entering directory '/tmp/y'
MAKE=make, MAKEFLAGS=w -j1 -- OPT_POP3=y
make[1]: Leaving directory '/tmp/y'
config
. ./au;echo all;${MAKE} internal_
all
make[1]: Entering directory '/tmp/y'
make[1]: *** Cannot open jobserver /tmp/GMfifo17790: No such file or
directory. Stop.
make[1]: Leaving directory '/tmp/y'
make: *** [makefile:6: all] Error 2
I mean, _if_ the FIFO does not exist then "the server exited
gracefully", which it would not do upon crash, no? Just ignore
ENOENT thus? What do you say?
Btw if it would be me, i would pass that via environment
variables, which makes a natural connection to a server and its
child clients. I mean, Linux and GNU LibC now make (some aspects
of) environment inaccessible for root aka SUID i think (E?UID
mismatches, issetuid or what-do-i-know, but this hardly is
a problem for GNU make.
I want to point out that this build system works with _all_ known
environments back to Y2K (*BSD, Linux, Solaris, [UnixWare 7.1.4]).
--steffen
|
|Der Kragenbaer, The moon bear,
|der holt sich munter he cheerfully and one by one
|einen nach dem anderen runter wa.ks himself off
|(By Robert Gernhardt)
- 4.4: embeds volatile information in MAKEFLAGS, Steffen Nurpmeso, 2022/11/05
- Re: 4.4: embeds volatile information in MAKEFLAGS, Steffen Nurpmeso, 2022/11/05
- Re: 4.4: embeds volatile information in MAKEFLAGS, Dmitry Goncharov, 2022/11/05
- Re: 4.4: embeds volatile information in MAKEFLAGS, Steffen Nurpmeso, 2022/11/05
- Re: 4.4: embeds volatile information in MAKEFLAGS, Steffen Nurpmeso, 2022/11/05
- Re: 4.4: embeds volatile information in MAKEFLAGS,
Steffen Nurpmeso <=
- Re: 4.4: embeds volatile information in MAKEFLAGS, Paul Smith, 2022/11/07
- Re: 4.4: embeds volatile information in MAKEFLAGS, Steffen Nurpmeso, 2022/11/07
- Re: 4.4: embeds volatile information in MAKEFLAGS, Paul Smith, 2022/11/07
- Re: 4.4: embeds volatile information in MAKEFLAGS, Steffen Nurpmeso, 2022/11/07
- Re: 4.4: embeds volatile information in MAKEFLAGS, Paul Smith, 2022/11/07
- Re: 4.4: embeds volatile information in MAKEFLAGS, Steffen Nurpmeso, 2022/11/07
- Re: 4.4: embeds volatile information in MAKEFLAGS, Paul Smith, 2022/11/07