[bug #17521] target-specific variables inluding semicolon

2009-06-08 Thread Paul D. Smith

Update of bug #17521 (project make):

  Status:None = Fixed  
 Assigned to:None = psmith 
 Open/Closed:Open = Closed 
Operating System:  MS Windows = Any
   Fixed Release:None = CVS

___

Follow-up Comment #4:

Fixed.  Thanks.

___

Reply to this item at:

  http://savannah.gnu.org/bugs/?17521

___
  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 #17521] target-specific variables inluding semicolon

2006-08-25 Thread anonymous

URL:
  http://savannah.gnu.org/bugs/?17521

 Summary: target-specific variables inluding semicolon
 Project: make
Submitted by: None
Submitted on: 金曜日 2006年08月25日 at 08:43 UTC
Severity: 3 - Normal
  Item Group: Bug
  Status: None
 Privacy: Public
 Assigned to: None
 Open/Closed: Open
   Component Version: 3.81
Operating System: MS Windows
   Fixed Release: None

___

Details:

$ make --version
GNU Make 3.81
Copyright (C) 2006  Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.

This program built for i686-pc-cygwin
$
$ cat Makefile
test:  HELLO = 'hello \
world'

test2: HELLO2 = 'hello; \
world'

test :
@echo $(HELLO)
test2 :
@echo $(HELLO2)

$ make test
hello world
$ make test2
hello; \
world


I expect 'hello; world'.



Regards.






___

Reply to this item at:

  http://savannah.gnu.org/bugs/?17521

___
  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 #17521] target-specific variables inluding semicolon

2006-08-25 Thread Eli Zaretskii

Follow-up Comment #1, bug #17521 (project make):

This is not a bug, but a documented change in behavior, intended to bring GNU
Make in line with Posix specification for Make.

From the NEWS file:

* WARNING: Backward-incompatibility!
  In order to comply with POSIX, the way in which GNU make processes
  backslash-newline sequences in command strings has changed.  If your
  makefiles use backslash-newline sequences inside of single-quoted
  strings in command scripts you will be impacted by this change.  See
  the GNU make manual subsection Splitting Command Lines (node
  Splitting Lines), in section Command Syntax, chapter Writing the
  Commands in Rules, for details.

In other words, your Makefile violates Posix rules for Make; in order to fix
your Makefile, either use double quotes instead of single quotes, or put the
single-quoted string into a Make variable and use that variable in rule's
commands.


___

Reply to this item at:

  http://savannah.gnu.org/bugs/?17521

___
  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 #17521] target-specific variables inluding semicolon

2006-08-25 Thread Paul D. Smith

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

Actually, Eli, if the example shown is accurate (I haven't tried it) then
this seems to be a bug.  First note that the two cases behave differently:
the one without the semicolon strips the backslash and the one with it does
not.  That can't be right.

Second, the text you're quoting applies to backslashes inside the command
script: these backslashes are in variable values (even though they're
target-specific variables they still follow the rules for setting variables)
and the behavior of backslashes in variable values didn't change.

Again, I haven't looked at this at all but offhand I'd say there's some issue
with the parser finding semicolons in target-specific variables: remember make
needs to handle semicolons in a normal target definition such as all: ; @echo
all specially.

___

Reply to this item at:

  http://savannah.gnu.org/bugs/?17521

___
  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