Преглед изворни кода

travis-ci: add libressl build, make builds parallel, remove not needed brew

Ilya Shipitsin пре 7 година
родитељ
комит
3e042e093b
3 измењених фајлова са 32 додато и 6 уклоњено
  1. 23 0
      .ci/build-libressl.sh
  2. 2 1
      .ci/build-openssl.sh
  3. 7 5
      .travis.yml

+ 23 - 0
.ci/build-libressl.sh

@@ -0,0 +1,23 @@
+#!/bin/bash
+set -eux
+
+download_libressl () {
+    if [[ ! -f "download-cache/librenssl-${LIBRESSL_VERSION}.tar.gz" ]]; then
+        wget -P download-cache/ \
+            "https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-${LIBRESSL_VERSION}.tar.gz"
+    fi
+}
+
+build_libressl () {
+    if [[ "$(cat ${OPENSSL_INSTALL_DIR}/.openssl-version)" != "${LIBRESSL_VERSION}" ]]; then
+        tar zxf "download-cache/libressl-${LIBRESSL_VERSION}.tar.gz"
+        cd "libressl-${LIBRESSL_VERSION}/"
+        ./configure --prefix="${OPENSSL_INSTALL_DIR}"
+        make -j $(nproc || sysctl -n hw.ncpu || echo 4) all
+        make  install
+        echo "${LIBRESSL_VERSION}" > "${OPENSSL_INSTALL_DIR}/.openssl-version"
+    fi
+}
+
+download_libressl
+build_libressl

+ 2 - 1
.ci/build-openssl.sh

@@ -13,7 +13,8 @@ build_openssl () {
         tar zxf "download-cache/openssl-${OPENSSL_VERSION}.tar.gz"
         cd "openssl-${OPENSSL_VERSION}/"
         ./config shared --prefix="${OPENSSL_INSTALL_DIR}" --openssldir="${OPENSSL_INSTALL_DIR}" -DPURIFY
-        make all install_sw
+        make -j $(nproc || sysctl -n hw.ncpu || echo 4) all
+        make install_sw
         echo "${OPENSSL_VERSION}" > "${OPENSSL_INSTALL_DIR}/.openssl-version"
     fi
 }

+ 7 - 5
.travis.yml

@@ -20,6 +20,11 @@ matrix:
     - env: OPENSSL_VERSION="1.1.0f"
       os: linux
       compiler: clang
+    - env: LIBRESSL_VERSION="2.8.2"
+      os: linux
+      compiler: gcc
+      before_install:
+        - bash .ci/build-libressl.sh > build-deps.log 2>&1 || (cat build-deps.log && exit 1)
     - env: LABEL="check stb files"
       os: linux
       language: csharp
@@ -50,11 +55,8 @@ matrix:
         - true
     - os: osx
       compiler: clang
-      cache:
-        directories:
-        - ${HOME}/Library/Caches/Homebrew
       before_install:
-        - brew update
+        - true
       script:
         - ./configure
         - make -C tmp
@@ -78,7 +80,7 @@ script:
   - export CFLAGS="-I${HOME}/opt/include"
   - export LDFLAGS="-L${HOME}/opt/lib"
   - ./configure
-  - make -C tmp
+  - make -j $(nproc || sysctl -n hw.ncpu || echo 4) -C tmp
   - ldd build/vpnserver
   - if [ "${BUILD_DEB}" = "1" ]; then make package -C tmp; fi
   - .ci/memory-leak-test.sh