raid6: test: only check for Altivec if building on powerpc hosts

Altivec is only available for powerpc hosts, so only check for its
availability when the host is powerpc, to avoid error messages being
shown on architectures other than x86, arm or powerpc.

Signed-off-by: WANG Xuerui <git@xen0n.name>
Link: https://lore.kernel.org/r/20230731104911.411964-6-kernel@xen0n.name
Signed-off-by: Song Liu <song@kernel.org>
This commit is contained in:
WANG Xuerui
2023-07-31 18:49:11 +08:00
committed by Song Liu
parent 6601f5e122
commit 7b3c70c43c

View File

@ -35,6 +35,12 @@ ifeq ($(ARCH),aarch64)
HAS_NEON = yes HAS_NEON = yes
endif endif
ifeq ($(findstring ppc,$(ARCH)),ppc)
CFLAGS += -I../../../arch/powerpc/include
HAS_ALTIVEC := $(shell printf '$(pound)include <altivec.h>\nvector int a;\n' |\
gcc -c -x c - >/dev/null && rm ./-.o && echo yes)
endif
ifeq ($(IS_X86),yes) ifeq ($(IS_X86),yes)
OBJS += mmx.o sse1.o sse2.o avx2.o recov_ssse3.o recov_avx2.o avx512.o recov_avx512.o OBJS += mmx.o sse1.o sse2.o avx2.o recov_ssse3.o recov_avx2.o avx512.o recov_avx512.o
CFLAGS += -DCONFIG_X86 CFLAGS += -DCONFIG_X86
@ -44,15 +50,10 @@ ifeq ($(IS_X86),yes)
else ifeq ($(HAS_NEON),yes) else ifeq ($(HAS_NEON),yes)
OBJS += neon.o neon1.o neon2.o neon4.o neon8.o recov_neon.o recov_neon_inner.o OBJS += neon.o neon1.o neon2.o neon4.o neon8.o recov_neon.o recov_neon_inner.o
CFLAGS += -DCONFIG_KERNEL_MODE_NEON=1 CFLAGS += -DCONFIG_KERNEL_MODE_NEON=1
else else ifeq ($(HAS_ALTIVEC),yes)
HAS_ALTIVEC := $(shell printf '$(pound)include <altivec.h>\nvector int a;\n' |\ CFLAGS += -DCONFIG_ALTIVEC
gcc -c -x c - >/dev/null && rm ./-.o && echo yes) OBJS += altivec1.o altivec2.o altivec4.o altivec8.o \
ifeq ($(HAS_ALTIVEC),yes) vpermxor1.o vpermxor2.o vpermxor4.o vpermxor8.o
CFLAGS += -I../../../arch/powerpc/include
CFLAGS += -DCONFIG_ALTIVEC
OBJS += altivec1.o altivec2.o altivec4.o altivec8.o \
vpermxor1.o vpermxor2.o vpermxor4.o vpermxor8.o
endif
endif endif
.c.o: .c.o: