From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:43262) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TZLEc-00048c-1d for qemu-devel@nongnu.org; Fri, 16 Nov 2012 07:41:29 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TZLEY-0008TC-Vl for qemu-devel@nongnu.org; Fri, 16 Nov 2012 07:41:25 -0500 Received: from e28smtp03.in.ibm.com ([122.248.162.3]:35169) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TZLEY-0008T1-BS for qemu-devel@nongnu.org; Fri, 16 Nov 2012 07:41:22 -0500 Received: from /spool/local by e28smtp03.in.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Fri, 16 Nov 2012 18:11:18 +0530 Received: from d28av03.in.ibm.com (d28av03.in.ibm.com [9.184.220.65]) by d28relay02.in.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id qAGCfF5w29753598 for ; Fri, 16 Nov 2012 18:11:15 +0530 Received: from d28av03.in.ibm.com (loopback [127.0.0.1]) by d28av03.in.ibm.com (8.14.4/8.13.1/NCO v10.0 AVout) with ESMTP id qAGCfFla016341 for ; Fri, 16 Nov 2012 23:41:15 +1100 Message-ID: <50A63429.2010607@linux.vnet.ibm.com> Date: Fri, 16 Nov 2012 20:40:09 +0800 From: Wenchao Xia MIME-Version: 1.0 References: <1353060737-4244-1-git-send-email-xiawenc@linux.vnet.ibm.com> <1353060737-4244-3-git-send-email-xiawenc@linux.vnet.ibm.com> <50A615E8.8030106@linux.vnet.ibm.com> <50A61BC0.5070903@redhat.com> <50A61D02.70007@linux.vnet.ibm.com> <50A620A0.2020102@redhat.com> In-Reply-To: <50A620A0.2020102@redhat.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Subject: Re: [Qemu-devel] [PATCH V9 2/8] Buildsystem clean tests directory clearly List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paolo Bonzini Cc: kwolf@redhat.com, Peter Maydell , aliguori@us.ibm.com, stefanha@gmail.com, qemu-devel@nongnu.org, blauwirbel@gmail.com 于 2012-11-16 19:16, Paolo Bonzini 写道: > Il 16/11/2012 12:01, Wenchao Xia ha scritto: >>> >>> >>> ifneq ($(wildcard config-host.mak),) >>> include $(SRC_PATH)/tests/Makefile >>> endif >>> >>> to >>> >>> -include $(SRC_PATH)/tests/Makefile >>> >>> ? >>> >> yes, but original author seems not include tests/Makefile in >> this condition on purpose, so using MAKEFILES to keep it unchanged. > > git blame tells you that the ifneq was added by commit e454e2e > (Makefile: Exclude tests/Makefile in unconfigured tree, 2012-01-17). > > Instead of the ifneq, I proposed to use a minus in front of the include > directive. It will avoid failures if tests/Makefile does not exist. > However, it is not very good because it will cause /tests/Makefile to > be opened (see the commit message of e454e2e). > > Perhaps an even better way to avoid the problem would be this: just move > the removal of makefile fragments to the _end_ of "make distclean": > > diff --git a/Makefile b/Makefile > index 81c660f..b994109 100644 > --- a/Makefile > +++ b/Makefile > @@ -203,9 +203,7 @@ qemu-ga$(EXESUF): QEMU_CFLAGS += -I qga/qapi-generated > > gen-out-type = $(subst .,-,$(suffix $@)) > > -ifneq ($(wildcard config-host.mak),) > include $(SRC_PATH)/tests/Makefile > -endif > > qapi-py = $(SRC_PATH)/scripts/qapi.py $(SRC_PATH)/scripts/ordereddict.py > > @@ -265,8 +263,7 @@ qemu-%.tar.bz2: > $(SRC_PATH)/scripts/make-release "$(SRC_PATH)" "$(patsubst qemu-%.tar.bz2,%,$@)" > > distclean: clean > - rm -f config-host.mak config-host.h* config-host.ld $(DOCS) qemu-options.texi qemu-img-cmds.texi qemu-monitor.texi > - rm -f config-all-devices.mak > + rm -f config-host.h* config-host.ld $(DOCS) qemu-options.texi qemu-img-cmds.texi qemu-monitor.texi > rm -f roms/seabios/config.mak roms/vgabios/config.mak > rm -f qemu-doc.info qemu-doc.aux qemu-doc.cp qemu-doc.cps qemu-doc.dvi > rm -f qemu-doc.fn qemu-doc.fns qemu-doc.info qemu-doc.ky qemu-doc.kys > @@ -279,6 +276,7 @@ distclean: clean > rm -rf $$d || exit 1 ; \ > done > test -f pixman/config.log && make -C pixman distclean > + rm -f config-host.mak rm -f config-all-devices.mak > > KEYMAPS=da en-gb et fr fr-ch is lt modifiers no pt-br sv \ > ar de en-us fi fr-be hr it lv nl pl ru th \ > > > With this change, no need for MAKEFILES anymore. > > Paolo > I guess "make distclean" for second time would fail in this case, because $(SRC_PATH) is not set. I found a better way to do it without MAKEFILES: -ifneq ($(wildcard config-host.mak),) - include $(SRC_PATH)/tests/Makefile + include tests/Makefile -endif due to tests/Makefile is added in configure in this patch so it is always soft linked then include always succeed. -- Best Regards Wenchao Xia