bug-make
[Top][All Lists]
Advanced

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

Re: Possible bug with $(eval) and :=


From: Eldar Abusalimov
Subject: Re: Possible bug with $(eval) and :=
Date: Sun, 16 Dec 2012 03:16:11 +0400

Victor,

A similar question was asked some time ago: http://lists.gnu.org/archive/html/bug-make/2012-05/msg00014.html
Short answer: Yes, this is a bug, see here: https://savannah.gnu.org/patch/?7534

Accordingly to the difference between Cygwin and other versions: I believe the former has a newer version of Make (3.82.90 maybe), which doesn't have this bug anymore.



2012/12/16 Victor Shih <address@hidden>

I've been using this thunk implementation as described http://www.cakoose.com/wiki/gnu_make_thunks, but recently came upon an anomaly on a different operating system.  Here's an example Makefile:


A = abcdefghijklmnop
B = $(eval B := $A)$B

test:
    @echo [$B]
    @echo [$B]


On cygwin it seems to work fine:
[abcdefghijklmnopqr]
[abcdefghijklmnopqr]


But on Mac 10.6 as well as Ubuntu 12.04, it returns:
[p]
[abcdefghijklmnop]


All of these environments are running make 3.82.

The length of the definitions of A and B matter, too.  Basically the first expansion of $B truncates as many characters as the $(eval ...) definition is long.  Very strange.

Am I missing something?


--
Victor Shih
blog.vicshih.com

_______________________________________________
Bug-make mailing list
address@hidden
https://lists.gnu.org/mailman/listinfo/bug-make




--
Best regards,
Eldar Sh. Abusalimov

reply via email to

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