[Top][All Lists]

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

Re: bug report

From: Paul D. Smith
Subject: Re: bug report
Date: Mon, 5 Jan 2004 10:08:29 -0500

%% "Sandeep Nema" <address@hidden> writes:

  sn> GNU make version: 3.80
  sn> O/S: AIX 5.0

  sn> We used "?:" macro substitution on tru64 platform with their make, and
  sn> it works as following:

  sn> X=  $(EXCLUDE_X?:$(TMP_ADD_X))
  sn> in the above if EXCLUDE_X is defined then X will be empty, if not
  sn> defined it will be equal to  TMP_ADD_X.

What does "defined" mean here?  Does it mean "has some non-empty value",
or does it mean "has been set in any way, including to the empty value"?

  sn> This does not give any error while making with GNU make on AIX,
  sn> but does not work, i.e. does not substitute X with TMP_ADD_X.

Correct.  This syntax is not supported by GNU make.

  sn> I feel, if there is no "?:" operator, it should give a syntax
  sn> error.

Why would it give a syntax error, when that's not a syntax error?

  sn> Do you have any shorter alternative in GNU make other than
  sn> "ifdef".

Since you didn't specify exactly what behavior "?:" provides I can't say
for sure, but look up the ?= assignment operator in the GNU make manual.

 Paul D. Smith <address@hidden>          Find some GNU make tips at:
 http://www.gnu.org                      http://make.paulandlesley.org
 "Please remain calm...I may be mad, but I am a professional." --Mad Scientist

reply via email to

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