OLD | NEW |
1 # Copyright 2015 The Chromium Authors. All rights reserved. | 1 # Copyright 2015 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 import("//build/config/chromecast_build.gni") | 5 import("//build/config/chromecast_build.gni") |
6 | 6 |
7 assert(is_chromecast) | 7 assert(is_chromecast) |
8 | 8 |
9 config("static_config") { | 9 config("static_config") { |
10 ldflags = [ | 10 ldflags = [ |
(...skipping 19 matching lines...) Expand all Loading... |
30 # Chromecast executables depend on several shared libraries in | 30 # Chromecast executables depend on several shared libraries in |
31 # /oem_cast_shlib, $ORIGIN, and $ORIGIN/lib. Add these rpaths to each binary. | 31 # /oem_cast_shlib, $ORIGIN, and $ORIGIN/lib. Add these rpaths to each binary. |
32 # This is explicitly disabled in Chrome for security reasons (see comments in | 32 # This is explicitly disabled in Chrome for security reasons (see comments in |
33 # //build/config/gcc/BUILD.gn), but necessary on Chromecast so that OEM's may | 33 # //build/config/gcc/BUILD.gn), but necessary on Chromecast so that OEM's may |
34 # override the default libraries shipped in the Cast receiver package. | 34 # override the default libraries shipped in the Cast receiver package. |
35 ldflags = [ | 35 ldflags = [ |
36 "-Wl,-rpath=/oem_cast_shlib", | 36 "-Wl,-rpath=/oem_cast_shlib", |
37 "-Wl,-rpath=\$ORIGIN/lib", | 37 "-Wl,-rpath=\$ORIGIN/lib", |
38 "-Wl,-rpath=\$ORIGIN", | 38 "-Wl,-rpath=\$ORIGIN", |
39 ] | 39 ] |
| 40 |
| 41 # Binaries which don't live in the same directory as Chrome component |
| 42 # libraries may still depend on them. Explicitly add the component library |
| 43 # directory to the rpath for the component build. |
| 44 if (is_component_build) { |
| 45 ldflags += [ "-Wl,-rpath=/system/chrome" ] |
| 46 } |
40 } | 47 } |
41 | 48 |
42 config("executable_config") { | 49 config("executable_config") { |
43 configs = [ ":ldconfig" ] | 50 configs = [ ":ldconfig" ] |
44 | 51 |
45 if (current_cpu == "arm") { | 52 if (current_cpu == "arm") { |
46 ldflags = [ | 53 ldflags = [ |
47 # Export stdlibc++ and libgcc symbols to force shlibs to refer to these | 54 # Export stdlibc++ and libgcc symbols to force shlibs to refer to these |
48 # symbols from the executable. | 55 # symbols from the executable. |
49 "-Wl,--export-dynamic", | 56 "-Wl,--export-dynamic", |
(...skipping 15 matching lines...) Expand all Loading... |
65 configs += [ ":static_config" ] | 72 configs += [ ":static_config" ] |
66 } | 73 } |
67 } | 74 } |
68 | 75 |
69 config("shared_library_config") { | 76 config("shared_library_config") { |
70 configs = [ ":ldconfig" ] | 77 configs = [ ":ldconfig" ] |
71 if (current_cpu == "arm") { | 78 if (current_cpu == "arm") { |
72 configs += [ ":static_config" ] | 79 configs += [ ":static_config" ] |
73 } | 80 } |
74 } | 81 } |
OLD | NEW |