mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/herbert/cryptodev-2.6.git
synced 2026-04-19 03:53:51 -04:00
When running `make -C powerpc/pmu run_tests` from top level selftests
directory, currently this error is being reported:
make: Entering directory '/home/maddy/linux/tools/testing/selftests/powerpc/pmu'
Makefile:40: warning: overriding recipe for target 'emit_tests'
../../lib.mk:111: warning: ignoring old recipe for target 'emit_tests'
gcc -m64 count_instructions.c ../harness.c event.c lib.c ../utils.c loop.S -o /home/maddy/selftest_output//count_instructions
In file included from count_instructions.c:13:
event.h:12:10: fatal error: utils.h: No such file or directory
12 | #include "utils.h"
| ^~~~~~~~~
compilation terminated.
This is due to missing of include path in CFLAGS. That is, CFLAGS and
GIT_VERSION macros are defined in the powerpc/ folder Makefile which
in this case is not involved.
To address the failure in case of executing specific sub-folder test
directly, a new rule file has been addded by the patch called "flags.mk"
under selftest/powerpc/ folder and is linked to all the Makefile of
powerpc/pmu sub-folders.
Reported-by: Sachin Sant <sachinp@linux.ibm.com>
Signed-off-by: Madhavan Srinivasan <maddy@linux.ibm.com>
Tested-by: Sachin Sant <sachinp@linux.ibm.com>
[mpe: Fixup ifeq, make GIT_VERSION simply expanded to avoid re-executing git describe]
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://msgid.link/20240229093711.581230-2-maddy@linux.ibm.com
39 lines
1.3 KiB
Makefile
39 lines
1.3 KiB
Makefile
# SPDX-License-Identifier: GPL-2.0
|
|
include ../../../../../build/Build.include
|
|
|
|
noarg:
|
|
$(MAKE) -C ../../
|
|
|
|
TEST_GEN_PROGS := reg_access_test event_attributes_test cycles_test \
|
|
cycles_with_freeze_test pmc56_overflow_test \
|
|
ebb_vs_cpu_event_test cpu_event_vs_ebb_test \
|
|
cpu_event_pinned_vs_ebb_test task_event_vs_ebb_test \
|
|
task_event_pinned_vs_ebb_test multi_ebb_procs_test \
|
|
multi_counter_test pmae_handling_test \
|
|
close_clears_pmcc_test instruction_count_test \
|
|
fork_cleanup_test ebb_on_child_test \
|
|
ebb_on_willing_child_test back_to_back_ebbs_test \
|
|
lost_exception_test no_handler_test \
|
|
cycles_with_mmcr2_test regs_access_pmccext_test
|
|
|
|
top_srcdir = ../../../../../..
|
|
include ../../../lib.mk
|
|
include ../../flags.mk
|
|
|
|
# The EBB handler is 64-bit code and everything links against it
|
|
CFLAGS += -m64
|
|
|
|
TMPOUT = $(OUTPUT)/TMPDIR/
|
|
# Toolchains may build PIE by default which breaks the assembly
|
|
no-pie-option := $(call try-run, echo 'int main() { return 0; }' | \
|
|
$(CC) -Werror $(KBUILD_CPPFLAGS) $(CC_OPTION_CFLAGS) -no-pie -x c - -o "$$TMP", -no-pie)
|
|
|
|
LDFLAGS += $(no-pie-option)
|
|
|
|
$(TEST_GEN_PROGS): ../../harness.c ../../utils.c ../event.c ../lib.c \
|
|
ebb.c ebb_handler.S trace.c busy_loop.S
|
|
|
|
$(OUTPUT)/instruction_count_test: ../loop.S
|
|
|
|
$(OUTPUT)/lost_exception_test: ../lib.c
|