help-make
[Top][All Lists]
Advanced

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

Re: GNU Make 3.80 on Cygwin expanding variables improperly?


From: Greg Wilson
Subject: Re: GNU Make 3.80 on Cygwin expanding variables improperly?
Date: Wed, 24 May 2006 14:02:23 -0400 (EDT)

Hi,

I've shortened my example considerably, and discovered something new.
Unpack the attached gzip'd tar file and run 'make settings'.  On Linux,
and on all three of the Windows XP Pro machines I have access to (using
GNU Make 3.80 installed via Cygwin) the output is:

Makefile:7: evaluating png for shell01
Makefile:7: value is ./lec/img/shell01/directory_tree.png
Makefile:7: evaluating png for shell02
Makefile:7: value is ./lec/img/shell02/pipes.png
Makefile:16: evaluating png for shell01
Makefile:16: value is shell01/directory_tree.png
Makefile:16: evaluating png for shell02
Makefile:16: value is shell02/pipes.png
NESTED: ./lec/img/shell01/directory_tree.png ./lec/img/shell02/pipes.png
TOPLEVEL: shell01/directory_tree.png shell02/pipes.png

On my XP Home machine, the output is:

Makefile:7: evaluating png for shell01
Makefile:7: value is ./lec/img/shell01/directory_tree.png
Makefile:7: evaluating png for shell02
Makefile:7: value is ./lec/img/shell02/directory_tree.png
Makefile:16: evaluating png for shell01
Makefile:16: value is shell01/directory_tree.png
Makefile:16: evaluating png for shell02
Makefile:16: value is shell02/pipes.png
NESTED: ./lec/img/shell01/directory_tree.png 
./lec/img/shell02/directory_tree.png
TOPLEVEL: shell01/directory_tree.png shell02/pipes.png

I.e., when the files are nested in subdirectories, $(wildcard) expands the
variable improperly, but when they're at the top level, it works.

I've tried putting the graphics files in questions only one level down
(i.e., in a direct subdirectory, rather than a sub-subdirectory), and GNU
Make expands the variable *correctly*.

So: how is $(wildcard) implemented?  Is this some problem arising because
of bad synchronization with a forked child?

Thanks,
Greg

Attachment: example.tar.gz
Description: Binary data


reply via email to

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