diff options
author | wzhong <wzhong@chromium.org> | 2016-01-11 16:42:12 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-01-12 00:43:52 +0000 |
commit | a39bee512a85a6a015769ced60015a2fe7d3d767 (patch) | |
tree | c26baa1dca4be49244f12e281d7ed008edeb60a6 /build/common.gypi | |
parent | c509392f3af3393ae907a126590d05d5b7ac9ae4 (diff) | |
download | chromium_src-a39bee512a85a6a015769ced60015a2fe7d3d767.zip chromium_src-a39bee512a85a6a015769ced60015a2fe7d3d767.tar.gz chromium_src-a39bee512a85a6a015769ced60015a2fe7d3d767.tar.bz2 |
[Chromecast] Don't export symbols from libffmpeg.a
Use "--exclude-libs" flag to prevent libffmpeg.a from exporting
symbols implemented by assembly.
Assembly functions marked with ".global" directive are automatically
with global visibility and exported in executable and DSO. This is
unnecessary and causes incorrect symbol resolution at run-time as
Chromecast executable is built with "-Wl,--export-dynamic".
BUG= internal b/26390825
TEST= 1) Use "nm" and make sure ff_* are not exported.
2) Test TuneIn playback.
Review URL: https://codereview.chromium.org/1561833007
Cr-Commit-Position: refs/heads/master@{#368737}
Diffstat (limited to 'build/common.gypi')
-rw-r--r-- | build/common.gypi | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/build/common.gypi b/build/common.gypi index 9b8ca94..e73e563 100644 --- a/build/common.gypi +++ b/build/common.gypi @@ -4087,6 +4087,10 @@ # We want to statically link libstdc++/libgcc. '-static-libstdc++', '-static-libgcc', + # Don't allow visible symbols from libraries that contain + # assembly code with symbols that aren't hidden properly. + # http://b/26390825 + '-Wl,--exclude-libs=libffmpeg.a', ], 'cflags!': [ # Some components in Chromium (e.g. v8, skia, ffmpeg) |