Skip to content

Commit

Permalink
add CPU checks, include initial bn_arch.h headers
Browse files Browse the repository at this point in the history
  • Loading branch information
busterb committed Feb 14, 2023
1 parent d366290 commit 20fb2bd
Show file tree
Hide file tree
Showing 3 changed files with 52 additions and 9 deletions.
17 changes: 16 additions & 1 deletion configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -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();
Expand Down
41 changes: 36 additions & 5 deletions crypto/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
3 changes: 0 additions & 3 deletions crypto/Makefile.am.elf-x86_64
Original file line number Diff line number Diff line change
Expand Up @@ -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

0 comments on commit 20fb2bd

Please sign in to comment.