[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20160114173222.GX18367@kernel.org>
Date: Thu, 14 Jan 2016 14:32:22 -0300
From: Arnaldo Carvalho de Melo <acme@...nel.org>
To: pi3orama <pi3orama@....com>
Cc: Wang Nan <wangnan0@...wei.com>, jolsa@...hat.com,
linux-kernel@...r.kernel.org, lizefan@...wei.com,
Jiri Olsa <jolsa@...nel.org>,
Namhyung Kim <namhyung@...nel.org>
Subject: Re: [PATCH v2 3/9] perf build: Test correct path of perf in
build-test
Em Thu, Jan 14, 2016 at 01:02:02PM -0300, Arnaldo Carvalho de Melo escreveu:
> Em Thu, Jan 14, 2016 at 12:44:36PM -0300, Arnaldo Carvalho de Melo escreveu:
> > If I try it manually, in the source tree:
> >
> > [acme@...icio linux]$ cd tools/perf
> > [acme@...icio perf]$ make LDFLAGS=-static
> > BUILD: Doing 'make -j4' parallel build
> > GEN libtraceevent-dynamic-list
> > LINK libperf-gtk.so
> > /usr/bin/ld: /usr/lib/gcc/x86_64-redhat-linux/4.8.5/crtbeginT.o: relocation R_X86_64_32 against `__TMC_END__' can not be used when making a shared object; recompile with -fPIC
> > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/crtbeginT.o: could not read symbols: Bad value
> > collect2: error: ld returned 1 exit status
> > make[1]: *** [libperf-gtk.so] Error 1
> > make: *** [all] Error 2
> > [acme@...icio perf]$
> >
> > And if I do a make clean and try again, it works:
>
> [acme@...icio linux]$ git log --oneline -5
> be874d2f8baa perf build: Test correct path of perf in build-test
> dab97c905927 perf build: Pass O option to Makefile.perf in build-test
> 7d66631ea112 perf build: Set parallel making options build-test
> 69d5f8e92f05 perf symbols: Fix reading of build-id from vDSO
> 8bf78e69a277 perf kvm record/report: 'unprocessable sample' error while
> recording/reporting guest data
> [acme@...icio linux]$
>
> So, with that hunch, I tried with the patch below and it finishes a
> 'make -C tools/perf build-test' run with no find .cmd errors not
> 'make_static' failures, investigating what is the problem with the
> 'clean' target when it gets a O= passed...
So, this seems to do the trick, is it right?
diff --git a/tools/perf/tests/make b/tools/perf/tests/make
index e74c86b00c31..29810cf2c117 100644
--- a/tools/perf/tests/make
+++ b/tools/perf/tests/make
@@ -266,7 +266,7 @@ endif
MAKEFLAGS := --no-print-directory
-clean := @(cd $(PERF); make -s -f $(MK) O=$(PERF_O) clean >/dev/null)
+clean := @(cd $(PERF); make -s -f $(MK) $(O_OPT) clean >/dev/null)
$(run):
$(call clean)
> [acme@...icio linux]$ git diff
> diff --git a/tools/perf/tests/make b/tools/perf/tests/make
> index e74c86b00c31..baf8f0099507 100644
> --- a/tools/perf/tests/make
> +++ b/tools/perf/tests/make
> @@ -266,7 +266,8 @@ endif
>
> MAKEFLAGS := --no-print-directory
>
> -clean := @(cd $(PERF); make -s -f $(MK) O=$(PERF_O) clean >/dev/null)
> +#clean := @(cd $(PERF); make -s -f $(MK) O=$(PERF_O) clean >/dev/null)
> +clean := @(cd $(PERF); make -s -f $(MK) clean >/dev/null)
>
> $(run):
> $(call clean)
> [acme@...icio linux]$
>
Powered by blists - more mailing lists