There is no need to call the "headers.chk" target when it isn't wanted, so it never need to be .PHONY.
Also, there is no more reason to separate the prerequisites from the recipe. Signed-off-by: Anthony PERARD <anthony.per...@citrix.com> Reviewed-by: Juergen Gross <jgr...@suse.com> Reviewed-by: Bertrand Marquis <bertrand.marq...@arm.com> --- tools/libs/libs.mk | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/tools/libs/libs.mk b/tools/libs/libs.mk index 7aee449370..f778a7df82 100644 --- a/tools/libs/libs.mk +++ b/tools/libs/libs.mk @@ -55,22 +55,20 @@ $(PKG_CONFIG_LOCAL): PKG_CONFIG_INCDIR = $(XEN_INCLUDE) $(PKG_CONFIG_LOCAL): PKG_CONFIG_LIBDIR = $(CURDIR) .PHONY: all -all: headers.chk $(TARGETS) $(PKG_CONFIG_LOCAL) libxen$(LIBNAME).map $(LIBHEADERS) +all: $(TARGETS) $(PKG_CONFIG_LOCAL) libxen$(LIBNAME).map $(LIBHEADERS) ifneq ($(NO_HEADERS_CHK),y) -headers.chk: +all: headers.chk + +headers.chk: $(LIBHEADERS) $(AUTOINCS) for i in $(filter %.h,$^); do \ $(CC) -x c -ansi -Wall -Werror $(CFLAGS_xeninclude) \ -S -o /dev/null $$i || exit 1; \ echo $$i; \ done >$@.new mv $@.new $@ -else -.PHONY: headers.chk endif -headers.chk: $(LIBHEADERS) $(AUTOINCS) - headers.lst: FORCE @{ set -e; $(foreach h,$(LIBHEADERS),echo $(h);) } > $@.tmp @$(call move-if-changed,$@.tmp,$@) -- Anthony PERARD