]> git.ipfire.org Git - thirdparty/curl.git/commitdiff
travis: simplify quiche build instructions wrt boringssl
authorPeter Wu <peter@lekensteyn.nl>
Sun, 10 May 2020 14:53:00 +0000 (16:53 +0200)
committerPeter Wu <peter@lekensteyn.nl>
Fri, 22 May 2020 19:10:07 +0000 (21:10 +0200)
quiche builds boringssl as static library, reuse that instead of
building another shared library.

Closes #5438

.travis.yml
docs/HTTP3.md
scripts/travis/before_script.sh

index 6f7e67bfbb1348b9aded6c0391c3042833344eee..3c149b8771d42c8d9f0097c05db4cd1dcedd6c8b 100644 (file)
@@ -98,7 +98,7 @@ jobs:
     before_install:
     - eval "$(gimme stable)"; gimme --list  # Install latest Go (for boringssl)
   - env:
-    - T=novalgrind BORINGSSL=yes QUICHE="yes" C="--with-ssl=$HOME/boringssl --with-quiche=$HOME/quiche/target/release --enable-alt-svc" LD_LIBRARY_PATH=/home/travis/boringssl/lib:$HOME/quiche/target/release:/usr/local/lib
+    - T=novalgrind QUICHE="yes" C="--with-ssl=$HOME/quiche/deps/boringssl --with-quiche=$HOME/quiche/target/release --enable-alt-svc" LD_LIBRARY_PATH=$HOME/quiche/target/release:/usr/local/lib
     - OVERRIDE_CC="CC=gcc-8" OVERRIDE_CXX="CXX=g++-8"
     before_install:
     - eval "$(gimme stable)"; gimme --list  # Install latest Go (for boringssl)
index e84f500218468007ffe317cc7ec5ef861aba6cc8..051655f5c3487dee4a66192517c7933f607bcedf 100644 (file)
@@ -112,26 +112,12 @@ Build curl
 
 ## build
 
-Clone quiche and BoringSSL:
+Build quiche and BoringSSL:
 
      % git clone --recursive https://github.com/cloudflare/quiche
-
-Build BoringSSL (it needs to be built manually so it can be reused with curl):
-
-     % cd quiche/deps/boringssl
-     % mkdir build
-     % cd build
-     % cmake -DCMAKE_POSITION_INDEPENDENT_CODE=on ..
-     % make
-     % cd ..
-     % mkdir -p .openssl/lib
-     % cp build/crypto/libcrypto.a build/ssl/libssl.a .openssl/lib
-     % ln -s $PWD/include .openssl
-
-Build quiche:
-
-     % cd ../..
-     % QUICHE_BSSL_PATH=$PWD/deps/boringssl cargo build --release --features pkg-config-meta,qlog
+     % cargo build --release --features pkg-config-meta,qlog
+     % mkdir deps/boringssl/lib
+     % ln -vnf $(find target/release -name libcrypto.a -o -name libssl.a) deps/boringssl/lib/
 
 Build curl:
 
@@ -139,7 +125,7 @@ Build curl:
      % git clone https://github.com/curl/curl
      % cd curl
      % ./buildconf
-     % ./configure LDFLAGS="-Wl,-rpath,$PWD/../quiche/target/release" --with-ssl=$PWD/../quiche/deps/boringssl/.openssl --with-quiche=$PWD/../quiche/target/release --enable-alt-svc
+     % ./configure LDFLAGS="-Wl,-rpath,$PWD/../quiche/target/release" --with-ssl=$PWD/../quiche/deps/boringssl --with-quiche=$PWD/../quiche/target/release --enable-alt-svc
      % make
 
 ## Run
index 28b563e2e71f61deca4717264c33ac3158ab5db0..a2551ac06f15bb2e7f329fe7752e3d2dec3e9ecf 100755 (executable)
@@ -91,11 +91,13 @@ fi
 
 if [ "$TRAVIS_OS_NAME" = linux -a "$QUICHE" ]; then
   cd $HOME
-  git clone --depth=1 https://github.com/cloudflare/quiche.git
+  git clone --depth=1 --recursive https://github.com/cloudflare/quiche.git
   curl https://sh.rustup.rs -sSf | sh -s -- -y
   source $HOME/.cargo/env
   cd $HOME/quiche
-  QUICHE_BSSL_PATH=$HOME/boringssl cargo build -v --release --features pkg-config-meta,qlog
+  cargo build -v --release --features pkg-config-meta,qlog
+  mkdir -v deps/boringssl/lib
+  ln -vnf $(find target/release -name libcrypto.a -o -name libssl.a) deps/boringssl/lib/
 fi
 
 # Install common libraries.