From 03fc8f9b9ecbb65326348dd8eccc5d22344abefe Mon Sep 17 00:00:00 2001 From: jsing <> Date: Sat, 17 Jan 2026 16:18:32 +0000 Subject: Provide LIBRESSL_USE_.*_ASSEMBLY defines. Make life easier for portable by providing LIBRESSL_USE_.*_ASSEMBLY defines, which enable/disable assembly for a specific algorithm. This means that selected platforms can include the assembly files and specify a define, rather than having to try to patch the crypto_arch.h headers. Discussed with tb@ --- src/lib/libcrypto/arch/alpha/Makefile.inc | 7 ++++++- src/lib/libcrypto/arch/alpha/crypto_arch.h | 6 +++++- 2 files changed, 11 insertions(+), 2 deletions(-) (limited to 'src/lib/libcrypto/arch/alpha') diff --git a/src/lib/libcrypto/arch/alpha/Makefile.inc b/src/lib/libcrypto/arch/alpha/Makefile.inc index d89f32dc9d..b2358a8494 100644 --- a/src/lib/libcrypto/arch/alpha/Makefile.inc +++ b/src/lib/libcrypto/arch/alpha/Makefile.inc @@ -1,13 +1,18 @@ -# $OpenBSD: Makefile.inc,v 1.16 2026/01/17 14:30:37 jsing Exp $ +# $OpenBSD: Makefile.inc,v 1.17 2026/01/17 16:18:31 jsing Exp $ # alpha-specific libcrypto build rules # bn +CFLAGS+= -DLIBRESSL_USE_BN_ASSEMBLY SSLASM+= bn alpha-mont CFLAGS+= -DOPENSSL_BN_ASM_MONT + # modes +CFLAGS+= -DLIBRESSL_USE_GCM_ASSEMBLY SSLASM+= modes ghash-alpha + # sha +CFLAGS+= -DLIBRESSL_USE_SHA_ASSEMBLY SSLASM+= sha sha1-alpha .for dir f in ${SSLASM} diff --git a/src/lib/libcrypto/arch/alpha/crypto_arch.h b/src/lib/libcrypto/arch/alpha/crypto_arch.h index 8fec3e2855..ba1803ddf8 100644 --- a/src/lib/libcrypto/arch/alpha/crypto_arch.h +++ b/src/lib/libcrypto/arch/alpha/crypto_arch.h @@ -1,4 +1,4 @@ -/* $OpenBSD: crypto_arch.h,v 1.3 2026/01/17 14:30:37 jsing Exp $ */ +/* $OpenBSD: crypto_arch.h,v 1.4 2026/01/17 16:18:32 jsing Exp $ */ /* * Copyright (c) 2024 Joel Sing * @@ -20,11 +20,15 @@ #ifndef OPENSSL_NO_ASM +#ifdef LIBRESSL_USE_GCM_ASSEMBLY #define HAVE_GCM_GHASH_4BIT #define HAVE_GCM_GMULT_4BIT +#endif +#ifdef LIBRESSL_USE_SHA_ASSEMBLY #define HAVE_SHA1_BLOCK_DATA_ORDER #define HAVE_SHA1_BLOCK_GENERIC +#endif #endif -- cgit v1.2.3-55-g6feb