Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- . settings.sh
- BASEDIR=$(pwd)
- TOOLCHAIN_PREFIX=${BASEDIR}/toolchain-android
- # Applying required patches
- patch -p0 -N --dry-run --silent -f fontconfig/src/fcxml.c < android_donot_use_lconv.patch 1>/dev/null
- if [ $? -eq 0 ]; then
- patch -p0 -f fontconfig/src/fcxml.c < android_donot_use_lconv.patch
- fi
- for i in "${SUPPORTED_ARCHITECTURES[@]}"
- do
- rm -rf ${TOOLCHAIN_PREFIX}
- # $1 = architecture
- # $2 = base directory
- # $3 = pass 1 if you want to export default compiler environment variables
- ./libpng_build.sh $i $BASEDIR 1 || exit 1
- ./expat_build.sh $i $BASEDIR 1 || exit 1
- ./ffmpeg_build.sh $i $BASEDIR 0 || exit 1
- done
- rm -rf ${TOOLCHAIN_PREFIX}
- #!/bin/bash
- . settings.sh
- BASEDIR=$2
- case $1 in
- armeabi-v7a)
- NDK_ABI='arm'
- NDK_TOOLCHAIN_ABI='arm-linux-androideabi'
- NDK_CROSS_PREFIX="${NDK_TOOLCHAIN_ABI}"
- ;;
- x86)
- NDK_ABI='x86'
- NDK_TOOLCHAIN_ABI='x86'
- NDK_CROSS_PREFIX="i686-linux-android"
- CFLAGS="$CFLAGS -march=i686"
- ;;
- esac
- TOOLCHAIN_PREFIX=${BASEDIR}/toolchain-android
- if [ ! -d "$TOOLCHAIN_PREFIX" ]; then
- ${ANDROID_NDK_ROOT_PATH}/build/tools/make-standalone-toolchain.sh --toolchain=${NDK_TOOLCHAIN_ABI}-${NDK_TOOLCHAIN_ABI_VERSION} --platform=android-${ANDROID_API_VERSION} --install-dir=${TOOLCHAIN_PREFIX}
- fi
- CROSS_PREFIX=${TOOLCHAIN_PREFIX}/bin/${NDK_CROSS_PREFIX}-
- NDK_SYSROOT=${TOOLCHAIN_PREFIX}/sysroot
- export PKG_CONFIG_LIBDIR="${TOOLCHAIN_PREFIX}/lib/pkgconfig"
- if [ $3 == 1 ]; then
- export CC="${CROSS_PREFIX}gcc --sysroot=${NDK_SYSROOT}"
- export LD="${CROSS_PREFIX}ld"
- export RANLIB="${CROSS_PREFIX}ranlib"
- export STRIP="${CROSS_PREFIX}strip"
- export READELF="${CROSS_PREFIX}readelf"
- export OBJDUMP="${CROSS_PREFIX}objdump"
- export ADDR2LINE="${CROSS_PREFIX}addr2line"
- export AR="${CROSS_PREFIX}ar"
- export AS="${CROSS_PREFIX}as"
- export CXX="${CROSS_PREFIX}g++"
- export OBJCOPY="${CROSS_PREFIX}objcopy"
- export ELFEDIT="${CROSS_PREFIX}elfedit"
- export CPP="${CROSS_PREFIX}cpp"
- export DWP="${CROSS_PREFIX}dwp"
- export GCONV="${CROSS_PREFIX}gconv"
- export GDP="${CROSS_PREFIX}gdb"
- export GPROF="${CROSS_PREFIX}gprof"
- export NM="${CROSS_PREFIX}nm"
- export SIZE="${CROSS_PREFIX}size"
- export STRINGS="${CROSS_PREFIX}strings"
- fi
- #!/bin/bash
- SUPPORTED_ARCHITECTURES=(armeabi-v7a x86)
- ANDROID_NDK_ROOT_PATH=${ANDROID_NDK}
- if [[ -z "$ANDROID_NDK_ROOT_PATH" ]]; then
- echo "You need to set ANDROID_NDK environment variable, please check instructions"
- exit
- fi
- ANDROID_API_VERSION=21
- NDK_TOOLCHAIN_ABI_VERSION=4.9
- NUMBER_OF_CORES=$(nproc)
- HOST_UNAME=$(uname -m)
- TARGET_OS=linux
- CFLAGS='-U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fstack-protector-all'
- LDFLAGS='-Wl,-z,relro -Wl,-z,now -pie'
- FFMPEG_PKG_CONFIG="$(pwd)/ffmpeg-pkg-config"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement