diff options
author | Brian Behlendorf <[email protected]> | 2020-01-17 12:40:09 -0800 |
---|---|---|
committer | GitHub <[email protected]> | 2020-01-17 12:40:09 -0800 |
commit | 70835c5b755e4fe1e16724e0a5d24e7e451f755c (patch) | |
tree | 9da58ece476b54ab6e0bda786f60c4da2dc2fc8d /config | |
parent | e5030fbc2846c347f58e3a0bae436da84b98ef16 (diff) |
Unify target_cpu handling
Over the years several slightly different approaches were used
in the Makefiles to determine the target architecture. This
change updates both the build system and Makefile to handle
this in a consistent fashion.
TARGET_CPU is set to i386, x86_64, powerpc, aarch6 or sparc64
and made available in the Makefiles to be used as appropriate.
Reviewed-by: Ryan Moeller <[email protected]>
Signed-off-by: Brian Behlendorf <[email protected]>
Closes #9848
Diffstat (limited to 'config')
-rw-r--r-- | config/always-arch.m4 | 47 |
1 files changed, 33 insertions, 14 deletions
diff --git a/config/always-arch.m4 b/config/always-arch.m4 index c3e6b4a97..eb8839b97 100644 --- a/config/always-arch.m4 +++ b/config/always-arch.m4 @@ -1,22 +1,41 @@ dnl # -dnl # Set the target arch for libspl atomic implementation and the icp +dnl # Set the target cpu architecture. This allows the +dnl # following syntax to be used in a Makefile.am. +dnl # +dnl # ifeq ($(TARGET_CPU),x86_64) +dnl # ... +dnl # endif +dnl # +dnl # if TARGET_CPU_POWERPC +dnl # ... +dnl # else +dnl # ... +dnl # endif dnl # AC_DEFUN([ZFS_AC_CONFIG_ALWAYS_ARCH], [ - AC_MSG_CHECKING(for target asm dir) - TARGET_ARCH=`echo ${target_cpu} | sed -e s/i.86/i386/` - - case $TARGET_ARCH in - i386|x86_64) - TARGET_ASM_DIR=asm-${TARGET_ARCH} + case $target_cpu in + i?86) + TARGET_CPU=i386 + ;; + x86_64) + TARGET_CPU=x86_64 ;; - *) - TARGET_ASM_DIR=asm-generic + powerpc*) + TARGET_CPU=powerpc + ;; + aarch64*) + TARGET_CPU=aarch64 + ;; + sparc64) + TARGET_CPU=sparc64 ;; esac - AC_SUBST([TARGET_ASM_DIR]) - AM_CONDITIONAL([TARGET_ASM_X86_64], test $TARGET_ASM_DIR = asm-x86_64) - AM_CONDITIONAL([TARGET_ASM_I386], test $TARGET_ASM_DIR = asm-i386) - AM_CONDITIONAL([TARGET_ASM_GENERIC], test $TARGET_ASM_DIR = asm-generic) - AC_MSG_RESULT([$TARGET_ASM_DIR]) + AC_SUBST(TARGET_CPU) + + AM_CONDITIONAL([TARGET_CPU_I386], test $TARGET_CPU = i386) + AM_CONDITIONAL([TARGET_CPU_X86_64], test $TARGET_CPU = x86_64) + AM_CONDITIONAL([TARGET_CPU_POWERPC], test $TARGET_CPU = powerpc) + AM_CONDITIONAL([TARGET_CPU_AARCH64], test $TARGET_CPU = aarch64) + AM_CONDITIONAL([TARGET_CPU_SPARC64], test $TARGET_CPU = sparc64) ]) |