Mail Archives: cygwin/1997/09/19/20:07:27
McCollister, Mike wrote:
>
> Hi,
>
> I just downloaded beta 18 and found what I consider a major bug in make.
> Here is a sample Makefile:
>
> ---start Makefile---
> .SILENT:
> SHELL = /bin/sh
>
> FRED = fred
> MARY = mary
> LIST = file1 file2 file3 file4
> LIST_C = ${LIST:=.c}
>
> level1:
> echo ; \
> echo $@ ; \
> MIKE=mike ; export MIKE ; \
> echo FRED = $(FRED) ; \
> echo MARY = $(MARY) ; \
> echo MIKE = $$MIKE ; \
> echo LIST = $(LIST) ; \
> echo LIST_C = $(LIST_C) ; \
> echo OPTION = $(OPTION) ; \
> $(MAKE) level2
>
> level2:
> echo ; \
> echo $@ ; \
> echo FRED = $(FRED) ; \
> echo MARY = $(MARY) ; \
> echo MIKE = $(MIKE) ; \
> echo LIST = $(LIST) ; \
> echo LIST_C = $(LIST_C) ; \
> echo OPTION = $(OPTION)
> ---end Makefile---
>
> Now here is the bad output:
>
> level1
> FRED = fred
> MARY = mary
> MIKE = mike
> LIST = file1 file2 file3 file4
> LIST_C = file1.c file2.c file3.c file4.c
> OPTION = option
>
> level2
> FRED = fred
> MARY = mary
> MIKE = mike
> LIST = file1 file2 file3 file4
> LIST_C = file1.c file2.c file3.c file4.c
> OPTION =
>
> Now here is what the output should be:
>
> level1
> FRED = fred
> MARY = mary
> MIKE = mike
> LIST = file1 file2 file3 file4
> LIST_C = file1.c file2.c file3.c file4.c
> OPTION = option
>
> level2
> FRED = fred
> MARY = mary
> MIKE = mike
> LIST = file1 file2 file3 file4
> LIST_C = file1.c file2.c file3.c file4.c
> OPTION = option <- THIS IS DIFFERENT
>
> Note that OPTION is not being "exported" to the next instance of make.
>
> Does anyone know if build 19 fixes this?
No, but I've seen this env problem before and you should be able
to work around it by changing:
$(MAKE) level2
to:
$(MAKE) -e level2
if I remember correctly.
--
,-/- __ _ _ $Bill Luebkert
(_/ / ) // // DBE Collectibles
/ ) /--< o // // http://www.wgn.net/~dbe/
-/-' /___/_<_</_</_ Email: dbe AT wgn DOT net
-
For help on using this list (especially unsubscribing), send a message to
"gnu-win32-request AT cygnus DOT com" with one line of text: "help".
- Raw text -