make iproj now produces a target that pulls together static libraries like core and platform-ios into a real dynamic framework. iosapp is pretty much just a regular iOS application that links Mapbox.framework (except for the inclusion of default_styles.hpp). iosapp runs fine in the Simulator and on a device, and the same is true for any application linking against Mapbox.framework. The ipackage target produces both a Bitcode-disabled static framework and a Bitcode-enabled dynamic framework, eliminating the need for a separate framework.sh. It disables code signing, since that happens on copy when the framework is embedded inside the application bundle. It also merges the device and simulator builds into a single fat framework. Also bumped itest minimum deployment target to iOS 8.0, the first version that supports linking frameworks. Fixes #828.
71 lines
1.9 KiB
Python
71 lines
1.9 KiB
Python
{
|
|
'includes': [
|
|
'../../gyp/common.gypi',
|
|
],
|
|
'targets': [
|
|
{
|
|
'target_name': 'iossdk',
|
|
'product_name': 'Mapbox',
|
|
'type': 'shared_library',
|
|
'mac_bundle': 1,
|
|
|
|
'dependencies': [
|
|
'mbgl.gyp:core',
|
|
'mbgl.gyp:platform-<(platform_lib)',
|
|
'mbgl.gyp:http-<(http_lib)',
|
|
'mbgl.gyp:asset-<(asset_lib)',
|
|
],
|
|
|
|
'xcode_settings': {
|
|
'CLANG_ENABLE_OBJC_ARC': 'YES',
|
|
'COMBINE_HIDPI_IMAGES': 'NO', # disable combining @2x, @3x images into .tiff files
|
|
'CURRENT_PROJECT_VERSION': '0',
|
|
'DEFINES_MODULE': 'YES',
|
|
'DYLIB_INSTALL_NAME_BASE': '@rpath',
|
|
'INFOPLIST_FILE': '../ios/framework/Info.plist',
|
|
'LD_RUNPATH_SEARCH_PATHS': [
|
|
'$(inherited)',
|
|
'@executable_path/Frameworks',
|
|
'@loader_path/Frameworks',
|
|
],
|
|
'PRODUCT_BUNDLE_IDENTIFIER': 'com.mapbox.sdk.ios',
|
|
'OTHER_LDFLAGS': [ '-stdlib=libc++', '-lstdc++' ],
|
|
'SDKROOT': 'iphoneos',
|
|
'SKIP_INSTALL': 'YES',
|
|
'SUPPORTED_PLATFORMS': [
|
|
'iphonesimulator',
|
|
'iphoneos',
|
|
],
|
|
'VERSIONING_SYSTEM': 'apple-generic',
|
|
},
|
|
|
|
'mac_framework_headers': [
|
|
'Mapbox.h',
|
|
'<!@(find ../include/mbgl/{darwin,ios} -type f \! -name \'.*\' \! -name Mapbox.h)',
|
|
],
|
|
|
|
'sources': [
|
|
'Mapbox.m',
|
|
],
|
|
|
|
'configurations': {
|
|
'Debug': {
|
|
'xcode_settings': {
|
|
'CODE_SIGN_IDENTITY': 'iPhone Developer',
|
|
'DEAD_CODE_STRIPPING': 'YES',
|
|
'GCC_OPTIMIZATION_LEVEL': '0',
|
|
},
|
|
},
|
|
'Release': {
|
|
'xcode_settings': {
|
|
'ARCHS': [ "armv7", "armv7s", "arm64", "i386", "x86_64" ],
|
|
'CODE_SIGN_IDENTITY': 'iPhone Distribution',
|
|
'DEAD_CODE_STRIPPING': 'YES',
|
|
'GCC_OPTIMIZATION_LEVEL': 's',
|
|
},
|
|
},
|
|
},
|
|
},
|
|
]
|
|
}
|