build: enable building with shared uvwasi lib

Fixes: https://github.com/nodejs/node/issues/35339
Co-authored-by: Pooja D P <Pooja.D.P@ibm.com>
Co-authored-by: Teutates <103068388+Teutates@users.noreply.github.com>
Co-authored-by: Antoine du Hamel <duhamelantoine1995@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/43987
Reviewed-By: Michael Dawson <midawson@redhat.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
This commit is contained in:
authored and Michaël Zasso committed 2024-05-12 21:21:58 +02:00
1 parent 80fa675af2
commit f96466a92c
3 files changed
+30 -10

No files matched your search

+23
View File
@@ -382,6 +382,28 @@ shared_optgroup.add_argument('--shared-openssl-libpath',
dest='shared_openssl_libpath',
help='a directory to search for the shared OpenSSL DLLs')
shared_optgroup.add_argument('--shared-uvwasi',
action='store_true',
dest='shared_uvwasi',
default=None,
help='link to a shared uvwasi DLL instead of static linking')
shared_optgroup.add_argument('--shared-uvwasi-includes',
action='store',
dest='shared_uvwasi_includes',
help='directory containing uvwasi header files')
shared_optgroup.add_argument('--shared-uvwasi-libname',
action='store',
dest='shared_uvwasi_libname',
default='uvwasi',
help='alternative lib name to link to [default: %default]')
shared_optgroup.add_argument('--shared-uvwasi-libpath',
action='store',
dest='shared_uvwasi_libpath',
help='a directory to search for the shared uvwasi DLL')
shared_optgroup.add_argument('--shared-zlib',
action='store_true',
dest='shared_zlib',
@@ -2122,6 +2144,7 @@ configure_library('cares', output, pkgname='libcares')
configure_library('nghttp2', output, pkgname='libnghttp2')
configure_library('nghttp3', output, pkgname='libnghttp3')
configure_library('ngtcp2', output, pkgname='libngtcp2')
configure_library('uvwasi', output, pkgname='libuvwasi')
configure_v8(output)
configure_openssl(output)
configure_intl(output)
+3 -10
View File
@@ -19,6 +19,7 @@
'node_shared_http_parser%': 'false',
'node_shared_cares%': 'false',
'node_shared_libuv%': 'false',
'node_shared_uvwasi%': 'false',
'node_shared_nghttp2%': 'false',
'node_use_openssl%': 'true',
'node_shared_openssl%': 'false',
@@ -550,7 +551,6 @@
'dependencies': [
'deps/histogram/histogram.gyp:histogram',
'deps/uvwasi/uvwasi.gyp:uvwasi',
],
'msvs_settings': {
@@ -845,7 +845,6 @@
'dependencies': [
'deps/googletest/googletest.gyp:gtest_prod',
'deps/histogram/histogram.gyp:histogram',
'deps/uvwasi/uvwasi.gyp:uvwasi',
'deps/simdjson/simdjson.gyp:simdjson',
'deps/simdutf/simdutf.gyp:simdutf',
'deps/ada/ada.gyp:ada',
@@ -1031,8 +1030,8 @@
'dependencies': [
'<(node_lib_target_name)',
'deps/histogram/histogram.gyp:histogram',
'deps/uvwasi/uvwasi.gyp:uvwasi',
],
'includes': [
'node.gypi'
],
@@ -1042,9 +1041,9 @@
'deps/v8/include',
'deps/cares/include',
'deps/uv/include',
'deps/uvwasi/include',
'test/cctest',
],
'defines': [
'NODE_ARCH="<(target_arch)"',
'NODE_PLATFORM="<(OS)"',
@@ -1077,7 +1076,6 @@
'deps/googletest/googletest.gyp:gtest',
'deps/googletest/googletest.gyp:gtest_main',
'deps/histogram/histogram.gyp:histogram',
'deps/uvwasi/uvwasi.gyp:uvwasi',
'deps/simdjson/simdjson.gyp:simdjson',
'deps/simdutf/simdutf.gyp:simdutf',
'deps/ada/ada.gyp:ada',
@@ -1093,7 +1091,6 @@
'deps/v8/include',
'deps/cares/include',
'deps/uv/include',
'deps/uvwasi/include',
'test/cctest',
],
@@ -1155,7 +1152,6 @@
'dependencies': [
'<(node_lib_target_name)',
'deps/histogram/histogram.gyp:histogram',
'deps/uvwasi/uvwasi.gyp:uvwasi',
'deps/ada/ada.gyp:ada',
],
@@ -1169,7 +1165,6 @@
'deps/v8/include',
'deps/cares/include',
'deps/uv/include',
'deps/uvwasi/include',
'test/embedding',
],
@@ -1269,7 +1264,6 @@
'dependencies': [
'<(node_lib_target_name)',
'deps/histogram/histogram.gyp:histogram',
'deps/uvwasi/uvwasi.gyp:uvwasi',
'deps/ada/ada.gyp:ada',
'deps/simdjson/simdjson.gyp:simdjson',
'deps/simdutf/simdutf.gyp:simdutf',
@@ -1285,7 +1279,6 @@
'deps/v8/include',
'deps/cares/include',
'deps/uv/include',
'deps/uvwasi/include',
],
'defines': [ 'NODE_WANT_INTERNALS=1' ],
+4
View File
@@ -204,6 +204,10 @@
],
}],
[ 'node_shared_uvwasi=="false"', {
'dependencies': [ 'deps/uvwasi/uvwasi.gyp:uvwasi' ],
}],
[ 'node_shared_nghttp2=="false"', {
'dependencies': [ 'deps/nghttp2/nghttp2.gyp:nghttp2' ],
}],