Re: [PATCH 05/53] perf tools: Test correct path of perf in build-test
From: Arnaldo Carvalho de Melo <acme@kernel.org>
Date: 2016-01-11 22:40:00
Also in:
lkml
Em Mon, Jan 11, 2016 at 07:39:04PM -0300, Arnaldo Carvalho de Melo escreveu:
Em Mon, Jan 11, 2016 at 07:06:18PM -0300, Arnaldo Carvalho de Melo escreveu:quoted
Em Mon, Jan 11, 2016 at 12:24:56PM -0300, Arnaldo Carvalho de Melo escreveu:quoted
Em Mon, Jan 11, 2016 at 01:47:56PM +0000, Wang Nan escreveu:quoted
If an 'O' is passed to 'make build-test', many 'test -x' and 'test -f' will fail because perf resides in a different directory. Fix this by computing PERF_OUT according to 'O' and test correct output files. For make_kernelsrc and make_kernelsrc_tools, set KBUILD_OUTPUT_DIR instead because the path is different from others ($(O)/perf vs $(O)/tools/perf).Ok, applying up to this patch I now manage to almost cleanly build it using O=, see below, but seems that we have some race, as not all tests end up producing such warnings. [acme@felicio linux]$ rm -rf /tmp/build/perf ; mkdir -p /tmp/build/perf ; make O=/tmp/build/perf -C tools/perf build-test make: Entering directory `/home/acme/git/linux/tools/perf' Testing Makefile - make_no_libperl: cd . && make -f Makefile DESTDIR=/tmp/tmp.m1nXBMqhSA NO_LIBPERL=1 find: ‘/tmp/build/perf/util/trace-event-scripting.o’: No such file or directoryWell, it is happening even without O=:So I removed a few patches and those aren't appearing anymore, please take a look at my perf/core branch, running build-test on a few machines now, will push soon. My hunch is that build-test has issues with parallel builds, but I'm not sure...
Good: - make_perf_o_O: cd . && make -f Makefile O=/tmp/tmp.oLeg8aUaOo DESTDIR=/tmp/tmp.16WP4HTQJs perf.o - make_util_pmu_bison_o_O: cd . && make -f Makefile O=/tmp/tmp.xNRV0pCXfD DESTDIR=/tmp/tmp.8dyU9uEbHe util/pmu-bison.o - make_no_libdw_dwarf_unwind_O: cd . && make -f Makefile O=/tmp/tmp.pHH4HExHcH DESTDIR=/tmp/tmp.Wo0m8fF5cp NO_LIBDW_DWARF_UNWIND=1 - make_no_demangle_O: cd . && make -f Makefile O=/tmp/tmp.yWNsd4jOsI DESTDIR=/tmp/tmp.Q7eA4kCvwL NO_DEMANGLE=1 - tarpkg: ./tests/perf-targz-src-pkg . - make -C <kernelsrc> tools/perf - make -C <kernelsrc>/tools perf OK