GNU bug report logs -
#55025
Automake should allow one to enable POSIX make behavior
Previous Next
Reported by: Vincent Lefevre <vincent <at> vinc17.net>
Date: Tue, 19 Apr 2022 15:35:02 UTC
Severity: wishlist
Tags: confirmed
Done: Karl Berry <karl <at> freefriends.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
On 2023-01-14 01:30:24 -0500, Nick Bowler wrote:
> Consider these two Makefiles, identical except for the presence of
> the .POSIX special target:
>
> % cat >noposix.mk <<'EOF'
> craziness:
> @-false; echo hello
> @false; echo hello
> EOF
>
> % cat >posix.mk <<'EOF'
> .POSIX:
> craziness:
> @-false; echo hello
> @false; echo hello
> EOF
[...]
> HP-UX 11:
>
> (this is the actual POSIX-specified behaviour which I also observed on
> multiple other systems):
>
> % make -f noposix.mk
> hello
> *** Error exit code 1
>
> Stop.
>
> % make -f posix.mk
> hello
> *** Error exit code 1
Same behavior on AIX, i.e. the .POSIX special target is useless for
*this* example. However, if it is not the first non-comment line, I
get a warning:
warning: .POSIX directive is not first non-comment line.
(found during my test of GNU MPFR on cfarm119.cfarm.net).
Note that its "make" man page says:
.POSIX
Causes the make command to use a different default rules file. The
file, /usr/ccs/lib/posix.mk, provides the default rules as
specified in the POSIX standard.
but I don't know whether this changes the behavior with Automake.
If /usr/ccs/lib/posix.mk is included when the .POSIX directive is read,
the fact that it is not the first non-comment line might cause issues.
For instance, this file (re)defines some variables:
MAKE=make
AR=ar
ARFLAGS=-rv
YACC=yacc
YFLAGS=
LEX=lex
LFLAGS=
LDFLAGS=
CC=c89
CFLAGS=-O
FC=fort77
FFLAGS=-O 1
GET=get
GFLAGS=
So this is expected to be found early in the makefile.
--
Vincent Lefèvre <vincent <at> vinc17.net> - Web: <https://www.vinc17.net/>
100% accessible validated (X)HTML - Blog: <https://www.vinc17.net/blog/>
Work: CR INRIA - computer arithmetic / AriC project (LIP, ENS-Lyon)
This bug report was last modified 1 year and 286 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.