Hello,

I did not like SSL_LIB, SSL_INC after arm64 switched to stock lib (in an
ugly way).
let us make stock lib first class citizen.


Cheers,
Ilya Shipitcin
From 6ff056e7ded7784fcb4020ea8f37b12b23c855b6 Mon Sep 17 00:00:00 2001
From: Ilya Shipitsin <chipits...@gmail.com>
Date: Thu, 30 Jul 2020 01:47:55 +0500
Subject: [PATCH 2/2] CI: travis-ci : switch to stock openssl when
 openssl-1.1.1 is used

instead of building openssl-1.1.1 let us use stock package and save
some electricity
---
 .travis.yml | 19 ++++++++++++++++---
 1 file changed, 16 insertions(+), 3 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index 3ee52f613..89ab24397 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -33,56 +33,67 @@ matrix:
     if: type == cron
     compiler: gcc
     env: TARGET=linux-glibc OPENSSL_VERSION=1.0.2u
+    name: openssl-1.0.2
   - os: linux
     arch: amd64
     if: type == push
     compiler: clang
-    env: TARGET=linux-glibc OPENSSL_VERSION=1.1.1f CC=clang-9
+    env: TARGET=linux-glibc CC=clang-9
+    name: openssl-1.1.1
   - os: linux
     arch: arm64
     if: type == push
     compiler: clang
     env: TARGET=linux-glibc CC=clang-9
+    name: openssl-1.1.1
   - os: linux
     arch: s390x
     if: type == push
     compiler: gcc
-    env: TARGET=linux-glibc OPENSSL_VERSION=1.1.1f
+    env: TARGET=linux-glibc
+    name: openssl-1.1.1
   - os: linux
     if: type == cron
     compiler: clang
-    env: TARGET=linux-glibc OPENSSL_VERSION=1.1.1f COVERITY_SCAN_PROJECT_NAME="Haproxy" COVERITY_SCAN_BRANCH_PATTERN="*" COVERITY_SCAN_NOTIFICATION_EMAIL="chipits...@gmail.com" COVERITY_SCAN_BUILD_COMMAND="make CC=clang TARGET=$TARGET $FLAGS 51DEGREES_SRC=$FIFTYONEDEGREES_SRC"
+    env: TARGET=linux-glibc COVERITY_SCAN_PROJECT_NAME="Haproxy" COVERITY_SCAN_BRANCH_PATTERN="*" COVERITY_SCAN_NOTIFICATION_EMAIL="chipits...@gmail.com" COVERITY_SCAN_BUILD_COMMAND="make CC=clang TARGET=$TARGET $FLAGS 51DEGREES_SRC=$FIFTYONEDEGREES_SRC"
     script:
       - |
         if [ ! -z ${COVERITY_SCAN_TOKEN+x} ]; then
           make -C contrib/wurfl
           curl -s "https://scan.coverity.com/scripts/travisci_build_coverity_scan.sh"; | bash || true
         fi
+    name: openssl-1.1.1
   - os: linux
     if: type == cron
     compiler: clang
     env: TARGET=linux-glibc OPENSSL_VERSION=1.1.0l FIFTYONEDEGREES_SRC="contrib/51d/src/trie" CC=clang-9
+    name: openssl-1.1.1 | 51d trie
   - os: linux
     if: type == push
     compiler: clang
     env: TARGET=linux-glibc LIBRESSL_VERSION=3.1.1 CC=clang-9
+    name: libressl-3.1.1
   - os: linux
     env: DEBUG_OPTIONS=""
     if: type == cron
     compiler: clang
     env: TARGET=linux-glibc LIBRESSL_VERSION=3.0.2 CC=clang-9
+    name: libressl-3.0.2 | ERR=
   - os: linux
     if: type == cron
     compiler: clang
     env: TARGET=linux-glibc LIBRESSL_VERSION=2.9.2 EXTRA_OBJS="contrib/prometheus-exporter/service-prometheus.o" CC=clang-9
+    name: libressl-2.9.2 | prometheus-exporte
   - os: linux
     if: type == cron
     compiler: clang
     env: TARGET=linux-glibc BORINGSSL=yes
+    name: boringssl
   - os: linux
     if: type == push
     compiler: clang
     env: TARGET=linux-glibc FLAGS= CC=clang-9
+    name: FLAGS=
   - os: osx
     osx_image: xcode12
     if: type == push
@@ -91,6 +102,7 @@ matrix:
       - echo 'brew "socat"' > brew.bundle
       - brew bundle --file=brew.bundle
     env: TARGET=osx FLAGS="USE_OPENSSL=1" OPENSSL_VERSION=1.1.1f
+    name: openssl-1.1.1
   - os: linux
     if: type == cron
     compiler: clang
@@ -98,6 +110,7 @@ matrix:
     before_script:
       - git clone https://github.com/wtarreau/libslz
       - cd libslz && make && make PREFIX=${HOME}/opt install && cd ..
+    name: openssl-1.1.1 | slz | pcre2
   allow_failures:
   - os: linux
     arch: arm64
-- 
2.26.2

From 00b0146b626c66a0fde8f90967db7fd8d83c79e9 Mon Sep 17 00:00:00 2001
From: Ilya Shipitsin <chipits...@gmail.com>
Date: Thu, 30 Jul 2020 01:39:24 +0500
Subject: [PATCH 1/2] CI : travis-ci : prepare for using stock OpenSSL

initially SSL_LIB and SSL_INC were set globally and we assumed
that any OpenSSL variant is supposed to be built using "script/build-ssl.sh".

starting with ARM64 build we use stock openssl, also it makes sense
to use stock openssl for 1.1.1 builds for velocity sake.

Let us make stock openssl lib first class citizen.

SSL_LIB and SSL_INC are only set when custom openssl variant
is built.
---
 .travis.yml | 17 +++++++----------
 1 file changed, 7 insertions(+), 10 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index cf227b3a5..3ee52f613 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -12,8 +12,6 @@ branches:
 env:
   global:
     - FLAGS="USE_ZLIB=1 USE_PCRE=1 USE_PCRE_JIT=1 USE_LUA=1 USE_OPENSSL=1 USE_SYSTEMD=1 USE_WURFL=1 WURFL_INC=contrib/wurfl WURFL_LIB=contrib/wurfl USE_DEVICEATLAS=1 DEVICEATLAS_SRC=contrib/deviceatlas USE_51DEGREES=1"
-    - SSL_LIB=${HOME}/opt/lib
-    - SSL_INC=${HOME}/opt/include
     - TMPDIR=/tmp
     - FIFTYONEDEGREES_SRC="contrib/51d/src/pattern"
     - DEBUG_OPTIONS="DEBUG_STRICT=1"
@@ -41,15 +39,10 @@ matrix:
     compiler: clang
     env: TARGET=linux-glibc OPENSSL_VERSION=1.1.1f CC=clang-9
   - os: linux
-    # The ARM64 build uses openssl and libssl-dev from Ubuntu repository. They come preinstalled by TravisCI!
     arch: arm64
     if: type == push
     compiler: clang
-    env: TARGET=linux-glibc OPENSSL_VERSION=1.1.1f CC=clang-9 SSL_LIB=/usr/lib SSL_INC=/usr/include
-    install:
-      - git clone https://github.com/VTest/VTest.git ../vtest
-      # Special flags due to: https://github.com/vtest/VTest/issues/12
-      - make -C ../vtest FLAGS="-O2 -s -Wall"
+    env: TARGET=linux-glibc CC=clang-9
   - os: linux
     arch: s390x
     if: type == push
@@ -115,12 +108,16 @@ install:
   - git clone https://github.com/VTest/VTest.git ../vtest
   # Special flags due to: https://github.com/vtest/VTest/issues/12
   - make -C ../vtest FLAGS="-O2 -s -Wall"
-  - travis_wait bash -c 'scripts/build-ssl.sh >build-ssl.log 2>&1' || (cat build-ssl.log && exit 1)
+  - |
+    if [ ! -z ${OPENSSL_VERSION+x} ] || [ ! -z ${LIBRESSL_VERSION+x} ] || [ ! -z ${BORINGSSL+x} ]; then
+       travis_wait bash -c 'scripts/build-ssl.sh >build-ssl.log 2>&1' || (cat build-ssl.log && exit 1)
+       export SSL_LIB=${HOME}/opt/lib SSL_INC=${HOME}/opt/include
+    fi
 
 script:
   - if [ "${CC%-*}"  = "clang" ]; then export FLAGS="$FLAGS USE_OBSOLETE_LINKER=1" DEBUG_CFLAGS="-g -fsanitize=address" LDFLAGS="-fsanitize=address"; fi
   - make -C contrib/wurfl
-  - make -j3 CC=$CC CPU_CFLAGS.generic="-O1" V=1 ERR=1 TARGET=$TARGET $FLAGS DEBUG_CFLAGS="$DEBUG_CFLAGS" LDFLAGS="$LDFLAGS" ADDLIB="-Wl,-rpath,$SSL_LIB" 51DEGREES_SRC="$FIFTYONEDEGREES_SRC" EXTRA_OBJS="$EXTRA_OBJS" $DEBUG_OPTIONS
+  - make -j3 CC=$CC CPU_CFLAGS.generic="-O1" V=1 ERR=1 TARGET=$TARGET $FLAGS DEBUG_CFLAGS="$DEBUG_CFLAGS" LDFLAGS="$LDFLAGS" $([ ! -z ${SSL_LIB+x} ] && echo ADDLIB="-Wl,-rpath,$SSL_LIB") 51DEGREES_SRC="$FIFTYONEDEGREES_SRC" EXTRA_OBJS="$EXTRA_OBJS" $DEBUG_OPTIONS
   - ./haproxy -vv
   - if [ "${TRAVIS_OS_NAME}" = "linux" ]; then ldd haproxy; fi
   - if [ "${TRAVIS_OS_NAME}" = "osx" ]; then otool -L haproxy; fi
-- 
2.26.2

Reply via email to