diff --git a/.gitmodules b/.gitmodules index 3e0593a..aeca418 100644 --- a/.gitmodules +++ b/.gitmodules @@ -16,3 +16,51 @@ [submodule "busybox"] path = busybox url = git@github.com:android-ide/busybox.git +[submodule "toolchain/build"] + path = toolchain/build + url = git@github.com:android-ide/toolchain-build.git + branch = aide-ndk-gcc-4.9 +[submodule "toolchain/gcc"] + path = toolchain/gcc + url = git@github.com:android-ide/toolchain-gcc.git + branch = ndk-patches +[submodule "toolchain/binutils"] + path = toolchain/binutils + url = git@github.com:android-ide/toolchain-binutils.git + branch = ndk-patches +[submodule "toolchain/cloog"] + path = toolchain/cloog + url = git@github.com:android-ide/toolchain-cloog.git +[submodule "toolchain/expat"] + path = toolchain/expat + url = git@github.com:android-ide/toolchain-expat.git +[submodule "toolchain/gdb"] + path = toolchain/gdb + url = git@github.com:android-ide/toolchain-gdb.git +[submodule "toolchain/gmp"] + path = toolchain/gmp + url = git@github.com:android-ide/toolchain-gmp.git +[submodule "toolchain/isl"] + path = toolchain/isl + url = git@github.com:android-ide/toolchain-isl.git +[submodule "toolchain/mpc"] + path = toolchain/mpc + url = git@github.com:android-ide/toolchain-mpc.git +[submodule "toolchain/mpfr"] + path = toolchain/mpfr + url = git@github.com:android-ide/toolchain-mpfr.git +[submodule "toolchain/ppl"] + path = toolchain/ppl + url = git@github.com:android-ide/toolchain-ppl.git +[submodule "toolchain/sed"] + path = toolchain/sed + url = git@github.com:android-ide/toolchain-sed.git +[submodule "toolchain/yasm"] + path = toolchain/yasm + url = git@github.com:android-ide/toolchain-yasm.git +[submodule "platform/bionic"] + path = platform/bionic + url = git@github.com:android-ide/platform_bionic.git +[submodule "platform/prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.11-4.8"] + path = platform/prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.11-4.8 + url = git@github.com:android-ide/platform-prebuilts-gcc-linux-x86-host-x86_64-linux-glibc2.11-4.8.git diff --git a/build-busybox-arm.sh b/build-busybox-arm.sh deleted file mode 100755 index 97a9564..0000000 --- a/build-busybox-arm.sh +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/bash - -set -e - -SCRIPTDIR=$(dirname $0) -TOP=$(cd $SCRIPTDIR; pwd) -cd $TOP/busybox -make aide_defconfig -LDFLAGS="--static" make -j 4 CROSS_COMPILE=arm-linux-gnueabi- diff --git a/build-busybox-x86.sh b/build-busybox-x86.sh deleted file mode 100755 index 7f719e3..0000000 --- a/build-busybox-x86.sh +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/bash - -set -e - -SCRIPTDIR=$(dirname $0) -TOP=$(cd $SCRIPTDIR; pwd) -cd $TOP/busybox -make aide_defconfig -LDFLAGS="--static" make -j 4 diff --git a/build-busybox.sh b/build-busybox.sh new file mode 100644 index 0000000..46c87be --- /dev/null +++ b/build-busybox.sh @@ -0,0 +1,32 @@ +#!/bin/bash + +set -e + +SCRIPTDIR=$(dirname $0) +TOP=$(cd $SCRIPTDIR; pwd) +API_LEVEL=14 + +case "$1" in + arm) + ARCH=arm + ARCH_CROSS_COMPILE_PREFIX=arm-linux-androideabi- + ARCH_CFLAGS="-march=armv7-a -mthumb -mfloat-abi=softfp -mfpu=vfpv3-d16" + ARCH_LDFLAGS="-march=armv7-a -Wl,--fix-cortex-a8" + ;; + x86) + ARCH=x86 + ARCH_CROSS_COMPILE_PREFIX=i686-linux-android- + ARCH_CFLAGS= + ARCH_LDFLAGS= + ;; + *) + echo "First argument must be arm or x86." + exit + ;; +esac +$ANDROID_NDK/build/tools/make_standalone_toolchain.py --arch $ARCH --api $API_LEVEL --install-dir /tmp/my-android-toolchain --force +cd $TOP/busybox +export PATH=/tmp/my-android-toolchain/bin:$PATH +git clean -fdx +make aide_defconfig +make EXTRA_CFLAGS="-D__NDK_MAJOR__=15 -D__ANDROID_API__=$API_LEVEL $ARCH_CFLAGS" EXTRA_LDFLAGS="$ARCH_LDFLAGS" CROSS_COMPILE="$ARCH_CROSS_COMPILE_PREFIX" diff --git a/build-toolchain-arm.sh b/build-toolchain-arm.sh deleted file mode 100755 index f1fc9c5..0000000 --- a/build-toolchain-arm.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/bash - -set -e - -SCRIPTDIR=$(dirname $0) -TOP=$(cd $SCRIPTDIR; pwd) -NDK=$TOP/platform/ndk -NDK_LOGFILE=/tmp/ndk-build.log -export NDK NDK_LOGFILE NUM_JOBS -rm -f $NDK_LOGFILE -$NDK/build/tools/rebuild-all-prebuilt.sh --arch="arm" --systems=androidx86static --package-dir=$TOP/ndk-prebuilt $TOP/toolchain-sources/ -$NDK/build/tools/rebuild-all-prebuilt.sh --systems=androidarmstatic --arch=arm --package-dir=$TOP/ndk-prebuilt $TOP/toolchain-sources/ diff --git a/build-toolchain-x86.sh b/build-toolchain-x86.sh deleted file mode 100755 index 5534071..0000000 --- a/build-toolchain-x86.sh +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/bash - -set -e - -SCRIPTDIR=$(dirname $0) -TOP=$(cd $SCRIPTDIR; pwd) -NDK=$TOP/platform/ndk -NDK_LOGFILE=/tmp/ndk-build.log -export NDK NDK_LOGFILE NUM_JOBS -rm -f $NDK_LOGFILE -$NDK/build/tools/rebuild-all-prebuilt.sh --arch="arm x86" --systems=androidx86static --package-dir=$TOP/ndk-prebuilt $TOP/toolchain-sources/ diff --git a/build-toolchains.sh b/build-toolchains.sh new file mode 100755 index 0000000..37f2a91 --- /dev/null +++ b/build-toolchains.sh @@ -0,0 +1,16 @@ +#!/bin/bash + +set -e + +SCRIPTDIR=$(dirname $0) +TOP=$(cd $SCRIPTDIR; pwd) +ANDROID_BUILD_TOP=$TOP +NDK=$TOP/platform/ndk +NDK_LOGFILE=/tmp/ndk-build.log +export NDK NDK_LOGFILE ANDROID_BUILD_TOP +rm -f $NDK_LOGFILE +rm -f $TOP/ndk-prebuilts/* + +$NDK/build/tools/rebuild-all-prebuilt.sh --arch="arm x86" --systems=androidx86static --gcc-version-list=4.9 --llvm-version-list= --package-dir=$TOP/ndk-prebuilt $TOP/toolchain/ + +$NDK/build/tools/rebuild-all-prebuilt.sh --arch="arm x86" --systems=androidarmstatic --gcc-version-list=4.9 --llvm-version-list= --no-gen-platforms --package-dir=$TOP/ndk-prebuilt $TOP/toolchain/ diff --git a/busybox b/busybox index 5837297..063c977 160000 --- a/busybox +++ b/busybox @@ -1 +1 @@ -Subproject commit 583729775d8d01796eb530afe9bf99f4dc3e67e2 +Subproject commit 063c977ce2d06094034c6bcf077c5677b4678c8c diff --git a/download-toolchain.sh b/download-toolchain.sh deleted file mode 100755 index c492c9f..0000000 --- a/download-toolchain.sh +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/bash - -set -e - -SCRIPTDIR=$(dirname $0) -TOP=$(cd $SCRIPTDIR; pwd) -NDK=$TOP/platform/ndk -NDK_LOGFILE=/tmp/ndk-build.log -export NDK NDK_LOGFILE -mkdir -p $TOP/toolchain-sources -$NDK/build/tools/download-toolchain-sources.sh --git-date=2013-04-10 $TOP/toolchain-sources diff --git a/install-prerequisites-ubuntu.sh b/install-prerequisites-ubuntu.sh index 58ad83c..140fe99 100755 --- a/install-prerequisites-ubuntu.sh +++ b/install-prerequisites-ubuntu.sh @@ -4,4 +4,4 @@ SCRIPTDIR=$(dirname $0) TOP=$(cd $SCRIPTDIR; pwd) aptitude install git build-essential rsync bison flex curl texinfo libtinfo-dev \ -libncurses5-dev gcc-arm-linux-gnueabi g++-arm-linux-gnueabi xapt +libncurses5-dev diff --git a/ndk-prebuilt b/ndk-prebuilt index 8b1ca72..c149d44 160000 --- a/ndk-prebuilt +++ b/ndk-prebuilt @@ -1 +1 @@ -Subproject commit 8b1ca7236b3b9952fc9b1a0fa89c880efe9f1cea +Subproject commit c149d445a9d627ec9d9c659285ae8d90eb58785a diff --git a/package-ndk-aide-release-arm.sh b/package-ndk-aide-release-arm.sh index d30dd31..74167b8 100755 --- a/package-ndk-aide-release-arm.sh +++ b/package-ndk-aide-release-arm.sh @@ -11,11 +11,11 @@ tar xjf $TOP/ndk-release/android-ndk-aide-linux-arm.tar.bz2 rm -rf android-ndk-aide/{samples,docs,tests} for toolchain in android-ndk-aide/toolchains/* do - if [ "${toolchain}" != "android-ndk-aide/toolchains/arm-linux-androideabi-4.6" ] + if [ "${toolchain}" != "android-ndk-aide/toolchains/arm-linux-androideabi-4.9" -a "${toolchain}" != "android-ndk-aide/toolchains/x86-4.9" ] then rm -r ${toolchain} fi done -tar cjf $TOP/ndk-aide-release/android-ndk-aide-linux-arm-$RELEASE.tar.bz2 android-ndk-aide/ +tar cjf $TOP/ndk-aide-release/android-ndk-aide-linux-arm-$RELEASE.tar.bz2 --hard-dereference android-ndk-aide/ cp $TOP/busybox/busybox $TOP/ndk-aide-release/busybox-arm-$RELEASE cp $TOP/ndkinstall.sh $TOP/ndk-aide-release/ndkinstall.sh-$RELEASE diff --git a/package-ndk-aide-release-x86.sh b/package-ndk-aide-release-x86.sh index c14feb9..787f3b2 100755 --- a/package-ndk-aide-release-x86.sh +++ b/package-ndk-aide-release-x86.sh @@ -11,11 +11,11 @@ tar xjf $TOP/ndk-release/android-ndk-aide-linux-x86.tar.bz2 rm -rf android-ndk-aide/{samples,docs,tests} for toolchain in android-ndk-aide/toolchains/* do - if [ "${toolchain}" != "android-ndk-aide/toolchains/x86-4.6" ] + if [ "${toolchain}" != "android-ndk-aide/toolchains/arm-linux-androideabi-4.9" -a "${toolchain}" != "android-ndk-aide/toolchains/x86-4.9" ] then rm -r ${toolchain} fi done -tar cjf $TOP/ndk-aide-release/android-ndk-aide-linux-x86-$RELEASE.tar.bz2 android-ndk-aide/ +tar cjf $TOP/ndk-aide-release/android-ndk-aide-linux-x86-$RELEASE.tar.bz2 --hard-dereference android-ndk-aide/ cp $TOP/busybox/busybox $TOP/ndk-aide-release/busybox-x86-$RELEASE cp $TOP/ndkinstall.sh $TOP/ndk-aide-release/ndkinstall.sh-$RELEASE diff --git a/package-ndk-release-arm.sh b/package-ndk-release-arm.sh index aed0528..38f1d75 100755 --- a/package-ndk-release-arm.sh +++ b/package-ndk-release-arm.sh @@ -6,4 +6,4 @@ NDK=$TOP/platform/ndk NDK_LOGFILE=/tmp/ndk-build.log export NDK NDK_LOGFILE NUM_JOBS rm $NDK_LOGFILE -$NDK/build/tools/package-release.sh --prebuilt-dir=$TOP/ndk-prebuilt --release=aide --systems=linux-arm --arch=arm --toolchains=arm-linux-androideabi-4.6 --out-dir=$TOP/ndk-release +$NDK/build/tools/package-release.sh --prebuilt-dir=$TOP/ndk-prebuilt --release=aide --systems=linux-arm --arch=arm,x86 --llvm-version-list= --toolchains=arm-linux-androideabi-4.9,x86-4.9 --reduced --out-dir=$TOP/ndk-release diff --git a/package-ndk-release-x86.sh b/package-ndk-release-x86.sh index 0620d4c..9e37391 100755 --- a/package-ndk-release-x86.sh +++ b/package-ndk-release-x86.sh @@ -6,4 +6,4 @@ NDK=$TOP/platform/ndk NDK_LOGFILE=/tmp/ndk-build.log export NDK NDK_LOGFILE NUM_JOBS rm $NDK_LOGFILE -$NDK/build/tools/package-release.sh --prebuilt-dir=$TOP/ndk-prebuilt --release=aide --systems=linux-x86 --arch=x86 --toolchains=x86-4.6 --out-dir=$TOP/ndk-release +$NDK/build/tools/package-release.sh --prebuilt-dir=$TOP/ndk-prebuilt --release=aide --systems=linux-x86 --arch=x86,arm --llvm-version-list= --toolchains=arm-linux-androideabi-4.9,x86-4.9 --reduced --out-dir=$TOP/ndk-release diff --git a/platform/bionic b/platform/bionic new file mode 160000 index 0000000..7e919da --- /dev/null +++ b/platform/bionic @@ -0,0 +1 @@ +Subproject commit 7e919daeaad62515ebbbf7b06badc77625a14d90 diff --git a/platform/development b/platform/development index 13dfb24..f6b91cf 160000 --- a/platform/development +++ b/platform/development @@ -1 +1 @@ -Subproject commit 13dfb24d107a0e211ac04ca63cac685a48eebb4f +Subproject commit f6b91cf39b54e0a6f59e53f4de968b0745350d7e diff --git a/platform/ndk b/platform/ndk index b888ebb..4bb8909 160000 --- a/platform/ndk +++ b/platform/ndk @@ -1 +1 @@ -Subproject commit b888ebb7485872dcdb9e4cb7132ad05a6dda4797 +Subproject commit 4bb8909056e0f2bd4ac631728db23b6702f5f0e2 diff --git a/platform/prebuilts/gcc/linux-x86/host/i686-linux-glibc2.7-4.6 b/platform/prebuilts/gcc/linux-x86/host/i686-linux-glibc2.7-4.6 deleted file mode 160000 index f99fb92..0000000 --- a/platform/prebuilts/gcc/linux-x86/host/i686-linux-glibc2.7-4.6 +++ /dev/null @@ -1 +0,0 @@ -Subproject commit f99fb92539526871d430750455886db1ab182241 diff --git a/platform/prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.11-4.8 b/platform/prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.11-4.8 new file mode 160000 index 0000000..63b209f --- /dev/null +++ b/platform/prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.11-4.8 @@ -0,0 +1 @@ +Subproject commit 63b209feac0b045f5fc68810fd2e65bf1ca51e2f diff --git a/toolchain/binutils b/toolchain/binutils new file mode 160000 index 0000000..4575348 --- /dev/null +++ b/toolchain/binutils @@ -0,0 +1 @@ +Subproject commit 45753485c13ac9139daf924ff6f5b3952ad02e5c diff --git a/toolchain/build b/toolchain/build new file mode 160000 index 0000000..f11d645 --- /dev/null +++ b/toolchain/build @@ -0,0 +1 @@ +Subproject commit f11d6453a8beb83b45eccf109e338d924ae062db diff --git a/toolchain/cloog b/toolchain/cloog new file mode 160000 index 0000000..604793e --- /dev/null +++ b/toolchain/cloog @@ -0,0 +1 @@ +Subproject commit 604793eab97d360aef729f064674569ee6dbf3e1 diff --git a/toolchain/expat b/toolchain/expat new file mode 160000 index 0000000..40172a0 --- /dev/null +++ b/toolchain/expat @@ -0,0 +1 @@ +Subproject commit 40172a0ae9d40a068f1e1a48ffcf6a1ccf765ed5 diff --git a/toolchain/gcc b/toolchain/gcc new file mode 160000 index 0000000..89984ca --- /dev/null +++ b/toolchain/gcc @@ -0,0 +1 @@ +Subproject commit 89984ca6839205d223a9f5d06d651e3642e41cfb diff --git a/toolchain/gdb b/toolchain/gdb new file mode 160000 index 0000000..46a114a --- /dev/null +++ b/toolchain/gdb @@ -0,0 +1 @@ +Subproject commit 46a114a3609f0626208607946e58135e48e41c55 diff --git a/toolchain/gmp b/toolchain/gmp new file mode 160000 index 0000000..b2acd5d --- /dev/null +++ b/toolchain/gmp @@ -0,0 +1 @@ +Subproject commit b2acd5dbf47868ac5b5bc844e16d2cadcbd4c810 diff --git a/toolchain/isl b/toolchain/isl new file mode 160000 index 0000000..b05d457 --- /dev/null +++ b/toolchain/isl @@ -0,0 +1 @@ +Subproject commit b05d4572958c5d497da793f3317084bab90c3033 diff --git a/toolchain/mpc b/toolchain/mpc new file mode 160000 index 0000000..835d16e --- /dev/null +++ b/toolchain/mpc @@ -0,0 +1 @@ +Subproject commit 835d16e92eed875638a8b5d552034c3b1aae045b diff --git a/toolchain/mpfr b/toolchain/mpfr new file mode 160000 index 0000000..de979fc --- /dev/null +++ b/toolchain/mpfr @@ -0,0 +1 @@ +Subproject commit de979fc377db766591e7feaf052f0de59be46e76 diff --git a/toolchain/ppl b/toolchain/ppl new file mode 160000 index 0000000..979062d --- /dev/null +++ b/toolchain/ppl @@ -0,0 +1 @@ +Subproject commit 979062d362bc5a1c00804237b408b19b4618fb24 diff --git a/toolchain/sed b/toolchain/sed new file mode 160000 index 0000000..45df23d --- /dev/null +++ b/toolchain/sed @@ -0,0 +1 @@ +Subproject commit 45df23d6dc8b51ea5cd903d023c10fd7d72415b9 diff --git a/toolchain/yasm b/toolchain/yasm new file mode 160000 index 0000000..d4d816b --- /dev/null +++ b/toolchain/yasm @@ -0,0 +1 @@ +Subproject commit d4d816b443cb5798f0f41e0c3f05f6c2dd1d87b5