qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH] build-sys: generate .gitignore


From: Eric Blake
Subject: Re: [Qemu-devel] [PATCH] build-sys: generate .gitignore
Date: Thu, 22 Sep 2016 15:37:18 -0500
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.3.0

On 09/22/2016 03:19 PM, Marc-André Lureau wrote:
> It's too easy to forget about updating the .gitignore, so this is an
> attempt at generating it instead.
> 
> Signed-off-by: Marc-André Lureau <address@hidden>
> ---
>  tests/Makefile.include | 23 ++++++++++++--
>  tests/.gitignore       | 82 
> --------------------------------------------------
>  2 files changed, 20 insertions(+), 85 deletions(-)
>  delete mode 100644 tests/.gitignore

Interesting that applying this to an incremental tree will show lots of
unignored files until the next 'make check' run.  But once that is done,
I can confirm that it did result in the same 'git status' as pre-patch.

> 
> diff --git a/tests/Makefile.include b/tests/Makefile.include
> index 93f2ba1..339126d 100644
> --- a/tests/Makefile.include
> +++ b/tests/Makefile.include
> @@ -785,6 +785,19 @@ $(patsubst %, check-%, $(check-qapi-schema-y)): 
> check-%.json: $(SRC_PATH)/%.json
>       @diff -q $(SRC_PATH)/$*.exit $*.test.exit
>  
>  # Consolidated targets
> +tests-cleanfiles = *.o
> +tests-cleanfiles = .gitignore
> +tests-cleanfiles += qht-bench$(EXESUF)
> +tests-cleanfiles += qapi-schema/*.test.*
> +tests-cleanfiles += test-qapi-event.[ch]
> +tests-cleanfiles += test-qapi-types.[ch]
> +tests-cleanfiles += test-qapi-visit.[ch]
> +tests-cleanfiles += test-qmp-introspect.[ch]
> +tests-cleanfiles += test-qmp-commands.h
> +tests-cleanfiles += test-qmp-marshal.c
> +tests-cleanfiles += $(subst tests/,,$(check-unit-y))
> +tests-cleanfiles += $(subst tests/,,$(check-qtest-y))
> +tests-cleanfiles += qemu-iotests/socket_scm_helper$(EXESUF)
>  
>  .PHONY: check-qapi-schema check-qtest check-unit check check-clean
>  check-qapi-schema: $(patsubst %,check-%, $(check-qapi-schema-y))
> @@ -794,14 +807,18 @@ check-block: $(patsubst %,check-%, $(check-block-y))
>  check: check-qapi-schema check-unit check-qtest
>  check-clean:
>       $(MAKE) -C tests/tcg clean
> -     rm -rf $(check-unit-y) tests/*.o $(QEMU_IOTESTS_HELPERS-y)
> -     rm -rf $(sort $(foreach target,$(SYSEMU_TARGET_LIST), 
> $(check-qtest-$(target)-y)) $(check-qtest-generic-y))
> -
> +     (cd tests && echo rm -rf $(tests-cleanfiles))
>  clean: check-clean
>  
>  # Build the help program automatically
>  
>  all: $(QEMU_IOTESTS_HELPERS-y)
>  
> +ifneq ($(filter-out $(UNCHECKED_GOALS),$(MAKECMDGOALS)),$(if 
> $(MAKECMDGOALS),,fail))
> +$(SRC_PATH)/tests/.gitignore:
> +     echo "$(tests-cleanfiles)" | xargs -n1 | sort > $@

This line is TOO noisy; you'll want to wrap it into a $(call
quiet-command...).

You could also do it with fewer processes and less typing, as:

printf %s\\n $(tests-cleanfiles) | sort > $@

> +Makefile: $(SRC_PATH)/tests/.gitignore
> +endif
> +
>  -include $(wildcard tests/*.d)
>  -include $(wildcard tests/libqos/*.d)

But the idea seems interesting; looking forward to v2 and comments from
anyone else.

-- 
Eric Blake   eblake redhat com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org

Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

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