trans-coord-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

trans-coord/gnun/server/gnun ChangeLog GNUmakefile


From: Yavor Doganov
Subject: trans-coord/gnun/server/gnun ChangeLog GNUmakefile
Date: Wed, 18 Jun 2008 09:21:34 +0000

CVSROOT:        /sources/trans-coord
Module name:    trans-coord
Changes by:     Yavor Doganov <yavor>   08/06/18 09:21:33

Modified files:
        gnun/server/gnun: ChangeLog GNUmakefile 

Log message:
        (touch-hook): Record the full command which when
        executed will update the timestamp of the prerequisite based on
        the timestamp of the target.
        (triggers): Execute the .hook files instead of touching their
        contents.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/trans-coord/gnun/server/gnun/ChangeLog?cvsroot=trans-coord&r1=1.90&r2=1.91
http://cvs.savannah.gnu.org/viewcvs/trans-coord/gnun/server/gnun/GNUmakefile?cvsroot=trans-coord&r1=1.49&r2=1.50

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/trans-coord/trans-coord/gnun/server/gnun/ChangeLog,v
retrieving revision 1.90
retrieving revision 1.91
diff -u -b -r1.90 -r1.91
--- ChangeLog   17 Jun 2008 12:44:58 -0000      1.90
+++ ChangeLog   18 Jun 2008 09:21:33 -0000      1.91
@@ -1,3 +1,12 @@
+2008-06-18  Kaloian Doganov  <address@hidden>
+           Yavor Doganov <address@hidden>
+
+       * GNUmakefile (touch-hook): Record the full command which when
+       executed will update the timestamp of the prerequisite based on
+       the timestamp of the target.
+       (triggers): Execute the .hook files instead of touching their
+       contents.
+
 2008-06-17  Yavor Doganov  <address@hidden>
 
        Implement `triggers' to cope with validation errors that don't

Index: GNUmakefile
===================================================================
RCS file: /sources/trans-coord/trans-coord/gnun/server/gnun/GNUmakefile,v
retrieving revision 1.49
retrieving revision 1.50
diff -u -b -r1.49 -r1.50
--- GNUmakefile 17 Jun 2008 12:49:40 -0000      1.49
+++ GNUmakefile 18 Jun 2008 09:21:33 -0000      1.50
@@ -199,10 +199,16 @@
 # has to be parallel safe like all the rules.  Also for `make -k'.
 # Touching the prerequisite is still needed for local non-VCS builds
 # to DTRT and halt when $PO is not rectified.
-# The first test implementation was using `at + 1 hours' but it is
-# much less reliable in general.
+# After a commit, cvs updates the working copy expanding all keywords
+# on the way and sets the timestamp as per the server time.  When the
+# client is not synchronized -- i.e. fencepost is currently lagging 2
+# minutes -- the timestamp is in the future so touching it after `cvs
+# commit' does not work.  The solution is to record a command sequence
+# that will update the timestamp based on the timestamp of the target.
 define touch-hook
-sleep 1 ; touch $$PO ; echo $$PO > $(@F).hook ; exit 1
+sleep 1 ; touch $$PO ; \
+echo "touch --reference=$@ --date='+5 minutes' $$PO" > $(@F).hook ; \
+exit 1
 endef
 
 # Ensure that generic.LANG.html is always present for the homepage and
@@ -590,8 +596,9 @@
 ifeq (,$(wildcard *.hook))
        @echo "No triggers to process; build apparently successful."
 else
+# Execute the command recorded in every .hook file.
        @for t in *.hook ; do \
-         echo -n "Processing $$t... " && touch `cat $$t` && echo done. ; \
+         echo -n "Processing $$t... " && bash $$t && echo done. ; \
        done
 # Delete all *.hook files, or else there will be useless rebuilds
 # every time updating the `Date' timestamp in .LANG.html.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]