[bug #16132] Quoting problem in 3.81rc1

2006-03-20 Thread anonymous

URL:
  http://savannah.gnu.org/bugs/?func=detailitemitem_id=16132

 Summary: Quoting problem in 3.81rc1
 Project: make
Submitted by: None
Submitted on: Mon 03/20/06 at 12:12
Severity: 3 - Normal
  Item Group: Bug
  Status: None
 Privacy: Public
 Assigned to: None
 Open/Closed: Open
   Component Version: None
Platform Version: MS Windows
   Fixed Release: None

___

Details:

# GNU Make 3.80 gives:
#  -aap=noot
#  -aap=noot
#  -aap=noot
#  -aap=noot -mies=wim
#  -aap=noot -mies=wim
#  -aap=noot -mies=wim
#  
# GNU Make 3.81 b3 gives:
#  -aap=noot
#  -aap=noot
#  -aap=noot
#  -aap=noot -mies=wim
#  -aap=noot -mies=wim
#  -aap=noot -mies=wim
#  
#
# GNU Make 3.81 rc1 gives:
#  -aap=noot
#  -aap=\noot
#  -aap=\noot
#  -aap=noot -mies=wim
#  -aap=noot -mies=wim
#  -aap=\noot -mies=wim
#  

BLA1 :=  -aap=noot
BLA2 := '-aap=noot'
BLA3 :=  -aap=\noot\

BLA4 :=  -aap=noot -mies=wim
BLA5 := '-aap=noot -mies=wim'
BLA6 :=  -aap=\noot\ -mies=\wim\ 

all:
@echo $(BLA1)
@echo $(BLA2)
@echo $(BLA3)
@echo $(BLA4)
@echo $(BLA5)
@echo $(BLA6)





___

File Attachments:


---
Date: Mon 03/20/06 at 12:12  Name: makefile2  Size: 764B   By: None
example makefile (see submission)
http://savannah.gnu.org/bugs/download.php?item_id=16132item_file_id=3508

___

Reply to this item at:

  http://savannah.gnu.org/bugs/?func=detailitemitem_id=16132

___
  Message sent via/by Savannah
  http://savannah.gnu.org/



___
Bug-make mailing list
Bug-make@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-make


[bug #16132] Quoting problem in 3.81rc1

2006-03-20 Thread Paul D. Smith

Update of bug #16132 (project make):

  Status:None = Works for me   

___

Follow-up Comment #1:

I can't reproduce this on GNU/Linux; both rc1 and the latest CVS code work
fine.  Please provide more details about your OS: what version of Windows;
which shell are you using; etc.

___

Reply to this item at:

  http://savannah.gnu.org/bugs/?func=detailitemitem_id=16132

___
  Message sent via/by Savannah
  http://savannah.gnu.org/



___
Bug-make mailing list
Bug-make@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-make


GNU make 3.81rc2 has been released

2006-03-20 Thread Paul D. Smith
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Hi all;

Please find GNU make 3.81rc2, available now for download from
ftp://alpha.gnu.org/gnu/make:

ecebd3e477587603cd074183fbf7a302  
ftp://alpha.gnu.org/gnu/make/make-3.81rc2.tar.gz
4dc9dc889366f0e297ee5127bc6cd930  
ftp://alpha.gnu.org/gnu/make/make-3.81rc2.tar.bz2


A number of bugs and problems were fixed.  In particular, a bug fix
which caused the Linux kernel build system to behave improperly has been
deferred until the next release.

This is a release candidate; unless important errors are discovered the
official release will be made sometime next week.  Please make every
effort to test this release on as many systems and in as many situations
as possible.


Have fun!

-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.2 (GNU/Linux)

iD8DBQFEHq89lrBHFWM4ttQRAgPVAJwOSELewoWUQ6U/lI596JkNPq4/bACdGdLQ
ylhbhattSsqIymPTAd7GsiI=
=n5jQ
-END PGP SIGNATURE-


-- 
---
 Paul D. Smith [EMAIL PROTECTED]  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


___
Bug-make mailing list
Bug-make@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-make


[bug #16118] Change of behavior in beta[34] for -include

2006-03-20 Thread Paul D. Smith

Update of bug #16118 (project make):

  Status:None = Not A Bug  
 Open/Closed:Open = Closed 

___

Follow-up Comment #1:

As best as I can tell this change was made intentionally.  The GNU make
manual says:

   If you want `make' to simply ignore a makefile which does not exist and
cannot be remade, with no error message, use the `-include' directive instead
of `include'

The behavior of the previous versions of make did not match this description,
since make would fail if it could not remake an included makefile.

If you want make to fail when a makefile can't be rebuilt, then you should
use include instead of -include.  A few other points: be careful to write
your .d creation script so that if the .c file does not exist it will either
fail or at least it won't create an empty .d file.  If you use -include then
make will ignore it when it fails but at least you won't incorrectly hide the
problem.  I suppose another option is to generate a .d file with a syntax
error in it, then when make re-execs it will fail.  But this is a problem
because you'll have to delete the broken .d file by hand before make will
work again.

Also, one would assume that the non-existent .c file would cause a failure of
some kind during the normal build portion of the makefile (not building .d
files) so I don't see how this kind of error can go unnoticed for long.

I'm closing this as Not a Bug for now; please feel free to add more
information about your situation and we can continue to discuss it.

___

Reply to this item at:

  http://savannah.gnu.org/bugs/?func=detailitemitem_id=16118

___
  Message sent via/by Savannah
  http://savannah.gnu.org/



___
Bug-make mailing list
Bug-make@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-make


bug in 3.8.0

2006-03-20 Thread PATTON, BILLY \(SBCSI\)
define build_proj_template
$(1):  $(foreach bb,$(BB_$(patsubst build+%,%,$(1))),$(addsuffix
+$(bb),$(addprefix build+,$(patsubst build+%,%,$(1)
@echo build_proj_template $(1)
endef

$(foreach proj,$(PROJECTS),$(eval $(call build_proj_template,$(addprefix
build+,$(proj)

If I change the eval to warning

3.79ok
3.79.1  ok
3.8.0   ok
3.8.1   ok

change warning back to eval

3.79nothing
3.79.1  nothing
3.8.0   segmentation fault core dump
3.8.1   ok

Since 3.8.1 is beta.  It cannot put it to a production environment.
I'm between a rock and a hard place. 3.79 is installed but doesn't work.
The impact is taking a hard look at upgrading some of the servers to
3.8.0.
but it failes.  3.8.1 isn't released yet.




Segmentation fault (core dumped)




(gdb) bt
#0  0xc0199cbc in _sigfillset+0x26fc () from /usr/lib/libc.2
#1  0xc0197e18 in _sigfillset+0x858 () from /usr/lib/libc.2
#2  0xc0198cfc in _sigfillset+0x173c () from /usr/lib/libc.2
#3  0xc0195bec in _sscanf+0x8fc () from /usr/lib/libc.2
#4  0xc019b510 in realloc+0x1a0 () from /usr/lib/libc.2
#5  0x1f738 in xrealloc (
ptr=0x40018f78 build+ldb :  build+ldb+inftp build+ldb+opi
build+ldb+schapi build+ldb+tuxapi build+ldb+ldngn 
build+ldb+in fgn build+ldb+ldgn build+ldb+ld Address 0x40019000
out of bounds, size=4294965501) at misc.c:384
#6  0xb5ec in variable_buffer_output (ptr=0x40018810
@[EMAIL PROTECTED], string=0x40018498 , length=1)
at expand.c:67
#7  0xba08 in variable_expand_string (line=0x40018810
@[EMAIL PROTECTED],
string=0x40018459 $(eval $(call build_proj_template,$(addprefix
build+,$(proj, length=-1)
at expand.c:207
#8  0xc0e4 in variable_expand (line=0x40018459 $(eval $(call
build_proj_template,$(addprefix build+,$(proj)
at expand.c:415
#9  0xc224 in variable_expand_for_file (
line=0x40018459 $(eval $(call build_proj_template,$(addprefix
build+,$(proj, file=0x0) at expand.c:457
#10 0xc510 in allocated_variable_expand_for_file (
line=0x40018459 $(eval $(call build_proj_template,$(addprefix
build+,$(proj, file=0x0) at expand.c:555
#11 0x11478 in func_foreach (o=0x40017bf8 build_proj_template,
argv=0x68ff1870, funcname=0x36a98 foreach)
at function.c:874
#12 0x12c80 in expand_builtin_function (o=0x40017bf8
build_proj_template, argc=3, argv=0x68ff1870,
entry_p=0x40003604) at function.c:1864
#13 0x12fd8 in handle_function (op=0x68ff17a4, stringp=0x68ff17a8) at
function.c:1964
#14 0xbac8 in variable_expand_string (line=0x40017bf8
build_proj_template,
string=0x40017390 $(foreach proj,$(PROJECTS),$(eval $(call
build_proj_template,$(addprefix build+,$(proj),
length= 91) at expand.c:235
#15 0x21c38 in eval (ebuf=0x68ff1574, set_default=1) at read.c:913
#16 0x20828 in eval_makefile (filename=0x40015148 XXX, flags=0) at
read.c:379
#17 0x201a8 in read_all_makefiles (makefiles=0x4000fe70) at read.c:205
#18 0x1b390 in main (argc=3, argv=0x68ff0694, envp=0x68ff06a4) at
main.c:1444
(gdb)


XXX
Description: XXX
___
Bug-make mailing list
Bug-make@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-make


RE: bug in 3.8.0

2006-03-20 Thread Martin Dorey
 I'm between a rock and a hard place.

I know - I'm in a similar position.  Having code which reliably
generates rules (with $eval) is a powerful feature and, once you've
tasted it, it's hard to give it up.  However, I've been using the 3.81
beta builds very successfully on a number of platforms for many months.
Debian's testing distribution has had 3.81 beta builds for a couple of
months now.  It's good to go, or very nearly so.

 3.8.1 isn't released yet.

Not for long.  Paul's making a serious effort to get 3.81 released - the
hope is it will be this very week.

make-3.81rc2 is now available from ftp://alpha.gnu.org/gnu/make (in case
you're still using a beta build).  The previous (3.80) release of make
was about three and a half years ago.  Hopefully 3.82 won't take as long
but, if 3.81rc2 exhibits any problems in your production environment,
now would be a really, really good time to report them.
-
Martin's Outlook, BlueArc Engineering

-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of
PATTON, BILLY (SBCSI)
Sent: Friday, March 17, 2006 4:53
To: bug-make@gnu.org
Subject: bug in 3.8.0

define build_proj_template
$(1):  $(foreach bb,$(BB_$(patsubst build+%,%,$(1))),$(addsuffix
+$(bb),$(addprefix build+,$(patsubst build+%,%,$(1)
@echo build_proj_template $(1)
endef

$(foreach proj,$(PROJECTS),$(eval $(call build_proj_template,$(addprefix
build+,$(proj)

If I change the eval to warning

3.79ok
3.79.1  ok
3.8.0   ok
3.8.1   ok

change warning back to eval

3.79nothing
3.79.1  nothing
3.8.0   segmentation fault core dump
3.8.1   ok

Since 3.8.1 is beta.  It cannot put it to a production environment.
I'm between a rock and a hard place. 3.79 is installed but doesn't work.
The impact is taking a hard look at upgrading some of the servers to
3.8.0.
but it failes.  3.8.1 isn't released yet.




Segmentation fault (core dumped)




(gdb) bt
#0  0xc0199cbc in _sigfillset+0x26fc () from /usr/lib/libc.2
#1  0xc0197e18 in _sigfillset+0x858 () from /usr/lib/libc.2
#2  0xc0198cfc in _sigfillset+0x173c () from /usr/lib/libc.2
#3  0xc0195bec in _sscanf+0x8fc () from /usr/lib/libc.2
#4  0xc019b510 in realloc+0x1a0 () from /usr/lib/libc.2
#5  0x1f738 in xrealloc (
ptr=0x40018f78 build+ldb :  build+ldb+inftp build+ldb+opi
build+ldb+schapi build+ldb+tuxapi build+ldb+ldngn 
build+ldb+in fgn build+ldb+ldgn build+ldb+ld Address 0x40019000
out of bounds, size=4294965501) at misc.c:384
#6  0xb5ec in variable_buffer_output (ptr=0x40018810
@[EMAIL PROTECTED], string=0x40018498 , length=1)
at expand.c:67
#7  0xba08 in variable_expand_string (line=0x40018810
@[EMAIL PROTECTED],
string=0x40018459 $(eval $(call build_proj_template,$(addprefix
build+,$(proj, length=-1)
at expand.c:207
#8  0xc0e4 in variable_expand (line=0x40018459 $(eval $(call
build_proj_template,$(addprefix build+,$(proj)
at expand.c:415
#9  0xc224 in variable_expand_for_file (
line=0x40018459 $(eval $(call build_proj_template,$(addprefix
build+,$(proj, file=0x0) at expand.c:457
#10 0xc510 in allocated_variable_expand_for_file (
line=0x40018459 $(eval $(call build_proj_template,$(addprefix
build+,$(proj, file=0x0) at expand.c:555
#11 0x11478 in func_foreach (o=0x40017bf8 build_proj_template,
argv=0x68ff1870, funcname=0x36a98 foreach)
at function.c:874
#12 0x12c80 in expand_builtin_function (o=0x40017bf8
build_proj_template, argc=3, argv=0x68ff1870,
entry_p=0x40003604) at function.c:1864
#13 0x12fd8 in handle_function (op=0x68ff17a4, stringp=0x68ff17a8) at
function.c:1964
#14 0xbac8 in variable_expand_string (line=0x40017bf8
build_proj_template,
string=0x40017390 $(foreach proj,$(PROJECTS),$(eval $(call
build_proj_template,$(addprefix build+,$(proj),
length= 91) at expand.c:235
#15 0x21c38 in eval (ebuf=0x68ff1574, set_default=1) at read.c:913
#16 0x20828 in eval_makefile (filename=0x40015148 XXX, flags=0) at
read.c:379
#17 0x201a8 in read_all_makefiles (makefiles=0x4000fe70) at read.c:205
#18 0x1b390 in main (argc=3, argv=0x68ff0694, envp=0x68ff06a4) at
main.c:1444
(gdb)


___
Bug-make mailing list
Bug-make@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-make


[bug #16132] Quoting problem in 3.81rc1

2006-03-20 Thread Eli Zaretskii

Follow-up Comment #2, bug #16132 (project make):

I cannot reproduce this, either, on Windows XP.  I tried with and without a
Unixy sh.exe on my PATH, and both behave as expected, identically to v3.80
and v3.80b4.

(The behavior with and without sh.exe is not identical, but that's because
the `echo' built-in behaves differently in each case, as far as removing
single and double quotes is concerned.)

What kind of sh.exe are you using, and how (with what compiler and
development environment) did you build Make 3.81rc1?


___

Reply to this item at:

  http://savannah.gnu.org/bugs/?func=detailitemitem_id=16132

___
  Message sent via/by Savannah
  http://savannah.gnu.org/



___
Bug-make mailing list
Bug-make@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-make


[bug #16138] multiple jobservers started up by parallel make (and so uses 4 FDs instead of just 2)

2006-03-20 Thread anonymous

URL:
  http://savannah.gnu.org/bugs/?func=detailitemitem_id=16138

 Summary: multiple jobservers started up by parallel make
(and so uses 4 FDs instead of just 2)
 Project: make
Submitted by: None
Submitted on: Mon 03/20/06 at 21:58
Severity: 3 - Normal
  Item Group: Bug
  Status: None
 Privacy: Public
 Assigned to: None
 Open/Closed: Open
   Component Version: 3.79.1
Platform Version: POSIX-Based
   Fixed Release: None

___

Details:

The command 'make test' with the following makefile fails when trying to
process the 'submake' target in the 2nd makefile (makefile2) because file
descriptor 5 is being used by the parallel make jobserver.  If you then do
another 'make test', it works because 'dependfile' exists.  It seems that
when make is making the 'dependfile' so it can do the 'include dependfile' it
starts up a jobserver (using FD 3,4) and then when it processes the 'submake'
target, it does not know about the first jobserver and so starts up another
jobserver (using FD 5,6).

Running on a Linux machine where uname -a returns:
Linux lnxmach1 2.4.21-20.ELsmp #1 SMP Wed Aug 18 20:46:40 EDT 2004 i686 i686
i386 GNU/Linux

makefile


test:
@echo MAKE=$(MAKE) MAKEFLAGS=$(MAKEFLAGS)MFLAGS=$(MFLAGS)
$(MAKE) -f makefile2 -j 2 submake

makefile2
-

dependfile:
@echo SOMEMACRO=joe  $@
@echo MAKE=$(MAKE) MAKEFLAGS=$(MAKEFLAGS)MFLAGS=$(MFLAGS)
 
include dependfile
 
submake:
@echo MAKE=$(MAKE) MAKEFLAGS=$(MAKEFLAGS)MFLAGS=$(MFLAGS)
$(MAKE) -f makefile2 fdprint 5output
 
fdprint:
@echo MAKE=$(MAKE) MAKEFLAGS=$(MAKEFLAGS)MFLAGS=$(MFLAGS)
@echo hi 5








___

Reply to this item at:

  http://savannah.gnu.org/bugs/?func=detailitemitem_id=16138

___
  Message sent via/by Savannah
  http://savannah.gnu.org/



___
Bug-make mailing list
Bug-make@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-make


[bug #16138] multiple jobservers started up by parallel make (and so uses 4 FDs instead of just 2)

2006-03-20 Thread Paul D. Smith

Update of bug #16138 (project make):

  Status:None = Fixed  
 Assigned to:None = psmith 
 Open/Closed:Open = Closed 
   Fixed Release:None = CVS

___

Follow-up Comment #1:

I fixed this in CVS; the fix is available in the latest release candidate:

ftp://alpha.gnu.org/gnu/make/make-3.81rc2.tar.bz2


___

Reply to this item at:

  http://savannah.gnu.org/bugs/?func=detailitemitem_id=16138

___
  Message sent via/by Savannah
  http://savannah.gnu.org/



___
Bug-make mailing list
Bug-make@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-make