diff --git a/configure.py b/configure.py index c68e4b48e7c763..8b311a0d702eeb 100755 --- a/configure.py +++ b/configure.py @@ -538,6 +538,29 @@ dest='shared_cares_libpath', help='a directory to search for the shared cares DLL') +shared_optgroup.add_argument('--shared-sqlite', + action='store_true', + dest='shared_sqlite', + default=None, + help='link to a shared sqlite DLL instead of static linking') + +shared_optgroup.add_argument('--shared-sqlite-includes', + action='store', + dest='shared_sqlite_includes', + help='directory containing sqlite header files') + +shared_optgroup.add_argument('--shared-sqlite-libname', + action='store', + dest='shared_sqlite_libname', + default='sqlite3', + help='alternative lib name to link to [default: %(default)s]') + +shared_optgroup.add_argument('--shared-sqlite-libpath', + action='store', + dest='shared_sqlite_libpath', + help='a directory to search for the shared sqlite DLL') + + for builtin in shareable_builtins: builtin_id = 'shared_builtin_' + builtin + '_path' shared_builtin_optgroup.add_argument('--shared-builtin-' + builtin + '-path', @@ -2156,6 +2179,7 @@ def make_bin_override(): configure_library('nghttp2', output, pkgname='libnghttp2') configure_library('nghttp3', output, pkgname='libnghttp3') configure_library('ngtcp2', output, pkgname='libngtcp2') +configure_library('sqlite', output, pkgname='sqlite3') configure_library('uvwasi', output, pkgname='libuvwasi') configure_v8(output) configure_openssl(output) diff --git a/node.gyp b/node.gyp index 9e0d48a910fb5a..73e2bd5d42643f 100644 --- a/node.gyp +++ b/node.gyp @@ -19,6 +19,7 @@ 'node_shared_http_parser%': 'false', 'node_shared_cares%': 'false', 'node_shared_libuv%': 'false', + 'node_shared_sqlite%': 'false', 'node_shared_uvwasi%': 'false', 'node_shared_nghttp2%': 'false', 'node_use_openssl%': 'true', @@ -552,7 +553,6 @@ 'dependencies': [ 'deps/histogram/histogram.gyp:histogram', - 'deps/sqlite/sqlite.gyp:sqlite', ], 'msvs_settings': { diff --git a/node.gypi b/node.gypi index ccce1243e91c75..33764e0b6a6e98 100644 --- a/node.gypi +++ b/node.gypi @@ -220,6 +220,10 @@ 'dependencies': [ 'deps/brotli/brotli.gyp:brotli' ], }], + [ 'node_shared_sqlite=="false"', { + 'dependencies': [ 'deps/sqlite/sqlite.gyp:sqlite' ], + }], + [ 'OS=="mac"', { # linking Corefoundation is needed since certain OSX debugging tools # like Instruments require it for some features diff --git a/tools/generate_config_gypi.py b/tools/generate_config_gypi.py index 071de13b11d7d3..a07347529261ee 100755 --- a/tools/generate_config_gypi.py +++ b/tools/generate_config_gypi.py @@ -106,6 +106,7 @@ def translate_config(out_dir, config, v8_config): 'node_shared_nghttp3': 'false', 'node_shared_ngtcp2': 'false', 'node_shared_openssl': 'false', + 'node_shared_sqlite': 'false', 'node_shared_zlib': 'false', } }