From: "Wangnan (F)" <wangnan0@huawei.com>
To: Jiri Olsa <jolsa@redhat.com>
Cc: <acme@kernel.org>, <linux-kernel@vger.kernel.org>,
<pi3orama@163.com>, <lizefan@huawei.com>,
Arnaldo Carvalho de Melo <acme@redhat.com>,
Jiri Olsa <jolsa@kernel.org>, Namhyung Kim <namhyung@kernel.org>
Subject: Re: [PATCH 2/9] perf build: Pass O option to Makefile.perf in build-test
Date: Thu, 14 Jan 2016 17:56:06 +0800 [thread overview]
Message-ID: <569770B6.4030803@huawei.com> (raw)
In-Reply-To: <20160114093258.GA8715@krava.brq.redhat.com>
On 2016/1/14 17:32, Jiri Olsa wrote:
> On Wed, Jan 13, 2016 at 12:17:15PM +0000, Wang Nan wrote:
>> Doesn't like tools/perf/Makefile, tools/perf/Makefile.perf obey 'O'
>> option when it is passed through cmdline only, because of code in
>> tools/scripts/Makefile.include:
>>
>> ifneq ($(O),)
>> ifeq ($(origin O), command line)
>> ...
>> ABSOLUTE_O := $(shell cd $(O) ; pwd)
>> OUTPUT := $(ABSOLUTE_O)/$(if $(subdir),$(subdir)/)
>> endif
>> endif
>>
>> This patch passes 'O' to Makefile.perf through cmdline explicitly
>> to make it follow O variable during build-test.
>>
>> Signed-off-by: Wang Nan <wangnan0@huawei.com>
>> Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
>> Cc: Jiri Olsa <jolsa@kernel.org>
>> Cc: Namhyung Kim <namhyung@kernel.org>
>> ---
>> tools/perf/tests/make | 12 ++++++++++--
>> 1 file changed, 10 insertions(+), 2 deletions(-)
>>
>> diff --git a/tools/perf/tests/make b/tools/perf/tests/make
>> index c0ee679..14d7b8d 100644
>> --- a/tools/perf/tests/make
>> +++ b/tools/perf/tests/make
>> @@ -5,7 +5,7 @@ ifeq ($(MAKECMDGOALS),)
>> # no target specified, trigger the whole suite
>> all:
>> @echo "Testing Makefile"; $(MAKE) -sf tests/make MK=Makefile
>> - @echo "Testing Makefile.perf"; $(MAKE) -sf tests/make MK=Makefile.perf SET_PARALLEL=1
>> + @echo "Testing Makefile.perf"; $(MAKE) -sf tests/make MK=Makefile.perf SET_PARALLEL=1 SET_O=1
>> else
>> # run only specific test over 'Makefile'
>> %:
>> @@ -13,6 +13,14 @@ else
>> endif
>> else
>> PERF := .
>> +O_OPT :=
>> +
>> +ifneq ($(O),)
>> + FULL_O := $(shell readlink -f $(O) || echo $(O))
>> + ifeq ($(SET_O),1)
>> + O_OPT := 'O=$(FULL_O)'
>> + endif
>> +endif
>>
>> PARALLEL_OPT=
>> ifeq ($(SET_PARALLEL),1)
>> @@ -261,7 +269,7 @@ clean := @(cd $(PERF); make -s -f $(MK) clean >/dev/null)
>> $(run):
>> $(call clean)
>> @TMP_DEST=$$(mktemp -d); \
>> - cmd="cd $(PERF) && make -f $(MK) $(PARALLEL_OPT) DESTDIR=$$TMP_DEST $($@)"; \
>> + cmd="cd $(PERF) && make -f $(MK) $(PARALLEL_OPT) $(O_OPT) DESTDIR=$$TMP_DEST $($@)"; \
> hum, but this set is to test make without O=... so why would you set it?
> run_O is the target for O=... tests
I have strong motivation to avoid polluting source directory.
I have different platforms and sometime I want to build them
(cross-compile) parallelly. I use yocto for this. Yocto appends 'O'
automatically. This is good for building, but when I use the
framework for build-test I have to manually adjust the generated
scripts (and it would be regenerated again in next run) to make it
work, and also I'm unable to test them in parallel.
For people who don't care about this, $(O_OPT) is empty so he/she
still tests without 'O=...' case.
Thank you.
next prev parent reply other threads:[~2016-01-14 9:56 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-01-13 12:17 [PATCH 0/9] perf build: Make build-test faster Wang Nan
2016-01-13 12:17 ` [PATCH 1/9] perf build: Set parallel making options build-test Wang Nan
2016-01-19 13:34 ` [tip:perf/urgent] " tip-bot for Wang Nan
2016-01-13 12:17 ` [PATCH 2/9] perf build: Pass O option to Makefile.perf in build-test Wang Nan
2016-01-14 9:32 ` Jiri Olsa
2016-01-14 9:56 ` Wangnan (F) [this message]
2016-01-14 14:28 ` Arnaldo Carvalho de Melo
2016-01-14 14:37 ` Jiri Olsa
2016-01-14 14:42 ` Arnaldo Carvalho de Melo
2016-01-14 15:20 ` pi3orama
2016-01-13 12:17 ` [PATCH 3/9] perf build: Test correct path of perf " Wang Nan
2016-01-14 9:56 ` Jiri Olsa
2016-01-14 9:57 ` Jiri Olsa
2016-01-14 9:59 ` Wangnan (F)
2016-01-14 10:03 ` Jiri Olsa
2016-01-14 10:04 ` Jiri Olsa
2016-01-14 10:14 ` Wangnan (F)
2016-01-13 12:17 ` [PATCH 4/9] perf build: Pass O option to kernel makefile " Wang Nan
2016-01-13 12:17 ` [PATCH 5/9] perf build: Add feature-dump target Wang Nan
2016-01-13 12:17 ` [PATCH 6/9] perf build: Introduce FEATURES_DUMP make variable Wang Nan
2016-01-13 12:17 ` [PATCH 7/9] tools build: Allow subprojects select all feature checkers Wang Nan
2016-01-13 12:17 ` [PATCH 8/9] perf build: Select all feature checkers for feature-dump Wang Nan
2016-01-14 10:18 ` Jiri Olsa
2016-01-13 12:17 ` [PATCH 9/9] perf build: Use feature dump file for build-test Wang Nan
2016-01-14 10:19 ` Jiri Olsa
2016-01-14 10:24 ` Wangnan (F)
2016-01-14 12:44 ` Jiri Olsa
2016-01-14 10:23 ` Jiri Olsa
2016-01-14 1:54 ` [PATCH 0/9] perf build: Make build-test faster Wangnan (F)
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=569770B6.4030803@huawei.com \
--to=wangnan0@huawei.com \
--cc=acme@kernel.org \
--cc=acme@redhat.com \
--cc=jolsa@kernel.org \
--cc=jolsa@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=lizefan@huawei.com \
--cc=namhyung@kernel.org \
--cc=pi3orama@163.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox