Files
MapLibreParticleLab/ios/framework/framework-ios.gypi
Minh Nguyễn 9350d3f78c [ios] Converted iOS SDK into dynamic framework
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.
2016-01-22 14:45:56 -08:00

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',
},
},
},
},
]
}