|
| From: | anonymous |
| Subject: | [bug #37708] File rules compare wrong own timestamps |
| Date: | Sat, 10 Nov 2012 18:18:17 +0000 |
| User-agent: | Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:16.0) Gecko/20100101 Firefox/16.0 |
URL:
<http://savannah.gnu.org/bugs/?37708>
Summary: File rules compare wrong own timestamps
Project: make
Submitted by: None
Submitted on: Sat 10 Nov 2012 06:18:16 PM UTC
Severity: 3 - Normal
Item Group: Bug
Status: None
Privacy: Public
Assigned to: None
Open/Closed: Open
Discussion Lock: Any
Component Version: 3.81
Operating System: POSIX-Based
Fixed Release: None
Triage Status: None
_______________________________________________________
Details:
Have test makefile:
.SILENT:
.PHONY: depended_remake_always
all : depended_remake_always main
depended_remake_always :
if [ \( ! -e ./depended_real_file \) -o \( ./depended -nt
./depended_real_file \) ]; then \
touch depended_real_file; \
echo depended_real_file remade; \
fi
depended_real_file: depended_remake_always
#
main: depended_real_file
echo "about to do main"
touch main
in command line
touch depended
make -f test.mak main
doesn't proceed rule main while depended_remake_always made. It happens
because timestamps of main and depended_real_file compared on wrong stage:
namely BEFORE depended_real_file rule FULLY executes.
As workaround
touch depended
make -f test.mak all
works as it should
_______________________________________________________
Reply to this item at:
<http://savannah.gnu.org/bugs/?37708>
_______________________________________________
Message sent via/by Savannah
http://savannah.gnu.org/
| [Prev in Thread] | Current Thread | [Next in Thread] |