Compile android with new curl and openssl:

- CURL_VERSION=7.74.0
- OPENSSL_VERSION=1.1.1j

remove --without-zlib option from curl arm and armv6
This commit is contained in:
Tal Regev 2021-04-12 23:09:37 +03:00
parent 720b655b71
commit 28c68c1151
11 changed files with 39 additions and 35 deletions

View File

@ -22,8 +22,8 @@ set -e
# When you want to invalidate openssl and curl without change their versions.
export REV=1
export ARMV6_REV=1
export OPENSSL_VERSION=1.0.2s
export CURL_VERSION=7.62.0
export OPENSSL_VERSION=1.1.1j
export CURL_VERSION=7.74.0
export NDK_VERSION=21d
export NDK_ARMV6_VERSION=15c
@ -145,6 +145,10 @@ if [ "${silent}" = "yes" ]; then
export STDOUT_TARGET="/dev/null"
fi
if [ $arch = "armv6" ]; then
build_with_vcpkg="no"
fi
export NDK_FLAGFILE="$PREFIX/NDK-${NDK_VERSION}-${REV}_done"
export NDK_ARMV6_FLAGFILE="$PREFIX/NDK-${NDK_ARMV6_VERSION}-armv6-${ARMV6_REV}_done"
export NDK_ROOT=$BUILD_DIR/android-ndk-r${NDK_VERSION}
@ -211,7 +215,7 @@ if [ $arch != "armv6" -a ! -d ${PREFIX}/${arch} ]; then
mkdir -p ${PREFIX}/${arch}
fi
if [ $build_with_vcpkg = "no" -o $arch = "armv6" ]; then
if [ $build_with_vcpkg = "no" ]; then
if [ ! -e "${OPENSSL_FLAGFILE}" ]; then
rm -rf "$BUILD_DIR/openssl-${OPENSSL_VERSION}"
@ -261,7 +265,7 @@ packegesList()
echo $list_pkgs
}
if [ $build_with_vcpkg = "yes" -a $arch != "armv6" ]; then
if [ $build_with_vcpkg = "yes" ]; then
export XDG_CACHE_HOME=$cache_dir/vcpkgcache/
vcpkg_flags="--overlay-triplets=$vcpkg_ports_dir/triplets/default --clean-after-build"
if [ ! -d "$VCPKG_ROOT" ]; then
@ -331,7 +335,7 @@ vcpkgDir()
list_apps_name="boinc_gahp uc2 ucn multi_thread sleeper worker wrapper"
if [ $build_with_vcpkg = "yes" -a $arch != "armv6" ]; then
if [ $build_with_vcpkg = "yes" ]; then
list_apps_name="$list_apps_name wrappture_example fermi"
fi
@ -340,7 +344,7 @@ NeonTest()
while [ $# -gt 0 ]; do
echo "NeonTest: readelf -A" "$1"
vcpkg_dir_search=""
if [ $build_with_vcpkg = "yes" -a $arch != "armv6" ]; then
if [ $build_with_vcpkg = "yes" ]; then
vcpkg_dir_search=$(vcpkgDir $arch)
fi
if [ $(readelf -A $(find $ANDROID_TC/${arch} "../samples" $vcpkg_dir_search -type f -name "$1") | grep -i neon | head -c1 | wc -c) -ne 0 ]; then
@ -367,7 +371,7 @@ Armv6Test()
while [ $# -gt 0 ]; do
echo "Armv6Test: readelf -A" "$1"
vcpkg_dir_search=""
if [ $build_with_vcpkg = "yes" -a $arch != "armv6" ]; then
if [ $build_with_vcpkg = "yes" ]; then
vcpkg_dir_search=$(vcpkgDir $arch)
fi
if [ $(readelf -A $(find $ANDROID_TC/armv6 "BOINC/app/src/main/assets/armeabi" "../samples" $vcpkg_dir_search -type f -name "$1") | grep -i -E "Tag_CPU_arch: (v6|v5TE)" | head -c1 | wc -c) -eq 0 ]; then
@ -409,7 +413,7 @@ RenameAllApps()
../samples/worker/ worker
../samples/wrapper/ wrapper
"
if [ $build_with_vcpkg = "yes" -a $arch != "armv6" ]; then
if [ $build_with_vcpkg = "yes" ]; then
list_apps="$list_apps
../samples/wrappture/ wrappture_example
../samples/wrappture/ fermi

View File

@ -6,7 +6,7 @@ set -e
#
# Script to compile BOINC for Android
BUILD_WITH_VCPKG="no"
STDOUT_TARGET="${STDOUT_TARGET:-/dev/stdout}"
COMPILEBOINC="yes"
CONFIGURE="yes"

View File

@ -57,7 +57,7 @@ if [ ! -e "${CURL_FLAGFILE}" -a $BUILD_WITH_VCPKG = "no" ]; then
fi
fi
if [ -n "$CONFIGURE" ]; then
./configure --host=arm-linux --prefix="$TCINCLUDES" --libdir="$TCINCLUDES/lib" --disable-shared --enable-static --with-random=/dev/urandom --without-zlib 1>$STDOUT_TARGET
./configure --host=arm-linux --prefix="$TCINCLUDES" --libdir="$TCINCLUDES/lib" --disable-shared --enable-static --with-random=/dev/urandom 1>$STDOUT_TARGET
fi
if [ $VERBOSE = "no" ]; then
echo MAKE_FLAGS=$MAKE_FLAGS "1>$STDOUT_TARGET"

View File

@ -6,7 +6,7 @@ set -e
#
# Script to compile Libcurl for Android
BUILD_WITH_VCPKG="no"
STDOUT_TARGET="${STDOUT_TARGET:-/dev/stdout}"
CONFIGURE="yes"
MAKECLEAN="yes"
@ -59,7 +59,7 @@ if [ ! -e "${CURL_FLAGFILE}" -a $BUILD_WITH_VCPKG = "no" ]; then
fi
fi
if [ -n "$CONFIGURE" ]; then
./configure --host=armv6-linux --prefix="$TCINCLUDES" --libdir="$TCINCLUDES/lib" --disable-shared --enable-static --with-random=/dev/urandom --without-zlib 1>$STDOUT_TARGET
./configure --host=armv6-linux --prefix="$TCINCLUDES" --libdir="$TCINCLUDES/lib" --disable-shared --enable-static --with-random=/dev/urandom 1>$STDOUT_TARGET
fi
if [ $VERBOSE = "no" ]; then
echo MAKE_FLAGS=$MAKE_FLAGS "1>$STDOUT_TARGET"

View File

@ -2,7 +2,7 @@
set -e
#script to compile Example for Android
BUILD_WITH_VCPKG="no"
STDOUT_TARGET="${STDOUT_TARGET:-/dev/stdout}"
COMPILEBOINC="yes"
CONFIGURE="yes"

View File

@ -7,7 +7,7 @@ set -e
# Script to compile various BOINC libraries for Android to be used
# by science applications
BUILD_WITH_VCPKG="no"
STDOUT_TARGET="${STDOUT_TARGET:-/dev/stdout}"
COMPILEBOINC="yes"
CONFIGURE="yes"

View File

@ -27,8 +27,8 @@ export PATH="$TCBINARIES:$TCINCLUDES/bin:$PATH"
export CC=armv7a-linux-androideabi16-clang
export CXX=armv7a-linux-androideabi16-clang++
export LD=arm-linux-androideabi-ld
export CFLAGS="--sysroot=$TCSYSROOT -DANDROID -Wall -I$TCINCLUDES/include -O3 -fomit-frame-pointer -fPIE -march=armv7-a -mfloat-abi=softfp -mfpu=vfpv3-d16 -D__ANDROID_API__=16"
export CXXFLAGS="--sysroot=$TCSYSROOT -DANDROID -Wall -I$TCINCLUDES/include -funroll-loops -fexceptions -O3 -fomit-frame-pointer -fPIE -march=armv7-a -mfloat-abi=softfp -mfpu=vfpv3-d16 -D__ANDROID_API__=16"
export CFLAGS="--sysroot=$TCSYSROOT -DANDROID -Wall -I$TCINCLUDES/include -O3 -fomit-frame-pointer -fPIE -march=armv7-a -mfloat-abi=softfp -mfpu=vfpv3-d16 -D__ANDROID_API__=16 -Dchar16_t=uint16_t -Dchar32_t=uint32_t"
export CXXFLAGS="--sysroot=$TCSYSROOT -DANDROID -Wall -I$TCINCLUDES/include -funroll-loops -fexceptions -O3 -fomit-frame-pointer -fPIE -march=armv7-a -mfloat-abi=softfp -mfpu=vfpv3-d16 -D__ANDROID_API__=16 -Dchar16_t=uint16_t -Dchar32_t=uint32_t"
export LDFLAGS="-L$TCSYSROOT/usr/lib -L$TCINCLUDES/lib -llog -fPIE -pie -latomic -static-libstdc++ -march=armv7-a -Wl,--fix-cortex-a8"
export GDB_CFLAGS="--sysroot=$TCSYSROOT -Wall -g -I$TCINCLUDES/include"
@ -49,7 +49,7 @@ fi
if [ ! -e "${OPENSSL_FLAGFILE}" -a $BUILD_WITH_VCPKG = "no" ]; then
cd "$OPENSSL"
echo "===== building openssl for arm from $PWD ====="
if [ -n "$MAKECLEAN" ]; then
if [ -n "$MAKECLEAN" -a -e "${OPENSSL}/Makefile" ]; then
if [ "$VERBOSE" = "no" ]; then
make clean 1>$STDOUT_TARGET 2>&1
else
@ -57,7 +57,7 @@ if [ ! -e "${OPENSSL_FLAGFILE}" -a $BUILD_WITH_VCPKG = "no" ]; then
fi
fi
if [ -n "$CONFIGURE" ]; then
./Configure linux-generic32 no-shared no-dso -DL_ENDIAN --openssldir="$TCINCLUDES" 1>$STDOUT_TARGET
./Configure linux-generic32 no-shared no-dso -DL_ENDIAN --openssldir="$TCINCLUDES" --prefix="$TCINCLUDES" 1>$STDOUT_TARGET
# override flags in Makefile
sed -e "s/^CFLAG=.*$/`grep -e \^CFLAG= Makefile` \$(CFLAGS)/g" Makefile > Makefile.out
mv Makefile.out Makefile

View File

@ -27,8 +27,8 @@ export PATH="$TCBINARIES:$TCINCLUDES/bin:$PATH"
export CC=aarch64-linux-android21-clang
export CXX=aarch64-linux-android21-clang++
export LD=aarch64-linux-android-ld
export CFLAGS="--sysroot=$TCSYSROOT -DANDROID -Wall -I$TCINCLUDES/include -O3 -fomit-frame-pointer -fPIE -D__ANDROID_API__=21"
export CXXFLAGS="--sysroot=$TCSYSROOT -DANDROID -Wall -I$TCINCLUDES/include -funroll-loops -fexceptions -O3 -fomit-frame-pointer -fPIE -D__ANDROID_API__=21"
export CFLAGS="--sysroot=$TCSYSROOT -DANDROID -Wall -I$TCINCLUDES/include -O3 -fomit-frame-pointer -fPIE -D__ANDROID_API__=21 -Dchar16_t=uint16_t -Dchar32_t=uint32_t"
export CXXFLAGS="--sysroot=$TCSYSROOT -DANDROID -Wall -I$TCINCLUDES/include -funroll-loops -fexceptions -O3 -fomit-frame-pointer -fPIE -D__ANDROID_API__=21 -Dchar16_t=uint16_t -Dchar32_t=uint32_t"
export LDFLAGS="-L$TCSYSROOT/usr/lib -L$TCINCLUDES/lib -llog -fPIE -pie -latomic -static-libstdc++"
export GDB_CFLAGS="--sysroot=$TCSYSROOT -Wall -g -I$TCINCLUDES/include"
@ -49,7 +49,7 @@ fi
if [ ! -e "${OPENSSL_FLAGFILE}" -a $BUILD_WITH_VCPKG = "no" ]; then
cd "$OPENSSL"
echo "===== building openssl for arm64 from $PWD ====="
if [ -n "$MAKECLEAN" ]; then
if [ -n "$MAKECLEAN" -a -e "${OPENSSL}/Makefile" ]; then
if [ "$VERBOSE" = "no" ]; then
make clean 1>$STDOUT_TARGET 2>&1
else
@ -57,7 +57,7 @@ if [ ! -e "${OPENSSL_FLAGFILE}" -a $BUILD_WITH_VCPKG = "no" ]; then
fi
fi
if [ -n "$CONFIGURE" ]; then
./Configure linux-generic32 no-shared no-dso -DL_ENDIAN --openssldir="$TCINCLUDES" 1>$STDOUT_TARGET
./Configure linux-generic32 no-shared no-dso -DL_ENDIAN --openssldir="$TCINCLUDES" --prefix="$TCINCLUDES" 1>$STDOUT_TARGET
# override flags in Makefile
sed -e "s/^CFLAG=.*$/`grep -e \^CFLAG= Makefile` \$(CFLAGS)/g" Makefile > Makefile.out
mv Makefile.out Makefile

View File

@ -6,7 +6,7 @@ set -e
#
# Script to compile OpenSSL for Android
BUILD_WITH_VCPKG="no"
STDOUT_TARGET="${STDOUT_TARGET:-/dev/stdout}"
CONFIGURE="yes"
MAKECLEAN="yes"
@ -26,8 +26,8 @@ export PATH="$TCBINARIES:$TCINCLUDES/bin:$PATH"
export CC=arm-linux-androideabi-clang
export CXX=arm-linux-androideabi-clang++
export LD=arm-linux-androideabi-ld
export CFLAGS="--sysroot=$TCSYSROOT -DANDROID -Wall -I$TCINCLUDES/include -O3 -fomit-frame-pointer -fPIE -march=armv6 -mfloat-abi=softfp -mfpu=vfp -D__ANDROID_API__=16 -DARMV6"
export CXXFLAGS="--sysroot=$TCSYSROOT -DANDROID -Wall -funroll-loops -fexceptions -O3 -fomit-frame-pointer -fPIE -march=armv6 -mfloat-abi=softfp -mfpu=vfp -D__ANDROID_API__=16 -DARMV6"
export CFLAGS="--sysroot=$TCSYSROOT -DANDROID -Wall -I$TCINCLUDES/include -O3 -fomit-frame-pointer -fPIE -march=armv6 -mfloat-abi=softfp -mfpu=vfp -D__ANDROID_API__=16 -DARMV6 -Dchar16_t=uint16_t -Dchar32_t=uint32_t"
export CXXFLAGS="--sysroot=$TCSYSROOT -DANDROID -Wall -funroll-loops -fexceptions -O3 -fomit-frame-pointer -fPIE -march=armv6 -mfloat-abi=softfp -mfpu=vfp -D__ANDROID_API__=16 -DARMV6 -Dchar16_t=uint16_t -Dchar32_t=uint32_t"
export LDFLAGS="-L$TCSYSROOT/usr/lib -L$TCINCLUDES/lib -llog -fPIE -pie -latomic -static-libstdc++ -march=armv6"
export GDB_CFLAGS="--sysroot=$TCSYSROOT -Wall -g -I$TCINCLUDES/include"
@ -51,7 +51,7 @@ fi
if [ ! -e "${OPENSSL_FLAGFILE}" -a $BUILD_WITH_VCPKG = "no" ]; then
cd "$OPENSSL"
echo "===== building openssl for armv6 from $PWD ====="
if [ -n "$MAKECLEAN" ]; then
if [ -n "$MAKECLEAN" -a -e "${OPENSSL}/Makefile" ]; then
if [ "$VERBOSE" = "no" ]; then
make clean 1>$STDOUT_TARGET 2>&1
else
@ -59,7 +59,7 @@ if [ ! -e "${OPENSSL_FLAGFILE}" -a $BUILD_WITH_VCPKG = "no" ]; then
fi
fi
if [ -n "$CONFIGURE" ]; then
./Configure linux-generic32 no-shared no-dso -DL_ENDIAN --openssldir="$TCINCLUDES" 1>$STDOUT_TARGET
./Configure linux-generic32 no-shared no-dso -DL_ENDIAN --openssldir="$TCINCLUDES" --prefix="$TCINCLUDES" 1>$STDOUT_TARGET
# override flags in Makefile
sed -e "s/^CFLAG=.*$/`grep -e \^CFLAG= Makefile` \$(CFLAGS)/g" Makefile > Makefile.out
mv Makefile.out Makefile

View File

@ -27,8 +27,8 @@ export PATH="$TCBINARIES:$TCINCLUDES/bin:$PATH"
export CC=i686-linux-android16-clang
export CXX=i686-linux-android16-clang++
export LD=i686-linux-android-ld
export CFLAGS="--sysroot=$TCSYSROOT -DANDROID -Wall -I$TCINCLUDES/include -O3 -fomit-frame-pointer -fPIE -D__ANDROID_API__=16"
export CXXFLAGS="--sysroot=$TCSYSROOT -DANDROID -Wall -I$TCINCLUDES/include -funroll-loops -fexceptions -O3 -fomit-frame-pointer -fPIE -D__ANDROID_API__=16"
export CFLAGS="--sysroot=$TCSYSROOT -DANDROID -Wall -I$TCINCLUDES/include -O3 -fomit-frame-pointer -fPIE -D__ANDROID_API__=16 -Dchar16_t=uint16_t -Dchar32_t=uint32_t"
export CXXFLAGS="--sysroot=$TCSYSROOT -DANDROID -Wall -I$TCINCLUDES/include -funroll-loops -fexceptions -O3 -fomit-frame-pointer -fPIE -D__ANDROID_API__=16 -Dchar16_t=uint16_t -Dchar32_t=uint32_t"
export LDFLAGS="-L$TCSYSROOT/usr/lib -L$TCINCLUDES/lib -llog -fPIE -pie -latomic -static-libstdc++"
export GDB_CFLAGS="--sysroot=$TCSYSROOT -Wall -g -I$TCINCLUDES/include"
@ -49,7 +49,7 @@ fi
if [ ! -e "${OPENSSL_FLAGFILE}" -a $BUILD_WITH_VCPKG = "no" ]; then
cd "$OPENSSL"
echo "===== building openssl for x86 from $PWD ====="
if [ -n "$MAKECLEAN" ]; then
if [ -n "$MAKECLEAN" -a -e "${OPENSSL}/Makefile" ]; then
if [ "$VERBOSE" = "no" ]; then
make clean 1>$STDOUT_TARGET 2>&1
else
@ -57,7 +57,7 @@ if [ ! -e "${OPENSSL_FLAGFILE}" -a $BUILD_WITH_VCPKG = "no" ]; then
fi
fi
if [ -n "$CONFIGURE" ]; then
./Configure linux-generic32 no-shared no-dso -DL_ENDIAN --openssldir="$TCINCLUDES" 1>$STDOUT_TARGET
./Configure linux-generic32 no-shared no-dso -DL_ENDIAN --openssldir="$TCINCLUDES" --prefix="$TCINCLUDES" 1>$STDOUT_TARGET
# override flags in Makefile
sed -e "s/^CFLAG=.*$/`grep -e \^CFLAG= Makefile` \$(CFLAGS)/g" Makefile > Makefile.out
mv Makefile.out Makefile

View File

@ -27,8 +27,8 @@ export PATH="$TCBINARIES:$TCINCLUDES/bin:$PATH"
export CC=x86_64-linux-android21-clang
export CXX=x86_64-linux-android21-clang++
export LD=x86_64-linux-android-ld
export CFLAGS="--sysroot=$TCSYSROOT -DANDROID -Wall -I$TCINCLUDES/include -O3 -fomit-frame-pointer -fPIE -D__ANDROID_API__=21"
export CXXFLAGS="--sysroot=$TCSYSROOT -DANDROID -Wall -I$TCINCLUDES/include -funroll-loops -fexceptions -O3 -fomit-frame-pointer -fPIE -D__ANDROID_API__=21"
export CFLAGS="--sysroot=$TCSYSROOT -DANDROID -Wall -I$TCINCLUDES/include -O3 -fomit-frame-pointer -fPIE -D__ANDROID_API__=21 -Dchar16_t=uint16_t -Dchar32_t=uint32_t"
export CXXFLAGS="--sysroot=$TCSYSROOT -DANDROID -Wall -I$TCINCLUDES/include -funroll-loops -fexceptions -O3 -fomit-frame-pointer -fPIE -D__ANDROID_API__=21 -Dchar16_t=uint16_t -Dchar32_t=uint32_t"
export LDFLAGS="-L$TCSYSROOT/usr/lib -L$TCINCLUDES/lib -llog -fPIE -pie -latomic -static-libstdc++"
export GDB_CFLAGS="--sysroot=$TCSYSROOT -Wall -g -I$TCINCLUDES/include"
@ -49,7 +49,7 @@ fi
if [ ! -e "${OPENSSL_FLAGFILE}" -a $BUILD_WITH_VCPKG = "no" ]; then
cd "$OPENSSL"
echo "===== building openssl for x86-64 from $PWD ====="
if [ -n "$MAKECLEAN" ]; then
if [ -n "$MAKECLEAN" -a -e "${OPENSSL}/Makefile" ]; then
if [ "$VERBOSE" = "no" ]; then
make clean 1>$STDOUT_TARGET 2>&1
else
@ -57,7 +57,7 @@ if [ ! -e "${OPENSSL_FLAGFILE}" -a $BUILD_WITH_VCPKG = "no" ]; then
fi
fi
if [ -n "$CONFIGURE" ]; then
./Configure linux-x86_64 no-shared no-dso -DL_ENDIAN --openssldir="$TCINCLUDES" 1>$STDOUT_TARGET
./Configure linux-x86_64 no-shared no-dso -DL_ENDIAN --openssldir="$TCINCLUDES" --prefix="$TCINCLUDES" 1>$STDOUT_TARGET
# override flags in Makefile
sed -e "s/^CFLAG=.*$/`grep -e \^CFLAG= Makefile` \$(CFLAGS)/g" Makefile > Makefile.out
mv Makefile.out Makefile