configure: CC=clang LDFLAGS="-Wl,-rpath,$HOME/libressl/lib" --with-openssl=$HOME/libressl --enable-debug
singleuse: --unit
+ - name: wolfssl-all
+ install_packages: zlib1g-dev
+ install_steps: wolfssl-all
+ configure: LDFLAGS="-Wl,-rpath,$HOME/wolfssl-all/lib" --with-wolfssl=$HOME/wolfssl-all --enable-debug
+ singleuse: --unit
+
+ - name: wolfssl-opensslextra valgrind
+ install_packages: zlib1g-dev valgrind
+ install_steps: wolfssl-opensslextra
+ configure: LDFLAGS="-Wl,-rpath,$HOME/wolfssl-opensslextra/lib" --with-wolfssl=$HOME/wolfssl-opensslextra --enable-debug
+ singleuse: --unit
+
- name: mbedtls valgrind
install_packages: libnghttp2-dev valgrind
install_steps: mbedtls pytest
./configure --disable-dependency-tracking --prefix=$HOME/libressl
make install
+ - name: cache wolfssl (all)
+ if: contains(matrix.build.install_steps, 'wolfssl-all')
+ uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4
+ id: cache-wolfssl-all
+ env:
+ cache-name: cache-wolfssl-all
+ with:
+ path: /home/runner/wolfssl-all
+ key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ env.libressl-version }}
+
+ - name: 'build wolfssl (all)'
+ if: contains(matrix.build.install_steps, 'wolfssl-all') && steps.cache-wolfssl-all.outputs.cache-hit != 'true'
+ run: |
+ source .github/scripts/VERSIONS
+ curl -LOsSf --retry 6 --retry-connrefused --max-time 999 https://github.com/wolfSSL/wolfssl/archive/v$WOLFSSL_VER-stable.tar.gz
+ tar -xzf v$WOLFSSL_VER-stable.tar.gz
+ cd wolfssl-$WOLFSSL_VER-stable
+ ./autogen.sh
+ ./configure --disable-dependency-tracking --enable-tls13 --enable-harden --prefix=$HOME/wolfssl-all --enable-all
+ make install
+
+ - name: cache wolfssl (opensslextra)
+ if: contains(matrix.build.install_steps, 'wolfssl-opensslextra')
+ uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4
+ id: cache-wolfssl-opensslextra
+ env:
+ cache-name: cache-wolfssl-opensslextra
+ with:
+ path: /home/runner/wolfssl-opensslextra
+ key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ env.libressl-version }}
+
+ - name: 'build wolfssl (opensslextra)'
+ if: contains(matrix.build.install_steps, 'wolfssl-opensslextra') && steps.cache-wolfssl-opensslextra.outputs.cache-hit != 'true'
+ run: |
+ source .github/scripts/VERSIONS
+ curl -LOsSf --retry 6 --retry-connrefused --max-time 999 https://github.com/wolfSSL/wolfssl/archive/v$WOLFSSL_VER-stable.tar.gz
+ tar -xzf v$WOLFSSL_VER-stable.tar.gz
+ cd wolfssl-$WOLFSSL_VER-stable
+ ./autogen.sh
+ ./configure --disable-dependency-tracking --enable-tls13 --enable-harden --prefix=$HOME/wolfssl-opensslextra --enable-opensslextra
+ make install
+
- name: cache mbedtls
if: contains(matrix.build.install_steps, 'mbedtls')
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4
+++ /dev/null
-# Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
-#
-# SPDX-License-Identifier: curl
-
-name: Linux wolfSSL
-
-'on':
- push:
- branches:
- - master
- - '*/ci'
- paths-ignore:
- - '**/*.md'
- - '**/CMakeLists.txt'
- - '.circleci/**'
- - 'appveyor.*'
- - 'CMake/**'
- - 'packages/**'
- - 'plan9/**'
- - 'projects/**'
- - 'winbuild/**'
- pull_request:
- branches:
- - master
- paths-ignore:
- - '**/*.md'
- - '**/CMakeLists.txt'
- - '.circleci/**'
- - 'appveyor.*'
- - 'CMake/**'
- - 'packages/**'
- - 'plan9/**'
- - 'projects/**'
- - 'winbuild/**'
-
-concurrency:
- # Hardcoded workflow filename as workflow name above is just Linux again
- group: wolfssl-${{ github.event.pull_request.number || github.sha }}
- cancel-in-progress: true
-
-permissions: {}
-
-env:
- MAKEFLAGS: -j 5
-
-jobs:
- autotools:
- name: ${{ matrix.build.name }}
- runs-on: 'ubuntu-latest'
- timeout-minutes: 60
- strategy:
- fail-fast: false
- matrix:
- build:
- - name: wolfssl (with --enable-all)
- install:
- configure: LDFLAGS="-Wl,-rpath,$HOME/wssl/lib" --with-wolfssl=$HOME/wssl --enable-debug
- wolfssl-configure: --enable-all
- - name: wolfssl (with --enable-opensslextra) valgrind
- install: valgrind
- configure: LDFLAGS="-Wl,-rpath,$HOME/wssl/lib" --with-wolfssl=$HOME/wssl --enable-debug
- wolfssl-configure: --enable-opensslextra
-
- steps:
- - run: |
- sudo apt-get install libtool autoconf automake pkgconf stunnel4 libpsl-dev ${{ matrix.build.install }}
- sudo python3 -m pip install impacket
- name: 'install prereqs and impacket'
-
- - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4
-
- - run: |
- source .github/scripts/VERSIONS
- curl -LOsSf --retry 6 --retry-connrefused --max-time 999 https://github.com/wolfSSL/wolfssl/archive/v$WOLFSSL_VER-stable.tar.gz
- tar -xzf v$WOLFSSL_VER-stable.tar.gz
- cd wolfssl-$WOLFSSL_VER-stable
- ./autogen.sh
- ./configure --disable-dependency-tracking --enable-tls13 ${{ matrix.build.wolfssl-configure }} --enable-harden --prefix=$HOME/wssl
- make install
- name: 'install wolfssl'
-
- - run: autoreconf -fi
- name: 'autoreconf'
-
- - run: ./configure --disable-dependency-tracking --enable-unity --enable-test-bundles --enable-warnings --enable-werror ${{ matrix.build.configure }}
- name: 'configure'
-
- - run: make V=1
- name: 'make'
-
- - run: make V=1 -C tests
- name: 'make tests'
-
- - run: make V=1 test-ci
- name: 'run tests'
- timeout-minutes: ${{ contains(matrix.build.install, 'valgrind') && 30 || 15 }}
- env:
- TFLAGS: "${{ matrix.build.tflags }}"
-
- - run: make V=1 examples
- name: 'make examples'