build: Replace the android-specific script to build OpenSSL with the shared one.
This commit is contained in:
parent
df83187e33
commit
87cdba1db8
@ -1139,7 +1139,13 @@ iossimdebuggo: out/tildefriends-iossimdebug.app/tildefriends ## Build, install,
|
||||
|
||||
ANDROID_DEPS := out/openssl/android/arm64-v8a/usr/local/lib/libssl.a
|
||||
$(ANDROID_DEPS):
|
||||
+@ANDROID_NDK_ROOT=$(ANDROID_NDK) tools/ssl-android
|
||||
+@export ANDROID_NDK_ROOT=$(ANDROID_NDK)
|
||||
+@export BUILD_PLATFORM=android
|
||||
+@export TOOLCHAIN=$(ANDROID_NDK)/toolchains/llvm/prebuilt/linux-x86_64
|
||||
+@PATH=$$TOOLCHAIN/x86_64-linux-android/bin:$$TOOLCHAIN/bin:$$PATH BUILD_TARGET=x86_64 SSL_TARGET=android-x86_64 OPTIONS="--static -static -ffunction-sections -fdata-sections -D__ANDROID_API__=${ANDROID_MIN_SDK_VERSION} -Wno-macro-redefined" tools/ssl-local
|
||||
+@PATH=$$TOOLCHAIN/i686-linux-android/bin:$$TOOLCHAIN/bin:$$PATH BUILD_TARGET=x86 SSL_TARGET=android-x86 OPTIONS="--static -static -ffunction-sections -fdata-sections -D__ANDROID_API__=${ANDROID_MIN_SDK_VERSION} -Wno-macro-redefined" tools/ssl-local
|
||||
+@PATH=$$TOOLCHAIN/arm-linux-androideabi/bin:$$TOOLCHAIN/bin:$$PATH BUILD_TARGET=armeabi-v7a SSL_TARGET=android-arm OPTIONS="--static -static -ffunction-sections -fdata-sections --target=armv7a-linux-androideabi -Wl,--fix-cortex-a8 -D__ANDROID_API__=${ANDROID_MIN_SDK_VERSION} -Wno-macro-redefined" tools/ssl-local
|
||||
+@PATH=$$TOOLCHAIN/aarch64-linux-android/bin:$$TOOLCHAIN/bin:$$PATH BUILD_TARGET=arm64-v8a SSL_TARGET=android-arm64 OPTIONS="--static -static -ffunction-sections -fdata-sections -D__ANDROID_API__=${ANDROID_MIN_SDK_VERSION} -Wno-macro-redefined" tools/ssl-local
|
||||
$(filter $(BUILD_DIR)/android%,$(APP_OBJS)): | $(ANDROID_DEPS)
|
||||
|
||||
ifeq ($(UNAME_S),Linux)
|
||||
|
@ -1,136 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
if [ -z $ANDROID_NDK_ROOT ]; then
|
||||
ANDROID_NDK_ROOT=~/Android/Sdk/ndk/26.1.10909125
|
||||
fi
|
||||
|
||||
API_LEVEL=24
|
||||
|
||||
BUILD_DIR=out/openssl_android_build
|
||||
|
||||
BUILD_TARGETS="x86_64 x86 arm64-v8a armeabi-v7a"
|
||||
|
||||
WORK_DIR=out/openssl-android
|
||||
rm -rf $WORK_DIR
|
||||
cp -arf deps/openssl_src/ $WORK_DIR
|
||||
|
||||
export ANDROID_NDK_ROOT
|
||||
echo ANDROID_NDK_ROOT=$ANDROID_NDK_ROOT
|
||||
|
||||
build_the_thing() {
|
||||
TOOLCHAIN=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64
|
||||
export PATH=$TOOLCHAIN/$TRIBLE/bin:$TOOLCHAIN/bin:$PATH
|
||||
echo $PATH
|
||||
export GLOBAL_OPTIONS="
|
||||
no-apps
|
||||
no-asm
|
||||
no-async
|
||||
no-autoerrinit
|
||||
no-autoload-config
|
||||
no-cmp
|
||||
no-cms
|
||||
no-comp
|
||||
no-deprecated
|
||||
no-dgram
|
||||
no-docs
|
||||
no-dsa
|
||||
no-dso
|
||||
no-dtls
|
||||
no-dtls1
|
||||
no-dtls1-method
|
||||
no-dynamic-engine
|
||||
no-ec2m
|
||||
no-egd
|
||||
no-engine
|
||||
no-err
|
||||
no-filenames
|
||||
no-gost
|
||||
no-http
|
||||
no-idea
|
||||
no-legacy
|
||||
no-md2
|
||||
no-md4
|
||||
no-module
|
||||
no-multiblock
|
||||
no-nextprotoneg
|
||||
no-ocsp
|
||||
no-psk
|
||||
no-shared
|
||||
no-sock
|
||||
no-srp
|
||||
no-ssl
|
||||
no-ssl3
|
||||
no-ssl-trace
|
||||
no-stdio
|
||||
no-tests
|
||||
no-thread-pool
|
||||
no-threads
|
||||
no-tls1
|
||||
no-tls1-method
|
||||
no-trace
|
||||
no-ui-console
|
||||
no-uplink
|
||||
no-whirlpool
|
||||
no-weak-ssl-ciphers
|
||||
no-zlib
|
||||
-Oz
|
||||
-DOPENSSL_SMALL_FOOTPRINT
|
||||
-ffunction-sections
|
||||
-fdata-sections"
|
||||
pwd
|
||||
echo "./Configure $SSL_TARGET $OPTIONS $GLOBAL_OPTIONS" && \
|
||||
./Configure $SSL_TARGET $OPTIONS $GLOBAL_OPTIONS && \
|
||||
make -s clean && \
|
||||
make -s build_generated && \
|
||||
make -s libcrypto.a libssl.a || exit 128
|
||||
}
|
||||
|
||||
for build_target in $BUILD_TARGETS
|
||||
do
|
||||
echo "Building $build_target"
|
||||
pwd
|
||||
pushd $WORK_DIR || exit 128
|
||||
|
||||
case $build_target in
|
||||
armeabi-v7a)
|
||||
TRIBLE="arm-linux-androideabi"
|
||||
OPTIONS="--target=armv7a-linux-androideabi -ffunction-sections -fdata-sections -Wl,--fix-cortex-a8 -fPIC -D__ANDROID_API__=$API_LEVEL -Wno-macro-redefined"
|
||||
DESTDIR="/tmp/$BUILD_DIR/armeabi-v7a"
|
||||
SSL_TARGET="android-arm"
|
||||
CC=clang
|
||||
;;
|
||||
x86)
|
||||
TRIBLE="i686-linux-android"
|
||||
OPTIONS="-fPIC -ffunction-sections -fdata-sections -D__ANDROID_API__=${API_LEVEL} -Wno-macro-redefined"
|
||||
DESTDIR="/tmp/$BUILD_DIR/x86"
|
||||
SSL_TARGET="android-x86"
|
||||
CC=clang
|
||||
;;
|
||||
x86_64)
|
||||
TRIBLE="x86_64-linux-android"
|
||||
OPTIONS="--static -static -ffunction-sections -fdata-sections -D__ANDROID_API__=${API_LEVEL} -Wno-macro-redefined"
|
||||
DESTDIR="/tmp/$BUILD_DIR/x86_64"
|
||||
SSL_TARGET="android-x86_64"
|
||||
CC=clang
|
||||
;;
|
||||
arm64-v8a)
|
||||
TRIBLE="aarch64-linux-android"
|
||||
OPTIONS="--static -static -ffunction-sections -fdata-sections -fPIC -D__ANDROID_API__=${API_LEVEL} -Wno-macro-redefined"
|
||||
DESTDIR="/tmp/$BUILD_DIR/arm64-v8a"
|
||||
SSL_TARGET="android-arm64"
|
||||
CC=clang
|
||||
;;
|
||||
esac
|
||||
|
||||
rm -rf $DESTDIR
|
||||
build_the_thing
|
||||
popd
|
||||
echo WORK_DIR=$WORK_DIR
|
||||
rm -rf out/openssl/android/$build_target/
|
||||
mkdir -p out/openssl/android/$build_target/usr/local/include/
|
||||
mkdir -p out/openssl/android/$build_target/usr/local/lib/
|
||||
cp -R $WORK_DIR/include/* out/openssl/android/$build_target/usr/local/include/
|
||||
cp $WORK_DIR/*.a out/openssl/android/$build_target/usr/local/lib/
|
||||
done
|
||||
|
||||
echo Success
|
@ -1,13 +1,15 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
BUILD_PLATFORM=$(uname -s)
|
||||
if [[ -z $BUILD_PLATFORM ]]; then
|
||||
BUILD_PLATFORM=$(uname -s)
|
||||
fi
|
||||
if [[ -z $BUILD_TARGET ]]; then
|
||||
BUILD_TARGET=$(uname -m)
|
||||
WORK_DIR=out/openssl-local
|
||||
else
|
||||
WORK_DIR=out/openssl-$BUILD_TARGET
|
||||
WORK_DIR=out/openssl-$BUILD_PLATFORM-$BUILD_TARGET
|
||||
if [[ -z $SSL_TARGET ]]; then
|
||||
SSL_TARGET=linux-$BUILD_TARGET
|
||||
SSL_TARGET=linux-$BUILD_PLATFORM-$BUILD_TARGET
|
||||
fi
|
||||
fi
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user