summaryrefslogtreecommitdiff
path: root/docs/HTTP3.md
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2019-08-10 23:19:55 +0200
committerDaniel Stenberg <daniel@haxx.se>2019-08-12 00:18:53 +0200
commitd85a1cf11d31bbf7a91c406ba011e0235688c527 (patch)
tree509c1a70183bbb03b4134411247ed38c362f2a4f /docs/HTTP3.md
parent17d1e27d309f16da960fd3b9933e6e2b1db22b17 (diff)
downloadcurl-d85a1cf11d31bbf7a91c406ba011e0235688c527.tar.gz
nghttp3: required when ngtcp2 is used for QUIC
- checked for by configure - updated docs/HTTP3.md - shown in the version string Closes #4210
Diffstat (limited to 'docs/HTTP3.md')
-rw-r--r--docs/HTTP3.md42
1 files changed, 36 insertions, 6 deletions
diff --git a/docs/HTTP3.md b/docs/HTTP3.md
index 98ffe2dcf..9e9b23c7d 100644
--- a/docs/HTTP3.md
+++ b/docs/HTTP3.md
@@ -31,12 +31,42 @@ in the master branch using pull-requests, just like ordinary changes.
## Build
-1. clone ngtcp2 from git (the draft-22 branch)
-2. build and install ngtcp2's custom OpenSSL version (the quic-draft-22 branch)
-3. build and install nghttp3
-4. build and install ngtcp2 according to its instructions
-5. configure curl with ngtcp2 support: `./configure --with-ngtcp2=<install prefix>`
-6. build curl "normally"
+Build (patched) OpenSSL
+
+ % git clone --depth 1 -b quic-draft-22 https://github.com/tatsuhiro-t/openssl
+ % cd openssl
+ % ./config enable-tls1_3 --prefix=<somewhere1>
+ % make
+ % make install_sw
+
+Build nghttp3
+
+ % cd ..
+ % git clone https://github.com/ngtcp2/nghttp3
+ % cd nghttp3
+ % autoreconf -i
+ % ./configure --prefix=<somewhere2> --enable-lib-only
+ % make
+ % make install
+
+Build ngtcp2
+
+ % cd ..
+ % git clone -b draft-20 https://github.com/ngtcp2/ngtcp2
+ % cd ngtcp2
+ % autoreconf -i
+ % ./configure PKG_CONFIG_PATH=<somewhere1>/lib/pkgconfig:<somewhere2>/lib/pkgconfig LDFLAGS="-Wl,-rpath,<somehere1>/lib" --prefix==<somewhere3>
+ % make
+ % make install
+
+Build curl
+
+ % cd ..
+ % git clone https://github.com/curl/curl
+ % cd curl
+ % ./buildconf
+ % LDFLAGS="-Wl,-rpath,<somewhere1>/lib" ./configure -with-ssl=<somewhere1> --with-nghttp3=<somewhere2> --with-ngtcp2=<somewhere3>
+ % make
## Running