automake
[Top][All Lists]
Advanced

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

Re: I: adjust test suite for upcoming GNU Make 3.83


From: Paul Smith
Subject: Re: I: adjust test suite for upcoming GNU Make 3.83
Date: 10 Mar 2005 12:42:39 -0500
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.3

%% "Dmitry V. Levin" <address@hidden> writes:

  dvl> Upcoming version of GNU Make introduces new incompatibility.
  dvl> The NEWS file says:
  dvl> * WARNING: Backward-incompatibility!
  dvl>   GNU make now implements a generic "second expansion" feature on the
  dvl>   prerequisites of both explicit and implicit (pattern) targets.  After
  dvl>   the rule has been parsed, the prerequisites are expanded a second
  dvl>   time, this time with all the automatic variables in scope.  This means
  dvl>   that in addition to using standard SysV $$@ in prerequisites lists,
  dvl>   you can also use complex functions such as $$(patsubst f%r,b%o,$$@) 
etc.
  dvl>   This behavior applies to implicit rules, as well, where the second
  dvl>   expansion occurs after the rule is matched.
  dvl>   However, this means that you need to double-quote any "$" in your
  dvl>   filenames; instead of "foo: boo$$bar" you must write "foo: foo$$$$bar"

  dvl> GNU Make developers suggest to adjust dollar.test, to make it work with
  dvl> both the old and new versions of GNU make, see
  dvl> http://savannah.gnu.org/bugs/?func=detailitem&item_id=12260

Hi Dmitry;

I was going to post something here about this when I saw your message :-).


I'm interested in discussing the issue and possible solutions.  The one
I added to the bug report involves using :=, since simply-expanded
variables in GNU make are always only expanded one time, no matter how
many times they're referenced (unless within an eval function).  But,
obviously, using := does not yield a portable makefile.

I'm not actually sure whether there's any way to write a makefile that
doesn't rely on any GNU make features, that handles "$" in filenames
"properly".

-- 
-------------------------------------------------------------------------------
 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]