openssl: curve448: android-armv7 build fails due to unknown uint128_t
Hello,
this is a regression between 3.0.0-alpha13 and 3.0.0-alpha14. My Android build for armv7 fails (with NDKr21 and ANDROID_API=19). Compilation fails with:
clang -I. -Iinclude -Iproviders/common/include -Iproviders/implementations/include -DAES_ASM -DBSAES_ASM -DECP_NISTZ256_ASM -DGHASH_ASM -DKECCAK1600_ASM -DOPENSSL_BN_ASM_GF2m -DOPENSSL_BN_ASM_MONT -DOPENSSL_CPUID_OBJ -DPOLY1305_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -fPIC -pthread -target armv7a-linux-androideabi -gcc-toolchain /opt/android-ndk-r21d/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64 --sysroot=/opt/android-ndk-r21d/platforms/android-19/arch-arm -Wa,--noexecstack -Qunused-arguments -Wall -O3 -fPIC -ffunction-sections -funwind-tables -fexceptions -fno-strict-aliasing -mfpu=vfp -DOPENSSL_USE_NODELETE -DOPENSSL_PIC -DOPENSSLDIR="\"/home/ec2-user/54uxy13nulcbcfk/_deploy/Applications_Android_armeabi-v7a_cxx17/openssl\"" -DENGINESDIR="\"/home/ec2-user/54uxy13nulcbcfk/_deploy/Applications_Android_armeabi-v7a_cxx17/lib/engines-3\"" -DMODULESDIR="\"/home/ec2-user/54uxy13nulcbcfk/_deploy/Applications_Android_armeabi-v7a_cxx17/lib/ossl-modules\"" -D__ANDROID_API__=19 -isystem /opt/android-ndk-r21d/sysroot/usr/include/arm-linux-androideabi -isystem /opt/android-ndk-r21d/sysroot/usr/include -DOPENSSL_BUILDING_OPENSSL -DNDEBUG -DNDK_DEBUG=1 -D__ANDROID_API__=19 -MMD -MF crypto/ec/libcrypto-lib-curve25519.d.tmp -MT crypto/ec/libcrypto-lib-curve25519.o -c -o crypto/ec/libcrypto-lib-curve25519.o crypto/ec/curve25519.c
crypto/ec/curve448/arch_64/f_impl.c:19:14: error: expected ';' after expression
uint128_t accum0 = 0, accum1 = 0, accum2;
^
;
crypto/ec/curve448/arch_64/f_impl.c:19:5: error: use of undeclared identifier 'uint128_t'
uint128_t accum0 = 0, accum1 = 0, accum2;
^
crypto/ec/curve448/arch_64/f_impl.c:19:15: error: use of undeclared identifier 'accum0'
uint128_t accum0 = 0, accum1 = 0, accum2;
^
Thanks, Gregor
About this issue
- Original URL
- State: closed
- Created 3 years ago
- Comments: 22 (19 by maintainers)
Commits related to this issue
- Fix 128 bit int detection on Android Make sure we use a "-target" flag when probing the compiler for 128 bit int support. Fixes #14804 — committed to mattcaswell/openssl by mattcaswell 3 years ago
- Avoid the need for Configure time 128-bit int detection We just detect this at compile time instead. This avoids cross-compilation problems where the host platform supports 128-bit ints, but the tar... — committed to mattcaswell/openssl by mattcaswell 3 years ago
Works like a charm, thanks @mattcaswell now waiting to see it merged
Tested on OmniOS - alpha 14 + this new patch, all fine and all tests passed:
Hmmm…hold that request. It seems the CIs don’t like the new patch