bin/155000: make(1) doesn't handle .POSIX: correctly

Bruce Evans brde at optusnet.com.au
Fri Feb 25 00:20:11 UTC 2011


The following reply was made to PR bin/155000; it has been noted by GNATS.

From: Bruce Evans <brde at optusnet.com.au>
To: Colin Percival <cperciva at FreeBSD.org>
Cc: FreeBSD-gnats-submit at FreeBSD.org, freebsd-bugs at FreeBSD.org
Subject: Re: bin/155000: make(1) doesn't handle .POSIX: correctly
Date: Fri, 25 Feb 2011 09:35:30 +1100 (EST)

 On Thu, 24 Feb 2011, Colin Percival wrote:
 
 >> Description:
 >
 > make(1) doesn't handle .POSIX: correctly.  It sucks in sys.mk before it
 > reads the Makefile, and sys.mk has several instances of
 > .if defined(%POSIX)
 > to switch between POSIX and non-POSIX mode; because sys.mk is processed
 > first, there is no opportunity for a .POSIX: directive to take effect.
 >
 >> How-To-Repeat:
 > $ echo .POSIX: > Makefile
 > $ make -V CC
 > (prints "cc"; it should print "c89".)
 
 Except that there is the opportunity to set %POSIX using make -D.  This
 might be enough in practice.  The namespace pollution avoidance is
 too perfect -- there seems to be no way to set %POSIX or .POSIX in the
 environment.
 
 Bruce


More information about the freebsd-bugs mailing list