summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile5
-rw-r--r--README.md2
-rwxr-xr-xscripts/ios/package.sh42
3 files changed, 33 insertions, 16 deletions
diff --git a/Makefile b/Makefile
index d1552d1a82..5bebd04ace 100644
--- a/Makefile
+++ b/Makefile
@@ -129,7 +129,10 @@ isim: Xcode/ios
ipackage: clean Xcode/ios
./scripts/ios/package.sh
-itest: ipackage KIF
+ipackage-sim: clean Xcode/ios
+ ./scripts/ios/package.sh sim
+
+itest: ipackage-sim KIF
./scripts/ios/test.sh
# Legacy name
diff --git a/README.md b/README.md
index 2ec8f45639..9e1cb2d0e9 100644
--- a/README.md
+++ b/README.md
@@ -49,7 +49,7 @@ Target OS X: 10.9+
If you merely want to install the library for iOS and try it out as an Objective-C consumer:
0. Use [Homebrew](http://brew.sh/) to install Boost headers: `brew install boost`.
-1. Run `./scripts/ios/package.sh`. The packaging script will produce the statically-linked `libMapboxGL.a`, `MapboxGL.bundle` for resources, and a `Headers` folder.
+1. Run `make ipackage`. The packaging script will produce the statically-linked `libMapboxGL.a`, `MapboxGL.bundle` for resources, and a `Headers` folder.
2. Copy the contents of `build/ios/pkg/static` into your project. It should happen automatically, but ensure that:
- `Headers` is in your *Header Search Paths* (`HEADER_SEARCH_PATHS`) build setting.
- `MapboxGL.bundle` is in your target's *Copy Bundle Resources* build phase.
diff --git a/scripts/ios/package.sh b/scripts/ios/package.sh
index e71925f803..4cd22d48e6 100755
--- a/scripts/ios/package.sh
+++ b/scripts/ios/package.sh
@@ -11,6 +11,12 @@ OUTPUT=build/ios/pkg
IOS_SDK_VERSION=`xcrun --sdk iphoneos --show-sdk-version`
LIBUV_VERSION=0.10.28
+if [[ ${#} -eq 0 ]]; then
+ BUILD_FOR_DEVICE=true
+else
+ BUILD_FOR_DEVICE=false
+fi
+
function step { >&2 echo -e "\033[1m\033[36m* $@\033[0m"; }
function finish { >&2 echo -en "\033[0m"; }
trap finish EXIT
@@ -35,15 +41,16 @@ export BUILDTYPE=${BUILDTYPE:-Release}
export HOST=ios
make Xcode/ios
-step "Building iOS device targets..."
-xcodebuild -sdk iphoneos${IOS_SDK_VERSION} \
- ARCHS="arm64 armv7 armv7s" \
- ONLY_ACTIVE_ARCH=NO \
- -project ./build/ios/mbgl.xcodeproj \
- -configuration ${BUILDTYPE} \
- -target everything \
- -jobs ${JOBS} | xcpretty -c
-
+if [[ "${BUILD_FOR_DEVICE}" == true ]]; then
+ step "Building iOS device targets..."
+ xcodebuild -sdk iphoneos${IOS_SDK_VERSION} \
+ ARCHS="arm64 armv7 armv7s" \
+ ONLY_ACTIVE_ARCH=NO \
+ -project ./build/ios/mbgl.xcodeproj \
+ -configuration ${BUILDTYPE} \
+ -target everything \
+ -jobs ${JOBS} | xcpretty -c
+fi
step "Building iOS Simulator targets..."
xcodebuild -sdk iphonesimulator${IOS_SDK_VERSION} \
@@ -57,11 +64,18 @@ xcodebuild -sdk iphonesimulator${IOS_SDK_VERSION} \
step "Building static library..."
LIBS=(core.a platform-ios.a asset-fs.a cache-sqlite.a http-nsurl.a)
-libtool -static -no_warning_for_no_symbols \
- -o ${OUTPUT}/static/lib${NAME}.a \
- ${LIBS[@]/#/build/${BUILDTYPE}-iphoneos/libmbgl-} \
- ${LIBS[@]/#/build/${BUILDTYPE}-iphonesimulator/libmbgl-} \
- `find mason_packages/ios-${IOS_SDK_VERSION} -type f -name libuv.a`
+if [[ "${BUILD_FOR_DEVICE}" == true ]]; then
+ libtool -static -no_warning_for_no_symbols \
+ -o ${OUTPUT}/static/lib${NAME}.a \
+ ${LIBS[@]/#/build/${BUILDTYPE}-iphoneos/libmbgl-} \
+ ${LIBS[@]/#/build/${BUILDTYPE}-iphonesimulator/libmbgl-} \
+ `find mason_packages/ios-${IOS_SDK_VERSION} -type f -name libuv.a`
+else
+ libtool -static -no_warning_for_no_symbols \
+ -o ${OUTPUT}/static/lib${NAME}.a \
+ ${LIBS[@]/#/build/${BUILDTYPE}-iphonesimulator/libmbgl-} \
+ `find mason_packages/ios-${IOS_SDK_VERSION} -type f -name libuv.a`
+fi
echo "Created ${OUTPUT}/static/lib${NAME}.a"