SDL: updated OpenSSL build scripts
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
#!/bin/sh
|
||||
|
||||
ARCH_LIST="armeabi-v7a x86_64 x86 arm64-v8a"
|
||||
ARCH_LIST="arm64-v8a armeabi-v7a x86_64 x86"
|
||||
|
||||
PARALLEL=false
|
||||
|
||||
@@ -13,18 +13,17 @@ build() {
|
||||
case $ARCH in
|
||||
armeabi-v7a)
|
||||
#NO_ASM="-DOPENSSL_NO_ASM=1" # Assembler in OpenSSL is broken when using clang
|
||||
export CONFIGURE_ARCH=android-armeabi
|
||||
export CONFIGURE_ARCH=android-arm
|
||||
;;
|
||||
x86)
|
||||
export CONFIGURE_ARCH=android-x86
|
||||
;;
|
||||
arm64-v8a)
|
||||
export CONFIGURE_ARCH=android64-aarch64
|
||||
export CONFIGURE_ARCH=android-arm64
|
||||
;;
|
||||
x86_64)
|
||||
NO_ASM="-DOPENSSL_NO_ASM=1" # Assembler in OpenSSL is broken when using clang
|
||||
#export CONFIGURE_ARCH=android64-x86_64
|
||||
export CONFIGURE_ARCH=android64 # No-asm variant
|
||||
#NO_ASM="-DOPENSSL_NO_ASM=1" # Assembler in OpenSSL is broken when using clang
|
||||
export CONFIGURE_ARCH=android64-x86_64 # No-asm variant
|
||||
;;
|
||||
*)
|
||||
echo "Arch $ARCH not defined"
|
||||
@@ -35,18 +34,18 @@ build() {
|
||||
mkdir -p build/$ARCH
|
||||
cd build/$ARCH
|
||||
|
||||
tar -x -v -z -f ../../openssl-1.1.1d.tar.gz --strip=1
|
||||
|
||||
NDK=`which ndk-build`
|
||||
NDK=`dirname $NDK`
|
||||
NDK=`readlink -f $NDK`
|
||||
export CROSS_SYSROOT=$NDK/sysroot/usr
|
||||
export ANDROID_NDK_HOME=$NDK
|
||||
tar -x -v -z -f ../../openssl-1.1.1j.tar.gz --strip=1
|
||||
patch -p1 < ../../config.patch || exit 1
|
||||
|
||||
env LDFLAGS="-shared -landroid -llog" \
|
||||
CFLAGS="$NO_ASM" \
|
||||
../../setCrossEnvironment-$ARCH.sh \
|
||||
sh -c 'env PATH=`dirname $CC`:$PATH \
|
||||
sh -c '
|
||||
ln -s $AR `basename -s -clang $CC`-ar
|
||||
export PATH=`pwd`:`dirname $CC`:$PATH
|
||||
export ANDROID_NDK_HOME=`dirname $CC`/..
|
||||
export CC=clang
|
||||
export AR=ar
|
||||
./Configure shared zlib --prefix=`pwd`/dist --openssldir=. $CONFIGURE_ARCH -fPIC' \
|
||||
|| exit 1
|
||||
|
||||
@@ -64,8 +63,10 @@ build() {
|
||||
env LDFLAGS="-shared -landroid -llog" \
|
||||
CFLAGS="$NO_ASM" \
|
||||
../../setCrossEnvironment-$ARCH.sh \
|
||||
sh -c 'env PATH=`dirname $CC`:$PATH \
|
||||
make -j8'
|
||||
sh -c '
|
||||
export PATH=`pwd`:`dirname $CC`:$PATH
|
||||
make -j8' \
|
||||
|| exit 1
|
||||
|
||||
cd ../..
|
||||
|
||||
|
||||
20
project/jni/openssl/config.patch
Normal file
20
project/jni/openssl/config.patch
Normal file
@@ -0,0 +1,20 @@
|
||||
diff -u -r armeabi-v7a-old/Configurations/15-android.conf armeabi-v7a/Configurations/15-android.conf
|
||||
--- armeabi-v7a-old/Configurations/15-android.conf 2021-02-16 17:24:01.000000000 +0200
|
||||
+++ armeabi-v7a/Configurations/15-android.conf 2021-03-12 23:18:14.799128642 +0200
|
||||
@@ -8,12 +8,12 @@
|
||||
|
||||
my $android_ndk = {};
|
||||
my %triplet = (
|
||||
- arm => "arm-linux-androideabi",
|
||||
- arm64 => "aarch64-linux-android",
|
||||
+ arm => "armv7a-linux-androideabi16",
|
||||
+ arm64 => "aarch64-linux-android21",
|
||||
mips => "mipsel-linux-android",
|
||||
mips64 => "mips64el-linux-android",
|
||||
- x86 => "i686-linux-android",
|
||||
- x86_64 => "x86_64-linux-android",
|
||||
+ x86 => "i686-linux-android16",
|
||||
+ x86_64 => "x86_64-linux-android21",
|
||||
);
|
||||
|
||||
sub android_ndk {
|
||||
Binary file not shown.
Reference in New Issue
Block a user