diff options
author | earthdok <earthdok@chromium.org> | 2014-11-17 11:55:10 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2014-11-17 19:57:13 +0000 |
commit | 59a4c28d5e275836a5666f25bff4850215c7b481 (patch) | |
tree | d89c5af94e185530e604b58e6d55aa53e09c9081 /third_party/instrumented_libraries/instrumented_libraries.gyp | |
parent | 20a4a9578616c13254d1817bd479806ab7fe218e (diff) | |
download | chromium_src-59a4c28d5e275836a5666f25bff4850215c7b481.zip chromium_src-59a4c28d5e275836a5666f25bff4850215c7b481.tar.gz chromium_src-59a4c28d5e275836a5666f25bff4850215c7b481.tar.bz2 |
Instrumented libraries: overhaul RPATH handling.
(1) Run fix_rpaths.sh separately for each package. Previously we ran it once as
a separate build step. This was the only way when all packages were installed in
the same directory, but since we now install each package in a temporary
directory first, it makes more sense to run fix_rpaths.sh there.
(2) Also fix the one remaining package which didn't use a temp directory.
(3) As a consequence of (1), fixed an issue caused by the fix_rpaths step
sometimes failing to run (http://crbug.com/433547).
(4) Improve the DSO discovery regexp in fix_rpaths.sh. Previously it only
covered DSOs which had unversioned symlinks pointing to them.
(5) Remove an outdated RPATH entry for dependent executables
(/usr/lib/x86_64-linux-gnu/ - we don't install anything there anymore).
BUG=433547
R=glider@chromium.org
NOTRY=true
Review URL: https://codereview.chromium.org/723033006
Cr-Commit-Position: refs/heads/master@{#304459}
Diffstat (limited to 'third_party/instrumented_libraries/instrumented_libraries.gyp')
-rw-r--r-- | third_party/instrumented_libraries/instrumented_libraries.gyp | 17 |
1 files changed, 1 insertions, 16 deletions
diff --git a/third_party/instrumented_libraries/instrumented_libraries.gyp b/third_party/instrumented_libraries/instrumented_libraries.gyp index 8e66d8b..ebb19e6 100644 --- a/third_party/instrumented_libraries/instrumented_libraries.gyp +++ b/third_party/instrumented_libraries/instrumented_libraries.gyp @@ -157,27 +157,12 @@ ], }], ], - 'actions': [ - { - 'action_name': 'fix_rpaths', - 'inputs': [ - 'fix_rpaths.sh', - ], - 'outputs': [ - '<(PRODUCT_DIR)/instrumented_libraries/<(_sanitizer_type)/rpaths.fixed.txt', - ], - 'action': [ - './fix_rpaths.sh', - '<(PRODUCT_DIR)/instrumented_libraries/<(_sanitizer_type)' - ], - }, - ], 'direct_dependent_settings': { 'target_conditions': [ ['_toolset=="target"', { 'ldflags': [ # Add RPATH to result binary to make it linking instrumented libraries ($ORIGIN means relative RPATH) - '-Wl,-R,\$$ORIGIN/instrumented_libraries/<(_sanitizer_type)/lib/:\$$ORIGIN/instrumented_libraries/<(_sanitizer_type)/usr/lib/x86_64-linux-gnu/', + '-Wl,-R,\$$ORIGIN/instrumented_libraries/<(_sanitizer_type)/lib/', '-Wl,-z,origin', ], }], |