mirror of
https://github.com/Kitware/CMake.git
synced 2026-05-08 23:29:55 -05: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)
|
include(${CMAKE_ANDROID_NDK}/build/cmake/hooks/pre/Android-Clang.cmake OPTIONAL)
|
||||||
endif()
|
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
|
# Support for NVIDIA Nsight Tegra Visual Studio Edition was previously
|
||||||
# implemented in the CMake VS IDE generators. Avoid interfering with
|
# implemented in the CMake VS IDE generators. Avoid interfering with
|
||||||
# that functionality for now. Later we may try to integrate this.
|
# that functionality for now. Later we may try to integrate this.
|
||||||
@@ -40,13 +51,22 @@ endif()
|
|||||||
|
|
||||||
include(Platform/Android-Common)
|
include(Platform/Android-Common)
|
||||||
|
|
||||||
# The NDK toolchain configuration files at:
|
if(_INCLUDED_FLAGS)
|
||||||
#
|
# NDK provides the flags.
|
||||||
# <ndk>/[build/core/]toolchains/*-clang*/setup.mk
|
set(_ANDROID_ABI_INIT_CFLAGS "${_ANDROID_NDK_INIT_CFLAGS}")
|
||||||
#
|
set(_ANDROID_ABI_INIT_CFLAGS_DEBUG "${_ANDROID_NDK_INIT_CFLAGS_DEBUG}")
|
||||||
# contain logic to set LLVM_TRIPLE for Clang-based toolchains for each target.
|
set(_ANDROID_ABI_INIT_CFLAGS_RELEASE "${_ANDROID_NDK_INIT_CFLAGS_RELEASE}")
|
||||||
# We need to produce the same target here to produce compatible binaries.
|
set(_ANDROID_ABI_INIT_LDFLAGS "${_ANDROID_NDK_INIT_LDFLAGS}")
|
||||||
include(Platform/Android/abi-${CMAKE_ANDROID_ARCH_ABI}-Clang)
|
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)
|
macro(__android_compiler_clang lang)
|
||||||
if(NOT "x${lang}" STREQUAL "xASM")
|
if(NOT "x${lang}" STREQUAL "xASM")
|
||||||
|
|||||||
Reference in New Issue
Block a user