| From 540e0150e58d804c66c2eb703f02e87fd96d7cbb Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Fri, 10 Mar 2023 22:57:41 -0800 |
| Subject: perf build: Support python/perf.so testing |
| MIME-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| From: Ian Rogers <irogers@google.com> |
| |
| [ Upstream commit 7a9b223ca0761a7c7c72e569b86b84a907aa0f92 ] |
| |
| Add a build target to echo the python/perf.so's name from |
| Makefile.perf. Use it in tests/make so the correct target is built and |
| tested for. |
| |
| Fixes: caec54705adb73b0 ("perf build: Fix python/perf.so library's name") |
| Signed-off-by: Ian Rogers <irogers@google.com> |
| Cc: Adrian Hunter <adrian.hunter@intel.com> |
| Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com> |
| Cc: Andres Freund <andres@anarazel.de> |
| Cc: Ian Rogers <irogers@google.com> |
| Cc: Ingo Molnar <mingo@redhat.com> |
| Cc: Jiri Olsa <jolsa@kernel.org> |
| Cc: Leo Yan <leo.yan@linaro.org> |
| Cc: Mark Rutland <mark.rutland@arm.com> |
| Cc: Martin Liška <mliska@suse.cz> |
| Cc: Namhyung Kim <namhyung@kernel.org> |
| Cc: Nathan Chancellor <nathan@kernel.org> |
| Cc: Nick Desaulniers <ndesaulniers@google.com> |
| Cc: Pavithra Gurushankar <gpavithrasha@gmail.com> |
| Cc: Peter Zijlstra <peterz@infradead.org> |
| Cc: Quentin Monnet <quentin@isovalent.com> |
| Cc: Roberto Sassu <roberto.sassu@huawei.com> |
| Cc: Stephane Eranian <eranian@google.com> |
| Cc: Tiezhu Yang <yangtiezhu@loongson.cn> |
| Cc: Tom Rix <trix@redhat.com> |
| Cc: Yang Jihong <yangjihong1@huawei.com> |
| Cc: llvm@lists.linux.dev |
| Link: https://lore.kernel.org/r/20230311065753.3012826-2-irogers@google.com |
| Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| tools/perf/Makefile.perf | 7 +++++-- |
| tools/perf/tests/make | 5 +++-- |
| 2 files changed, 8 insertions(+), 4 deletions(-) |
| |
| diff --git a/tools/perf/Makefile.perf b/tools/perf/Makefile.perf |
| index b7d9c42062300..cc2b0ace54bac 100644 |
| --- a/tools/perf/Makefile.perf |
| +++ b/tools/perf/Makefile.perf |
| @@ -647,13 +647,16 @@ all: shell_compatibility_test $(ALL_PROGRAMS) $(LANG_BINDINGS) $(OTHER_PROGRAMS) |
| # Create python binding output directory if not already present |
| _dummy := $(shell [ -d '$(OUTPUT)python' ] || mkdir -p '$(OUTPUT)python') |
| |
| -$(OUTPUT)python/perf$(PYTHON_EXTENSION_SUFFIX): $(PYTHON_EXT_SRCS) $(PYTHON_EXT_DEPS) $(LIBPERF) |
| +$(OUTPUT)python/perf$(PYTHON_EXTENSION_SUFFIX): $(PYTHON_EXT_SRCS) $(PYTHON_EXT_DEPS) $(LIBPERF) $(LIBSUBCMD) |
| $(QUIET_GEN)LDSHARED="$(CC) -pthread -shared" \ |
| CFLAGS='$(CFLAGS)' LDFLAGS='$(LDFLAGS)' \ |
| $(PYTHON_WORD) util/setup.py \ |
| --quiet build_ext; \ |
| cp $(PYTHON_EXTBUILD_LIB)perf*.so $(OUTPUT)python/ |
| |
| +python_perf_target: |
| + @echo "Target is: $(OUTPUT)python/perf$(PYTHON_EXTENSION_SUFFIX)" |
| + |
| please_set_SHELL_PATH_to_a_more_modern_shell: |
| $(Q)$$(:) |
| |
| @@ -1151,7 +1154,7 @@ FORCE: |
| .PHONY: all install clean config-clean strip install-gtk |
| .PHONY: shell_compatibility_test please_set_SHELL_PATH_to_a_more_modern_shell |
| .PHONY: .FORCE-PERF-VERSION-FILE TAGS tags cscope FORCE prepare |
| -.PHONY: archheaders |
| +.PHONY: archheaders python_perf_target |
| |
| endif # force_fixdep |
| |
| diff --git a/tools/perf/tests/make b/tools/perf/tests/make |
| index 009d6efb673ce..deb37fb982e97 100644 |
| --- a/tools/perf/tests/make |
| +++ b/tools/perf/tests/make |
| @@ -62,10 +62,11 @@ lib = lib |
| endif |
| |
| has = $(shell which $1 2>/dev/null) |
| +python_perf_so := $(shell $(MAKE) python_perf_target|grep "Target is:"|awk '{print $$3}') |
| |
| # standard single make variable specified |
| make_clean_all := clean all |
| -make_python_perf_so := python/perf.so |
| +make_python_perf_so := $(python_perf_so) |
| make_debug := DEBUG=1 |
| make_no_libperl := NO_LIBPERL=1 |
| make_no_libpython := NO_LIBPYTHON=1 |
| @@ -204,7 +205,7 @@ test_make_doc := $(test_ok) |
| test_make_help_O := $(test_ok) |
| test_make_doc_O := $(test_ok) |
| |
| -test_make_python_perf_so := test -f $(PERF_O)/python/perf.so |
| +test_make_python_perf_so := test -f $(PERF_O)/$(python_perf_so) |
| |
| test_make_perf_o := test -f $(PERF_O)/perf.o |
| test_make_util_map_o := test -f $(PERF_O)/util/map.o |
| -- |
| 2.39.2 |
| |