|
Change the way _EXPORT macros look.
With the current setup, if you have a header file my_class.h
class BASE_EXPORT MyClass {
public:
void MyInlineMethod() { /* do stuff, inline */ }
};
then every cc file that includes my_class.h will have a public symbol
for MyInlineMethod (because inline methods need to be emitted to
every translation unit, and the linker sorts them out). With the
components build, the linker can't decide to drop these inline methods,
so every .so that uses this header file will have the same public symbol.
With this proposed change, the symbol will only be visible in the target
the header file belongs to, and it will be hidden in all other components.
That's cleaner, and it also prevents accident hidden dependencies (say
target A depends on B, and B depends on C. A accidentally uses an inline
function from a class in C. With this change, that would result in a linker
error, and an explicit dependency from A on C would have to be added).
Also add a missing CHROMEOS_IMPLEMENTATION define which went
unnoticed until now.
BUG= 90078
TEST=Things still build.
TBR=ben, tony, viettrungluu, thestig, agl, willchan
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=137130
Total comments: 2
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+124 lines, -0 lines) |
Patch |
|
M |
ash/ash_export.h
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
base/base_export.h
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
base/i18n/base_i18n_export.h
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
chromeos/chromeos.gyp
|
View
|
1
2
|
1 chunk |
+3 lines, -0 lines |
0 comments
|
Download
|
|
M |
chromeos/chromeos_export.h
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
content/common/content_export.h
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
crypto/crypto_export.h
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
gpu/command_buffer/client/gles2_c_lib_export.h
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
gpu/command_buffer/client/gles2_impl_export.h
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
gpu/command_buffer/common/gles2_utils_export.h
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
gpu/gpu_export.h
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
ipc/ipc_export.h
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
media/base/media_export.h
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
net/base/net_export.h
|
View
|
|
1 chunk |
+5 lines, -0 lines |
0 comments
|
Download
|
|
M |
ppapi/proxy/ppapi_proxy_export.h
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
ppapi/shared_impl/ppapi_shared_export.h
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
ppapi/thunk/ppapi_thunk_export.h
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
printing/printing_export.h
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
sql/sql_export.h
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
ui/aura/aura_export.h
|
View
|
|
1 chunk |
+4 lines, -0 lines |
2 comments
|
Download
|
|
M |
ui/base/ui_export.h
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
ui/compositor/compositor_export.h
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
ui/gl/gl_export.h
|
View
|
1
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
ui/oak/oak_export.h
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
ui/surface/surface_export.h
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
ui/views/views_export.h
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
webkit/appcache/appcache_export.h
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
webkit/blob/blob_export.h
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
webkit/forms/webkit_forms_export.h
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
webkit/glue/webkit_glue_export.h
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
webkit/plugins/webkit_plugins_export.h
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
Total messages: 21 (0 generated)
|