Index: handler/handler.gyp |
diff --git a/handler/handler.gyp b/handler/handler.gyp |
index ac1bfb61b88b853ebfaafcff2837bd57b9738506..638789c40f7e6a89765fdeae76f3580277bf6335 100644 |
--- a/handler/handler.gyp |
+++ b/handler/handler.gyp |
@@ -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/../../../../../..', |
+ ], |
+ }, |
+ }], |
+ ], |
}, |
], |
}, { |