diff options
author | Michael Hudson <michael.hudson@linaro.org> | 2011-03-23 10:51:49 +1300 |
---|---|---|
committer | Michael Hudson <michael.hudson@linaro.org> | 2011-03-23 10:51:49 +1300 |
commit | 78aa2901eda75e5ae97fe5a062a09b00fd825a04 (patch) | |
tree | 38325a46f6001433456d24960d4b54d32000db65 /build-scripts/build-android-toolchain | |
parent | 72fa907f34cb8338732c3b926d7a820431dd57e7 (diff) |
move build scripts into own dir, extract config processing into driver script
Diffstat (limited to 'build-scripts/build-android-toolchain')
-rwxr-xr-x | build-scripts/build-android-toolchain | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/build-scripts/build-android-toolchain b/build-scripts/build-android-toolchain new file mode 100755 index 0000000..418be19 --- /dev/null +++ b/build-scripts/build-android-toolchain @@ -0,0 +1,69 @@ +#!/bin/bash + +############################################################################### +# Copyright (c) 2011 Linaro +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Eclipse Public License v1.0 +# which accompanies this distribution, and is available at +# http://www.eclipse.org/legal/epl-v10.html +############################################################################### + +# BINUTILS_URL - set this in env to override default binutils version shipped by a version downloaded from ftp +BINUTILS_VERSION=2.21 +# GCC_URL - set this in env to override default gcc version shipped by a version downloaded from ftp +GCC_VERSION=4.6+linaro + +EABI="${EABI-arm-eabi}" +MANIFEST_REPO="${MANIFEST_REPO-git://http://android.git.kernel.org/platform/manifest.git}" +MANIFEST_BRANCH="${MANIFEST_BRANCH-master}" +MANIFEST_FILENAME="${MANIFEST_FILENAME-default.xml}" + +repo init -u "${MANIFEST_REPO}" -b "${MANIFEST_BRANCH}" -m "${MANIFEST_FILENAME}" + +time python -c 'import xmlrpclib, sys; print xmlrpclib.ServerProxy(sys.argv[1]).mirror(open(".repo/manifest.xml").read())' "http://${1}:8080" > temp-manifest.xml +echo "Received modified manifest" +cat temp-manifest.xml +echo ---------------------------- +mv temp-manifest.xml .repo/manifest.xml +repo sync -j8 + +wget http://dl.google.com/android/ndk/android-ndk-r5-linux-x86.tar.bz2 + +tar xvjf android-ndk-r5-linux-x86.tar.bz2 +rm -f android-ndk-r5-linux-x86.tar.bz2 + +cpuc=`cat /proc/cpuinfo | grep processor | wc -l` +threads=$(($cpuc * 4)) + +if ! test -d objdir; then + mkdir objdir +fi + +if test -n "$BINUTILS_URL"; then + BINUTILS_FILE=`echo "$BINUTILS_URL" | sed -e 's/^.*\/\([^/]*\)$/\1/'` + BINUTILS_VERSION=`echo "$BINUTILS_FILE" | sed -e 's/^.*-//' -e 's/\.tar.*$//'` + wget $BINUTILS_URL + sh -c "cd binutils/; tar xf ../$BINUTILS_FILE" +fi + +if test -n "$GCC_URL"; then + GCC_FILE=`echo "$GCC_URL" | sed -e 's/^.*\/\([^/]*\)$/\1/'` + GCC_VERSION=`echo "$GCC_FILE" | sed -e 's/^.*-//' -e 's/\.tar.*$//'` + wget $GCC_URL + sh -c "cd gcc/; tar xf ../$GCC_FILE" +fi + +cd objdir/ + +../build/configure --target=$EABI --prefix=/opt/linaro-toolchain-11.05/ \ + --with-gcc-version=$GCC_VERSION --with-binutils-version=$BINUTILS_VERSION \ + --with-mpfr-version=2.4.1 --disable-libquadmath \ + --with-ppl=no \ + --with-sysroot=`pwd`/../android-ndk-r5/platforms/android-9/arch-arm/ + +time -p make -j${threads} + +# here submit stuff back: +# + logs +# + build results + |