From abb78a92ecfd579687b1d4817a58808f51d147f1 Mon Sep 17 00:00:00 2001 From: Joyee Cheung Date: Sun, 21 Dec 2025 21:17:26 +0100 Subject: [PATCH] build: expose libplatform symbols in shared libnode This requires setting BUILDING_V8_PLATFORM_SHARED to expose the public symbols since we build with hidden visibility by default. --- node.gypi | 2 ++ tools/v8_gypfiles/v8.gyp | 8 ++++++++ 2 files changed, 10 insertions(+) diff --git a/node.gypi b/node.gypi index 8ba67f53192159..4f35b103449fc3 100644 --- a/node.gypi +++ b/node.gypi @@ -50,9 +50,11 @@ 'defines': [ 'USING_UV_SHARED', 'USING_V8_SHARED', + 'USING_V8_PLATFORM_SHARED', 'BUILDING_NODE_EXTENSION' ], 'defines!': [ + 'BUILDING_V8_PLATFORM_SHARED=1', 'BUILDING_V8_SHARED=1', 'BUILDING_UV_SHARED=1' ] diff --git a/tools/v8_gypfiles/v8.gyp b/tools/v8_gypfiles/v8.gyp index 153ed31d6db08f..59ad578b90b2bc 100644 --- a/tools/v8_gypfiles/v8.gyp +++ b/tools/v8_gypfiles/v8.gyp @@ -58,6 +58,7 @@ ['OS!="aix" and OS!="os400"', { 'defines': [ 'BUILDING_V8_SHARED', # Make V8_EXPORT visible. + 'BUILDING_V8_PLATFORM_SHARED', # Make V8_PLATFORM_EXPORT visible. ] }], ['node_shared=="true"', { @@ -1345,6 +1346,7 @@ ['component=="shared_library"', { 'defines': [ 'BUILDING_V8_SHARED', + 'BUILDING_V8_PLATFORM_SHARED', ], }], ['v8_enable_i18n_support==1', { @@ -1414,6 +1416,7 @@ 'defines!': [ '_HAS_EXCEPTIONS=0', 'BUILDING_V8_SHARED=1', + 'BUILDING_V8_PLATFORM_SHARED=1', ], 'cflags_cc!': ['-fno-exceptions'], 'cflags_cc': ['-fexceptions'], @@ -1440,6 +1443,7 @@ 'defines!': [ '_HAS_EXCEPTIONS=0', 'BUILDING_V8_SHARED=1', + 'BUILDING_V8_PLATFORM_SHARED=1', ], 'cflags_cc!': ['-fno-exceptions'], 'cflags_cc': ['-fexceptions'], @@ -1781,6 +1785,7 @@ ], 'defines!': [ 'BUILDING_V8_SHARED=1', + 'BUILDING_V8_PLATFORM_SHARED=1', ], 'dependencies': [ 'v8_libbase', @@ -1862,6 +1867,7 @@ 'defines!': [ '_HAS_EXCEPTIONS=0', 'BUILDING_V8_SHARED=1', + 'BUILDING_V8_PLATFORM_SHARED=1', ], 'cflags_cc!': ['-fno-exceptions'], 'cflags_cc': ['-fexceptions'], @@ -1905,6 +1911,7 @@ 'defines!': [ '_HAS_EXCEPTIONS=0', 'BUILDING_V8_SHARED=1', + 'BUILDING_V8_PLATFORM_SHARED=1', ], 'msvs_settings': { 'VCCLCompilerTool': { @@ -2119,6 +2126,7 @@ ], 'defines': [ 'BUILDING_V8_SHARED', + 'BUILDING_V8_PLATFORM_SHARED', ], 'direct_dependent_settings': { 'defines': [