mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-01 11:22:21 -06:00
Merge topic 'android-include-api'
1ee0ffabAndroid: Pass sysroot include directory explicitly1806e011Android: Fix c++_{static,shared} support include directory order
This commit is contained in:
@@ -149,4 +149,13 @@ macro(__android_compiler_common lang)
|
||||
if("x${lang}" STREQUAL "xCXX")
|
||||
__android_stl(CXX)
|
||||
endif()
|
||||
|
||||
# <ndk>/build/core/definitions.mk appends the sysroot's include directory
|
||||
# explicitly at the end of the command-line include path so that it
|
||||
# precedes the toolchain's builtin include directories. This is
|
||||
# necessary so that Android API-version-specific headers are preferred
|
||||
# over those in the toolchain's `include-fixed` directory (which cannot
|
||||
# possibly match all versions).
|
||||
list(APPEND CMAKE_${lang}_STANDARD_INCLUDE_DIRECTORIES "${CMAKE_SYSROOT}/usr/include")
|
||||
list(REMOVE_ITEM CMAKE_${lang}_IMPLICIT_INCLUDE_DIRECTORIES "/usr/include")
|
||||
endmacro()
|
||||
|
||||
@@ -6,16 +6,15 @@ macro(__android_stl_cxx lang filename)
|
||||
if(EXISTS "${CMAKE_ANDROID_NDK}/sources/cxx-stl/llvm-libc++/libcxx/include/cstddef")
|
||||
# r12 and below
|
||||
__android_stl_inc(${lang} "${CMAKE_ANDROID_NDK}/sources/cxx-stl/llvm-libc++/libcxx/include" 1)
|
||||
__android_stl_inc(${lang} "${CMAKE_ANDROID_NDK}/sources/android/support/include" 0)
|
||||
__android_stl_inc(${lang} "${CMAKE_ANDROID_NDK}/sources/cxx-stl/llvm-libc++abi/libcxxabi/include" 1)
|
||||
else()
|
||||
# r13 and above
|
||||
__android_stl_inc(${lang} "${CMAKE_ANDROID_NDK}/sources/cxx-stl/llvm-libc++/include" 1)
|
||||
__android_stl_inc(${lang} "${CMAKE_ANDROID_NDK}/sources/android/support/include" 0)
|
||||
__android_stl_inc(${lang} "${CMAKE_ANDROID_NDK}/sources/cxx-stl/llvm-libc++abi/include" 1)
|
||||
endif()
|
||||
|
||||
# Add a secondary include directory if it exists.
|
||||
__android_stl_inc(${lang} "${CMAKE_ANDROID_NDK}/sources/android/support/include" 0)
|
||||
|
||||
# Add the library file.
|
||||
__android_stl_lib(${lang} "${CMAKE_ANDROID_NDK}/sources/cxx-stl/llvm-libc++/libs/${CMAKE_ANDROID_ARCH_ABI}/${filename}" 1)
|
||||
endmacro()
|
||||
|
||||
Reference in New Issue
Block a user