@@ -59,7 +59,7 @@ ifeq ($(HOST_PLATFORM), macos)
59
59
export PATH := $(shell pwd) /platform/macos:$(PATH )
60
60
61
61
MACOS_OUTPUT_PATH = build/macos
62
- MACOS_PROJ_PATH = $(MACOS_OUTPUT_PATH ) /mbgl.xcodeproj
62
+ MACOS_PROJ_PATH = $(MACOS_OUTPUT_PATH ) /mbgl-macos .xcodeproj
63
63
MACOS_WORK_PATH = platform/macos/macos.xcworkspace
64
64
MACOS_USER_DATA_PATH = $(MACOS_WORK_PATH ) /xcuserdata/$(USER ) .xcuserdatad
65
65
MACOS_COMPDB_PATH = $(MACOS_OUTPUT_PATH ) /compdb/$(BUILDTYPE )
@@ -76,39 +76,35 @@ MACOS_XCSCHEMES += platform/macos/scripts/node.xcscheme
76
76
77
77
$(MACOS_PROJ_PATH ) : $(BUILD_DEPS ) $(MACOS_USER_DATA_PATH ) /WorkspaceSettings.xcsettings $(MACOS_XCSCHEMES )
78
78
mkdir -p $(MACOS_OUTPUT_PATH )
79
- (cd $( MACOS_OUTPUT_PATH) && cmake -G Xcode ../..)
79
+ (cd $( MACOS_OUTPUT_PATH) && cmake -G Xcode -DMBGL_PROJECT_NAME=mbgl-macos ../..)
80
80
81
81
@# Create Xcode schemes so that we can use xcodebuild from the command line. CMake doesn't
82
82
@# create these automatically.
83
- SCHEME_NAME=mbgl-test SCHEME_TYPE=executable platform/macos/scripts/create_scheme.sh
84
- SCHEME_NAME=mbgl-benchmark SCHEME_TYPE=executable platform/macos/scripts/create_scheme.sh
85
- SCHEME_NAME=mbgl-render SCHEME_TYPE=executable platform/macos/scripts/create_scheme.sh
86
- SCHEME_NAME=mbgl-offline SCHEME_TYPE=executable platform/macos/scripts/create_scheme.sh
87
- SCHEME_NAME=mbgl-glfw SCHEME_TYPE=executable platform/macos/scripts/create_scheme.sh
88
- SCHEME_NAME=mbgl-core SCHEME_TYPE=library BUILDABLE_NAME=libmbgl-core.a BLUEPRINT_NAME=mbgl-core platform/macos/scripts/create_scheme.sh
89
- SCHEME_NAME=mbgl-node SCHEME_TYPE=library BUILDABLE_NAME=mbgl-node.node BLUEPRINT_NAME=mbgl-node platform/macos/scripts/create_scheme.sh
83
+ XCODEPROJ=$(MACOS_PROJ_PATH) SCHEME_NAME="macOS unit tests" SCHEME_TYPE=executable BLUEPRINT_NAME=mbgl-test BUILDABLE_NAME=mbgl-test platform/macos/scripts/create_scheme.sh
84
+ XCODEPROJ=$(MACOS_PROJ_PATH) SCHEME_NAME="macOS benchmark" SCHEME_TYPE=executable BLUEPRINT_NAME=mbgl-benchmark BUILDABLE_NAME=mbgl-benchmark platform/macos/scripts/create_scheme.sh
85
+ XCODEPROJ=$(MACOS_PROJ_PATH) SCHEME_NAME="macOS render" SCHEME_TYPE=executable BLUEPRINT_NAME=mbgl-render BUILDABLE_NAME=mbgl-render platform/macos/scripts/create_scheme.sh
86
+ XCODEPROJ=$(MACOS_PROJ_PATH) SCHEME_NAME="macOS offline" SCHEME_TYPE=executable BLUEPRINT_NAME=mbgl-offline BUILDABLE_NAME=mbgl-offline platform/macos/scripts/create_scheme.sh
87
+ XCODEPROJ=$(MACOS_PROJ_PATH) SCHEME_NAME="macOS GLFW app" SCHEME_TYPE=executable BLUEPRINT_NAME=mbgl-glfw BUILDABLE_NAME=mbgl-glfw platform/macos/scripts/create_scheme.sh
88
+ XCODEPROJ=$(MACOS_PROJ_PATH) SCHEME_NAME="macOS core library" SCHEME_TYPE=library BLUEPRINT_NAME=mbgl-core BUILDABLE_NAME=libmbgl-core.a BLUEPRINT_NAME=mbgl-core platform/macos/scripts/create_scheme.sh
90
89
91
90
@# Create schemes for running node tests. These have all of the environment variables set to
92
91
@# launch in the correct location.
93
- SCHEME_NAME="node tests" SCHEME_TYPE=node BUILDABLE_NAME=mbgl-node.node BLUEPRINT_NAME=mbgl-node NODE_ARGUMENT="`npm bin tape`/tape platform/node/test/js/**/*.test.js" platform/macos/scripts/create_scheme.sh
94
- SCHEME_NAME="node render tests" SCHEME_TYPE=node BUILDABLE_NAME=mbgl-node.node BLUEPRINT_NAME=mbgl-node NODE_ARGUMENT="platform/node/test/render.test.js" platform/macos/scripts/create_scheme.sh
95
- SCHEME_NAME="node query tests" SCHEME_TYPE=node BUILDABLE_NAME=mbgl-node.node BLUEPRINT_NAME=mbgl-node NODE_ARGUMENT="platform/node/test/query.test.js" platform/macos/scripts/create_scheme.sh
92
+ XCODEPROJ=$(MACOS_PROJ_PATH) SCHEME_NAME="node module" SCHEME_TYPE=library BLUEPRINT_NAME=mbgl-node BUILDABLE_NAME=mbgl-node.node BLUEPRINT_NAME=mbgl-node platform/macos/scripts/create_scheme.sh
93
+ XCODEPROJ=$(MACOS_PROJ_PATH) SCHEME_NAME="node tests" SCHEME_TYPE=node BUILDABLE_NAME=mbgl-node.node BLUEPRINT_NAME=mbgl-node NODE_ARGUMENT="`npm bin tape`/tape platform/node/test/js/**/*.test.js" platform/macos/scripts/create_scheme.sh
94
+ XCODEPROJ=$(MACOS_PROJ_PATH) SCHEME_NAME="node render tests" SCHEME_TYPE=node BUILDABLE_NAME=mbgl-node.node BLUEPRINT_NAME=mbgl-node NODE_ARGUMENT="platform/node/test/render.test.js" platform/macos/scripts/create_scheme.sh
95
+ XCODEPROJ=$(MACOS_PROJ_PATH) SCHEME_NAME="node query tests" SCHEME_TYPE=node BUILDABLE_NAME=mbgl-node.node BLUEPRINT_NAME=mbgl-node NODE_ARGUMENT="platform/node/test/query.test.js" platform/macos/scripts/create_scheme.sh
96
96
97
97
$(MACOS_USER_DATA_PATH ) /WorkspaceSettings.xcsettings : platform/macos/WorkspaceSettings.xcsettings
98
98
mkdir -p " $( MACOS_USER_DATA_PATH) "
99
99
cp platform/macos/WorkspaceSettings.xcsettings " $@ "
100
100
101
101
.PHONY : macos
102
102
macos : $(MACOS_PROJ_PATH )
103
- set -o pipefail && $(MACOS_XCODEBUILD ) -scheme ' CI' build $(XCPRETTY )
104
-
105
- .PHONY : xproj
106
- xproj : $(MACOS_PROJ_PATH )
107
- open $(MACOS_WORK_PATH )
103
+ set -o pipefail && $(MACOS_XCODEBUILD ) -scheme ' macOS CI' build $(XCPRETTY )
108
104
109
105
.PHONY : test
110
106
test : $(MACOS_PROJ_PATH )
111
- set -o pipefail && $(MACOS_XCODEBUILD ) -scheme ' mbgl-test ' build $(XCPRETTY )
107
+ set -o pipefail && $(MACOS_XCODEBUILD ) -scheme ' macOS unit tests ' build $(XCPRETTY )
112
108
113
109
.PHONY : benchmark
114
110
benchmark : $(MACOS_PROJ_PATH )
@@ -120,7 +116,7 @@ run-test: run-test-*
120
116
run-test-% : test
121
117
ulimit -c unlimited && ($( MACOS_OUTPUT_PATH) /$( BUILDTYPE) /mbgl-test --gtest_catch_exceptions=0 --gtest_filter=$* & pid=$$ ! && wait $$ pid \
122
118
|| (lldb -c /cores/core.$$ pid --batch --one-line ' thread backtrace all' --one-line ' quit' && exit 1))
123
- set -o pipefail && $(MACOS_XCODEBUILD ) -scheme ' CI' test $(XCPRETTY )
119
+ set -o pipefail && $(MACOS_XCODEBUILD ) -scheme ' macOS CI' test $(XCPRETTY )
124
120
125
121
.PHONY : run-benchmark
126
122
run-benchmark : run-benchmark-.
@@ -130,23 +126,23 @@ run-benchmark-%: benchmark
130
126
131
127
.PHONY : glfw-app
132
128
glfw-app : $(MACOS_PROJ_PATH )
133
- set -o pipefail && $(MACOS_XCODEBUILD ) -scheme ' mbgl-glfw ' build $(XCPRETTY )
129
+ set -o pipefail && $(MACOS_XCODEBUILD ) -scheme ' macOS GLFW app ' build $(XCPRETTY )
134
130
135
131
.PHONY : run-glfw-app
136
132
run-glfw-app : glfw-app
137
133
" $( MACOS_OUTPUT_PATH) /$( BUILDTYPE) /mbgl-glfw"
138
134
139
135
.PHONY : render
140
136
render : $(MACOS_PROJ_PATH )
141
- set -o pipefail && $(MACOS_XCODEBUILD ) -scheme ' mbgl- render' build $(XCPRETTY )
137
+ set -o pipefail && $(MACOS_XCODEBUILD ) -scheme ' macOS render' build $(XCPRETTY )
142
138
143
139
.PHONY : offline
144
140
offline : $(MACOS_PROJ_PATH )
145
- set -o pipefail && $(MACOS_XCODEBUILD ) -scheme ' mbgl- offline' build $(XCPRETTY )
141
+ set -o pipefail && $(MACOS_XCODEBUILD ) -scheme ' macOS offline' build $(XCPRETTY )
146
142
147
143
.PHONY : node
148
144
node : $(MACOS_PROJ_PATH )
149
- set -o pipefail && $(MACOS_XCODEBUILD ) -scheme ' mbgl- node' build $(XCPRETTY )
145
+ set -o pipefail && $(MACOS_XCODEBUILD ) -scheme ' node module ' build $(XCPRETTY )
150
146
151
147
.PHONY : macos-test
152
148
macos-test : $(MACOS_PROJ_PATH )
@@ -191,54 +187,43 @@ tidy: compdb
191
187
check : compdb
192
188
scripts/clang-tools.sh $(MACOS_COMPDB_PATH ) --diff
193
189
194
- endif
195
-
196
190
# ### iOS targets ##############################################################
197
191
198
- ifeq ($(HOST_PLATFORM ) , macos)
199
-
200
192
IOS_OUTPUT_PATH = build/ios
201
- IOS_PROJ_PATH = $(IOS_OUTPUT_PATH ) /mbgl.xcodeproj
202
- IOS_WORK_PATH = platform/ios/ios.xcworkspace
203
- IOS_USER_DATA_PATH = $(IOS_WORK_PATH ) /xcuserdata/$(USER ) .xcuserdatad
193
+ IOS_PROJ_PATH = $(IOS_OUTPUT_PATH ) /mbgl-ios.xcodeproj
204
194
205
195
IOS_XCODEBUILD_SIM = xcodebuild \
206
196
ARCHS=x86_64 ONLY_ACTIVE_ARCH=YES \
207
197
-derivedDataPath $(IOS_OUTPUT_PATH ) \
208
198
-configuration $(BUILDTYPE ) -sdk iphonesimulator \
209
199
-destination 'platform=iOS Simulator,name=iPhone 6,OS=latest' \
210
- -workspace $(IOS_WORK_PATH )
200
+ -workspace $(MACOS_WORK_PATH )
211
201
212
- $(IOS_PROJ_PATH ) : $(IOS_USER_DATA_PATH ) /WorkspaceSettings.xcsettings $(BUILD_DEPS )
202
+ $(IOS_PROJ_PATH ) : $(BUILD_DEPS ) $( MACOS_USER_DATA_PATH ) /WorkspaceSettings.xcsettings $(MACOS_XCSCHEMES )
213
203
mkdir -p $(IOS_OUTPUT_PATH )
214
204
(cd $( IOS_OUTPUT_PATH) && cmake -G Xcode ../.. \
205
+ -DMBGL_PROJECT_NAME=mbgl-ios \
215
206
-DCMAKE_TOOLCHAIN_FILE=../../platform/ios/toolchain.cmake \
216
207
-DMBGL_PLATFORM=ios \
217
208
-DMASON_PLATFORM=ios)
218
209
219
- $(IOS_USER_DATA_PATH ) /WorkspaceSettings.xcsettings : platform/ios/WorkspaceSettings.xcsettings
220
- mkdir -p " $( IOS_USER_DATA_PATH) "
221
- cp platform/ios/WorkspaceSettings.xcsettings " $@ "
210
+ XCODEPROJ=$(IOS_PROJ_PATH) SCHEME_NAME="iOS core library" SCHEME_TYPE=library BLUEPRINT_NAME=mbgl-core BUILDABLE_NAME=libmbgl-core.a BLUEPRINT_NAME=mbgl-core platform/macos/scripts/create_scheme.sh
222
211
223
212
.PHONY : ios
224
213
ios : $(IOS_PROJ_PATH )
225
- set -o pipefail && $(IOS_XCODEBUILD_SIM ) -scheme ' CI' build $(XCPRETTY )
226
-
227
- .PHONY : iproj
228
- iproj : $(IOS_PROJ_PATH )
229
- open $(IOS_WORK_PATH )
214
+ set -o pipefail && $(IOS_XCODEBUILD_SIM ) -scheme ' iOS CI' build $(XCPRETTY )
230
215
231
216
.PHONY : ios-test
232
217
ios-test : $(IOS_PROJ_PATH )
233
- set -o pipefail && $(IOS_XCODEBUILD_SIM ) -scheme ' CI' test $(XCPRETTY )
218
+ set -o pipefail && $(IOS_XCODEBUILD_SIM ) -scheme ' iOS CI' test $(XCPRETTY )
234
219
235
220
.PHONY : ipackage
236
221
ipackage : $(IOS_PROJ_PATH )
237
222
FORMAT=$(FORMAT ) BUILD_DEVICE=$(BUILD_DEVICE ) SYMBOLS=$(SYMBOLS ) \
238
223
./platform/ios/scripts/package.sh
239
224
240
225
.PHONY : ipackage-strip
241
- ipackage-strip : $(IOS_PROJ_PATH )
226
+ ipackage-strip§ : $(IOS_PROJ_PATH )
242
227
FORMAT=$(FORMAT ) BUILD_DEVICE=$(BUILD_DEVICE ) SYMBOLS=NO \
243
228
./platform/ios/scripts/package.sh
244
229
@@ -278,6 +263,11 @@ darwin-update-examples:
278
263
.PHONY : check-public-symbols
279
264
check-public-symbols :
280
265
node platform/darwin/scripts/check-public-symbols.js macOS
266
+
267
+ .PHONY : xproj
268
+ xproj : $(MACOS_PROJ_PATH ) $(IOS_PROJ_PATH )
269
+ open $(MACOS_WORK_PATH )
270
+
281
271
endif
282
272
283
273
# ### Linux targets #####################################################
@@ -390,10 +380,11 @@ $(QT_BUILD): $(BUILD_DEPS)
390
380
391
381
ifeq ($(HOST_PLATFORM ) , macos)
392
382
393
- MACOS_QT_PROJ_PATH = $(QT_ROOT_PATH ) /xcode/mbgl.xcodeproj
383
+ MACOS_QT_PROJ_PATH = $(QT_ROOT_PATH ) /xcode/mbgl-qt .xcodeproj
394
384
$(MACOS_QT_PROJ_PATH ) : $(BUILD_DEPS )
395
385
mkdir -p $(QT_ROOT_PATH ) /xcode
396
386
(cd $( QT_ROOT_PATH) /xcode && cmake -G Xcode ../../.. \
387
+ -DMBGL_PROJECT_NAME=mbgl-qt \
397
388
-DMBGL_PLATFORM=qt \
398
389
-DMASON_PLATFORM=$(MASON_PLATFORM ) \
399
390
-DMASON_PLATFORM_VERSION=$(MASON_PLATFORM_VERSION ) \
0 commit comments