linux-yocto/tools/testing/selftests/arm64/Makefile
Mark Brown 35d7bc983a kselftest/arm64: Make the tools/include headers available
Make the generic tools/include headers available to the arm64 selftests so
we can reduce some duplication.

Signed-off-by: Mark Brown <broonie@kernel.org>
Link: https://lore.kernel.org/r/20230728-arm64-signal-memcpy-fix-v4-4-0c1290db5d46@kernel.org
Signed-off-by: Will Deacon <will@kernel.org>
2023-08-04 17:36:52 +01:00

1.4 KiB

SPDX-License-Identifier: GPL-2.0

When ARCH not overridden for crosscompiling, lookup machine

ARCH ?= $(shell uname -m 2>/dev/null || echo not)

ifneq (,$(filter $(ARCH),aarch64 arm64)) ARM64_SUBTARGETS ?= tags signal pauth fp mte bti abi else ARM64_SUBTARGETS := endif

CFLAGS := -Wall -O2 -g

A proper top_srcdir is needed by KSFT(lib.mk)

top_srcdir = $(realpath ../../../../)

Additional include paths needed by kselftest.h and local headers

CFLAGS += -I$(top_srcdir)/tools/testing/selftests/

CFLAGS += $(KHDR_INCLUDES)

CFLAGS += -I$(top_srcdir)/tools/include

export CFLAGS export top_srcdir

all: @for DIR in $(ARM64_SUBTARGETS); do
BUILD_TARGET=$(OUTPUT)/$$DIR;
mkdir -p $$BUILD_TARGET;
make OUTPUT=$$BUILD_TARGET -C $$DIR $@;
done

install: all @for DIR in $(ARM64_SUBTARGETS); do
BUILD_TARGET=$(OUTPUT)/$$DIR;
make OUTPUT=$$BUILD_TARGET -C $$DIR $@;
done

run_tests: all @for DIR in $(ARM64_SUBTARGETS); do
BUILD_TARGET=$(OUTPUT)/$$DIR;
make OUTPUT=$$BUILD_TARGET -C $$DIR $@;
done

Avoid any output on non arm64 on emit_tests

emit_tests: @for DIR in $(ARM64_SUBTARGETS); do
BUILD_TARGET=$(OUTPUT)/$$DIR;
make OUTPUT=$$BUILD_TARGET -C $$DIR $@;
done

clean: @for DIR in $(ARM64_SUBTARGETS); do
BUILD_TARGET=$(OUTPUT)/$$DIR;
make OUTPUT=$$BUILD_TARGET -C $$DIR $@;
done

.PHONY: all clean install run_tests emit_tests