Android: update CMakeLists.txt CFLAGS for normal wolfSSL build to match current --enable-jni configure

pull/307/head
Chris Conlon 2025-12-24 13:15:38 -07:00
parent 0873337f6e
commit 61b7429cc7
1 changed files with 31 additions and 22 deletions

View File

@ -42,27 +42,35 @@ if ("${WOLFSSL_PKG_TYPE}" MATCHES "normal")
# Add preprocessor defines to CFLAGS, these match those placed into
# wolfssl/options.h by configure if using: "./configure --enable-jni".
# This list may be configurable depending on use case and desired optimizations.
add_definitions(-DWC_RSA_BLINDING -DWOLFSSL_SHA224 -DWOLFSSL_SHA384
-DWOLFSSL_SHA512 -DHAVE_HKDF -DNO_DSA -DHAVE_ECC
-DECC_SHAMIR -DWC_RSA_PSS -DWOLFSSL_BASE64_ENCODE
-DWOLFSSL_SHA3 -DHAVE_POLY1305 -DHAVE_CHACHA -DHAVE_HASHDRBG
-DHAVE_TLS_EXTENSIONS -DHAVE_SUPPORTED_CURVES -DHAVE_FFDHE_2048
-DWOLFSSL_TLS13 -DHAVE_EXTENDED_MASTER -DWOLFSSL_JNI
-DHAVE_EX_DATA -DWOLFSSL_DTLS -DOPENSSL_EXTRA -DOPENSSL_ALL
-DHAVE_CRL -DHAVE_OCSP -DHAVE_CRL_MONITOR
-DPERSIST_SESSION_CACHE -DPERSIST_CERT_CACHE -DATOMIC_USER
-DHAVE_PK_CALLBACKS -DWOLFSSL_CERT_EXT -DWOLFSSL_CERT_GEN
-DWOLFSSL_CERT_REQ -DHAVE_SNI -DHAVE_ALPN -DNO_RC4
-DHAVE_ENCRYPT_THEN_MAC -DNO_MD4 -DWOLFSSL_ENCRYPTED_KEYS
-DHAVE_DH_DEFAULT_PARAMS -DNO_ERROR_QUEUE -DWOLFSSL_EITHER_SIDE
-DWC_RSA_NO_PADDING -DWC_RSA_PSS -DWOLFSSL_PSS_LONG_SALT
-DWOLFSSL_TICKET_HAVE_ID -DWOLFSSL_ERROR_CODE_OPENSSL
-DWOLFSSL_ALWAYS_VERIFY_CB -DWOLFSSL_VERIFY_CB_ALL_CERTS
-DWOLFSSL_EXTRA_ALERTS -DHAVE_EXT_CACHE
-DWOLFSSL_FORCE_CACHE_ON_TICKET -DWOLFSSL_AKID_NAME -DHAVE_CTS
-DNO_DES3 -DGCM_TABLE_4BIT -DTFM_TIMING_RESISTANT
-DECC_TIMING_RESISTANT -DHAVE_AESGCM -DSIZEOF_LONG=4
-DSIZEOF_LONG_LONG=8 -DWOLFSSL_CUSTOM_CONFIG
add_definitions(-DWOLFSSL_JNI -DATOMIC_USER -DHAVE_PK_CALLBACKS -DERROR_QUEUE_PER_THREAD
-DHAVE_EX_DATA -DHAVE_CRL -DHAVE_CRL_MONITOR -DHAVE_OCSP -DHAVE_THREAD_LS
-DKEEP_PEER_CERT -DPERSIST_CERT_CACHE -DPERSIST_SESSION_CACHE
-DSESSION_CERTS -DWC_NO_ASYNC_THREADING -DWOLFSSL_ALT_CERT_CHAINS
-DWOLFSSL_ALT_NAMES -DWOLFSSL_ALWAYS_KEEP_SNI -DWOLFSSL_ALWAYS_VERIFY_CB
-DWOLFSSL_VERIFY_CB_ALL_CERTS -DWOLFSSL_ASN_PRINT -DWOLFSSL_ASN_TEMPLATE
-DWOLFSSL_BASE64_ENCODE -DWOLFSSL_CERT_EXT -DWOLFSSL_CERT_GEN
-DWOLFSSL_CERT_NAME_ALL -DWOLFSSL_CERT_REQ -DWOLFSSL_KEY_GEN -DWOLFSSL_DTLS
-DWOLFSSL_DTLS13 -DWOLFSSL_DTLS_DROP_STATS -DWOLFSSL_DTLS_MTU
-DWOLFSSL_SEND_HRR_COOKIE -DWOLFSSL_EITHER_SIDE -DWOLFSSL_PUBLIC_MP
-DWOLFSSL_SYS_CA_CERTS -DWOLFSSL_TICKET_HAVE_ID -DWOLFSSL_TLS13
-DWOLFSSL_TLS13_MIDDLEBOX_COMPAT -DWOLFSSL_USE_ALIGN -DWOLFSSL_EXTRA_ALERTS
-DHAVE_EXT_CACHE -DWOLFSSL_FORCE_CACHE_ON_TICKET -DWOLFSSL_AKID_NAME
-DHAVE_TLS_EXTENSIONS -DHAVE_ALPN -DHAVE_ENCRYPT_THEN_MAC
-DHAVE_EXTENDED_MASTER -DHAVE_SERVER_RENEGOTIATION_INFO -DHAVE_SNI
-DHAVE_SUPPORTED_CURVES -DWOLFSSL_ENCRYPTED_KEYS
-DOPENSSL_ALL -DOPENSSL_EXTRA -DWOLFSSL_ERROR_CODE_OPENSSL
-DWOLFSSL_SHA224 -DWOLFSSL_SHA3 -DWOLFSSL_SHA384 -DWOLFSSL_SHA512
-DHAVE_ECC -DECC_MIN_KEY_SZ=224 -DECC_SHAMIR
-DECC_TIMING_RESISTANT -DTFM_TIMING_RESISTANT
-DWC_RSA_BLINDING -DWC_RSA_NO_PADDING -DWC_RSA_PSS -DWOLFSSL_PSS_LONG_SALT
-DHAVE_AESGCM -DGCM_TABLE_4BIT -DHAVE_CTS -DWOLFSSL_AES_DIRECT
-DHAVE_CHACHA -DHAVE_POLY1305
-DHAVE_DH_DEFAULT_PARAMS -DHAVE_FFDHE_2048
-DHAVE_HASHDRBG -DHAVE_HKDF
-DNO_DES3 -DNO_DES3_TLS_SUITES -DNO_DO178 -DNO_DSA -DNO_ERROR_QUEUE -DNO_MD4
-DNO_OLD_TLS -DNO_RC4 -DWOLFSSL_NO_SHAKE128 -DWOLFSSL_NO_SHAKE256
-DSIZEOF_LONG=4 -DSIZEOF_LONG_LONG=8 -DWOLFSSL_CUSTOM_CONFIG
# For gethostbyname()
-DHAVE_NETDB_H
@ -224,7 +232,8 @@ elseif("${WOLFSSL_MATH_LIB}" MATCHES "spmath")
# Not using ASM, need to use WOLFSSL_SP_MATH_ALL for SW-only implementation
add_definitions(-DWOLFSSL_SP_MATH_ALL)
elseif("${ANDROID_ABI}" MATCHES "x86_64")
add_definitions(-DWOLFSSL_SP_MATH_ALL)
# Using ASM for SP, need to use WOLFSSL_SP_MATH instead of WOLFSSL_SP_MATH_ALL
add_definitions(-DWOLFSSL_SP_MATH)
add_definitions(-DWOLFSSL_SP_ASM -DWOLFSSL_SP_X86_64 -DWOLFSSL_SP_X86_64_ASM -DHAVE___UINT128_T)
list(APPEND CRYPTO_SOURCES ${wolfssl_DIR}/wolfcrypt/src/sp_x86_64_asm.S)
elseif("${ANDROID_ABI}" MATCHES "x86")