perf test: Add build infra for perf test tools for ARM CoreSight tests
This adds the initial build infrastructure (makefiles maintainers information) for adding follow-on tests for CoreSight. Committer notes: Remove the installation of tests/shell/coresight/*.sh, as there are no files there yet and thus, at this point, make install fails. Use $(QUIET_CLEAN) to avoid having extraneous output in the 'make clean' output. Also use @$(MAKE) in tools/perf/tests/shell/coresight/Makefile as $(Q) is not turning into @ when V=1 isn't used, i.e. in the default case it is not being quiet. The >/dev/null in the all for tools/perf/tests/shell/coresight/Makefile is to avoid this: make[4]: Nothing to be done for 'all'. make[4]: Nothing to be done for 'all'. make[4]: Nothing to be done for 'all'. DESCEND plugins GEN /tmp/build/perf/python/perf.so make[4]: Nothing to be done for 'all'. INSTALL trace_plugins On !arm64 where nothing is done on the main target for tools/perf/tests/shell/coresight/*/Makefile. Signed-off-by: Carsten Haitzler <carsten.haitzler@arm.com> Cc: Leo Yan <leo.yan@linaro.org> Cc: Mathieu Poirier <mathieu.poirier@linaro.org> Cc: Mike Leach <mike.leach@linaro.org> Cc: Suzuki Poulouse <suzuki.poulose@arm.com> Cc: coresight@lists.linaro.org Link: http://lore.kernel.org/lkml/20220909152803.2317006-3-carsten.haitzler@foss.arm.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
Родитель
c63317ab14
Коммит
34bec35cbb
|
@ -2027,6 +2027,7 @@ F: drivers/hwtracing/coresight/*
|
|||
F: include/dt-bindings/arm/coresight-cti-dt.h
|
||||
F: include/linux/coresight*
|
||||
F: samples/coresight/*
|
||||
F: tools/perf/tests/shell/coresight/*
|
||||
F: tools/perf/arch/arm/util/auxtrace.c
|
||||
F: tools/perf/arch/arm/util/cs-etm.c
|
||||
F: tools/perf/arch/arm/util/cs-etm.h
|
||||
|
|
|
@ -1296,6 +1296,8 @@ perf_examples_instdir_SQ = $(subst ','\'',$(perf_examples_instdir))
|
|||
STRACE_GROUPS_INSTDIR_SQ = $(subst ','\'',$(STRACE_GROUPS_INSTDIR))
|
||||
tip_instdir_SQ = $(subst ','\'',$(tip_instdir))
|
||||
|
||||
export perfexec_instdir_SQ
|
||||
|
||||
# If we install to $(HOME) we keep the traceevent default:
|
||||
# $(HOME)/.traceevent/plugins
|
||||
# Otherwise we install plugins into the global $(libdir).
|
||||
|
|
|
@ -629,7 +629,16 @@ sync_file_range_tbls := $(srctree)/tools/perf/trace/beauty/sync_file_range.sh
|
|||
$(sync_file_range_arrays): $(linux_uapi_dir)/fs.h $(sync_file_range_tbls)
|
||||
$(Q)$(SHELL) '$(sync_file_range_tbls)' $(linux_uapi_dir) > $@
|
||||
|
||||
all: shell_compatibility_test $(ALL_PROGRAMS) $(LANG_BINDINGS) $(OTHER_PROGRAMS)
|
||||
TESTS_CORESIGHT_DIR := $(srctree)/tools/perf/tests/shell/coresight
|
||||
|
||||
tests-coresight-targets: FORCE
|
||||
$(Q)$(MAKE) -C $(TESTS_CORESIGHT_DIR)
|
||||
|
||||
tests-coresight-targets-clean:
|
||||
$(call QUIET_CLEAN, coresight)
|
||||
$(Q)$(MAKE) -C $(TESTS_CORESIGHT_DIR) O=$(OUTPUT) clean >/dev/null
|
||||
|
||||
all: shell_compatibility_test $(ALL_PROGRAMS) $(LANG_BINDINGS) $(OTHER_PROGRAMS) tests-coresight-targets
|
||||
|
||||
# Create python binding output directory if not already present
|
||||
_dummy := $(shell [ -d '$(OUTPUT)python' ] || mkdir -p '$(OUTPUT)python')
|
||||
|
@ -1006,7 +1015,9 @@ install-tests: all install-gtk
|
|||
$(INSTALL) tests/shell/*.sh '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/tests/shell'; \
|
||||
$(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/tests/shell/lib'; \
|
||||
$(INSTALL) tests/shell/lib/*.sh -m 644 '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/tests/shell/lib'; \
|
||||
$(INSTALL) tests/shell/lib/*.py -m 644 '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/tests/shell/lib'
|
||||
$(INSTALL) tests/shell/lib/*.py -m 644 '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/tests/shell/lib'; \
|
||||
$(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/tests/shell/coresight'
|
||||
$(Q)$(MAKE) -C tests/shell/coresight install-tests
|
||||
|
||||
install-bin: install-tools install-tests install-traceevent-plugins
|
||||
|
||||
|
@ -1077,7 +1088,7 @@ endif # BUILD_BPF_SKEL
|
|||
bpf-skel-clean:
|
||||
$(call QUIET_CLEAN, bpf-skel) $(RM) -r $(SKEL_TMP_OUT) $(SKELETONS)
|
||||
|
||||
clean:: $(LIBTRACEEVENT)-clean $(LIBAPI)-clean $(LIBBPF)-clean $(LIBSUBCMD)-clean $(LIBPERF)-clean fixdep-clean python-clean bpf-skel-clean
|
||||
clean:: $(LIBTRACEEVENT)-clean $(LIBAPI)-clean $(LIBBPF)-clean $(LIBSUBCMD)-clean $(LIBPERF)-clean fixdep-clean python-clean bpf-skel-clean tests-coresight-targets-clean
|
||||
$(call QUIET_CLEAN, core-objs) $(RM) $(LIBPERF_A) $(OUTPUT)perf-archive $(OUTPUT)perf-iostat $(LANG_BINDINGS)
|
||||
$(Q)find $(or $(OUTPUT),.) -name '*.o' -delete -o -name '\.*.cmd' -delete -o -name '\.*.d' -delete
|
||||
$(Q)$(RM) $(OUTPUT).config-detected
|
||||
|
|
|
@ -0,0 +1,25 @@
|
|||
# SPDX-License-Identifier: GPL-2.0-only
|
||||
# Carsten Haitzler <carsten.haitzler@arm.com>, 2021
|
||||
include ../../../../../tools/scripts/Makefile.include
|
||||
include ../../../../../tools/scripts/Makefile.arch
|
||||
include ../../../../../tools/scripts/utilities.mak
|
||||
|
||||
SUBDIRS =
|
||||
|
||||
all: $(SUBDIRS)
|
||||
$(SUBDIRS):
|
||||
@$(MAKE) -C $@ >/dev/null
|
||||
|
||||
INSTALLDIRS = $(SUBDIRS:%=install-%)
|
||||
|
||||
install-tests: $(INSTALLDIRS)
|
||||
$(INSTALLDIRS):
|
||||
@$(MAKE) -C $(@:install-%=%) install-tests >/dev/null
|
||||
|
||||
CLEANDIRS = $(SUBDIRS:%=clean-%)
|
||||
|
||||
clean: $(CLEANDIRS)
|
||||
$(CLEANDIRS):
|
||||
$(call QUIET_CLEAN, test-$(@:clean-%=%)) $(Q)$(MAKE) -C $(@:clean-%=%) clean >/dev/null
|
||||
|
||||
.PHONY: all clean $(SUBDIRS) $(CLEANDIRS) $(INSTALLDIRS)
|
|
@ -0,0 +1,14 @@
|
|||
# SPDX-License-Identifier: GPL-2.0-only
|
||||
# Carsten Haitzler <carsten.haitzler@arm.com>, 2021
|
||||
|
||||
ifndef DESTDIR
|
||||
prefix ?= $(HOME)
|
||||
endif
|
||||
|
||||
DESTDIR_SQ = $(subst ','\'',$(DESTDIR))
|
||||
INSTALL = install
|
||||
INSTDIR_SUB = tests/shell/coresight
|
||||
|
||||
include ../../../../../scripts/Makefile.include
|
||||
include ../../../../../scripts/Makefile.arch
|
||||
include ../../../../../scripts/utilities.mak
|
Загрузка…
Ссылка в новой задаче