OLD | NEW |
1 # Copyright (c) 2012 Google Inc. All rights reserved. | 1 # Copyright (c) 2012 Google Inc. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 """ | 5 """ |
6 This module contains classes that help to emulate xcodebuild behavior on top of | 6 This module contains classes that help to emulate xcodebuild behavior on top of |
7 other build systems, such as make and ninja. | 7 other build systems, such as make and ninja. |
8 """ | 8 """ |
9 | 9 |
10 import copy | 10 import copy |
(...skipping 840 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
851 if sdk_root and platform_root and self._IsXCTest(): | 851 if sdk_root and platform_root and self._IsXCTest(): |
852 ldflags.append('-F' + platform_root + '/Developer/Library/Frameworks/') | 852 ldflags.append('-F' + platform_root + '/Developer/Library/Frameworks/') |
853 ldflags.append('-framework XCTest') | 853 ldflags.append('-framework XCTest') |
854 | 854 |
855 is_extension = self._IsIosAppExtension() or self._IsIosWatchKitExtension() | 855 is_extension = self._IsIosAppExtension() or self._IsIosWatchKitExtension() |
856 if sdk_root and is_extension: | 856 if sdk_root and is_extension: |
857 # Adds the link flags for extensions. These flags are common for all | 857 # Adds the link flags for extensions. These flags are common for all |
858 # extensions and provide loader and main function. | 858 # extensions and provide loader and main function. |
859 # These flags reflect the compilation options used by xcode to compile | 859 # These flags reflect the compilation options used by xcode to compile |
860 # extensions. | 860 # extensions. |
861 ldflags.append('-lpkstart') | |
862 if XcodeVersion() < '0900': | 861 if XcodeVersion() < '0900': |
| 862 ldflags.append('-lpkstart') |
863 ldflags.append(sdk_root + | 863 ldflags.append(sdk_root + |
864 '/System/Library/PrivateFrameworks/PlugInKit.framework/PlugInKit') | 864 '/System/Library/PrivateFrameworks/PlugInKit.framework/PlugInKit') |
| 865 else: |
| 866 ldflags.append('-e _NSExtensionMain') |
865 ldflags.append('-fapplication-extension') | 867 ldflags.append('-fapplication-extension') |
866 ldflags.append('-Xlinker -rpath ' | |
867 '-Xlinker @executable_path/../../Frameworks') | |
868 | 868 |
869 self._Appendf(ldflags, 'CLANG_CXX_LIBRARY', '-stdlib=%s') | 869 self._Appendf(ldflags, 'CLANG_CXX_LIBRARY', '-stdlib=%s') |
870 | 870 |
871 self.configname = None | 871 self.configname = None |
872 return ldflags | 872 return ldflags |
873 | 873 |
874 def GetLibtoolflags(self, configname): | 874 def GetLibtoolflags(self, configname): |
875 """Returns flags that need to be passed to the static linker. | 875 """Returns flags that need to be passed to the static linker. |
876 | 876 |
877 Args: | 877 Args: |
(...skipping 764 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1642 if toolset == 'target': | 1642 if toolset == 'target': |
1643 iphoneos_config_dict['xcode_settings']['SDKROOT'] = 'iphoneos' | 1643 iphoneos_config_dict['xcode_settings']['SDKROOT'] = 'iphoneos' |
1644 return targets | 1644 return targets |
1645 | 1645 |
1646 def CloneConfigurationForDeviceAndEmulator(target_dicts): | 1646 def CloneConfigurationForDeviceAndEmulator(target_dicts): |
1647 """If |target_dicts| contains any iOS targets, automatically create -iphoneos | 1647 """If |target_dicts| contains any iOS targets, automatically create -iphoneos |
1648 targets for iOS device builds.""" | 1648 targets for iOS device builds.""" |
1649 if _HasIOSTarget(target_dicts): | 1649 if _HasIOSTarget(target_dicts): |
1650 return _AddIOSDeviceConfigurations(target_dicts) | 1650 return _AddIOSDeviceConfigurations(target_dicts) |
1651 return target_dicts | 1651 return target_dicts |
OLD | NEW |