mirror of
https://github.com/chromium/crashpad.git
synced 2025-03-09 22:26:06 +00:00
handler/mac: Support the in-Chromium component=shared_library
configuration. When depending on shared libraries such as libbase.dylib, crashpad_handler must have an LC_RPATH pointing to the out/{Debug,Release} directory relative to its home deep within Chromium.app. BUG=chromium:466964 R=rsesek@chromium.org Review URL: https://codereview.chromium.org/1009633002
This commit is contained in:
parent
e7b80a52f5
commit
1d022a86db
@ -15,6 +15,7 @@
|
||||
{
|
||||
'includes': [
|
||||
'../build/crashpad.gypi',
|
||||
'../build/crashpad_in_chromium.gypi',
|
||||
],
|
||||
'conditions': [
|
||||
['OS=="mac"', {
|
||||
@ -43,6 +44,28 @@
|
||||
'mac/exception_handler_server.h',
|
||||
'mac/main.cc',
|
||||
],
|
||||
|
||||
# In an in-Chromium build with component=shared_library,
|
||||
# crashpad_handler will depend on shared libraries such as
|
||||
# libbase.dylib located in out/{Debug,Release} via the @rpath
|
||||
# mechanism. When crashpad_handler is copied to its home deep inside
|
||||
# the Chromium app bundle, it needs to have an LC_RPATH command
|
||||
# pointing back to the directory containing these dependency
|
||||
# libraries.
|
||||
'variables': {
|
||||
'component%': 'static_library',
|
||||
},
|
||||
'conditions': [
|
||||
['crashpad_in_chromium!=0 and component=="shared_library"', {
|
||||
'xcode_settings': {
|
||||
'LD_RUNPATH_SEARCH_PATHS': [ # -Wl,-rpath
|
||||
# Get back from
|
||||
# Chromium.app/Contents/Versions/V/Framework.framework/Helpers
|
||||
'@loader_path/../../../../../..',
|
||||
],
|
||||
},
|
||||
}],
|
||||
],
|
||||
},
|
||||
],
|
||||
}, {
|
||||
|
Loading…
x
Reference in New Issue
Block a user