diff --git a/docs/html/tools/sdk/ndk/index.jd b/docs/html/tools/sdk/ndk/index.jd index 4e50d9833d3a2..a22dc9039b2a4 100644 --- a/docs/html/tools/sdk/ndk/index.jd +++ b/docs/html/tools/sdk/ndk/index.jd @@ -2,33 +2,33 @@ ndk=true page.template=sdk -ndk.mac64_download=android-ndk-r9c-darwin-x86_64.tar.bz2 -ndk.mac64_bytes=358350393 -ndk.mac64_checksum=154bc0248671b8609037218d3faa47f5 +ndk.mac64_download=android-ndk-r9d-darwin-x86_64.tar.bz2 +ndk.mac64_bytes=400339614 +ndk.mac64_checksum=c914164b1231c574dbe40debef7048be -ndk.mac32_download=android-ndk-r9c-darwin-x86.tar.bz2 -ndk.mac32_bytes=352900444 -ndk.mac32_checksum=0ba391eb12d4eed6bd7dbff5d8804e0f +ndk.mac32_download=android-ndk-r9d-darwin-x86.tar.bz2 +ndk.mac32_bytes=393866116 +ndk.mac32_checksum=ee6544bd8093c79ea08c2e3a6ffe3573 -ndk.linux64_download=android-ndk-r9c-linux-x86_64.tar.bz2 -ndk.linux64_bytes=371254928 -ndk.linux64_checksum=e9c3fd9881c811753bb57f701b3e05b1 +ndk.linux64_download=android-ndk-r9d-linux-x86_64.tar.bz2 +ndk.linux64_bytes=412879983 +ndk.linux64_checksum=c7c775ab3342965408d20fd18e71aa45 -ndk.linux32_download=android-ndk-r9c-linux-x86.tar.bz2 -ndk.linux32_bytes=365412557 -ndk.linux32_checksum=93d2aa9a40501b568037642cdb174643 +ndk.linux32_download=android-ndk-r9d-linux-x86.tar.bz2 +ndk.linux32_bytes=405218267 +ndk.linux32_checksum=6c1d7d99f55f0c17ecbcf81ba0eb201f -ndk.win64_download=android-ndk-r9c-windows-x86_64.zip -ndk.win64_bytes=483804820 -ndk.win64_checksum=9e84d0d59ce7d4a24370b619fb8799e4 +ndk.win64_download=android-ndk-r9d-windows-x86_64.zip +ndk.win64_bytes=520997454 +ndk.win64_checksum=8cd244fc799d0e6e59d65a59a8692588 -ndk.win32_download=android-ndk-r9c-windows-x86.zip -ndk.win32_bytes=460676475 -ndk.win32_checksum=863b5ab371b63c3e9bf0d39e47903763 +ndk.win32_download=android-ndk-r9d-windows-x86.zip +ndk.win32_bytes=491440074 +ndk.win32_checksum=b16516b611841a075685a10c59d6d7a2 -ndk.debug_info_download=android-ndk-r9c-cxx-stl-libs-with-debugging-info.zip -ndk.debug_info_bytes=100364569 -ndk.debug_info_checksum=37911716e1fd2fe3abb8a410750d73e6 +ndk.debug_info_download=android-ndk-r9d-cxx-stl-libs-with-debug-info.zip +ndk.debug_info_bytes=104947363 +ndk.debug_info_checksum=906c8d88e0f02295c3bfe6b8e98a1a35 page.title=Android NDK @@ -272,19 +272,84 @@ $('#Downloads').after($('#download-table'));
Android NDK, Revision 9c (December 2013)
+ >Android NDK, Revision 9d (March 2014)
This is a bug-fix-only release.
+NDK_TOOLCHAIN_VERSION=clang option now picks Clang 3.4. GCC 4.6 is
+still the default compiler.APP_ABI=armeabi-v7a-hard, with
+additional multilib option -mfloat-abi=hard. These options are for
+use with ARM GCC 4.6/4.8 and clang 3.3/3.4 (which use 4.8's assembler, linker,
+and libs). When using these options, note the following changes:ndk-build script, add the
+following options for armeabi-v7a target:
+TARGET_CFLAGS += -mhard-float -D_NDK_MATH_NO_SOFTFP=1 +TARGET_LDFLAGS += -Wl,--no-warn-mismatch -lm_hard+The built library is copied to
libs/armeabi-v7a. For make to
+behave as expected, you cannot specify both armeabi-v7a and
+armeabi-v7a-hard as make targets (i.e., on the APP_ABI= line).
+Doing so causes one of them to be ignored. Note that APP_ABI=all
+is still equivalent to
+armeabi armeabi-v7a x86 mips.make-standalone-toolchain.sh script copies
+additional libaries under /hard directories.
+ Add the above CFLAGS and LFLAGS to your
+makefile to enable GCC or Clang to link with
+ libraries in /hard.LOCAL_ASMFLAGS
+and EXPORT_ASMFLAGS flags for x86
+targets. The ndk-build script uses
+prebuilts/*/bin/yasm* to build LOCAL_SRC_FILES that
+have the .asm extension.-gc-sections
+support.APP_STL := c++_static or APP_STL :=
+c++_shared in Application.mk.
+ You may rebuild from source via LIBCXX_FORCE_REBUILD :=
+truemake-standalone-toolchain.sh --stl=libc++
+to create a standalone toolchain with libc++ headers/lib.CPLUSPLUS-SUPPORT.html.
+(Issue 36496)-fuse-ld=mcld, so that the following error no longer occurs:
-cc1: internal compiler error: in common_handle_option, at opts.c:1774
-mhard-float support for __builtin math functions. For ongoing information on fixes for -mhard-float with STL, please follow http://b.android.com/61784.zlib, bz2,
+_curses, _curses_panel, _hashlib,
+_sslzlib, nis,
+crypt, _curses, and _curses_panelevent_getmsg_helper.poll to poll(struct pollfd *, nfds_t, int); in poll.h.utimensat to libc.so in API levels 12 and 19. It is now present in levels 12-19.futimens into libc.so, as of API level 19.clock_settime() and clock_nanosleep() to time.h for API 8 and higher.CLOCK_MONOTONIC_RAW, CLOCK_REALTIME_COARSE, CLOCK_MONOTONIC_COARSE, CLOCK_BOOTTIME, CLOCK_REALTIME_ALARM, and CLOCK_BOOTTIME_ALARM in time.h.CLOCK_REALTIME_HR and CLOCK_MONOTONIC_HR.#include <sys/types.h> in
+android/asset_manager.h for Android API level 13 and higher.
+ (Issue 64988)#include in
+android/rect_manager.h for Android API level 14 and higher.JNICALL to JNI_OnLoad and
+JNI_OnUnload in jni.h. Note that JNICALL
+ is defined as __NDK_FPABI__ For more information, see
+sys/cdefs.h.+android/tts.h +EGL/eglext.h +fts.h +GLES/glext.h +GLES2/gl2ext.h +OMXAL/OpenMAXSL_Android.h +SLES/OpenSLES_Android.h +sys/prctl.h +sys/utime.h ++
sys/cachectl.h for all architectures. MIPS
+developers can now include this header instead of writing #ifdef
+__mips__.platforms/android-18/include/android/input.h
+ by adding __NDK_FPABI__ to functions taking or returning
+float or double values.struct stat, which was incorrectly set
+to its 64-bit counterpart for Android API level 12 and later. This wrong
+setting was a
+regression introduced in release r9c.__PTHREAD_MUTEX_INIT_VALUE,
+__PTHREAD_RECURSIVE_MUTEX_INIT_VALUE,
+ and __PTHREAD_ERRORCHECK_MUTEX_INIT_VALUE for Android API
+level 9 and lower.scalbln, scalblnf, and
+scalblnl to x86 libm.so for APIs 18 and later.sources/android/support/include/iconv.h.
+ (Issue 63806)source/android/ndk_helper as follows:
+ std::unexpected() to call
+std::terminate() so that
+ a user-defined std::terminate() handler has a chance to run.
+std::nullptr.Check_ReleaseStringUTFChars in /system/lib/libdvm.so that was causing crashes on x86 devices.SYSTEM_UI_FLAG_IMMERSIVE_STICKY. Screen rotation does not
+trigger onSystemUiVisibilityChange, and so does not restore
+immersive mode.cmd.exe when LOCAL_SRC_FILES contains absolute paths. See https://android-review.googlesource.com/#/c/69992.stack:
- section that doesn't contain pc, eip, or ip. For example:
-I/DEBUG ( 1151): #00 5f09db68 401f01c4 /system/lib/libc.so
ndk-build script to add
+-rpath-link=$SYSROOT/usr/lib and
+-rpath-link=$TARGET_OUT in order to use ld.bfd to
+link executables. (Issue 64266)-Bsymbolic from all STL builds.ndk-gdb-py.cmd by setting SHELL as
+an environment variable
+instead of passing it to
+ python.exe, which ignores the setting.
+ (Issue 63054)make-standalone-toolchain.sh script so that
+the --stl=stlport option copies the gabi++ headers instead of
+symlinking them; the cmd.exe and MinGW shells do not understand
+symlinks created by cygwin.*cmd scripts
+previously intended for use only in the cmd.exe shell, in case
+developers prefer to use ndk-build.cmd in cygwin instead of the
+recommended ndk-build script.make-standalone-toolchain.sh
+script by moving instead of copying if the specified destination directory does
+not exist.
+
Android NDK, Revision 9c (December 2013)
+
This is a bug-fix-only release.
+-fuse-ld=mcld, so that the following error no longer occurs:
+cc1: internal compiler error: in common_handle_option, at +opts.c:1774
-mhard-float support for
+__builtin math functions. For ongoing information on fixes for
+-mhard-float with STL, please follow Issue 61784.poll to poll(struct
+pollfd *, nfds_t, int); in poll.h.utimensat to libc.so for Android
+API levels 12 and 19. These libraries are now included for all Android API
+levels 12 through 19.futimens into libc.so, for Android API
+level 19.clock_settime() and
+clock_nanosleep() to time.h for Android API level 8
+and higher.CLOCK_MONOTONIC_RAW, CLOCK_REALTIME_COARSE,
+CLOCK_MONOTONIC_COARSE, CLOCK_BOOTTIME, CLOCK_REALTIME_ALARM, and
+CLOCK_BOOTTIME_ALARM in time.h.CLOCK_REALTIME_HR and
+CLOCK_MONOTONIC_HR.source/android/ndk_helper:
+ Check_ReleaseStringUTFChars in
+/system/lib/libdvm.so that was causing crashes on x86 devices.ndk-build fails that happen in cygwin when the NDK
+package is
+referenced via symlink.ndk-build.cmd fails that happen in windows
+cmd.exe when
+LOCAL_SRC_FILES contains absolute paths. (Issue 69992)ndk-stack script to proceed even when it can't parse
+a frame due to inability to find a routine, filename, or line number. In any of
+these cases, it prints ??.ndk-stack stack for windows-x64_64 targets so that
+it no longer erroneously matches a frame line with a line in the
+stack: section that doesn't contain pc,
+eip, or ip. For example:
+I/DEBUG ( 1151): #00 5f09db68 401f01c4 +/system/lib/libc.so
LOCAL_EXPORT_LDFLAGS.NDK_PROJECT_PATH=null setting for use in an integrated build system where options are explicitly passed to ndk-build. With this setting, ndk-build makes no attempt to look for NDK_PROJECT_PATH. This setting also prevents variables from deriving default settings from NDK_PROJECT_PATH. As a result, the following variables must now be explicitly specified (with their default values if such exist): NDK_OUT, NDK_LIBS_OUT, APP_BUILD_SCRIPT, NDK_DEBUG (optional, default to 0), and other APP_*'s contained in Application.mk.APP_ABI can now be enumerated in a comma-delimited list. For example:
+NDK_PROJECT_PATH=null setting for use in an
+integrated build system where options are explicitly passed to
+ndk-build. With this setting, ndk-build makes no
+attempt to look for NDK_PROJECT_PATH. This setting also prevents
+variables from deriving default settings from NDK_PROJECT_PATH. As a result,
+the following variables must now be explicitly specified (with their default
+values if such exist): NDK_OUT, NDK_LIBS_OUT, APP_BUILD_SCRIPT,
+NDK_DEBUG (optional, default to 0), and other APP_*'s
+contained in Application.mk.APP_ABI can now be enumerated in a comma-delimited list. For
+example:
APP_ABI := "armeabi,armeabi-v7a"
-g) to rebuild all of STL with debugging info in an optional, separate package called android-ndk-r9c-cxx-stl-libs-with-debugging-info.zip. This option helps ndk-stack to provide better a stack dump across STL. This change should not affect the code/size of the final, stripped file.hello-jni samples to report APP_ABI at compilation.ar tool in Deterministic mode (option -D) to build static libraries. For more information, see http://b.android.com/60705.android-ndk-r9c-cxx-stl-libs-with-debugging-info.zip, using the
+-g option. This option
+helps the ndk-stack script provide better a stack dump across STL.
+This change should not affect the code/size of the final, stripped file.hello-jni samples to report APP_ABI at
+compilation.ar tool in Deterministic mode (option
+-D) to build static libraries. (Issue 60705)-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}.ndk-build issues are fixed:
+ a static library version of GNU libstdc++. ndk-build issues: