Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nodejs/node.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames M Snell <jasnell@gmail.com>2020-05-08 01:49:14 +0300
committerJames M Snell <jasnell@gmail.com>2020-06-16 19:23:34 +0300
commit55360443ced34515c775c5beb29f907de671dffe (patch)
tree77a533af0ace262f3d7b3adb6f198fdec4e5c946 /configure.py
parentbccb514936ab5f225bb9fb7cda259490322321c1 (diff)
quic: initial QUIC implementation
Co-authored-by: Anna Henningsen <anna@addaleax.net> Co-authored-by: Daniel Bevenius <daniel.bevenius@gmail.com> Co-authored-by: gengjiawen <technicalcute@gmail.com> Co-authored-by: James M Snell <jasnell@gmail.com> Co-authored-by: Lucas Pardue <lucaspardue.24.7@gmail.com> Co-authored-by: Ouyang Yadong <oyydoibh@gmail.com> Co-authored-by: Juan Jos<C3><A9> Arboleda <soyjuanarbol@gmail.com> Co-authored-by: Trivikram Kamat <trivikr.dev@gmail.com> Co-authored-by: Denys Otrishko <shishugi@gmail.com> PR-URL: https://github.com/nodejs/node/pull/32379 Reviewed-By: Anna Henningsen <anna@addaleax.net>
Diffstat (limited to 'configure.py')
-rwxr-xr-xconfigure.py57
1 files changed, 57 insertions, 0 deletions
diff --git a/configure.py b/configure.py
index 87d99f75be6..33cba46354b 100755
--- a/configure.py
+++ b/configure.py
@@ -122,6 +122,11 @@ parser.add_option('--error-on-warn',
dest='error_on_warn',
help='Turn compiler warnings into errors for node core sources.')
+parser.add_option('--experimental-quic',
+ action='store_true',
+ dest='experimental_quic',
+ help='enable experimental quic support')
+
parser.add_option('--gdb',
action='store_true',
dest='gdb',
@@ -269,6 +274,48 @@ shared_optgroup.add_option('--shared-nghttp2-libpath',
dest='shared_nghttp2_libpath',
help='a directory to search for the shared nghttp2 DLLs')
+shared_optgroup.add_option('--shared-ngtcp2',
+ action='store_true',
+ dest='shared_ngtcp2',
+ help='link to a shared ngtcp2 DLL instead of static linking')
+
+shared_optgroup.add_option('--shared-ngtcp2-includes',
+ action='store',
+ dest='shared_ngtcp2_includes',
+ help='directory containing ngtcp2 header files')
+
+shared_optgroup.add_option('--shared-ngtcp2-libname',
+ action='store',
+ dest='shared_ngtcp2_libname',
+ default='ngtcp2',
+ help='alternative lib name to link to [default: %default]')
+
+shared_optgroup.add_option('--shared-ngtcp2-libpath',
+ action='store',
+ dest='shared_ngtcp2_libpath',
+ help='a directory to search for the shared ngtcp2 DLLs')
+
+shared_optgroup.add_option('--shared-nghttp3',
+ action='store_true',
+ dest='shared_nghttp3',
+ help='link to a shared nghttp3 DLL instead of static linking')
+
+shared_optgroup.add_option('--shared-nghttp3-includes',
+ action='store',
+ dest='shared_nghttp3_includes',
+ help='directory containing nghttp3 header files')
+
+shared_optgroup.add_option('--shared-nghttp3-libname',
+ action='store',
+ dest='shared_nghttp3_libname',
+ default='nghttp3',
+ help='alternative lib name to link to [default: %default]')
+
+shared_optgroup.add_option('--shared-nghttp3-libpath',
+ action='store',
+ dest='shared_nghttp3_libpath',
+ help='a directory to search for the shared nghttp3 DLLs')
+
shared_optgroup.add_option('--shared-openssl',
action='store_true',
dest='shared_openssl',
@@ -1178,6 +1225,14 @@ def configure_node(o):
else:
o['variables']['debug_nghttp2'] = 'false'
+ if options.experimental_quic:
+ if options.shared_openssl:
+ raise Exception('QUIC requires a modified version of OpenSSL and '
+ 'cannot be enabled when using --shared-openssl.')
+ o['variables']['experimental_quic'] = 1
+ else:
+ o['variables']['experimental_quic'] = 'false'
+
o['variables']['node_no_browser_globals'] = b(options.no_browser_globals)
o['variables']['node_shared'] = b(options.shared)
@@ -1309,6 +1364,8 @@ def configure_openssl(o):
without_ssl_error('--openssl-fips')
if options.openssl_default_cipher_list:
without_ssl_error('--openssl-default-cipher-list')
+ if options.experimental_quic:
+ without_ssl_error('--experimental-quic')
return
if options.use_openssl_ca_store: