Skip to content

Commit

Permalink
Merge pull request #63 from xbolshe/master
Browse files Browse the repository at this point in the history
[Android] Remove XCODE tools, update libraries and README.md, remove ANDROID_HOME check
  • Loading branch information
leenjewel committed Jan 3, 2021
2 parents d55501d + 2540856 commit 5843a39
Show file tree
Hide file tree
Showing 9 changed files with 20 additions and 34 deletions.
22 changes: 15 additions & 7 deletions README.md
Expand Up @@ -26,25 +26,29 @@ If you do not want to build it by yourself, you could download our prebuilt libr
- ~~[openssl-1.0.2c.tar.gz](https://www.openssl.org/source/openssl-1.0.2c.tar.gz)~~
- [openssl-1.1.0f.tar.gz](https://www.openssl.org/source/openssl-1.1.0f.tar.gz)
- [openssl-1.1.1d.tar.gz](https://www.openssl.org/source/openssl-1.1.1d.tar.gz)
- [openssl-1.1.1i.tar.gz](https://www.openssl.org/source/openssl-1.1.1i.tar.gz)
- [https://github.com/openssl/openssl](https://github.com/openssl/openssl)

## nghttp2 Version

- [nghttp2-1.40.0.tar.gz](https://github.com/nghttp2/nghttp2/releases/download/v1.40.0/nghttp2-1.40.0.tar.gz)
- [nghttp2-1.42.0.tar.gz](https://github.com/nghttp2/nghttp2/releases/download/v1.42.0/nghttp2-1.42.0.tar.gz)
- [https://nghttp2.org/](https://nghttp2.org/)

## cURL Version

- ~~[curl-7.47.1.tar.gz](https://curl.haxx.se/download/curl-7.47.1.tar.gz)~~
- [curl-7.66.0.tar.gz](https://curl.haxx.se/download/curl-7.66.0.tar.gz)
- [curl-7.68.0.tar.gz](https://curl.haxx.se/download/curl-7.68.0.tar.gz)
- [curl-7.74.0.tar.gz](https://curl.haxx.se/download/curl-7.74.0.tar.gz)
- [https://github.com/curl/curl](https://github.com/curl/curl)

## Android NDK Version

- ~~[android-ndk-r13b](https://dl.google.com/android/repository/android-ndk-r13b-darwin-x86_64.zip)~~
- ~~[android-ndk-r14b](https://dl.google.com/android/repository/android-ndk-r14b-darwin-x86_64.zip)~~
- ~~android-ndk-r15 (**Do not try to build use 15 It will fail**)~~
- [android-ndk-r21d-darwin](https://dl.google.com/android/repository/android-ndk-r21d-darwin-x86_64.zip) [android-ndk-r21d-linux](https://dl.google.com/android/repository/android-ndk-r21d-linux-x86_64.zip)
- support api 23 above

## How to build
Expand All @@ -69,26 +73,30 @@ $ sh build-ios-curl.sh

### For Android

- Android Studio info: 3.5.3 (for reference only)
- Android Studio info: 4.1, November 5, 2020 (for reference only)
- Android NDK info: r21d
- Build dependencies: todo
- Build order: 1.build openssl, 2.build nghttp2, 3.build curl (curl depend openssl and nghttp2)
- build static library(.a) and dynamic library (exclude curl arm64-v8a)
- env macro: for example:
```
export ANDROID_HOME=/Users/userid/Library/Android/sdk
export ANDROID_NDK_ROOT=$ANDROID_HOME/ndk-bundle
export ANDROID_NDK_ROOT=/Location/where/installed/android-ndk-r21d
```
- build sh cmd: for example:
```
$ cd tools
$ sh build-android-openssl.sh
$ sh build-android-nghttp2.sh
$ sh build-android-curl.sh
$ export api=16
$ ./build-android-openssl.sh arm
$ ./build-android-nghttp2.sh arm
$ ./build-android-curl.sh arm
$ export api=21
$ ./build-android-openssl.sh arm64
$ ./build-android-nghttp2.sh arm64
$ ./build-android-curl.sh arm64
```



> **You must build openssl and nghttp2(support http2) first**
### Others
Expand Down
5 changes: 0 additions & 5 deletions tools/build-android-common.sh
Expand Up @@ -40,11 +40,6 @@ if [[ -z ${ANDROID_NDK_ROOT} ]]; then
exit 1
fi

if [[ -z ${ANDROID_HOME} ]]; then
echo "ANDROID_HOME not defined"
exit 1
fi

function get_toolchain() {
HOST_OS=$(uname -s)
case ${HOST_OS} in
Expand Down
4 changes: 1 addition & 3 deletions tools/build-android-curl.sh
Expand Up @@ -21,7 +21,7 @@ set -u
source ./build-android-common.sh

if [ -z ${version+x} ]; then
version="7.68.0"
version="7.74.0"
fi

init_log_color
Expand All @@ -48,8 +48,6 @@ echo "https://github.com/curl/curl/releases/download/${LIB_VERSION}/${LIB_NAME}.
# https://curl.haxx.se/download/${LIB_NAME}.tar.gz
# https://github.com/curl/curl/releases/download/curl-7_69_0/curl-7.69.0.tar.gz
# https://github.com/curl/curl/releases/download/curl-7_68_0/curl-7.68.0.tar.gz
DEVELOPER=$(xcode-select -print-path)
SDK_VERSION=$(xcrun -sdk iphoneos --show-sdk-version)
rm -rf "${LIB_DEST_DIR}" "${LIB_NAME}"
[ -f "${LIB_NAME}.tar.gz" ] || curl -LO https://github.com/curl/curl/releases/download/${LIB_VERSION}/${LIB_NAME}.tar.gz >${LIB_NAME}.tar.gz

Expand Down
2 changes: 0 additions & 2 deletions tools/build-android-lz4.sh
Expand Up @@ -41,8 +41,6 @@ LIB_DEST_DIR="${pwd_path}/../output/android/lz4"

#echo "https://github.com/lz4/lz4/releases/download/${LIB_VERSION}/${LIB_NAME}.tar.gz"

DEVELOPER=$(xcode-select -print-path)
SDK_VERSION=$(xcrun -sdk iphoneos --show-sdk-version)
rm -rf "${LIB_DEST_DIR}" "${LIB_NAME}"
[ -f "${LIB_NAME}.tar.gz" ] || curl -L https://github.com/lz4/lz4/archive/${LIB_VERSION}.tar.gz >${LIB_NAME}.tar.gz

Expand Down
4 changes: 1 addition & 3 deletions tools/build-android-nghttp2.sh
Expand Up @@ -21,7 +21,7 @@ set -u
source ./build-android-common.sh

if [ -z ${version+x} ]; then
version="1.40.0"
version="1.42.0"
fi

init_log_color
Expand All @@ -45,8 +45,6 @@ LIB_DEST_DIR="${pwd_path}/../output/android/nghttp2-universal"

echo "https://github.com/nghttp2/nghttp2/releases/download/${LIB_VERSION}/${LIB_NAME}.tar.gz"

DEVELOPER=$(xcode-select -print-path)
SDK_VERSION=$(xcrun -sdk iphoneos --show-sdk-version)
rm -rf "${LIB_DEST_DIR}" "${LIB_NAME}"
[ -f "${LIB_NAME}.tar.gz" ] || curl -LO https://github.com/nghttp2/nghttp2/releases/download/${LIB_VERSION}/${LIB_NAME}.tar.gz >${LIB_NAME}.tar.gz

Expand Down
4 changes: 1 addition & 3 deletions tools/build-android-openssl.sh
Expand Up @@ -21,7 +21,7 @@ set -u
source ./build-android-common.sh

if [ -z ${version+x} ]; then
version="1.1.1d"
version="1.1.1i"
fi

init_log_color
Expand Down Expand Up @@ -49,8 +49,6 @@ echo "https://www.openssl.org/source/${LIB_NAME}.tar.gz"

# https://github.com/openssl/openssl/archive/OpenSSL_1_1_1d.tar.gz
# https://github.com/openssl/openssl/archive/OpenSSL_1_1_1f.tar.gz
DEVELOPER=$(xcode-select -print-path)
SDK_VERSION=$(xcrun -sdk iphoneos --show-sdk-version)
rm -rf "${LIB_DEST_DIR}" "${LIB_NAME}"
[ -f "${LIB_NAME}.tar.gz" ] || curl https://www.openssl.org/source/${LIB_NAME}.tar.gz >${LIB_NAME}.tar.gz

Expand Down
5 changes: 0 additions & 5 deletions tools/build-android-rsync.sh
Expand Up @@ -41,11 +41,6 @@ LIB_DEST_DIR="${pwd_path}/../output/android/curl-universal"

echo "https://download.samba.org/pub/rsync/${LIB_NAME}.tar.gz"

# https://curl.haxx.se/download/${LIB_NAME}.tar.gz
# https://github.com/curl/curl/releases/download/curl-7_69_0/curl-7.69.0.tar.gz
# https://github.com/curl/curl/releases/download/curl-7_68_0/curl-7.68.0.tar.gz
DEVELOPER=$(xcode-select -print-path)
SDK_VERSION=$(xcrun -sdk iphoneos --show-sdk-version)
rm -rf "${LIB_DEST_DIR}" "${LIB_NAME}"
[ -f "${LIB_NAME}.tar.gz" ] || curl -LO https://download.samba.org/pub/rsync/${LIB_NAME}.tar.gz >${LIB_NAME}.tar.gz

Expand Down
2 changes: 0 additions & 2 deletions tools/build-android-xxhash.sh
Expand Up @@ -41,8 +41,6 @@ LIB_DEST_DIR="${pwd_path}/../output/android/xxhash"

#echo "https://github.com/xxhash/xxhash/releases/download/${LIB_VERSION}/${LIB_NAME}.tar.gz"

DEVELOPER=$(xcode-select -print-path)
SDK_VERSION=$(xcrun -sdk iphoneos --show-sdk-version)
rm -rf "${LIB_DEST_DIR}" "${LIB_NAME}"
[ -f "${LIB_NAME}.tar.gz" ] || curl -L https://github.com/Cyan4973/xxHash/archive/${LIB_VERSION}.tar.gz >${LIB_NAME}.tar.gz

Expand Down
6 changes: 2 additions & 4 deletions tools/build-android-zstd.sh
Expand Up @@ -35,14 +35,12 @@ pwd_path="$(cd -P "$(dirname "$SOURCE")" && pwd)"
echo pwd_path=${pwd_path}
echo TOOLS_ROOT=${TOOLS_ROOT}

LIB_VERSION="v1.4.5"
LIB_NAME="zstd-1.4.5"
LIB_VERSION="v1.4.8"
LIB_NAME="zstd-1.4.8"
LIB_DEST_DIR="${pwd_path}/../output/android/zstd"

#echo "https://github.com/zstd/zstd/releases/download/${LIB_VERSION}/${LIB_NAME}.tar.gz"

DEVELOPER=$(xcode-select -print-path)
SDK_VERSION=$(xcrun -sdk iphoneos --show-sdk-version)
rm -rf "${LIB_DEST_DIR}" "${LIB_NAME}"
[ -f "${LIB_NAME}.tar.gz" ] || curl -L https://github.com/facebook/zstd/archive/${LIB_VERSION}.tar.gz >${LIB_NAME}.tar.gz

Expand Down

0 comments on commit 5843a39

Please sign in to comment.