@@ -3,12 +3,18 @@ cmake_minimum_required(VERSION 3.1)
3
3
4
4
enable_testing ()
5
5
6
+ set (LIB_CPPREST libcpprest.a )
7
+ set (LIB_CPPREST_LIB_DIR "${CMAKE_CURRENT_BINARY_DIR} /lib" )
8
+
6
9
if (CMAKE_XCODE_ATTRIBUTE_IPHONEOS_DEPLOYMENT_TARGET )
7
10
set (ENV{CMAKE_XCODE_ATTRIBUTE_IPHONEOS_DEPLOYMENT_TARGET} ${CMAKE_XCODE_ATTRIBUTE_IPHONEOS_DEPLOYMENT_TARGET} )
8
11
endif ()
9
12
10
13
set (TOOLCHAIN_FILE "${CMAKE_CURRENT_SOURCE_DIR} /ios-cmake/ios.toolchain.cmake" )
11
14
15
+ set (SIM_BINARY_DIR "${CMAKE_CURRENT_BINARY_DIR} /build.i386" CACHE INTERNAL "" )
16
+ set (SIM_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR} /../Release" CACHE INTERNAL "" )
17
+
12
18
set (SIM64_BINARY_DIR "${CMAKE_CURRENT_BINARY_DIR} /build.x86_64" CACHE INTERNAL "" )
13
19
set (SIM64_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR} /../Release" CACHE INTERNAL "" )
14
20
@@ -31,9 +37,25 @@ endif()
31
37
32
38
add_test (NAME ios_runner
33
39
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} /../Release/tests/common/testrunner/ios
34
- COMMAND xcodebuild test -project ios_runner.xcodeproj -configuration=${CMAKE_BUILD_TYPE} -scheme ios_runner -destination "platform=iOS Simulator,name=iPhone 6" LIBRARY_SEARCH_PATH=${SIM_BINARY_DIR }
40
+ COMMAND xcodebuild test -project ios_runner.xcodeproj -configuration=${CMAKE_BUILD_TYPE} -scheme ios_runner -destination "platform=iOS Simulator,name=iPhone 6" LIBRARY_SEARCH_PATH=${SIM64_BINARY_DIR }
35
41
)
36
42
43
+ if (INCLUDE_32BIT )
44
+ set (SIM_BINARY_LIB ${SIM_BINARY_DIR} /Binaries/${CMAKE_BUILD_TYPE}/${LIB_CPPREST} )
45
+ file (MAKE_DIRECTORY ${SIM_BINARY_DIR} )
46
+ execute_process (WORKING_DIRECTORY ${SIM_BINARY_DIR}
47
+ COMMAND ${CMAKE_COMMAND}
48
+ -GXcode
49
+ -DCMAKE_TOOLCHAIN_FILE=${TOOLCHAIN_FILE}
50
+ -DIOS_PLATFORM=SIMULATOR
51
+ -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
52
+ "${DEPLOYMENT_TARGET} "
53
+ "${SIM_SOURCE_DIR} "
54
+ )
55
+ else ()
56
+ set (SIM_BINARY_LIB "" )
57
+ endif ()
58
+
37
59
file (MAKE_DIRECTORY ${SIM64_BINARY_DIR} )
38
60
execute_process (WORKING_DIRECTORY ${SIM64_BINARY_DIR}
39
61
COMMAND ${CMAKE_COMMAND}
@@ -57,6 +79,19 @@ execute_process(WORKING_DIRECTORY ${ARM_BINARY_DIR}
57
79
"${ARM_SOURCE_DIR} "
58
80
)
59
81
82
+ if (INCLUDE_32BIT )
83
+ set (SIM_TARGET sim )
84
+ ## Simulator i386 version
85
+ add_custom_target (sim
86
+ COMMAND ${CMAKE_COMMAND}
87
+ --build ${SIM_BINARY_DIR}
88
+ --config ${CMAKE_BUILD_TYPE}
89
+ COMMENT "Building for i386 (simulator)"
90
+ VERBATIM
91
+ )
92
+ else ()
93
+ set (SIM_TARGET "" )
94
+ endif ()
60
95
61
96
## Simulator x86_64 version
62
97
add_custom_target (sim64
@@ -76,20 +111,20 @@ add_custom_target(arm
76
111
VERBATIM
77
112
)
78
113
79
- set (LIB_CPPREST libcpprest.a )
80
- set (LIB_CPPREST_LIB_DIR "${CMAKE_CURRENT_BINARY_DIR} /lib" )
81
-
82
114
add_custom_command (
83
115
OUTPUT ${LIB_CPPREST_LIB_DIR} /${LIB_CPPREST}
84
116
COMMAND mkdir -p "${LIB_CPPREST_LIB_DIR} "
85
117
COMMAND lipo -create
86
118
-output "${LIB_CPPREST_LIB_DIR} /${LIB_CPPREST} "
119
+ ${SIM_BINARY_LIB}
87
120
${SIM64_BINARY_DIR} /Binaries/${CMAKE_BUILD_TYPE}/${LIB_CPPREST}
88
121
${ARM_BINARY_DIR} /Binaries/${CMAKE_BUILD_TYPE}/${LIB_CPPREST}
89
122
COMMAND cp -R "${CMAKE_CURRENT_SOURCE_DIR} /../Release/include" "${CMAKE_CURRENT_BINARY_DIR} "
90
123
DEPENDS
124
+ ${SIM_TARGET}
91
125
sim64
92
126
arm
127
+ ${SIM_BINARY_LIB}
93
128
"${SIM64_BINARY_DIR} /Binaries/${CMAKE_BUILD_TYPE} /${LIB_CPPREST} "
94
129
"${ARM_BINARY_DIR} /Binaries/${CMAKE_BUILD_TYPE} /${LIB_CPPREST} "
95
130
VERBATIM
0 commit comments