]> xenbits.xensource.com Git - xen.git/commitdiff
build: adjust include/xen/compile.h generation
authorJan Beulich <jbeulich@suse.com>
Fri, 14 Jan 2022 10:03:03 +0000 (11:03 +0100)
committerJan Beulich <jbeulich@suse.com>
Fri, 14 Jan 2022 10:03:03 +0000 (11:03 +0100)
Prior to 19427e439e01 ("build: generate "include/xen/compile.h" with
if_changed") running "make install-xen" as root would not have printed
the banner under normal circumstances. Its printing would instead have
indicated that something was wrong (or during a normal build the lack
of printing would do so).

Further aforementioned change had another undesirable effect, which I
didn't notice during review: Originally compile.h would have been
re-generated (and final binaries re-linked) when its dependencies were
updated after an earlier build. This is no longer the case now, which
means that if some other file also was updated, then the re-build done
during "make install-xen" would happen with a stale compile.h (as its
updating is suppressed in this case).

Restore the earlier behavior for both aspects.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>
xen/Makefile

index dc6bdc44c7a2072e45be6d9d4276ad434034af24..1e10d9f68080f11577c52c584b3d1f7c06f02f1c 100644 (file)
@@ -424,6 +424,7 @@ targets += .banner
 quiet_cmd_compile.h = UPD     $@
 define cmd_compile.h
     if [ ! -r $@ -o -O $@ ]; then \
+       cat .banner; \
        sed -e 's/@@date@@/$(XEN_BUILD_DATE)/g' \
            -e 's/@@time@@/$(XEN_BUILD_TIME)/g' \
            -e 's/@@whoami@@/$(XEN_WHOAMI)/g' \
@@ -441,7 +442,7 @@ define cmd_compile.h
 endef
 
 include/xen/compile.h: include/xen/compile.h.in .banner FORCE
-       @cat .banner
+       $(if $(filter-out FORCE,$?),$(Q)rm -fv $@)
        $(call if_changed,compile.h)
 
 targets += include/xen/compile.h