On 05/03/2021 12:49, Andrew Cooper wrote:
> c/s 4664034cd dropped the $(LIBHEADERSGLOB) dependency for the headers.chk
> rule, without replacing it.
>
> As headers.chk uses $^, a typical build looks like:
>
> andrewcoop@andrewcoop:/local/xen.git$ make -C tools/libs/devicemodel/
> make: Entering directory '/local/xen.git/tools/libs/devicemodel'
> for i in ; do \
> gcc -x c -ansi -Wall -Werror
> -I/local/xen.git/tools/libs/devicemodel/../../../tools/include \
> -S -o /dev/null $i || exit 1; \
> echo $i; \
> done >headers.chk.new
> mv headers.chk.new headers.chk
>
> i.e. with an empty for loop, and checking only the $(AUTOINCS).
>
> Reinsert a $(LIBHEADERS) dependency.
>
> Fixes: 4664034cd ("tools/libs: move official headers to common directory")
> Signed-off-by: Andrew Cooper <[email protected]>
> ---
> CC: Juergen Gross <[email protected]>
> CC: Roger Pau Monné <[email protected]>
> CC: Wei Liu <[email protected]>
Apologies - I totally messed up the CC list here.
For 4.15. Regression from 4.14, in some build-time checking logic.
~Andrew
> ---
> tools/libs/libs.mk | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/libs/libs.mk b/tools/libs/libs.mk
> index a68cec244c..2d973ccb95 100644
> --- a/tools/libs/libs.mk
> +++ b/tools/libs/libs.mk
> @@ -76,7 +76,7 @@ else
> .PHONY: headers.chk
> endif
>
> -headers.chk: $(AUTOINCS)
> +headers.chk: $(LIBHEADERS) $(AUTOINCS)
>
> headers.lst: FORCE
> @{ set -e; $(foreach h,$(LIBHEADERS),echo $(h);) } > [email protected]