Skip to content

refactor

refactor #734

Workflow file for this run

name: Wolfssl Build
on:
push:
release:
types: [ published ]
jobs:
build-and-test:
timeout-minutes: 20
name: Build
runs-on: ubuntu-22.04
strategy:
matrix:
cli-only: [0, 1]
steps:
- name: prepare wolfssl
run: mkdir ${{ github.workspace }}/wolfssl-build && cd ${{ github.workspace }}/wolfssl-build && curl -sSL https://github.com/wolfSSL/wolfssl/archive/refs/tags/v5.5.1-stable.tar.gz | tar -xzf - --strip-components=1
- name: configure wolfssl
run: cd ${{ github.workspace }}/wolfssl-build && ./autogen.sh && ./configure --prefix=/usr --enable-ecc --enable-dsa --enable-dtls --enable-aesccm --enable-alpn --enable-debug --enable-certgen --enable-keygen --enable-harden --enable-sni --enable-sp-math-all=small CFLAGS="-DKEEP_PEER_CERT -DWOLFSSL_PUBLIC_MP -DWOLFSSL_PUBLIC_ECC_ADD_DBL"
- name: build wolfssl
run: cd ${{ github.workspace }}/wolfssl-build && make -j 8 && ./wolfcrypt/benchmark/benchmark -ecc && sudo make install
- uses: actions/checkout@v4
with:
submodules: recursive
fetch-depth: 0
- name: Configure cmake
run: mkdir build-dir && cd build-dir && cmake -DCMAKE_INSTALL_PREFIX=${{ github.workspace }}/artifacts -DNABTO_DEVICE_WOLFSSL=1 -DDEVICE_BUILD_TESTS=ON -DNABTO_DEVICE_DTLS_CLIENT_ONLY=${{ matrix.cli-only }} ..
- name: Build
run: cmake --build build-dir --parallel
- name: Install
run: cmake --build build-dir --target install
- name: Test run
run: ${{ github.workspace }}/artifacts/bin/embedded_unit_test -l test_suite --detect_memory_leaks=0