From b501da92779efe8b5fe0d5aa63f1e7f6c92f1b78 Mon Sep 17 00:00:00 2001 From: Joe Fernandez Date: Thu, 24 Oct 2013 09:55:18 -0700 Subject: [PATCH] docs: NDK r9b Release Notes for NDK release coinciding with Android KitKat release Change-Id: I0db919b5627bb8a5fe9203f70464f17d29cf85ee (cherry picked from commit d013c96ebe09f51d31ea2c7e3ac95e7f5752a72e) --- docs/html/tools/sdk/ndk/index.jd | 233 ++++++++++++++++++++++++++++++++------- 1 file changed, 196 insertions(+), 37 deletions(-) diff --git a/docs/html/tools/sdk/ndk/index.jd b/docs/html/tools/sdk/ndk/index.jd index 61a91a849389..a418f905a270 100644 --- a/docs/html/tools/sdk/ndk/index.jd +++ b/docs/html/tools/sdk/ndk/index.jd @@ -1,58 +1,58 @@ ndk=true page.template=sdk -ndk.mac64.legacy_download=android-ndk-r9-darwin-x86_64-legacy-toolchains.tar.bz2 -ndk.mac64.legacy_bytes=271922968 -ndk.mac64.legacy_checksum=251c21defcf90a2f0e8283bab90ed861 +ndk.mac64.legacy_download=android-ndk-r9b-darwin-x86_64-legacy-toolchains.tar.bz2 +ndk.mac64.legacy_bytes=122378495 +ndk.mac64.legacy_checksum=19c696a5b690b040409c68b21e9fcf46 -ndk.mac64_download=android-ndk-r9-darwin-x86_64.tar.bz2 -ndk.mac64_bytes=454408117 -ndk.mac64_checksum=ff27c8b9efc8260d9f883dc42d08f651 +ndk.mac64_download=android-ndk-r9b-darwin-x86_64.tar.bz2 +ndk.mac64_bytes=354748937 +ndk.mac64_checksum=710d80b6ff807f03e585f9aacee3bf09 -ndk.mac32.legacy_download=android-ndk-r9-darwin-x86-legacy-toolchains.tar.bz2 -ndk.mac32.legacy_bytes=264053696 -ndk.mac32.legacy_checksum=9fd7f76a1f1f59386a34b019dcd20976 +ndk.mac32.legacy_download=android-ndk-r9b-darwin-x86-legacy-toolchains.tar.bz2 +ndk.mac32.legacy_bytes=119394536 +ndk.mac32.legacy_checksum=be0a07bcea3695f7d93cbd1b880d3f75 -ndk.mac32_download=android-ndk-r9-darwin-x86.tar.bz2 -ndk.mac32_bytes=446858202 -ndk.mac32_checksum=781da0e6bb5b072512e67b879b56a74c +ndk.mac32_download=android-ndk-r9b-darwin-x86.tar.bz2 +ndk.mac32_bytes=349307548 +ndk.mac32_checksum=b5fa7aa3b9fca5a5b0c46bdd970d284b -ndk.linux64.legacy_download=android-ndk-r9-linux-x86_64-legacy-toolchains.tar.bz2 -ndk.linux64.legacy_bytes=244427866 -ndk.linux64.legacy_checksum=3976a8237d75526b8a0f275375dd68b5 +ndk.linux64.legacy_download=android-ndk-r9b-linux-x86_64-legacy-toolchains.tar.bz2 +ndk.linux64.legacy_bytes=127742633 +ndk.linux64.legacy_checksum=f41017d5888a8dc210d1703dcdf1def7 -ndk.linux64_download=android-ndk-r9-linux-x86_64.tar.bz2 -ndk.linux64_bytes=425113267 -ndk.linux64_checksum=0ccfd9960526e61d1527155fa6f84ac0 +ndk.linux64_download=android-ndk-r9b-linux-x86_64.tar.bz2 +ndk.linux64_bytes=366988131 +ndk.linux64_checksum=56c0999a2683d6711591843217f943e0 -ndk.linux32.legacy_download=android-ndk-r9-linux-x86-legacy-toolchains.tar.bz2 -ndk.linux32.legacy_bytes=241172797 -ndk.linux32.legacy_checksum=957c415de9d7c7ce1c2377ec4d3d60f1 +ndk.linux32.legacy_download=android-ndk-r9b-linux-x86-legacy-toolchains.tar.bz2 +ndk.linux32.legacy_bytes=125676842 +ndk.linux32.legacy_checksum=bfc7a1e6baf856b4348d57abffc761d2 -ndk.linux32_download=android-ndk-r9-linux-x86.tar.bz2 -ndk.linux32_bytes=419862465 -ndk.linux32_checksum=beadafdc187461c057d513c40f0ac33b +ndk.linux32_download=android-ndk-r9b-linux-x86.tar.bz2 +ndk.linux32_bytes=361394055 +ndk.linux32_checksum=d7f783deaeea6b60cb515d9427c01c2e -ndk.win64.legacy_download=android-ndk-r9-windows-x86_64-legacy-toolchains.zip -ndk.win64.legacy_bytes=312340413 -ndk.win64.legacy_checksum=707d1eaa6f5d427ad439c764c8bd68d2 +ndk.win64.legacy_download=android-ndk-r9b-windows-x86_64-legacy-toolchains.zip +ndk.win64.legacy_bytes=166961852 +ndk.win64.legacy_checksum=6eee9459986e8b7f1032d62831dd775b -ndk.win64_download=android-ndk-r9-windows-x86_64.zip -ndk.win64_bytes=514321606 -ndk.win64_checksum=96c725d16ace7fd487bf1bc1427af3a0 +ndk.win64_download=android-ndk-r9b-windows-x86_64.zip +ndk.win64_bytes=479012553 +ndk.win64_checksum=1ba6be7ebf4e9272d77031dd70f81e94 -ndk.win32.legacy_download=android-ndk-r9-windows-x86-legacy-toolchains.zip -ndk.win32.legacy_bytes=292738221 -ndk.win32.legacy_checksum=ae3756d3773ec068fb653ff6fa411e35 +ndk.win32.legacy_download=android-ndk-r9b-windows-x86-legacy-toolchains.zip +ndk.win32.legacy_bytes=152568224 +ndk.win32.legacy_checksum=00c8373b53ad9475f1bab1de4219b877 -ndk.win32_download=android-ndk-r9-windows-x86.zip -ndk.win32_bytes=485200055 -ndk.win32_checksum=8895aec43f5141212c8dac6e9f07d5a8 +ndk.win32_download=android-ndk-r9b-windows-x86.zip +ndk.win32_bytes=455928388 +ndk.win32_checksum=cfb9402ea08a1554186e85ed28cb4593 page.title=Android NDK @@ -298,6 +298,165 @@ $('#Downloads').after($('#download-table'));

Android NDK, Revision 9b (October 2013) +

+
+
+
Important changes:
+
+
    +
  • Updated {@code include/android/*h} and {@code math.h} for all Android API levels up to + 18, including the addition of levels 13, 15, 16 and 17. + For information on added APIs, see commit messages for Changes + 68012 and + 68014. + (Issues 47150, + 58528, and + 38423)
  • +
  • Added support for API level 19, including Renderscript binding.
  • +
  • Added support for -mhard-float in the existing armeabi-v7a ABI. For more + information and current restrictions on Clang, see + {@code tests/device/hard-float/jni/Android.mk}.
  • +
  • Migrated from GNU Compiler Collection (GCC) 4.8 to 4.8.2, and added diagnostic color + support. To enable diagnostic colors, set -fdiagnostics-color=auto, + -fdiagnostics-color=always, or export {@code GCC_COLORS} as shown below: +
    +GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01'
    +
    + For more information, see + GCC + Language Independent Options. +
  • +
  • Added two new samples to demonstrate OpenGL ES 3.0 features: Teapot and MoreTeapots. + These samples run on devices with Android 4.1 (API level 16) and higher.
  • +
  • Deprecated GCC 4.7 and Clang 3.2 support, which will be removed in the next + release.
  • +
+
+ +
Important bug fixes:
+
+
    +
  • Fixed problem with ARM GCC 4.6 {@code thumb2} failing to generate 16-bit relative jump + tables. (GCC Issue)
  • +
  • Fixed GCC 4.8 internal compiler error (ICE) on + {@code g++.dg/cpp0x/lambda/lambda-defarg3.C}. + (Change 62770, + GCC Issue)
  • +
  • Fixed a problem with Windows 32-bit {@code *-gdb.exe} executables failing to launch. + (Issue 58975)
  • +
  • Fixed GCC 4.8 ICE when building bullet library. The error message is as follows: +
    internal compiler error: verify_flow_info failed
    + (Issue 58916, + GCC Issue)
  • +
  • Modified GDB/ARM build to skip {@code ARM.exidx} data for unwinding in prologue code and + added a command ({@code set arm exidx-unwinding}) to control exidx-based stack unwinding. + (Issue 55826)
  • +
  • Fixed Clang 3.3 MIPS compiler problem where HI and LO registers are incorrectly + reused.
  • +
  • Fixed issue with MIPS 4.7 ICE in {@code dbx_reg_number}. The error message is as follows: +
    +external/icu4c/i18n/decimfmt.cpp:1322:1:
    +internal compiler error: in dbx_reg_number, at dwarf2out.c:10185
    +
    + (GCC Patch) + +
  • + +
+
+ +
Other bug fixes:
+
+
    +
  • Header fixes +
      +
    • Fixed the ARM {@code WCHAR_MIN} and {@code WCHAR_MAX} to be unsigned according to + spec (the X86/MIPS versions are signed). Define {@code _WCHAR_IS_ALWAYS_SIGNED} to + restore old behavior. (Issue 57749)
    • +
    • Fixed {@code include/netinet/tcp.h} to contain {@code TCP_INFO} state enum. + (Issue 38881)
    • +
    • Fixed the {@code cdefs_elh.h} macro {@code _C_LABEL_STRING} to stop generating + warnings in the GCC 4.8 toolchain when using c++11 mode. + (Issue 58135, + Issue 58652)
    • +
    • Removed non-existent functions {@code imaxabs} and {@code imaxdiv} from header + {@code inttypes.h}.
    • +
    • Fixed issue with {@code pthread_exit()} return values and {@code pthread_self()}. + (Issue 60686)
    • +
    • Added missing {@code mkdtemp()} function, which already exists in {@code bionic} + header {@code stdlib.h}.
    • +
    +
  • +
  • Fixed problem building {@code samples/gles3jni} with Clang on Android API level 11.
  • +
  • Fixed MCLinker to allow multiple occurrences of the following options: + {@code -gc-sections} and {@code --eh-frame-hdr}.
  • +
  • Fixed MCLinker to accept the {@code --no-warn-mismatch} option.
  • +
  • Modified {@code cpu-features} option to not assume all VFPv4 devices support IDIV. + Now this option only adds IDIV to white-listed devices, including Nexus 4. + (Issue 57637)
  • +
  • Fixed problem with {@code android_native_app_glue.c} erroneously logging errors on event + predispatch operations.
  • +
  • Fixed all operations on {@code gabi++} terminate and unexpected_handler to be + thread-safe.
  • +
  • Fixed several issues with Clang -integrated-as option so it can pass + tests for {@code ssax-instructions} and {@code fenv}.
  • +
  • Fixed GCC 4.6/4.7/4.8 compiler to pass the linker option {@code --eh-frame-hdr} even + for static executables. For more information, see the + GCC patch.
  • +
  • Fixed extra apostrophe in CPU-ARCH-ABIS.html. For more information, see + NDK-DEPENDS.html. (Issue 60142)
  • +
  • Fixed extra quotes in ndk-build output on Windows. + (Issue 60649)
  • +
  • Fixed Clang 3.3 to compile ARM's built-in, atomic operations such as + {@code __atomic_fetch_add}, {@code __atomic_fetch_sub}, and {@code __atomic_fetch_or}. +
  • +
  • Fixed Clang 3.3 ICE with customized {@code vfprintf}. + (Clang issue) +
  • +
+
+ +
Other changes:
+
+
    +
  • Enabled OpenMP for all GCC builds. To use this feature, add the following flags to your + build settings: +
    +LOCAL_CFLAGS += -fopenmp
    +LOCAL_LDFLAGS += -fopenmp
    +
    + For code examples, see {@code tests/device/test-openmp}
  • +
  • Reduced the size of {@code ld.mcld} significantly (1.5MB vs. {@code ld.bfd} 3.5MB and + {@code ld.gold} 7.5MB), resulting in a speed improvement of approximately 20%.
  • +
  • Added LOCAL_CONLYFLAGS and APP_CONLYFLAGS to specify + options applicable to C only but not C++. The existing LOCAL_CFLAGS + and APP_CFLAGS are also used for C++ compilation (to save trouble of + specifying most options twice), so options such as -std=gnu99 may fail in + g++ builds with a warning and clang++ builds with an error.
  • +
  • Added {@code gabi++} array helper functions.
  • +
  • Modified GCC builds so that all {@code libgcc.a} files are built with + -funwind-tables to allow the stack to be unwound past previously blocked + points, such as __aeabi_idiv0.
  • +
  • Added Ingenic MXU support in MIPS GCC4.6/4.7/4.8 with new -mmxu option.
  • +
  • Extended MIPS GCC4.6/4.7/4.8 -mldc1-sdc1 to control ldxc1/sdxc1 too
  • +
  • Added crazy linker. For more information, see + {@code sources/android/crazy_linker/README.TXT}.
  • +
  • Fixed {@code bitmap-plasma} to draw to full screen rather than a 200x200 pixel area.
  • +
  • Reduced linux and darwin toolchain sizes by 25% by creating symlinks to identical files. +
  • +
+
+ +
+
+ + + +
+

+ Android NDK, Revision 9 (July 2013)

@@ -441,7 +600,7 @@ $('#Downloads').after($('#download-table'));
  • Fixed the Clang 3.2 {@code -integrated-as} option.
  • Fixed the Clang 3.2 ARM EHABI compact model {@code pr1} and {@code pr2} handler data.
  • -
  • Added clang {@code -mllvm -arm-enable-ehabi} option to fix the following clang error: +
  • Added Clang {@code -mllvm -arm-enable-ehabi} option to fix the following Clang error:
    clang: for the -arm-enable-ehabi option: may only occur zero or one times!
  • Fixed build failure when there is no {@code uses-sdk} element in application -- 2.11.0