bug-make
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: mention if a=b make = make a=b


From: Edward Welbourne
Subject: Re: mention if a=b make = make a=b
Date: Tue, 21 Nov 2017 10:50:27 +0000

Dan Jacobson (20 November 2017 23:50)
> (info "(make) Environment") should mention how equivalent
> $ a=b make #and
> $ make a=b
> are to each other.
> See also http://debbugs.gnu.org/29270

They're not quite equivalent, although an example like the one you give
may be a good one for the documentation to explore in explaining what
the difference is.  Assignments as command-line arguments over-ride
assignments in the make-files which, in turn, over-ride assignments in
the environment.  Thus if a make-file says:

CPPFLAGS = -DNDEBUG -Iapi

then invoking

CPPFLAGS=-DCUSTOM_DEBUG make

will ignore the environment setting and use -DNDEBUG -Iapi; while

make CPPFLAGS=-DCUSTOM_DEBUG

will use -DCUSTOM_DEBUG and ignore the make-file's setting (so no -Iapi
option will be passed to your compiler).

IIRC, there is an "override" command you can use in the make-file to
make its setting override even the command-line.

I can't remember what happens if you use += in the make-file: I'm fairly
sure it extends whatever you had in the environment, but I can't
remember whether it extends a value set on the command-line.

        Eddy.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]