summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKonstantin Käfer <mail@kkaefer.com>2016-08-17 11:57:45 +0200
committerMinh Nguyễn <mxn@1ec5.org>2017-03-18 00:10:09 -0700
commitb4e0f4b302a9617022f4871289a2bc69ced026a3 (patch)
treeb3d646523f30bc3011c32c61a6eb2234c42009aa
parentb3fe46728da2ed9ae31f2eb0ff2e0b2538bced72 (diff)
downloadqtlocation-mapboxgl-b4e0f4b302a9617022f4871289a2bc69ced026a3.tar.gz
[build] merge iOS and macOS projects
-rw-r--r--CMakeLists.txt7
-rw-r--r--Makefile77
-rw-r--r--platform/ios/WorkspaceSettings.xcsettings22
-rw-r--r--platform/ios/ios.xcodeproj/xcshareddata/xcschemes/iOS CI.xcscheme (renamed from platform/ios/ios.xcodeproj/xcshareddata/xcschemes/CI.xcscheme)14
-rw-r--r--platform/ios/ios.xcodeproj/xcshareddata/xcschemes/iOS app.xcscheme (renamed from platform/ios/ios.xcodeproj/xcshareddata/xcschemes/iosapp.xcscheme)0
-rw-r--r--platform/ios/ios.xcodeproj/xcshareddata/xcschemes/iOS benchmarking app.xcscheme (renamed from platform/ios/ios.xcodeproj/xcshareddata/xcschemes/bench.xcscheme)0
-rw-r--r--platform/ios/ios.xcodeproj/xcshareddata/xcschemes/iOS dynamic framework.xcscheme (renamed from platform/ios/ios.xcodeproj/xcshareddata/xcschemes/dynamic.xcscheme)0
-rw-r--r--platform/ios/ios.xcodeproj/xcshareddata/xcschemes/iOS dynamic+static framework.xcscheme (renamed from platform/ios/ios.xcodeproj/xcshareddata/xcschemes/dynamic+static.xcscheme)0
-rw-r--r--platform/ios/ios.xcodeproj/xcshareddata/xcschemes/iOS static framework.xcscheme (renamed from platform/ios/ios.xcodeproj/xcshareddata/xcschemes/static.xcscheme)0
-rw-r--r--platform/ios/ios.xcworkspace/contents.xcworkspacedata19
-rw-r--r--platform/ios/ios.xcworkspace/xcshareddata/xcdebugger/Breakpoints_v2.xcbkptlist25
-rwxr-xr-xplatform/ios/scripts/package.sh13
-rw-r--r--platform/ios/uitest/ios-tests.xcodeproj/xcshareddata/xcschemes/iOS test app.xcscheme (renamed from platform/ios/uitest/ios-tests.xcodeproj/xcshareddata/xcschemes/Mapbox GL Tests.xcscheme)0
-rw-r--r--platform/macos/DEVELOPING.md2
-rw-r--r--platform/macos/macos.xcodeproj/xcshareddata/xcschemes/macOS CI.xcscheme (renamed from platform/macos/macos.xcodeproj/xcshareddata/xcschemes/CI.xcscheme)0
-rw-r--r--platform/macos/macos.xcodeproj/xcshareddata/xcschemes/macOS app.xcscheme (renamed from platform/macos/macos.xcodeproj/xcshareddata/xcschemes/macosapp.xcscheme)0
-rw-r--r--platform/macos/macos.xcodeproj/xcshareddata/xcschemes/macOS dynamic framework.xcscheme (renamed from platform/macos/macos.xcodeproj/xcshareddata/xcschemes/dynamic.xcscheme)0
-rw-r--r--platform/macos/macos.xcworkspace/contents.xcworkspacedata14
-rw-r--r--platform/macos/macos.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings8
-rwxr-xr-xplatform/macos/scripts/create_scheme.sh3
-rwxr-xr-xplatform/macos/scripts/package.sh2
21 files changed, 70 insertions, 136 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 49f3443d9e..b612e508ae 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,5 +1,10 @@
cmake_minimum_required(VERSION 3.1)
-project(mbgl LANGUAGES CXX C)
+
+if(NOT MBGL_PROJECT_NAME)
+ set(MBGL_PROJECT_NAME mbgl)
+endif()
+
+project(${MBGL_PROJECT_NAME} LANGUAGES CXX C)
set(CMAKE_CXX_STANDARD 14)
include(cmake/mbgl.cmake)
diff --git a/Makefile b/Makefile
index 0edfe685a2..81aff345f8 100644
--- a/Makefile
+++ b/Makefile
@@ -59,7 +59,7 @@ ifeq ($(HOST_PLATFORM), macos)
export PATH := $(shell pwd)/platform/macos:$(PATH)
MACOS_OUTPUT_PATH = build/macos
-MACOS_PROJ_PATH = $(MACOS_OUTPUT_PATH)/mbgl.xcodeproj
+MACOS_PROJ_PATH = $(MACOS_OUTPUT_PATH)/mbgl-macos.xcodeproj
MACOS_WORK_PATH = platform/macos/macos.xcworkspace
MACOS_USER_DATA_PATH = $(MACOS_WORK_PATH)/xcuserdata/$(USER).xcuserdatad
MACOS_COMPDB_PATH = $(MACOS_OUTPUT_PATH)/compdb/$(BUILDTYPE)
@@ -76,23 +76,23 @@ MACOS_XCSCHEMES += platform/macos/scripts/node.xcscheme
$(MACOS_PROJ_PATH): $(BUILD_DEPS) $(MACOS_USER_DATA_PATH)/WorkspaceSettings.xcsettings $(MACOS_XCSCHEMES)
mkdir -p $(MACOS_OUTPUT_PATH)
- (cd $(MACOS_OUTPUT_PATH) && cmake -G Xcode ../..)
+ (cd $(MACOS_OUTPUT_PATH) && cmake -G Xcode -DMBGL_PROJECT_NAME=mbgl-macos ../..)
@# Create Xcode schemes so that we can use xcodebuild from the command line. CMake doesn't
@# create these automatically.
- SCHEME_NAME=mbgl-test SCHEME_TYPE=executable platform/macos/scripts/create_scheme.sh
- SCHEME_NAME=mbgl-benchmark SCHEME_TYPE=executable platform/macos/scripts/create_scheme.sh
- SCHEME_NAME=mbgl-render SCHEME_TYPE=executable platform/macos/scripts/create_scheme.sh
- SCHEME_NAME=mbgl-offline SCHEME_TYPE=executable platform/macos/scripts/create_scheme.sh
- SCHEME_NAME=mbgl-glfw SCHEME_TYPE=executable platform/macos/scripts/create_scheme.sh
- SCHEME_NAME=mbgl-core SCHEME_TYPE=library BUILDABLE_NAME=libmbgl-core.a BLUEPRINT_NAME=mbgl-core platform/macos/scripts/create_scheme.sh
- SCHEME_NAME=mbgl-node SCHEME_TYPE=library BUILDABLE_NAME=mbgl-node.node BLUEPRINT_NAME=mbgl-node platform/macos/scripts/create_scheme.sh
+ 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
+ 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
+ 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
+ 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
+ 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
+ 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
@# Create schemes for running node tests. These have all of the environment variables set to
@# launch in the correct location.
- 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
- 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
- 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
+ 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
+ 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
+ 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
+ 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
$(MACOS_USER_DATA_PATH)/WorkspaceSettings.xcsettings: platform/macos/WorkspaceSettings.xcsettings
mkdir -p "$(MACOS_USER_DATA_PATH)"
@@ -100,15 +100,11 @@ $(MACOS_USER_DATA_PATH)/WorkspaceSettings.xcsettings: platform/macos/WorkspaceSe
.PHONY: macos
macos: $(MACOS_PROJ_PATH)
- set -o pipefail && $(MACOS_XCODEBUILD) -scheme 'CI' build $(XCPRETTY)
-
-.PHONY: xproj
-xproj: $(MACOS_PROJ_PATH)
- open $(MACOS_WORK_PATH)
+ set -o pipefail && $(MACOS_XCODEBUILD) -scheme 'macOS CI' build $(XCPRETTY)
.PHONY: test
test: $(MACOS_PROJ_PATH)
- set -o pipefail && $(MACOS_XCODEBUILD) -scheme 'mbgl-test' build $(XCPRETTY)
+ set -o pipefail && $(MACOS_XCODEBUILD) -scheme 'macOS unit tests' build $(XCPRETTY)
.PHONY: benchmark
benchmark: $(MACOS_PROJ_PATH)
@@ -120,7 +116,7 @@ run-test: run-test-*
run-test-%: test
ulimit -c unlimited && ($(MACOS_OUTPUT_PATH)/$(BUILDTYPE)/mbgl-test --gtest_catch_exceptions=0 --gtest_filter=$* & pid=$$! && wait $$pid \
|| (lldb -c /cores/core.$$pid --batch --one-line 'thread backtrace all' --one-line 'quit' && exit 1))
- set -o pipefail && $(MACOS_XCODEBUILD) -scheme 'CI' test $(XCPRETTY)
+ set -o pipefail && $(MACOS_XCODEBUILD) -scheme 'macOS CI' test $(XCPRETTY)
.PHONY: run-benchmark
run-benchmark: run-benchmark-.
@@ -130,7 +126,7 @@ run-benchmark-%: benchmark
.PHONY: glfw-app
glfw-app: $(MACOS_PROJ_PATH)
- set -o pipefail && $(MACOS_XCODEBUILD) -scheme 'mbgl-glfw' build $(XCPRETTY)
+ set -o pipefail && $(MACOS_XCODEBUILD) -scheme 'macOS GLFW app' build $(XCPRETTY)
.PHONY: run-glfw-app
run-glfw-app: glfw-app
@@ -138,15 +134,15 @@ run-glfw-app: glfw-app
.PHONY: render
render: $(MACOS_PROJ_PATH)
- set -o pipefail && $(MACOS_XCODEBUILD) -scheme 'mbgl-render' build $(XCPRETTY)
+ set -o pipefail && $(MACOS_XCODEBUILD) -scheme 'macOS render' build $(XCPRETTY)
.PHONY: offline
offline: $(MACOS_PROJ_PATH)
- set -o pipefail && $(MACOS_XCODEBUILD) -scheme 'mbgl-offline' build $(XCPRETTY)
+ set -o pipefail && $(MACOS_XCODEBUILD) -scheme 'macOS offline' build $(XCPRETTY)
.PHONY: node
node: $(MACOS_PROJ_PATH)
- set -o pipefail && $(MACOS_XCODEBUILD) -scheme 'mbgl-node' build $(XCPRETTY)
+ set -o pipefail && $(MACOS_XCODEBUILD) -scheme 'node module' build $(XCPRETTY)
.PHONY: macos-test
macos-test: $(MACOS_PROJ_PATH)
@@ -191,46 +187,35 @@ tidy: compdb
check: compdb
scripts/clang-tools.sh $(MACOS_COMPDB_PATH) --diff
-endif
-
#### iOS targets ##############################################################
-ifeq ($(HOST_PLATFORM), macos)
-
IOS_OUTPUT_PATH = build/ios
-IOS_PROJ_PATH = $(IOS_OUTPUT_PATH)/mbgl.xcodeproj
-IOS_WORK_PATH = platform/ios/ios.xcworkspace
-IOS_USER_DATA_PATH = $(IOS_WORK_PATH)/xcuserdata/$(USER).xcuserdatad
+IOS_PROJ_PATH = $(IOS_OUTPUT_PATH)/mbgl-ios.xcodeproj
IOS_XCODEBUILD_SIM = xcodebuild \
ARCHS=x86_64 ONLY_ACTIVE_ARCH=YES \
-derivedDataPath $(IOS_OUTPUT_PATH) \
-configuration $(BUILDTYPE) -sdk iphonesimulator \
-destination 'platform=iOS Simulator,name=iPhone 6,OS=latest' \
- -workspace $(IOS_WORK_PATH)
+ -workspace $(MACOS_WORK_PATH)
-$(IOS_PROJ_PATH): $(IOS_USER_DATA_PATH)/WorkspaceSettings.xcsettings $(BUILD_DEPS)
+$(IOS_PROJ_PATH): $(BUILD_DEPS) $(MACOS_USER_DATA_PATH)/WorkspaceSettings.xcsettings $(MACOS_XCSCHEMES)
mkdir -p $(IOS_OUTPUT_PATH)
(cd $(IOS_OUTPUT_PATH) && cmake -G Xcode ../.. \
+ -DMBGL_PROJECT_NAME=mbgl-ios \
-DCMAKE_TOOLCHAIN_FILE=../../platform/ios/toolchain.cmake \
-DMBGL_PLATFORM=ios \
-DMASON_PLATFORM=ios)
-$(IOS_USER_DATA_PATH)/WorkspaceSettings.xcsettings: platform/ios/WorkspaceSettings.xcsettings
- mkdir -p "$(IOS_USER_DATA_PATH)"
- cp platform/ios/WorkspaceSettings.xcsettings "$@"
+ 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
.PHONY: ios
ios: $(IOS_PROJ_PATH)
- set -o pipefail && $(IOS_XCODEBUILD_SIM) -scheme 'CI' build $(XCPRETTY)
-
-.PHONY: iproj
-iproj: $(IOS_PROJ_PATH)
- open $(IOS_WORK_PATH)
+ set -o pipefail && $(IOS_XCODEBUILD_SIM) -scheme 'iOS CI' build $(XCPRETTY)
.PHONY: ios-test
ios-test: $(IOS_PROJ_PATH)
- set -o pipefail && $(IOS_XCODEBUILD_SIM) -scheme 'CI' test $(XCPRETTY)
+ set -o pipefail && $(IOS_XCODEBUILD_SIM) -scheme 'iOS CI' test $(XCPRETTY)
.PHONY: ipackage
ipackage: $(IOS_PROJ_PATH)
@@ -238,7 +223,7 @@ ipackage: $(IOS_PROJ_PATH)
./platform/ios/scripts/package.sh
.PHONY: ipackage-strip
-ipackage-strip: $(IOS_PROJ_PATH)
+ipackage-strip§: $(IOS_PROJ_PATH)
FORMAT=$(FORMAT) BUILD_DEVICE=$(BUILD_DEVICE) SYMBOLS=NO \
./platform/ios/scripts/package.sh
@@ -278,6 +263,11 @@ darwin-update-examples:
.PHONY: check-public-symbols
check-public-symbols:
node platform/darwin/scripts/check-public-symbols.js macOS
+
+.PHONY: xproj
+xproj: $(MACOS_PROJ_PATH) $(IOS_PROJ_PATH)
+ open $(MACOS_WORK_PATH)
+
endif
#### Linux targets #####################################################
@@ -390,10 +380,11 @@ $(QT_BUILD): $(BUILD_DEPS)
ifeq ($(HOST_PLATFORM), macos)
-MACOS_QT_PROJ_PATH = $(QT_ROOT_PATH)/xcode/mbgl.xcodeproj
+MACOS_QT_PROJ_PATH = $(QT_ROOT_PATH)/xcode/mbgl-qt.xcodeproj
$(MACOS_QT_PROJ_PATH): $(BUILD_DEPS)
mkdir -p $(QT_ROOT_PATH)/xcode
(cd $(QT_ROOT_PATH)/xcode && cmake -G Xcode ../../.. \
+ -DMBGL_PROJECT_NAME=mbgl-qt \
-DMBGL_PLATFORM=qt \
-DMASON_PLATFORM=$(MASON_PLATFORM) \
-DMASON_PLATFORM_VERSION=$(MASON_PLATFORM_VERSION) \
diff --git a/platform/ios/WorkspaceSettings.xcsettings b/platform/ios/WorkspaceSettings.xcsettings
deleted file mode 100644
index 20a7accf01..0000000000
--- a/platform/ios/WorkspaceSettings.xcsettings
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
-<plist version="1.0">
-<dict>
- <key>BuildLocationStyle</key>
- <string>CustomLocation</string>
- <key>CustomBuildIntermediatesPath</key>
- <string>../../build/ios</string>
- <key>CustomBuildLocationType</key>
- <string>RelativeToWorkspace</string>
- <key>CustomBuildProductsPath</key>
- <string>../../build/ios</string>
- <key>DerivedDataCustomLocation</key>
- <string>../../build/ios</string>
- <key>DerivedDataLocationStyle</key>
- <string>WorkspaceRelativePath</string>
- <key>IssueFilterStyle</key>
- <string>ShowActiveSchemeOnly</string>
- <key>LiveSourceIssuesEnabled</key>
- <true/>
-</dict>
-</plist>
diff --git a/platform/ios/ios.xcodeproj/xcshareddata/xcschemes/CI.xcscheme b/platform/ios/ios.xcodeproj/xcshareddata/xcschemes/iOS CI.xcscheme
index 40249b8024..985645bbc2 100644
--- a/platform/ios/ios.xcodeproj/xcshareddata/xcschemes/CI.xcscheme
+++ b/platform/ios/ios.xcodeproj/xcshareddata/xcschemes/iOS CI.xcscheme
@@ -14,20 +14,6 @@
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
- BlueprintIdentifier = "4E8A9455A3A23B7FD2A8FC52"
- BuildableName = "All"
- BlueprintName = "All"
- ReferencedContainer = "container:../../build/ios/platform/ios/platform.xcodeproj">
- </BuildableReference>
- </BuildActionEntry>
- <BuildActionEntry
- buildForTesting = "YES"
- buildForRunning = "YES"
- buildForProfiling = "YES"
- buildForArchiving = "YES"
- buildForAnalyzing = "YES">
- <BuildableReference
- BuildableIdentifier = "primary"
BlueprintIdentifier = "DA1DC9491CB6C1C2006E619F"
BuildableName = "Mapbox GL.app"
BlueprintName = "iosapp"
diff --git a/platform/ios/ios.xcodeproj/xcshareddata/xcschemes/iosapp.xcscheme b/platform/ios/ios.xcodeproj/xcshareddata/xcschemes/iOS app.xcscheme
index f1227ac139..f1227ac139 100644
--- a/platform/ios/ios.xcodeproj/xcshareddata/xcschemes/iosapp.xcscheme
+++ b/platform/ios/ios.xcodeproj/xcshareddata/xcschemes/iOS app.xcscheme
diff --git a/platform/ios/ios.xcodeproj/xcshareddata/xcschemes/bench.xcscheme b/platform/ios/ios.xcodeproj/xcshareddata/xcschemes/iOS benchmarking app.xcscheme
index 9dd128ff24..9dd128ff24 100644
--- a/platform/ios/ios.xcodeproj/xcshareddata/xcschemes/bench.xcscheme
+++ b/platform/ios/ios.xcodeproj/xcshareddata/xcschemes/iOS benchmarking app.xcscheme
diff --git a/platform/ios/ios.xcodeproj/xcshareddata/xcschemes/dynamic.xcscheme b/platform/ios/ios.xcodeproj/xcshareddata/xcschemes/iOS dynamic framework.xcscheme
index 7dfffccef5..7dfffccef5 100644
--- a/platform/ios/ios.xcodeproj/xcshareddata/xcschemes/dynamic.xcscheme
+++ b/platform/ios/ios.xcodeproj/xcshareddata/xcschemes/iOS dynamic framework.xcscheme
diff --git a/platform/ios/ios.xcodeproj/xcshareddata/xcschemes/dynamic+static.xcscheme b/platform/ios/ios.xcodeproj/xcshareddata/xcschemes/iOS dynamic+static framework.xcscheme
index 8e1c176bba..8e1c176bba 100644
--- a/platform/ios/ios.xcodeproj/xcshareddata/xcschemes/dynamic+static.xcscheme
+++ b/platform/ios/ios.xcodeproj/xcshareddata/xcschemes/iOS dynamic+static framework.xcscheme
diff --git a/platform/ios/ios.xcodeproj/xcshareddata/xcschemes/static.xcscheme b/platform/ios/ios.xcodeproj/xcshareddata/xcschemes/iOS static framework.xcscheme
index 156651a4a6..156651a4a6 100644
--- a/platform/ios/ios.xcodeproj/xcshareddata/xcschemes/static.xcscheme
+++ b/platform/ios/ios.xcodeproj/xcshareddata/xcschemes/iOS static framework.xcscheme
diff --git a/platform/ios/ios.xcworkspace/contents.xcworkspacedata b/platform/ios/ios.xcworkspace/contents.xcworkspacedata
deleted file mode 100644
index 65d928a67d..0000000000
--- a/platform/ios/ios.xcworkspace/contents.xcworkspacedata
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<Workspace
- version = "1.0">
- <FileRef
- location = "group:ios.xcodeproj">
- </FileRef>
- <FileRef
- location = "group:uitest/ios-tests.xcodeproj">
- </FileRef>
- <FileRef
- location = "group:uitest/KIF/KIF.xcodeproj">
- </FileRef>
- <FileRef
- location = "group:uitest/OHHTTPStubs/OHHTTPStubs/OHHTTPStubs.xcodeproj">
- </FileRef>
- <FileRef
- location = "group:../../build/ios/mbgl.xcodeproj">
- </FileRef>
-</Workspace>
diff --git a/platform/ios/ios.xcworkspace/xcshareddata/xcdebugger/Breakpoints_v2.xcbkptlist b/platform/ios/ios.xcworkspace/xcshareddata/xcdebugger/Breakpoints_v2.xcbkptlist
deleted file mode 100644
index cb6ecad738..0000000000
--- a/platform/ios/ios.xcworkspace/xcshareddata/xcdebugger/Breakpoints_v2.xcbkptlist
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<Bucket
- type = "3"
- version = "2.0">
- <Breakpoints>
- <BreakpointProxy
- BreakpointExtensionID = "Xcode.Breakpoint.ExceptionBreakpoint">
- <BreakpointContent
- shouldBeEnabled = "No"
- ignoreCount = "0"
- continueAfterRunningActions = "No"
- scope = "1"
- stopOnStyle = "0">
- <Actions>
- <BreakpointActionProxy
- ActionExtensionID = "Xcode.BreakpointAction.Sound">
- <ActionContent
- soundName = "Basso">
- </ActionContent>
- </BreakpointActionProxy>
- </Actions>
- </BreakpointContent>
- </BreakpointProxy>
- </Breakpoints>
-</Bucket>
diff --git a/platform/ios/scripts/package.sh b/platform/ios/scripts/package.sh
index e4403c4652..5d5e04af0e 100755
--- a/platform/ios/scripts/package.sh
+++ b/platform/ios/scripts/package.sh
@@ -71,12 +71,13 @@ SHORT_VERSION=${SEM_VERSION%-*}
step "Building targets (build ${PROJ_VERSION}, version ${SEM_VERSION})…"
-SCHEME='dynamic'
+SCHEME='iOS dynamic'
if [[ ${BUILD_DYNAMIC} == true && ${BUILD_STATIC} == true ]]; then
SCHEME+='+static'
elif [[ ${BUILD_STATIC} == true ]]; then
- SCHEME='static'
+ SCHEME='iOS static'
fi
+SCHEME+=' framework'
xcodebuild \
CURRENT_PROJECT_VERSION=${PROJ_VERSION} \
@@ -85,8 +86,8 @@ xcodebuild \
CURRENT_COMMIT_HASH=${HASH} \
ONLY_ACTIVE_ARCH=NO \
-derivedDataPath ${DERIVED_DATA} \
- -workspace ./platform/ios/ios.xcworkspace \
- -scheme ${SCHEME} \
+ -workspace ./platform/macos/macos.xcworkspace \
+ -scheme '${SCHEME}' \
-configuration ${BUILDTYPE} \
-sdk iphonesimulator \
-jobs ${JOBS} | xcpretty
@@ -99,8 +100,8 @@ if [[ ${BUILD_FOR_DEVICE} == true ]]; then
CURRENT_COMMIT_HASH=${HASH} \
ONLY_ACTIVE_ARCH=NO \
-derivedDataPath ${DERIVED_DATA} \
- -workspace ./platform/ios/ios.xcworkspace \
- -scheme ${SCHEME} \
+ -workspace ./platform/macos/macos.xcworkspace \
+ -scheme '${SCHEME}' \
-configuration ${BUILDTYPE} \
-sdk iphoneos \
-jobs ${JOBS} | xcpretty
diff --git a/platform/ios/uitest/ios-tests.xcodeproj/xcshareddata/xcschemes/Mapbox GL Tests.xcscheme b/platform/ios/uitest/ios-tests.xcodeproj/xcshareddata/xcschemes/iOS test app.xcscheme
index e941b6daf9..e941b6daf9 100644
--- a/platform/ios/uitest/ios-tests.xcodeproj/xcshareddata/xcschemes/Mapbox GL Tests.xcscheme
+++ b/platform/ios/uitest/ios-tests.xcodeproj/xcshareddata/xcschemes/iOS test app.xcscheme
diff --git a/platform/macos/DEVELOPING.md b/platform/macos/DEVELOPING.md
index bc91e69456..e49bc06530 100644
--- a/platform/macos/DEVELOPING.md
+++ b/platform/macos/DEVELOPING.md
@@ -12,7 +12,7 @@ The Mapbox macOS SDK requires Xcode 7.3 or above.
1. [Install core dependencies](../../INSTALL.md).
1. Run `make xproj`.
-1. Switch to the “dynamic” or “macosapp” scheme. The former builds just the Cocoa framework, while the latter also builds a Cocoa demo application based on it.
+1. Switch to the “dynamic (macos project)” or “macOS app” scheme. The former builds just the Cocoa framework, while the latter also builds a Cocoa demo application based on it.
### Packaging builds
diff --git a/platform/macos/macos.xcodeproj/xcshareddata/xcschemes/CI.xcscheme b/platform/macos/macos.xcodeproj/xcshareddata/xcschemes/macOS CI.xcscheme
index a049928fdd..a049928fdd 100644
--- a/platform/macos/macos.xcodeproj/xcshareddata/xcschemes/CI.xcscheme
+++ b/platform/macos/macos.xcodeproj/xcshareddata/xcschemes/macOS CI.xcscheme
diff --git a/platform/macos/macos.xcodeproj/xcshareddata/xcschemes/macosapp.xcscheme b/platform/macos/macos.xcodeproj/xcshareddata/xcschemes/macOS app.xcscheme
index a58ef5c9cf..a58ef5c9cf 100644
--- a/platform/macos/macos.xcodeproj/xcshareddata/xcschemes/macosapp.xcscheme
+++ b/platform/macos/macos.xcodeproj/xcshareddata/xcschemes/macOS app.xcscheme
diff --git a/platform/macos/macos.xcodeproj/xcshareddata/xcschemes/dynamic.xcscheme b/platform/macos/macos.xcodeproj/xcshareddata/xcschemes/macOS dynamic framework.xcscheme
index 95351f7f04..95351f7f04 100644
--- a/platform/macos/macos.xcodeproj/xcshareddata/xcschemes/dynamic.xcscheme
+++ b/platform/macos/macos.xcodeproj/xcshareddata/xcschemes/macOS dynamic framework.xcscheme
diff --git a/platform/macos/macos.xcworkspace/contents.xcworkspacedata b/platform/macos/macos.xcworkspace/contents.xcworkspacedata
index 65341f19fa..4f8431544a 100644
--- a/platform/macos/macos.xcworkspace/contents.xcworkspacedata
+++ b/platform/macos/macos.xcworkspace/contents.xcworkspacedata
@@ -5,6 +5,18 @@
location = "container:macos.xcodeproj">
</FileRef>
<FileRef
- location = "group:../../build/macos/mbgl.xcodeproj">
+ location = "group:../../build/macos/mbgl-macos.xcodeproj">
+ </FileRef>
+ <FileRef
+ location = "group:../ios/ios.xcodeproj">
+ </FileRef>
+ <FileRef
+ location = "group:../../build/ios/mbgl-ios.xcodeproj">
+ </FileRef>
+ <FileRef
+ location = "group:../ios/uitest/ios-tests.xcodeproj">
+ </FileRef>
+ <FileRef
+ location = "group:../ios/uitest/KIF/KIF.xcodeproj">
</FileRef>
</Workspace>
diff --git a/platform/macos/macos.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/platform/macos/macos.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings
new file mode 100644
index 0000000000..08de0be8d3
--- /dev/null
+++ b/platform/macos/macos.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>IDEWorkspaceSharedSettings_AutocreateContextsIfNeeded</key>
+ <false/>
+</dict>
+</plist>
diff --git a/platform/macos/scripts/create_scheme.sh b/platform/macos/scripts/create_scheme.sh
index 5a609130d8..3beddfdc6f 100755
--- a/platform/macos/scripts/create_scheme.sh
+++ b/platform/macos/scripts/create_scheme.sh
@@ -2,7 +2,6 @@
set -u
-XCODEPROJ=${XCODEPROJ:-build/macos/mbgl.xcodeproj}
OUTPUT="${XCODEPROJ}/xcshareddata/xcschemes/${SCHEME_NAME}.xcscheme"
# Required ENV vars:
@@ -23,8 +22,6 @@ fi
NODE_ARGUMENT=${NODE_ARGUMENT:-}
MAPBOX_ACCESS_TOKEN=${MAPBOX_ACCESS_TOKEN:-}
BLUEPRINT_ID=${BLUEPRINT_ID:-$(hexdump -n 12 -v -e '/1 "%02X"' /dev/urandom)}
-BUILDABLE_NAME=${BUILDABLE_NAME:-${SCHEME_NAME}}
-BLUEPRINT_NAME=${BLUEPRINT_NAME:-${SCHEME_NAME}}
mkdir -p "${XCODEPROJ}/xcshareddata/xcschemes"
diff --git a/platform/macos/scripts/package.sh b/platform/macos/scripts/package.sh
index 6ae0cc65cc..941058fc0a 100755
--- a/platform/macos/scripts/package.sh
+++ b/platform/macos/scripts/package.sh
@@ -31,7 +31,7 @@ xcodebuild \
CURRENT_COMMIT_HASH=${HASH} \
-derivedDataPath ${DERIVED_DATA} \
-workspace ./platform/macos/macos.xcworkspace \
- -scheme dynamic \
+ -scheme 'macOS dynamic framework' \
-configuration ${BUILDTYPE} \
-jobs ${JOBS} | xcpretty