| Index: pylib/gyp/mac_tool.py
|
| diff --git a/pylib/gyp/mac_tool.py b/pylib/gyp/mac_tool.py
|
| index b430b18c94b9f4be785fd4f90acd5e609c87fb06..e33c1d1273de072485ed36bece4ebc68d9025cf1 100755
|
| --- a/pylib/gyp/mac_tool.py
|
| +++ b/pylib/gyp/mac_tool.py
|
| @@ -405,7 +405,7 @@ class MacTool(object):
|
| self._MergePlist(merged_plist, plist)
|
| plistlib.writePlist(merged_plist, output)
|
|
|
| - def ExecCodeSignBundle(self, key, entitlements, provisioning):
|
| + def ExecCodeSignBundle(self, key, entitlements, provisioning, path, preserve):
|
| """Code sign a bundle.
|
|
|
| This function tries to code sign an iOS bundle, following the same
|
| @@ -419,11 +419,14 @@ class MacTool(object):
|
| provisioning, self._GetCFBundleIdentifier())
|
| entitlements_path = self._InstallEntitlements(
|
| entitlements, substitutions, overrides)
|
| - subprocess.check_call([
|
| - 'codesign', '--force', '--sign', key, '--entitlements',
|
| - entitlements_path, '--timestamp=none', os.path.join(
|
| - os.environ['TARGET_BUILD_DIR'],
|
| - os.environ['FULL_PRODUCT_NAME'])])
|
| +
|
| + args = ['codesign', '--force', '--sign', key]
|
| + if preserve == 'True':
|
| + args.extend(['--deep', '--preserve-metadata=identifier,entitlements'])
|
| + else:
|
| + args.extend(['--entitlements', entitlements_path])
|
| + args.extend(['--timestamp=none', path])
|
| + subprocess.check_call(args)
|
|
|
| def _InstallProvisioningProfile(self, profile, bundle_identifier):
|
| """Installs embedded.mobileprovision into the bundle.
|
|
|