[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug #30794] Interpreting backslash in pattern rules is weird
From: |
Krzysztof Malinowski |
Subject: |
[bug #30794] Interpreting backslash in pattern rules is weird |
Date: |
Tue, 17 Aug 2010 10:32:55 +0000 |
User-agent: |
Mozilla/5.0 (Windows; Windows NT 5.1; rv:2.0b3) Gecko/20100805 Firefox/4.0b3 ( .NET CLR 3.5.30729; .NET4.0E) |
URL:
<http://savannah.gnu.org/bugs/?30794>
Summary: Interpreting backslash in pattern rules is weird
Project: make
Submitted by: raspy
Submitted on: Tue 17 Aug 2010 10:32:55 AM GMT
Severity: 3 - Normal
Item Group: Bug
Status: None
Privacy: Public
Assigned to: None
Open/Closed: Open
Discussion Lock: Any
Component Version: 3.82
Operating System: MS Windows
Fixed Release: None
Triage Status: None
_______________________________________________________
Details:
Suppose the following test2.mk makefile:
backslash := $(subst /,\,/)
obj$(backslash)%.obj: src$(backslash)%.c
xcopy $< $@
Invoking make with target like obj\foo.obj fails to find a rule. Note also
that in generated dump left backslash is eaten, while the right one is not:
$> make -f test2.mk obj\foo.obj -dpr
# GNU Make 3.82
# Built for Windows32
[...]
Reading makefiles...
Reading makefile `test2.mk'...
Updating makefiles....
[...]
Updating goal targets....
Considering target file `obj\foo.o'.
File `obj\foo.o' does not exist.
Looking for an implicit rule for `obj\foo.o'.
No implicit rule found for `obj\foo.o'.
Finished prerequisites of target file `obj\foo.o'.
Must remake target `obj\foo.o'.
make: *** No rule to make target `obj\foo.o'. Stop.
# Make data base, printed on Tue Aug 17 12:22:29 2010
# Variables
[...]
# makefile (from `test2.mk', line 1)
backslash := \
[...]
# Implicit Rules
# No implicit rules.
# Files
# Not a target:
.SUFFIXES:
# Implicit rule search has not been done.
# Modification time never checked.
# File has not been updated.
obj%.obj: src\%.c
# Implicit rule search has not been done.
# Modification time never checked.
# File has not been updated.
# recipe to execute (from `test2.mk', line 4):
xcopy $< $@
# Not a target:
obj\foo.o:
# Command line target.
# Implicit rule search has been done.
# File does not exist.
# File has not been updated.
[...]
_______________________________________________________
Reply to this item at:
<http://savannah.gnu.org/bugs/?30794>
_______________________________________________
Message sent via/by Savannah
http://savannah.gnu.org/
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [bug #30794] Interpreting backslash in pattern rules is weird,
Krzysztof Malinowski <=