diff options
-rw-r--r-- | build/tools/prebuilt-common.sh | 16 | ||||
-rw-r--r-- | docs/CHANGES.html | 9 |
2 files changed, 25 insertions, 0 deletions
diff --git a/build/tools/prebuilt-common.sh b/build/tools/prebuilt-common.sh index e72b878c6..f00a0beb3 100644 --- a/build/tools/prebuilt-common.sh +++ b/build/tools/prebuilt-common.sh @@ -459,6 +459,22 @@ prepare_host_flags () # By default, assume host == build ABI_CONFIGURE_HOST="$ABI_CONFIGURE_BUILD" + # On Linux, detect our legacy-compatible toolchain when in the Android + # source tree, and use it to force the generation of glibc-2.7 compatible + # binaries. + # + # We only do this if the CC variable is not defined to a given value + # and the --mingw option is not used. + # + if [ "$HOST_OS" = "linux" -a -z "$CC" -a "$MINGW" != "yes" ]; then + LEGACY_TOOLCHAIN_DIR="$ANDROID_NDK_ROOT/../prebuilt/linux-x86/toolchain/i686-linux-glibc2.7-4.4.3" + if [ -d "$LEGACY_TOOLCHAIN_DIR" ] ; then + dump "Forcing generation of Linux binaries with legacy toolchain" + CC="$LEGACY_TOOLCHAIN_DIR/bin/i686-linux-gcc" + CXX="$LEGACY_TOOLCHAIN_DIR/bin/i686-linux-g++" + fi + fi + # Force generation of 32-bit binaries on 64-bit systems CC=${CC:-gcc} CXX=${CXX:-g++} diff --git a/docs/CHANGES.html b/docs/CHANGES.html index 0d358e690..a5d9a4c36 100644 --- a/docs/CHANGES.html +++ b/docs/CHANGES.html @@ -31,6 +31,12 @@ IMPORTANT BUG FIXES: - Fix a typo that prevented the cpufeatures library to work correctly with the new NDK toolchain. +- Linux toolchain binaries now run on Ubuntu 8.04 or higher. + More specifically, the r5 binaries did require GLibc 2.11 on the host + system, and refused to run with previous releases due to an ABI mismatch + in the GNU C Library. The r5b binaries are generated with a special + toolchain that instead targets GLibc 2.7 or higher. + OTHER FIXES & CHANGES: - ndk-build: Speed-up the Cygwin build by avoiding calling "cygpath -m" @@ -61,6 +67,9 @@ OTHER FIXES & CHANGES: - <netinet/in6.h>: Add missing declaration for IN6_IS_ADDR_MC_NODELOCAL and IN6_IS_ADDR_MC_GLOBAL. +- <asm/byteorder.>: Replaced 'asm' with '__asm__' to allow compilation + with -std=c99. See https://review.source.android.com/#change,20076 + ------------------------------------------------------------------------------- android-ndk-r5 |