This is an automated email from the ASF dual-hosted git repository.
zwoop pushed a commit to branch 9.1.x
in repository https://gitbox.apache.org/repos/asf/trafficserver.git
The following commit(s) were added to refs/heads/9.1.x by this push:
new 35bed92 Make the H3 build script work properly on Debian platforms
(#7522)
35bed92 is described below
commit 35bed92c81251e23e9fafa237d5a6c032a759e97
Author: Leif Hedstrom <[email protected]>
AuthorDate: Sun Feb 14 10:49:49 2021 -0700
Make the H3 build script work properly on Debian platforms (#7522)
(cherry picked from commit 90b2e8b69629594effc5904985d0c19d742903a6)
---
tools/build_h3_tools.sh | 56 +++++++++++++++++++++++++++++--------------------
1 file changed, 33 insertions(+), 23 deletions(-)
diff --git a/tools/build_h3_tools.sh b/tools/build_h3_tools.sh
index 83ab789..80c188c 100755
--- a/tools/build_h3_tools.sh
+++ b/tools/build_h3_tools.sh
@@ -22,30 +22,43 @@
# Probably have to change these to your preferred installation directory
BASE=${BASE:-"/opt"}
OPENSSL=${OPENSSL:-"${BASE}/openssl-quic"}
+MAKE="make"
# These are for Linux like systems, specially the LDFLAGS, also depends on
dirs above
CFLAGS=${CFLAGS:-"-O3 -g"}
CXXFLAGS=${CXXFLAGS:-"-O3 -g"}
LDFLAGS=${LDFLAGS:-"-Wl,-rpath=${OPENSSL}/lib"}
-echo
"+-------------------------------------------------------------------------+"
-echo "| You probably need to run this, or something like this, for your
system: |"
-echo "|
|"
-echo "| sudo yum -y install libev-devel jemalloc-devel python2-devel
|"
-echo "| sudo yum -y install libxml2-devel c-ares-devel libevent-devel
|"
-echo "| sudo yum -y install jansson-devel zlib-devel systemd-devel
|"
-echo
"+-------------------------------------------------------------------------+"
-echo
-echo
-
+if [ -e /etc/redhat-release ]; then
+ MAKE="gmake"
+ echo
"+-------------------------------------------------------------------------+"
+ echo "| You probably need to run this, or something like this, for your
system: |"
+ echo "|
|"
+ echo "| sudo yum -y install libev-devel jemalloc-devel python2-devel
|"
+ echo "| sudo yum -y install libxml2-devel c-ares-devel libevent-devel
|"
+ echo "| sudo yum -y install jansson-devel zlib-devel systemd-devel
|"
+ echo
"+-------------------------------------------------------------------------+"
+ echo
+ echo
+elif [ -e /etc/debian_version ]; then
+ echo
"+-------------------------------------------------------------------------+"
+ echo "| You probably need to run this, or something like this, for your
system: |"
+ echo "|
|"
+ echo "| sudo apt -y install libev-dev libjemalloc-dev python2-dev
libxml2-dev |"
+ echo "| sudo apt -y install libpython2-dev libc-ares-dev libsystemd-dev
|"
+ echo "| sudo apt -y install libevent-dev libjansson-dev zlib1g-dev
|"
+ echo
"+-------------------------------------------------------------------------+"
+ echo
+ echo
+fi
# OpenSSL needs special hackery ... Only grabbing the branch we need here...
Bryan has shit for network.
echo "Building OpenSSL with QUIC support"
[ ! -d openssl-quic ] && git clone -b OpenSSL_1_1_1g-quic-draft-32 --depth 1
https://github.com/tatsuhiro-t/openssl openssl-quic
cd openssl-quic
./config --prefix=${OPENSSL}
-gmake -j $(nproc)
-sudo gmake install
+${MAKE} -j $(nproc)
+sudo ${MAKE} install
cd ..
# Then nghttp3
@@ -54,22 +67,20 @@ echo "Building nghttp3..."
cd nghttp3
autoreconf -if
./configure --prefix=${BASE}
PKG_CONFIG_PATH=${BASE}/lib/pkgconfig:${OPENSSL}/lib/pkgconfig
CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" LDFLAGS="${LDFLAGS}"
-gmake -j $(nproc)
-sudo gmake install
+${MAKE} -j $(nproc)
+sudo ${MAKE} install
cd ..
-
# Now ngtcp2
echo "Building ngtcp2..."
[ ! -d ngtcp2 ] && git clone https://github.com/ngtcp2/ngtcp2.git
cd ngtcp2
autoreconf -if
./configure --prefix=${BASE}
PKG_CONFIG_PATH=${BASE}/lib/pkgconfig:${OPENSSL}/lib/pkgconfig
CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" LDFLAGS="${LDFLAGS}"
-gmake -j $(nproc)
-sudo gmake install
+${MAKE} -j $(nproc)
+sudo ${MAKE} install
cd ..
-
# Then nghttp2, with support for H3
echo "Building nghttp2 ..."
[ ! -d nghttp2 ] && git clone https://github.com/tatsuhiro-t/nghttp2.git
@@ -77,16 +88,15 @@ cd nghttp2
git checkout --track -b quic origin/quic
autoreconf -if
./configure --prefix=${BASE}
PKG_CONFIG_PATH=${BASE}/lib/pkgconfig:${OPENSSL}/lib/pkgconfig
CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" LDFLAGS="${LDFLAGS}"
-gmake -j $(nproc)
-sudo gmake install
+${MAKE} -j $(nproc)
+sudo ${MAKE} install
cd ..
-
# And finally curl
echo "Building curl ..."
[ ! -d curl ] && git clone https://github.com/curl/curl.git
cd curl
autoreconf -i
./configure --prefix=${BASE} --with-ssl=${OPENSSL} --with-nghttp2=${BASE}
--with-nghttp3=${BASE} --with-ngtcp2=${BASE} CFLAGS="${CFLAGS}"
CXXFLAGS="${CXXFLAGS}" LDFLAGS="${LDFLAGS}"
-gmake -j $(nproc)
-sudo gmake install
+${MAKE} -j $(nproc)
+sudo ${MAKE} install