This directory contains support files to build libc++ with the Android NDK for ARM, x86 and MIPS. You need a recent NDK release, one which provides a version of the GAbi++ C++ runtime that supports rtti _and_ exceptions. Build instructions: 1/ Set NDK to the path of a recent Android NDK install path (Use Android NDK r8c or above), e.g.: NDK=$HOME/android/ndk-r8c 2/ From the top-level directory, do: $NDK/ndk-build -C android/test This is actually equivalent to: cd android/test $NDK/ndk-build 3/ To see build commands, use V=1, as in: $NDK/ndk-build -C android/test V=1 Android support files: include/support/android: Android system header wrappers, to add missing declarations src/support/android: Put the implementation of the missing system functions here. android/llvm-libc++/Android.mk: Main build file for the library. This builds one static and one shared version of the library. If modifications are not obvious, read $NDK/docs/ANDROID-MK.html for a description of the Android.mk format. android/test/jni: NDK build project for two test programs that link against the static and shared versions of the library. See the Android.mk and Application.mk files in this directory if you want to add new test files. Toolchain selection: By default, ndk-build tries to build with GCC 4.6, however, experimental versions of GCC 4.7 and Clang 3.1 are available with recent NDK releases. Use the NDK_TOOLCHAIN_VERSION environment variable to switch to a different one, valid examples: export NDK_TOOLCHAIN_VERSION=4.6 # this is the default $NDK/ndk-build -C android/test # This is equivalent, but for GCC 4.7 $NDK/ndk-build -C android/test NDK_TOOLCHAIN_VERSION=4.7 # Also equivalent, but for Clang 3.1 NDK_TOOLCHAIN_VERSION=Clang3.1 $NDK/ndk-build -C android/test