aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrent Cook <busterb@gmail.com>2023-02-14 02:52:10 -0600
committerBrent Cook <busterb@gmail.com>2023-02-14 02:52:10 -0600
commit20fb2bdb1197008f46c080b8539084c69b7a8c92 (patch)
treee4a15c5e14849e766a6d7a30d7e938208a9f8448
parentd36629044db1f6f074a26dc502c9cff7a09fd374 (diff)
downloadportable-20fb2bdb1197008f46c080b8539084c69b7a8c92.tar.gz
portable-20fb2bdb1197008f46c080b8539084c69b7a8c92.tar.bz2
portable-20fb2bdb1197008f46c080b8539084c69b7a8c92.zip
add CPU checks, include initial bn_arch.h headers
-rw-r--r--configure.ac17
-rw-r--r--crypto/Makefile.am41
-rw-r--r--crypto/Makefile.am.elf-x86_643
3 files changed, 52 insertions, 9 deletions
diff --git a/configure.ac b/configure.ac
index 6080109..87c6d5b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -76,11 +76,26 @@ AM_CONDITIONAL([ENABLE_TESTS], [test "x$enable_tests" = xyes])
76AS_CASE([$host_cpu], 76AS_CASE([$host_cpu],
77 [*arm*], [host_cpu=arm], 77 [*arm*], [host_cpu=arm],
78 [*amd64*], [host_cpu=x86_64 HOSTARCH=intel], 78 [*amd64*], [host_cpu=x86_64 HOSTARCH=intel],
79 [i?86], [HOSTARCH=intel], 79 [i?86], [host_cpu=i386 HOSTARCH=intel],
80 [mipsel*], [host_cpu=mips],
81 [mips64el*], [host_cpu=mips64],
82 [powerpc*], [host_cpu=powerpc],
83 [ppc64*], [host_cpu=powerpc64],
80 [x86_64], [HOSTARCH=intel] 84 [x86_64], [HOSTARCH=intel]
81) 85)
82AM_CONDITIONAL([HOST_CPU_IS_INTEL], [test "x$HOSTARCH" = "xintel"]) 86AM_CONDITIONAL([HOST_CPU_IS_INTEL], [test "x$HOSTARCH" = "xintel"])
83 87
88AM_CONDITIONAL([HOST_AARCH64], [test "$host_cpu" = "aarch64"])
89AM_CONDITIONAL([HOST_ARM], [test "$host_cpu" = "arm"])
90AM_CONDITIONAL([HOST_I386], [test "$host_cpu" = "i386"])
91AM_CONDITIONAL([HOST_MIPS], [test "$host_cpu" = "mips"])
92AM_CONDITIONAL([HOST_MIPS64], [test "$host_cpu" = "mips64"])
93AM_CONDITIONAL([HOST_POWERPC], [test "$host_cpu" = "powerpc"])
94AM_CONDITIONAL([HOST_POWERPC64], [test "$host_cpu" = "ppc64"])
95AM_CONDITIONAL([HOST_RISCV64], [test "$host_cpu" = "riscv64"])
96AM_CONDITIONAL([HOST_SPARC64], [test "$host_cpu" = "sparc64"])
97AM_CONDITIONAL([HOST_X86_64], [test "$host_cpu" = "x86_64"])
98
84AC_MSG_CHECKING([if .gnu.warning accepts long strings]) 99AC_MSG_CHECKING([if .gnu.warning accepts long strings])
85AC_LINK_IFELSE([AC_LANG_SOURCE([[ 100AC_LINK_IFELSE([AC_LANG_SOURCE([[
86extern void SSLv3_method(); 101extern void SSLv3_method();
diff --git a/crypto/Makefile.am b/crypto/Makefile.am
index 09a22e6..733dcbd 100644
--- a/crypto/Makefile.am
+++ b/crypto/Makefile.am
@@ -445,20 +445,51 @@ noinst_HEADERS += bn/s2n_bignum.h
445noinst_HEADERS += bn/s2n_bignum_internal.h 445noinst_HEADERS += bn/s2n_bignum_internal.h
446 446
447# bn/arch 447# bn/arch
448if HOST_AARCH64
449libcrypto_la_CPPFLAGS += -I$(top_srcdir)/crypto/bn/arch/aarch64/
450endif
448noinst_HEADERS += bn/arch/aarch64/bn_arch.h 451noinst_HEADERS += bn/arch/aarch64/bn_arch.h
449noinst_HEADERS += bn/arch/alpha/bn_arch.h 452
450noinst_HEADERS += bn/arch/amd64/bn_arch.h 453if HOST_ARM
454libcrypto_la_CPPFLAGS += -I$(top_srcdir)/crypto/bn/arch/arm/
455endif
451noinst_HEADERS += bn/arch/arm/bn_arch.h 456noinst_HEADERS += bn/arch/arm/bn_arch.h
452noinst_HEADERS += bn/arch/hppa/bn_arch.h 457
458if HOST_I386
459libcrypto_la_CPPFLAGS += -I$(top_srcdir)/crypto/bn/arch/i386/
460endif
453noinst_HEADERS += bn/arch/i386/bn_arch.h 461noinst_HEADERS += bn/arch/i386/bn_arch.h
454noinst_HEADERS += bn/arch/m88k/bn_arch.h 462
463if HOST_MIPS64
464libcrypto_la_CPPFLAGS += -I$(top_srcdir)/crypto/bn/arch/mips64/
465endif
455noinst_HEADERS += bn/arch/mips64/bn_arch.h 466noinst_HEADERS += bn/arch/mips64/bn_arch.h
467
468if HOST_POWERPC
469libcrypto_la_CPPFLAGS += -I$(top_srcdir)/crypto/bn/arch/powerpc/
470endif
456noinst_HEADERS += bn/arch/powerpc/bn_arch.h 471noinst_HEADERS += bn/arch/powerpc/bn_arch.h
472
473if HOST_POWERPC64
474libcrypto_la_CPPFLAGS += -I$(top_srcdir)/crypto/bn/arch/powerpc64/
475endif
457noinst_HEADERS += bn/arch/powerpc64/bn_arch.h 476noinst_HEADERS += bn/arch/powerpc64/bn_arch.h
477
478if HOST_RISCV64
479libcrypto_la_CPPFLAGS += -I$(top_srcdir)/crypto/bn/arch/riscv64/
480endif
458noinst_HEADERS += bn/arch/riscv64/bn_arch.h 481noinst_HEADERS += bn/arch/riscv64/bn_arch.h
459noinst_HEADERS += bn/arch/sh/bn_arch.h 482
483if HOST_SPARC64
484libcrypto_la_CPPFLAGS += -I$(top_srcdir)/crypto/bn/arch/sparc64/
485endif
460noinst_HEADERS += bn/arch/sparc64/bn_arch.h 486noinst_HEADERS += bn/arch/sparc64/bn_arch.h
461 487
488if HOST_X86_64
489libcrypto_la_CPPFLAGS += -I$(top_srcdir)/crypto/bn/arch/amd64/
490endif
491noinst_HEADERS += bn/arch/amd64/bn_arch.h
492
462# buffer 493# buffer
463libcrypto_la_SOURCES += buffer/buf_err.c 494libcrypto_la_SOURCES += buffer/buf_err.c
464libcrypto_la_SOURCES += buffer/buf_str.c 495libcrypto_la_SOURCES += buffer/buf_str.c
diff --git a/crypto/Makefile.am.elf-x86_64 b/crypto/Makefile.am.elf-x86_64
index f03d424..cc6ea99 100644
--- a/crypto/Makefile.am.elf-x86_64
+++ b/crypto/Makefile.am.elf-x86_64
@@ -50,7 +50,4 @@ libcrypto_la_CPPFLAGS += -DSHA512_ASM
50libcrypto_la_CPPFLAGS += -DWHIRLPOOL_ASM 50libcrypto_la_CPPFLAGS += -DWHIRLPOOL_ASM
51libcrypto_la_CPPFLAGS += -DOPENSSL_CPUID_OBJ 51libcrypto_la_CPPFLAGS += -DOPENSSL_CPUID_OBJ
52libcrypto_la_SOURCES += $(ASM_X86_64_ELF) 52libcrypto_la_SOURCES += $(ASM_X86_64_ELF)
53
54# XXX - not the right place for this. It should be done depending on CPU.
55libcrypto_la_CPPFLAGS += -I$(top_srcdir)/crypto/bn/arch/amd64/
56endif 53endif