#!/bin/bash set -x try () { "$@" || exit -1 } # iOS SDK Environmnent export SDKVER=5.0 export DEVROOT=/Developer/Platforms/iPhoneOS.platform/Developer export SDKROOT=$DEVROOT/SDKs/iPhoneOS$SDKVER.sdk # version of packages export PYTHON_VERSION=2.7.1 export SDLTTF_VERSION=2.0.10 export FT_VERSION=2.4.8 # where the build will be located export KIVYIOSROOT="$( cd -P "$( dirname "${BASH_SOURCE[0]}" )/../" && pwd )" export BUILDROOT="$KIVYIOSROOT/build" export TMPROOT="$KIVYIOSROOT/tmp" export CACHEROOT="$KIVYIOSROOT/.cache" # some tools export CCACHE=$(which ccache) # flags for arm compilation export ARM_CC="$CCACHE $DEVROOT/usr/bin/arm-apple-darwin10-llvm-gcc-4.2" export ARM_AR="$DEVROOT/usr/bin/ar" export ARM_LD="$DEVROOT/usr/bin/ld" export ARM_CFLAGS="-march=armv7 -mcpu=arm176jzf -mcpu=cortex-a8" export ARM_CFLAGS="$ARM_CFLAGS -pipe -no-cpp-precomp" export ARM_CFLAGS="$ARM_CFLAGS -isysroot $SDKROOT" export ARM_CFLAGS="$ARM_CFLAGS -miphoneos-version-min=$SDKVER" export ARM_LDFLAGS="-isysroot $SDKROOT" export ARM_LDFLAGS="$ARM_LDFLAGS -miphoneos-version-min=$SDKVER" # uncomment this line if you want debugging stuff export ARM_CFLAGS="$ARM_CFLAGS -O3" #export ARM_CFLAGS="$ARM_CFLAGS -O0 -g" # create build directory if not found try mkdir -p $BUILDROOT try mkdir -p $BUILDROOT/include try mkdir -p $BUILDROOT/lib try mkdir -p $CACHEROOT try mkdir -p $TMPROOT # one method to deduplicate some symbol in libraries function deduplicate() { fn=$(basename $1) echo "== Trying to remove duplicate symbol in $1" try mkdir ddp try cd ddp try ar x $1 try ar rc $fn *.o try ranlib $fn try mv -f $fn $1 try cd .. try rm -rf ddp }