avoid unneeded rebuilds due to component version
authorDerrick Brashear <shadow@dementia.org>
Sun, 27 Feb 2011 02:44:37 +0000 (21:44 -0500)
committerDerrick Brashear <shadow@dementia.org>
Sun, 27 Feb 2011 09:29:10 +0000 (01:29 -0800)
if the component version file does not change, don't touch it
and force a rebuild

Change-Id: I8f864b0bdc56d04451e961fdeeb90c3bc6731d2b
Reviewed-on: http://gerrit.openafs.org/4075
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

src/config/Makefile.version-NOCML.in

index 7aba6ea..18dcbc6 100644 (file)
@@ -10,9 +10,12 @@ PACKAGE=@PACKAGE@
 AFS_component_version_number.o: AFS_component_version_number.c
 
 AFS_component_version_number.c: @TOP_OBJDIR@/src/config/Makefile.version
-       VERSION=`@abs_top_srcdir@/build-tools/git-version @abs_top_srcdir@ "@VERSION@"` && \
-       echo 'char cml_version_number[]="@(#) OpenAFS '$$VERSION' built ' `date +"%Y-%m-%d"` '";' >AFS_component_version_number.c && \
-       echo 'char* AFSVersion = "${PACKAGE} '$$VERSION'";' >>AFS_component_version_number.c
+       ( VERSION=`@abs_top_srcdir@/build-tools/git-version @abs_top_srcdir@ "@VERSION@"` && \
+       echo 'char cml_version_number[]="@(#) OpenAFS '$$VERSION' built ' `date +"%Y-%m-%d"` '";' >AFS_component_version_number.c.NEW && \
+       echo 'char* AFSVersion = "${PACKAGE} '$$VERSION'";' >>AFS_component_version_number.c.NEW && \
+       if cmp AFS_component_version_number.c.NEW AFS_component_version_number.c > /dev/null ; then : ; else \
+       mv AFS_component_version_number.c.NEW AFS_component_version_number.c ; fi )
+       rm -f AFS_component_version_number.c.NEW
 
 version.xml:
        VERSION=`@abs_top_srcdir@/build-tools/git-version @abs_top_srcdir@ "@VERSION@"` && \