From 04f8ebbfac143a5ad6a30b623d923a164fe5e327 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Thu, 15 Oct 2026 12:03:14 +0200 Subject: [PATCH 1/2] build: warn on incompatible quic configure flags Signed-off-by: Antoine du Hamel --- configure.py | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/configure.py b/configure.py index a3769ff2d87..f3b582205c1 100755 --- a/configure.py +++ b/configure.py @@ -2450,8 +2450,19 @@ def configure_ffi(o): configure_library('ffi', o, pkgname='libffi') def configure_quic(o): - o['variables']['node_use_quic'] = b(options.experimental_quic and - not options.without_ssl) + if options.experimental_quic and options.without_ssl: + warn('--experimental-quic is incompatible with --without-ssl') + o['variables']['node_use_quic'] = b(options.experimental_quic) + + if not options.experimental_quic: + for lib in ['nghttp3', 'ngtcp2']: + shared_lib = 'shared_' + lib + if getattr(options, shared_lib): + warn(f'--shared-{lib} requires --experimental-quic') + return + + configure_library('nghttp3', output, pkgname='libnghttp3') + configure_library('ngtcp2', output, pkgname='libngtcp2') def configure_dtls(o): o['variables']['node_use_dtls'] = b(options.experimental_dtls and @@ -2974,8 +2985,6 @@ def make_bin_override(): configure_library('merve', output) configure_library('nbytes', output) configure_library('nghttp2', output, pkgname='libnghttp2') -configure_library('nghttp3', output, pkgname='libnghttp3') -configure_library('ngtcp2', output, pkgname='libngtcp2') configure_lief(output); configure_perfetto(output); configure_sqlite(output); From c33204de9b1b2649a3367ead8605b943c193e1e5 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Fri, 16 Oct 2026 15:59:03 +0200 Subject: [PATCH 2/2] Apply suggestion from @legendecas Co-authored-by: Chengzhong Wu --- configure.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/configure.py b/configure.py index f3b582205c1..69f0b0f2490 100755 --- a/configure.py +++ b/configure.py @@ -2452,7 +2452,8 @@ def configure_ffi(o): def configure_quic(o): if options.experimental_quic and options.without_ssl: warn('--experimental-quic is incompatible with --without-ssl') - o['variables']['node_use_quic'] = b(options.experimental_quic) + o['variables']['node_use_quic'] = b(options.experimental_quic and + not options.without_ssl) if not options.experimental_quic: for lib in ['nghttp3', 'ngtcp2']: