OLD | NEW |
1 # Copyright 2014 The Crashpad Authors. All rights reserved. | 1 # Copyright 2014 The Crashpad Authors. All rights reserved. |
2 # | 2 # |
3 # Licensed under the Apache License, Version 2.0 (the "License"); | 3 # Licensed under the Apache License, Version 2.0 (the "License"); |
4 # you may not use this file except in compliance with the License. | 4 # you may not use this file except in compliance with the License. |
5 # You may obtain a copy of the License at | 5 # You may obtain a copy of the License at |
6 # | 6 # |
7 # http://www.apache.org/licenses/LICENSE-2.0 | 7 # http://www.apache.org/licenses/LICENSE-2.0 |
8 # | 8 # |
9 # Unless required by applicable law or agreed to in writing, software | 9 # Unless required by applicable law or agreed to in writing, software |
10 # distributed under the License is distributed on an "AS IS" BASIS, | 10 # distributed under the License is distributed on an "AS IS" BASIS, |
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | 11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
12 # See the License for the specific language governing permissions and | 12 # See the License for the specific language governing permissions and |
13 # limitations under the License. | 13 # limitations under the License. |
14 | 14 |
15 { | 15 { |
16 'includes': [ | 16 'includes': [ |
17 '../build/crashpad.gypi', | 17 '../build/crashpad.gypi', |
| 18 '../build/crashpad_dependencies.gypi', |
18 ], | 19 ], |
19 'targets': [ | 20 'targets': [ |
20 { | 21 { |
21 # This target exists so that the crashpad_handler can be embedded into | 22 # This target exists so that the crashpad_handler can be embedded into |
22 # another binary. | 23 # another binary. |
23 'target_name': 'crashpad_handler_lib', | 24 'target_name': 'crashpad_handler_lib', |
24 'type': 'static_library', | 25 'type': 'static_library', |
25 'dependencies': [ | 26 'dependencies': [ |
26 '../client/client.gyp:crashpad_client', | 27 '../client/client.gyp:crashpad_client', |
27 '../compat/compat.gyp:crashpad_compat', | 28 '../compat/compat.gyp:crashpad_compat', |
(...skipping 30 matching lines...) Expand all Loading... |
58 'crashpad_handler_lib', | 59 'crashpad_handler_lib', |
59 ], | 60 ], |
60 'include_dirs': [ | 61 'include_dirs': [ |
61 '..', | 62 '..', |
62 ], | 63 ], |
63 'sources': [ | 64 'sources': [ |
64 'main.cc', | 65 'main.cc', |
65 ], | 66 ], |
66 | 67 |
67 'conditions': [ | 68 'conditions': [ |
| 69 ['OS=="mac"', { |
| 70 # In an in-Chromium build with component=shared_library, |
| 71 # crashpad_handler will depend on shared libraries such as |
| 72 # libbase.dylib located in out/{Debug,Release} via the @rpath |
| 73 # mechanism. When crashpad_handler is copied to its home deep inside |
| 74 # the Chromium app bundle, it needs to have an LC_RPATH command |
| 75 # pointing back to the directory containing these dependency |
| 76 # libraries. |
| 77 'variables': { |
| 78 'component%': 'static_library', |
| 79 }, |
| 80 'conditions': [ |
| 81 ['crashpad_dependencies=="chromium" and component=="shared_library"'
, { |
| 82 'xcode_settings': { |
| 83 'LD_RUNPATH_SEARCH_PATHS': [ # -Wl,-rpath |
| 84 # Get back from |
| 85 # Chromium.app/Contents/Versions/V/Framework.framework/Helpers |
| 86 '@loader_path/../../../../../..', |
| 87 ], |
| 88 }, |
| 89 }], |
| 90 ], |
| 91 }], |
68 ['OS=="win"', { | 92 ['OS=="win"', { |
69 'msvs_settings': { | 93 'msvs_settings': { |
70 'VCLinkerTool': { | 94 'VCLinkerTool': { |
71 'SubSystem': '2', # /SUBSYSTEM:WINDOWS | 95 'SubSystem': '2', # /SUBSYSTEM:WINDOWS |
72 }, | 96 }, |
73 }, | 97 }, |
74 }], | 98 }], |
75 ], | 99 ], |
76 }, | 100 }, |
77 ], | 101 ], |
(...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
216 ], | 240 ], |
217 }, | 241 }, |
218 ], | 242 ], |
219 }], | 243 }], |
220 ], | 244 ], |
221 }, { | 245 }, { |
222 'targets': [], | 246 'targets': [], |
223 }], | 247 }], |
224 ], | 248 ], |
225 } | 249 } |
OLD | NEW |