![Michael Ellerman](/assets/img/avatar_default.png)
Commitb2d35fa5fc
("selftests: add headers_install to lib.mk") introduced a requirement that Makefiles more than one level below the selftests directory need to define top_srcdir, but it didn't update any of the powerpc Makefiles. This broke building all the powerpc selftests with eg: make[1]: Entering directory '/src/linux/tools/testing/selftests/powerpc' BUILD_TARGET=/src/linux/tools/testing/selftests/powerpc/alignment; mkdir -p $BUILD_TARGET; make OUTPUT=$BUILD_TARGET -k -C alignment all make[2]: Entering directory '/src/linux/tools/testing/selftests/powerpc/alignment' ../../lib.mk:20: ../../../../scripts/subarch.include: No such file or directory make[2]: *** No rule to make target '../../../../scripts/subarch.include'. make[2]: Failed to remake makefile '../../../../scripts/subarch.include'. Makefile:38: recipe for target 'alignment' failed Fix it by setting top_srcdir in the affected Makefiles. Fixes:b2d35fa5fc
("selftests: add headers_install to lib.mk") Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
36 lines
736 B
Makefile
36 lines
736 B
Makefile
# SPDX-License-Identifier: GPL-2.0
|
|
# The loops are all 64-bit code
|
|
CFLAGS += -I$(CURDIR)
|
|
|
|
EXTRA_SOURCES := ../harness.c
|
|
|
|
build_32bit = $(shell if ($(CC) $(CFLAGS) -m32 -o /dev/null memcmp.c >/dev/null 2>&1) then echo "1"; fi)
|
|
|
|
TEST_GEN_PROGS := memcmp_64 strlen
|
|
|
|
$(OUTPUT)/memcmp_64: memcmp.c
|
|
$(OUTPUT)/memcmp_64: CFLAGS += -m64 -maltivec
|
|
|
|
ifeq ($(build_32bit),1)
|
|
$(OUTPUT)/memcmp_32: memcmp.c
|
|
$(OUTPUT)/memcmp_32: CFLAGS += -m32
|
|
|
|
TEST_GEN_PROGS += memcmp_32
|
|
endif
|
|
|
|
$(OUTPUT)/strlen: strlen.c string.c
|
|
|
|
ifeq ($(build_32bit),1)
|
|
$(OUTPUT)/strlen_32: strlen.c
|
|
$(OUTPUT)/strlen_32: CFLAGS += -m32
|
|
|
|
TEST_GEN_PROGS += strlen_32
|
|
endif
|
|
|
|
ASFLAGS = $(CFLAGS)
|
|
|
|
top_srcdir = ../../../../..
|
|
include ../../lib.mk
|
|
|
|
$(TEST_GEN_PROGS): $(EXTRA_SOURCES)
|