mirror of
https://github.com/Kitware/CMake.git
synced 2026-02-28 11:48:36 -06:00
Android: allow NDK to control cflags / ldflags
This commit is contained in:
@@ -13,6 +13,17 @@ if(CMAKE_ANDROID_NDK)
|
||||
include(${CMAKE_ANDROID_NDK}/build/cmake/hooks/pre/Android-Clang.cmake OPTIONAL)
|
||||
endif()
|
||||
|
||||
# Load flags from NDK. This file may provides the following variables:
|
||||
# _ANDROID_NDK_INIT_CFLAGS
|
||||
# _ANDROID_NDK_INIT_CFLAGS_DEBUG
|
||||
# _ANDROID_NDK_INIT_CFLAGS_RELEASE
|
||||
# _ANDROID_NDK_INIT_LDFLAGS
|
||||
# _ANDROID_NDK_INIT_LDFLAGS_EXE
|
||||
if(CMAKE_ANDROID_NDK)
|
||||
include(${CMAKE_ANDROID_NDK}/build/cmake/flags.cmake OPTIONAL
|
||||
RESULT_VARIABLE _INCLUDED_FLAGS)
|
||||
endif()
|
||||
|
||||
# Support for NVIDIA Nsight Tegra Visual Studio Edition was previously
|
||||
# implemented in the CMake VS IDE generators. Avoid interfering with
|
||||
# that functionality for now. Later we may try to integrate this.
|
||||
@@ -40,13 +51,22 @@ endif()
|
||||
|
||||
include(Platform/Android-Common)
|
||||
|
||||
# The NDK toolchain configuration files at:
|
||||
#
|
||||
# <ndk>/[build/core/]toolchains/*-clang*/setup.mk
|
||||
#
|
||||
# contain logic to set LLVM_TRIPLE for Clang-based toolchains for each target.
|
||||
# We need to produce the same target here to produce compatible binaries.
|
||||
include(Platform/Android/abi-${CMAKE_ANDROID_ARCH_ABI}-Clang)
|
||||
if(_INCLUDED_FLAGS)
|
||||
# NDK provides the flags.
|
||||
set(_ANDROID_ABI_INIT_CFLAGS "${_ANDROID_NDK_INIT_CFLAGS}")
|
||||
set(_ANDROID_ABI_INIT_CFLAGS_DEBUG "${_ANDROID_NDK_INIT_CFLAGS_DEBUG}")
|
||||
set(_ANDROID_ABI_INIT_CFLAGS_RELEASE "${_ANDROID_NDK_INIT_CFLAGS_RELEASE}")
|
||||
set(_ANDROID_ABI_INIT_LDFLAGS "${_ANDROID_NDK_INIT_LDFLAGS}")
|
||||
set(_ANDROID_ABI_INIT_EXE_LDFLAGS "${_ANDROID_NDK_INIT_LDFLAGS_EXE}")
|
||||
else()
|
||||
# The NDK toolchain configuration files at:
|
||||
#
|
||||
# <ndk>/[build/core/]toolchains/*-clang*/setup.mk
|
||||
#
|
||||
# contain logic to set LLVM_TRIPLE for Clang-based toolchains for each target.
|
||||
# We need to produce the same target here to produce compatible binaries.
|
||||
include(Platform/Android/abi-${CMAKE_ANDROID_ARCH_ABI}-Clang)
|
||||
endif()
|
||||
|
||||
macro(__android_compiler_clang lang)
|
||||
if(NOT "x${lang}" STREQUAL "xASM")
|
||||
|
||||
Reference in New Issue
Block a user