Update docs with instructions on building with meson
[tinc] / .ci / deps.sh
index 4906384..2f0dab2 100755 (executable)
@@ -6,8 +6,8 @@ deps_linux_alpine() {
   apk upgrade
 
   apk add \
-    git binutils make autoconf automake gcc linux-headers diffutils texinfo \
-    procps socat shadow sudo \
+    git binutils make autoconf automake gcc linux-headers diffutils \
+    procps socat shadow sudo libgcrypt-dev texinfo texlive gzip \
     openssl-dev zlib-dev lzo-dev ncurses-dev readline-dev musl-dev lz4-dev vde2-dev
 }
 
@@ -24,7 +24,7 @@ deps_linux_debian() {
   apt-get upgrade -y
 
   apt-get install -y \
-    git binutils make autoconf automake gcc diffutils sudo texinfo netcat procps socat \
+    git binutils make autoconf automake gcc diffutils sudo texinfo texlive netcat-openbsd procps socat \
     zlib1g-dev:"$HOST" \
     libssl-dev:"$HOST" \
     liblzo2-dev:"$HOST" \
@@ -54,8 +54,8 @@ deps_linux_rhel() {
   yum upgrade -y
 
   yum install -y \
-    git binutils make autoconf automake gcc diffutils sudo texinfo netcat procps systemd \
-    findutils socat lzo-devel zlib-devel lz4-devel ncurses-devel readline-devel "$@"
+    git binutils make autoconf automake gcc diffutils sudo texinfo-tex netcat procps systemd perl-IPC-Cmd \
+    findutils socat lzo-devel zlib-devel lz4-devel ncurses-devel readline-devel libgcrypt-devel "$@"
 
   if yum info openssl11-devel; then
     yum install -y openssl11-devel
@@ -68,6 +68,29 @@ deps_linux_rhel() {
   fi
 }
 
+linux_openssl3() {
+  if [ -n "${HOST:-}" ]; then
+    echo >&2 "Not installing OpenSSL 3 to a cross-compilation job"
+    return
+  fi
+
+  src=/usr/local/src/openssl
+  ssl3=/opt/ssl3
+
+  mkdir -p $src
+
+  git clone --depth 1 --branch openssl-3.0.2 https://github.com/openssl/openssl $src
+  cd $src
+
+  ./Configure --prefix=$ssl3 --openssldir=$ssl3
+  make -j"$(nproc)"
+  make install_sw
+
+  ldconfig -v $ssl3/lib64
+
+  cd -
+}
+
 deps_linux() {
   . /etc/os-release
 
@@ -78,10 +101,12 @@ deps_linux() {
 
   debian | ubuntu)
     deps_linux_debian "$@"
+    linux_openssl3
     ;;
 
   centos | almalinux | fedora)
     deps_linux_rhel "$@"
+    linux_openssl3
     ;;
 
   *) exit 1 ;;
@@ -89,7 +114,7 @@ deps_linux() {
 }
 
 deps_macos() {
-  brew install coreutils netcat automake lzo lz4 miniupnpc "$@"
+  brew install coreutils netcat automake lzo lz4 miniupnpc libgcrypt openssl "$@"
   pip3 install --user compiledb
 }