R4SAS
2 months ago
7 changed files with 85 additions and 62 deletions
@ -1 +1 @@
@@ -1 +1 @@
|
||||
Subproject commit 4163542125925e0b098d43e1471c86e1bd935cdd |
||||
Subproject commit 9a6654943d9b90687fa474ba0ffbf024851d92f2 |
@ -0,0 +1,83 @@
@@ -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 @@
@@ -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 @@
@@ -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 @@
@@ -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…
Reference in new issue