forked from cory/tildefriends
		
	build: Replace the android-specific script to build OpenSSL with the shared one.
This commit is contained in:
		@@ -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
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user