diff --git a/configure.ac b/configure.ac index 6080109c35..87c6d5bf91 100644 --- a/configure.ac +++ b/configure.ac @@ -76,11 +76,26 @@ AM_CONDITIONAL([ENABLE_TESTS], [test "x$enable_tests" = xyes]) AS_CASE([$host_cpu], [*arm*], [host_cpu=arm], [*amd64*], [host_cpu=x86_64 HOSTARCH=intel], - [i?86], [HOSTARCH=intel], + [i?86], [host_cpu=i386 HOSTARCH=intel], + [mipsel*], [host_cpu=mips], + [mips64el*], [host_cpu=mips64], + [powerpc*], [host_cpu=powerpc], + [ppc64*], [host_cpu=powerpc64], [x86_64], [HOSTARCH=intel] ) AM_CONDITIONAL([HOST_CPU_IS_INTEL], [test "x$HOSTARCH" = "xintel"]) +AM_CONDITIONAL([HOST_AARCH64], [test "$host_cpu" = "aarch64"]) +AM_CONDITIONAL([HOST_ARM], [test "$host_cpu" = "arm"]) +AM_CONDITIONAL([HOST_I386], [test "$host_cpu" = "i386"]) +AM_CONDITIONAL([HOST_MIPS], [test "$host_cpu" = "mips"]) +AM_CONDITIONAL([HOST_MIPS64], [test "$host_cpu" = "mips64"]) +AM_CONDITIONAL([HOST_POWERPC], [test "$host_cpu" = "powerpc"]) +AM_CONDITIONAL([HOST_POWERPC64], [test "$host_cpu" = "ppc64"]) +AM_CONDITIONAL([HOST_RISCV64], [test "$host_cpu" = "riscv64"]) +AM_CONDITIONAL([HOST_SPARC64], [test "$host_cpu" = "sparc64"]) +AM_CONDITIONAL([HOST_X86_64], [test "$host_cpu" = "x86_64"]) + AC_MSG_CHECKING([if .gnu.warning accepts long strings]) AC_LINK_IFELSE([AC_LANG_SOURCE([[ extern void SSLv3_method(); diff --git a/crypto/Makefile.am b/crypto/Makefile.am index 09a22e6502..733dcbdf36 100644 --- a/crypto/Makefile.am +++ b/crypto/Makefile.am @@ -445,20 +445,51 @@ noinst_HEADERS += bn/s2n_bignum.h noinst_HEADERS += bn/s2n_bignum_internal.h # bn/arch +if HOST_AARCH64 +libcrypto_la_CPPFLAGS += -I$(top_srcdir)/crypto/bn/arch/aarch64/ +endif noinst_HEADERS += bn/arch/aarch64/bn_arch.h -noinst_HEADERS += bn/arch/alpha/bn_arch.h -noinst_HEADERS += bn/arch/amd64/bn_arch.h + +if HOST_ARM +libcrypto_la_CPPFLAGS += -I$(top_srcdir)/crypto/bn/arch/arm/ +endif noinst_HEADERS += bn/arch/arm/bn_arch.h -noinst_HEADERS += bn/arch/hppa/bn_arch.h + +if HOST_I386 +libcrypto_la_CPPFLAGS += -I$(top_srcdir)/crypto/bn/arch/i386/ +endif noinst_HEADERS += bn/arch/i386/bn_arch.h -noinst_HEADERS += bn/arch/m88k/bn_arch.h + +if HOST_MIPS64 +libcrypto_la_CPPFLAGS += -I$(top_srcdir)/crypto/bn/arch/mips64/ +endif noinst_HEADERS += bn/arch/mips64/bn_arch.h + +if HOST_POWERPC +libcrypto_la_CPPFLAGS += -I$(top_srcdir)/crypto/bn/arch/powerpc/ +endif noinst_HEADERS += bn/arch/powerpc/bn_arch.h + +if HOST_POWERPC64 +libcrypto_la_CPPFLAGS += -I$(top_srcdir)/crypto/bn/arch/powerpc64/ +endif noinst_HEADERS += bn/arch/powerpc64/bn_arch.h + +if HOST_RISCV64 +libcrypto_la_CPPFLAGS += -I$(top_srcdir)/crypto/bn/arch/riscv64/ +endif noinst_HEADERS += bn/arch/riscv64/bn_arch.h -noinst_HEADERS += bn/arch/sh/bn_arch.h + +if HOST_SPARC64 +libcrypto_la_CPPFLAGS += -I$(top_srcdir)/crypto/bn/arch/sparc64/ +endif noinst_HEADERS += bn/arch/sparc64/bn_arch.h +if HOST_X86_64 +libcrypto_la_CPPFLAGS += -I$(top_srcdir)/crypto/bn/arch/amd64/ +endif +noinst_HEADERS += bn/arch/amd64/bn_arch.h + # buffer libcrypto_la_SOURCES += buffer/buf_err.c libcrypto_la_SOURCES += buffer/buf_str.c diff --git a/crypto/Makefile.am.elf-x86_64 b/crypto/Makefile.am.elf-x86_64 index f03d424bbe..cc6ea99c9d 100644 --- a/crypto/Makefile.am.elf-x86_64 +++ b/crypto/Makefile.am.elf-x86_64 @@ -50,7 +50,4 @@ libcrypto_la_CPPFLAGS += -DSHA512_ASM libcrypto_la_CPPFLAGS += -DWHIRLPOOL_ASM libcrypto_la_CPPFLAGS += -DOPENSSL_CPUID_OBJ libcrypto_la_SOURCES += $(ASM_X86_64_ELF) - -# XXX - not the right place for this. It should be done depending on CPU. -libcrypto_la_CPPFLAGS += -I$(top_srcdir)/crypto/bn/arch/amd64/ endif