 Chromium Code Reviews
 Chromium Code Reviews Issue 15570002:
  Force load the Xcode arc libraries when building with llvm-build.  (Closed) 
  Base URL: https://chromium.googlesource.com/chromium/src.git@master
    
  
    Issue 15570002:
  Force load the Xcode arc libraries when building with llvm-build.  (Closed) 
  Base URL: https://chromium.googlesource.com/chromium/src.git@master| OLD | NEW | 
|---|---|
| 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2012 The Chromium Authors. 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 # IMPORTANT: | 5 # IMPORTANT: | 
| 6 # Please don't directly include this file if you are building via gyp_chromium, | 6 # Please don't directly include this file if you are building via gyp_chromium, | 
| 7 # since gyp_chromium is automatically forcing its inclusion. | 7 # since gyp_chromium is automatically forcing its inclusion. | 
| 8 { | 8 { | 
| 9 # Variables expected to be overriden on the GYP command line (-D) or by | 9 # Variables expected to be overriden on the GYP command line (-D) or by | 
| 10 # ~/.gyp/include.gypi. | 10 # ~/.gyp/include.gypi. | 
| (...skipping 4016 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 4027 'STRIP_INSTALLED_PRODUCT': 'YES', | 4027 'STRIP_INSTALLED_PRODUCT': 'YES', | 
| 4028 }, | 4028 }, | 
| 4029 }, | 4029 }, | 
| 4030 'Debug_Base': { | 4030 'Debug_Base': { | 
| 4031 'xcode_settings': { | 4031 'xcode_settings': { | 
| 4032 # Remove dSYM to reduce build time. | 4032 # Remove dSYM to reduce build time. | 
| 4033 'DEBUG_INFORMATION_FORMAT': 'dwarf', | 4033 'DEBUG_INFORMATION_FORMAT': 'dwarf', | 
| 4034 }, | 4034 }, | 
| 4035 }, | 4035 }, | 
| 4036 }, | 4036 }, | 
| 4037 'xcode_settings': { | |
| 4038 # It is necessary to link with the -fobjc-arc flag to use | |
| 4039 # subscripting on iOS < 6. | |
| 4040 'OTHER_LDFLAGS': [ | |
| 4041 '-fobjc-arc', | |
| 4042 ], | |
| 4043 }, | |
| 4044 'conditions': [ | 4037 'conditions': [ | 
| 4045 # TODO(justincohen): ninja builds don't support signing yet. | 4038 ['"<(GENERATOR)"=="xcode"', { | 
| 4046 ['"<(GENERATOR)"!="ninja"', { | |
| 4047 'xcode_settings': { | 4039 'xcode_settings': { | 
| 4040 # TODO(justincohen): ninja builds don't support signing yet. | |
| 4048 'conditions': [ | 4041 'conditions': [ | 
| 4049 ['chromium_ios_signing', { | 4042 ['chromium_ios_signing', { | 
| 4050 # iOS SDK wants everything for device signed. | 4043 # iOS SDK wants everything for device signed. | 
| 4051 'CODE_SIGN_IDENTITY[sdk=iphoneos*]': 'iPhone Developer', | 4044 'CODE_SIGN_IDENTITY[sdk=iphoneos*]': 'iPhone Developer', | 
| 4052 }, { | 4045 }, { | 
| 4053 'CODE_SIGNING_REQUIRED': 'NO', | 4046 'CODE_SIGNING_REQUIRED': 'NO', | 
| 4054 'CODE_SIGN_IDENTITY[sdk=iphoneos*]': '', | 4047 'CODE_SIGN_IDENTITY[sdk=iphoneos*]': '', | 
| 4055 }], | 4048 }], | 
| 4056 ], | 4049 ], | 
| 4057 }, | 4050 }, | 
| 4058 }], | 4051 }], | 
| 4052 ['"<(GENERATOR)"=="xcode" and clang!=1', { | |
| 4053 'xcode_settings': { | |
| 4054 # It is necessary to link with the -fobjc-arc flag to use | |
| 4055 # subscripting on iOS < 6. | |
| 4056 'OTHER_LDFLAGS': [ | |
| 4057 '-fobjc-arc', | |
| 4058 ], | |
| 4059 }, | |
| 4060 }], | |
| 4061 ['clang==1', { | |
| 4062 'target_conditions': [ | |
| 4063 ['_toolset=="target"', { | |
| 4064 'variables': { | |
| 4065 'developer_dir': '<!(xcode-select -print-path)', | |
| 4066 'arc_toolchain_path': '<(developer_dir)/Toolchains/XcodeDe fault.xctoolchain/usr/lib/arc', | |
| 4067 }, | |
| 4068 # It is necessary to force load libarclite from Xcode for | |
| 4069 # third_party/llvm-build because libarclite_* is only | |
| 4070 # distributed by Xcode. | |
| 4071 'conditions': [ | |
| 4072 ['"<(GENERATOR)"=="ninja" and target_arch=="armv7"', { | |
| 4073 'xcode_settings': { | |
| 4074 'OTHER_LDFLAGS': [ | |
| 4075 '-force_load', | |
| 4076 '<(arc_toolchain_path)/libarclite_iphoneos.a', | |
| 4077 ], | |
| 4078 }, | |
| 4079 }, { | |
| 4080 'xcode_settings': { | |
| 4081 'OTHER_LDFLAGS': [ | |
| 
stuartmorgan
2013/05/22 14:02:20
Couldn't you do OTHER_LDFLAGS[arch=armv7] and [arc
 | |
| 4082 '-force_load', | |
| 4083 '<(arc_toolchain_path)/libarclite_iphonesimulator.a' , | |
| 4084 ], | |
| 4085 }, | |
| 4086 }], | |
| 4087 ], | |
| 4088 }], | |
| 4089 ], | |
| 4090 }], | |
| 4059 ], | 4091 ], | 
| 4060 }], | 4092 }], | 
| 4061 ], # target_conditions | 4093 ], # target_conditions | 
| 4062 }, # target_defaults | 4094 }, # target_defaults | 
| 4063 }], # OS=="ios" | 4095 }], # OS=="ios" | 
| 4064 ['OS=="win"', { | 4096 ['OS=="win"', { | 
| 4065 'target_defaults': { | 4097 'target_defaults': { | 
| 4066 'defines': [ | 4098 'defines': [ | 
| 4067 '_WIN32_WINNT=0x0602', | 4099 '_WIN32_WINNT=0x0602', | 
| 4068 'WINVER=0x0602', | 4100 'WINVER=0x0602', | 
| (...skipping 370 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 4439 # settings in target dicts. SYMROOT is a special case, because many other | 4471 # settings in target dicts. SYMROOT is a special case, because many other | 
| 4440 # Xcode variables depend on it, including variables such as | 4472 # Xcode variables depend on it, including variables such as | 
| 4441 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something | 4473 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something | 
| 4442 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the | 4474 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the | 
| 4443 # files to appear (when present) in the UI as actual files and not red | 4475 # files to appear (when present) in the UI as actual files and not red | 
| 4444 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, | 4476 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, | 
| 4445 # and therefore SYMROOT, needs to be set at the project level. | 4477 # and therefore SYMROOT, needs to be set at the project level. | 
| 4446 'SYMROOT': '<(DEPTH)/xcodebuild', | 4478 'SYMROOT': '<(DEPTH)/xcodebuild', | 
| 4447 }, | 4479 }, | 
| 4448 } | 4480 } | 
| OLD | NEW |