Created
April 26, 2016 20:54
-
-
Save gordonmcshane/2651e08f5bef15d70429f86bc51125a4 to your computer and use it in GitHub Desktop.
quick script
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
#fail fast | |
set -e | |
SRC=$1 | |
OUTPUT=$2 | |
if [[ ! $SRC = /* ]]; then | |
SRC="$PWD/${SRC#./}" | |
fi | |
if [[ ! $OUTPUT = /* ]]; then | |
OUTPUT="$PWD/${OUTPUT#./}" | |
fi | |
echo -- $OUTPUT | |
TOOLCHAIN_PATH=$OUTPUT/toolchain/ | |
ARCH=arm | |
TOOLCHAIN=arm-linux-androideabi-clang | |
HOST_TRIPLET=arm-linux-androideabi | |
#ARCH=x86 | |
#TOOLCHAIN=x86-clang | |
#HOST_TRIPLET=x86-linux-android | |
PLATFORM_VERSION=android-19 | |
WARNING_SUPRESSIONS="-Wno-unused-const-variable \ | |
-Wno-unused-local-typedef \ | |
-Wno-unused-function" | |
export PATH=$TOOLCHAIN_PATH/bin:$PATH | |
export SYSROOT=$TOOLCHAIN_PATH/sysroot | |
export CC=$TOOLCHAIN_PATH/bin/clang | |
export CXX=$TOOLCHAIN_PATH/bin/clang++ | |
case "$ARCH" in | |
arm) | |
CFLAGS="$CFLAGS -march=armv7-a -mfloat-abi=softfp -mfpu=neon" | |
CXXFLAGS="$CXXFLAGS -march=armv7-a -mfloat-abi=softfp -mfpu=neon" | |
export LDFLAGS="-march=armv7-a -Wl,--fix-cortex-a8" | |
;; | |
x86) | |
# x86 flags | |
;; | |
esac | |
export CFLAGS="$CFLAGS $(echo $WARNING_SUPRESSIONS | xargs)" | |
export CXXFLAGS="$CXXFLAGS $(echo $WARNING_SUPRESSIONS | xargs)" | |
echo "CFLAGS = $CFLAGS" | |
echo "CXXFLAGS = $CXXFLAGS" | |
echo "LDFLAGS = $LDFLAGS" | |
echo "Creating standalone android toolchain in $TOOLCHAIN_PATH" | |
TOOLCHAIN_BUILD=$NDK_ROOT/build/tools/make-standalone-toolchain.sh | |
$TOOLCHAIN_BUILD --toolchain=$TOOLCHAIN \ | |
--arch=$ARCH \ | |
--platform=$PLATFORM_VERSION \ | |
--install-dir=$TOOLCHAIN_PATH | |
cmake \ | |
-DCMAKE_TOOLCHAIN_FILE=$SRC/cmake/toolchains/android.toolchain.cmake \ | |
-DANDROID_STANDALONE_TOOLCHAIN=$TOOLCHAIN_PATH \ | |
-DANDROID_TOOLCHAIN_NAME=standalone-clang $SRC | |
cmake --build . --target install |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment