ObjC: Add OBJC/OBJCXX flags to Xcode projects

Fixes: #19936
This commit is contained in:
Cristian Adam
2019-11-09 13:45:18 +01:00
parent 5e328c6d74
commit bb42e1ed43
6 changed files with 61 additions and 8 deletions
@@ -54,6 +54,20 @@ endfunction()
XcodeDependOnZeroCheck()
function(XcodeObjcxxFlags testName)
set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/${testName}-build)
set(RunCMake_TEST_NO_CLEAN 1)
file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
run_cmake(${testName})
run_cmake_command(${testName}-build ${CMAKE_COMMAND} --build .)
endfunction()
XcodeObjcxxFlags(XcodeObjcFlags)
XcodeObjcxxFlags(XcodeObjcxxFlags)
# Isolate device tests from host architecture selection.
unset(ENV{CMAKE_OSX_ARCHITECTURES})
@@ -0,0 +1,12 @@
cmake_minimum_required(VERSION 3.15)
project(objctest LANGUAGES C OBJC)
include(CheckOBJCCompilerFlag)
check_objc_compiler_flag(-fobjc-arc HAVE_OBJC_ARC)
if(HAVE_OBJC_ARC)
add_compile_options(-fobjc-arc)
add_compile_definitions(HAVE_OBJC_ARC)
endif()
add_library(myfuncs STATIC myfuncs.m)
@@ -0,0 +1,12 @@
cmake_minimum_required(VERSION 3.15)
project(objcxxtest LANGUAGES CXX OBJCXX)
include(CheckOBJCXXCompilerFlag)
check_objcxx_compiler_flag(-fobjc-arc HAVE_OBJC_ARC)
if(HAVE_OBJC_ARC)
add_compile_options(-fobjc-arc)
add_compile_definitions(HAVE_OBJC_ARC)
endif()
add_library(myfuncs STATIC myfuncs.mm)
+3
View File
@@ -0,0 +1,3 @@
#if defined(HAVE_OBJC_ARC) && ! __has_feature(objc_arc)
#error THIS CODE MUST BE COMPILED WITH ARC ENABLED!
#endif
+3
View File
@@ -0,0 +1,3 @@
#if defined(HAVE_OBJC_ARC) && ! __has_feature(objc_arc)
#error THIS CODE MUST BE COMPILED WITH ARC ENABLED!
#endif