mirror of
https://github.com/PurpleI2P/i2pd-android.git
synced 2025-02-03 02:14:24 +00:00
[chore] update i2pd to 2.53.0, change build script
Signed-off-by: r4sas <r4sas@i2pmail.org>
This commit is contained in:
parent
988940f50a
commit
031c536945
1
.gitignore
vendored
1
.gitignore
vendored
@ -10,7 +10,6 @@ obj
|
||||
.externalNativeBuild
|
||||
ant.properties
|
||||
local.properties
|
||||
build.sh
|
||||
android.iml
|
||||
build
|
||||
*.iml
|
||||
|
@ -38,7 +38,7 @@ function checkPreRequisites {
|
||||
fi
|
||||
|
||||
if [ -z "$ANDROID_HOME" -a "$ANDROID_HOME" == "" ]; then
|
||||
echo -e "\033[31mFailed! ANDROID_HOME is empty. Run 'export ANDROID_HOME=[PATH_TO_NDK]'\033[0m"
|
||||
echo -e "\033[31mFailed! ANDROID_HOME is empty. Run 'export ANDROID_HOME=[PATH_TO_SDK]'\033[0m"
|
||||
exit
|
||||
fi
|
||||
|
||||
|
@ -1 +1 @@
|
||||
Subproject commit 4163542125925e0b098d43e1471c86e1bd935cdd
|
||||
Subproject commit 9a6654943d9b90687fa474ba0ffbf024851d92f2
|
83
binary/jni/build.sh
Executable file
83
binary/jni/build.sh
Executable file
@ -0,0 +1,83 @@
|
||||
#!/bin/bash
|
||||
|
||||
# https://stackoverflow.com/a/246128
|
||||
SOURCE="${0}"
|
||||
while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink
|
||||
DIR="$( cd -P "$( dirname "$SOURCE" )" >/dev/null 2>&1 && pwd )"
|
||||
SOURCE="$(readlink "$SOURCE")"
|
||||
[[ $SOURCE != /* ]] && SOURCE="$DIR/$SOURCE" # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located
|
||||
done
|
||||
DIR="$( cd -P "$( dirname "$SOURCE" )" >/dev/null 2>&1 && pwd )"
|
||||
|
||||
# Checking Android SDK
|
||||
if [ -z "$ANDROID_HOME" -a "$ANDROID_HOME" == "" ]; then
|
||||
echo -e "\033[31mFailed! ANDROID_HOME is empty. Run 'export ANDROID_HOME=[PATH_TO_SDK]'\033[0m"
|
||||
exit
|
||||
fi
|
||||
|
||||
# Checking Android NDK
|
||||
if [ -z "$ANDROID_NDK_HOME" -a "$ANDROID_NDK_HOME" == "" ]; then
|
||||
echo -e "\033[31mFailed! ANDROID_NDK_HOME is empty. Run 'export ANDROID_NDK_HOME=[PATH_TO_NDK]'\033[0m"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
_NDK_OPTS="-j `nproc` NDK_MODULE_PATH=$DIR"
|
||||
|
||||
help()
|
||||
{
|
||||
echo "Syntax: $(basename "$SOURCE") [-m|d|s|h|v]"
|
||||
echo "Options:"
|
||||
echo "m Rename binaries as libraries."
|
||||
echo "d Debug build."
|
||||
echo "s Strip binaries."
|
||||
echo "h Print this Help."
|
||||
echo "v Verbose NDK output."
|
||||
echo
|
||||
}
|
||||
|
||||
while getopts ":dmsvh" option; do
|
||||
case $option in
|
||||
d) # debug build
|
||||
_NDK_OPTS="$_NDK_OPTS NDK_DEBUG=1"
|
||||
;;
|
||||
m) # make module
|
||||
_MODULE=1
|
||||
;;
|
||||
s) # strip binaries
|
||||
_STRIP=1
|
||||
;;
|
||||
v) # verbose output
|
||||
_NDK_OPTS="$_NDK_OPTS V=1 NDK_LOG=1"
|
||||
;;
|
||||
h) # display help
|
||||
help
|
||||
exit;;
|
||||
\?) # Invalid option
|
||||
echo "Error: Invalid option. Use $(basename "$SOURCE") -h for help"
|
||||
exit;;
|
||||
esac
|
||||
done
|
||||
|
||||
# Building
|
||||
echo Building boost...
|
||||
./build_boost.sh
|
||||
|
||||
echo Building openssl...
|
||||
./build_openssl.sh
|
||||
|
||||
echo Building miniupnpc...
|
||||
./build_miniupnpc.sh
|
||||
|
||||
echo Building i2pd...
|
||||
$ANDROID_NDK_HOME/ndk-build $_NDK_OPTS
|
||||
|
||||
pushd $DIR/../libs
|
||||
for xarch in $(ls .); do
|
||||
if [ ! -z "$_STRIP" ]; then
|
||||
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/llvm-strip -s $xarch/i2pd
|
||||
fi
|
||||
if [ ! -z "$_MODULE" ]; then
|
||||
mv $xarch/i2pd $xarch/libi2pd.so
|
||||
fi
|
||||
done
|
||||
popd
|
@ -1,23 +0,0 @@
|
||||
export I2PD_DEBUG=1
|
||||
if [ -z "$ANDROID_NDK_HOME" -a "$ANDROID_NDK_HOME" == "" ]; then
|
||||
echo -e "\033[31mFailed! ANDROID_NDK_HOME is empty. Run 'export ANDROID_NDK_HOME=[PATH_TO_NDK]'\033[0m"
|
||||
exit 1
|
||||
fi
|
||||
echo Building boost...
|
||||
./build_boost.sh
|
||||
echo Building miniupnpc...
|
||||
./build_miniupnpc.sh
|
||||
echo Building openssl...
|
||||
./build_openssl.sh
|
||||
echo Building i2pd...
|
||||
pushd .
|
||||
NDK_MODULE_PATH=`pwd`
|
||||
cd ..
|
||||
NDK_PROJECT_PATH=`pwd`
|
||||
popd
|
||||
if [ -z "$BUILD_SO" -a "$BUILD_SO" == "" ]; then
|
||||
export NDK_MODULE_PATH=$NDK_MODULE_PATH && export NDK_PROJECT_PATH=$NDK_PROJECT_PATH && $ANDROID_NDK_HOME/ndk-build V=1 NDK_LOG=1 -j`nproc` NDK_DEBUG=1
|
||||
else
|
||||
export NDK_MODULE_PATH=$NDK_MODULE_PATH && export NDK_PROJECT_PATH=$NDK_PROJECT_PATH && ./ndkbuild-wrapper.sh V=1 NDK_LOG=1 -j`nproc` NDK_DEBUG=1
|
||||
fi
|
||||
echo "$0 completed."
|
@ -1,20 +0,0 @@
|
||||
if [ -z "$ANDROID_NDK_HOME" -a "$ANDROID_NDK_HOME" == "" ]; then
|
||||
echo -e "\033[31mFailed! ANDROID_NDK_HOME is empty. Run 'export ANDROID_NDK_HOME=[PATH_TO_NDK]'\033[0m"
|
||||
exit 1
|
||||
fi
|
||||
echo Building boost...
|
||||
./build_boost.sh
|
||||
echo Building miniupnpc...
|
||||
./build_miniupnpc.sh
|
||||
echo Building openssl...
|
||||
./build_openssl.sh
|
||||
echo Building i2pd...
|
||||
NDK_MODULE_PATH=`pwd`
|
||||
cd ..
|
||||
NDK_PROJECT_PATH=`pwd`
|
||||
if [ -z "$BUILD_SO" -a "$BUILD_SO" == "" ]; then
|
||||
export NDK_MODULE_PATH=$NDK_MODULE_PATH && export NDK_PROJECT_PATH=$NDK_PROJECT_PATH && $ANDROID_NDK_HOME/ndk-build V=1 NDK_LOG=1 -j`nproc`
|
||||
else
|
||||
export NDK_MODULE_PATH=$NDK_MODULE_PATH && export NDK_PROJECT_PATH=$NDK_PROJECT_PATH && ./ndkbuild-wrapper.sh V=1 NDK_LOG=1 -j`nproc`
|
||||
fi
|
||||
echo "$0 completed."
|
@ -1,16 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
cd $NDK_PROJECT_PATH/jni
|
||||
$ANDROID_NDK_HOME/ndk-build $*
|
||||
|
||||
# if it doesn't exist, then create
|
||||
if [ ! -d $NDK_PROJECT_PATH/libs ]; then mkdir $NDK_PROJECT_PATH/libs; fi
|
||||
|
||||
cd $NDK_PROJECT_PATH/libs
|
||||
for f in $(ls .);
|
||||
do
|
||||
if [ -z "$I2PD_DEBUG" -a "$I2PD_DEBUG" == "" ]; then
|
||||
strip $f/i2pd
|
||||
fi
|
||||
mv $f/i2pd $f/libi2pd.so
|
||||
done
|
Loading…
x
Reference in New Issue
Block a user