diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 843ed480cd..15be557cd6 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -199,6 +199,87 @@ jobs: - name: make test run: make test HARNESS_JOBS=${HARNESS_JOBS:-4} + enable_brotli_dynamic: + runs-on: ubuntu-latest + steps: + - name: install brotli + run: | + sudo apt-get update + sudo apt-get -yq --no-install-suggests --no-install-recommends --force-yes install brotli libbrotli1 libbrotli-dev + - name: checkout openssl + uses: actions/checkout@v2 + - name: config + run: ./config enable-comp enable-brotli enable-brotli-dynamic && perl configdata.pm --dump + - name: make + run: make -s -j4 + - name: make test + run: make test HARNESS_JOBS=${HARNESS_JOBS:-4} + + enable_zstd_dynamic: + runs-on: ubuntu-latest + steps: + - name: install zstd + run: | + sudo apt-get update + sudo apt-get -yq --no-install-suggests --no-install-recommends --force-yes install zstd libzstd1 libzstd-dev + - name: checkout openssl + uses: actions/checkout@v2 + - name: config + run: ./config enable-comp enable-zstd enable-zstd-dynamic && perl configdata.pm --dump + - name: make + run: make -s -j4 + - name: make test + run: make test HARNESS_JOBS=${HARNESS_JOBS:-4} + + enable_brotli_and_zstd_dynamic: + runs-on: ubuntu-latest + steps: + - name: install brotli and zstd + run: | + sudo apt-get update + sudo apt-get -yq --no-install-suggests --no-install-recommends --force-yes install brotli libbrotli1 libbrotli-dev + sudo apt-get -yq --no-install-suggests --no-install-recommends --force-yes install zstd libzstd1 libzstd-dev + - name: checkout openssl + uses: actions/checkout@v2 + - name: config + run: ./config enable-comp enable-brotli enable-brotli-dynamic enable-zstd enable-zstd-dynamic && perl configdata.pm --dump + - name: make + run: make -s -j4 + - name: make test + run: make test HARNESS_JOBS=${HARNESS_JOBS:-4} + + enable_brotli_and_asan_ubsan: + runs-on: ubuntu-latest + steps: + - name: install brotli + run: | + sudo apt-get update + sudo apt-get -yq --no-install-suggests --no-install-recommends --force-yes install brotli libbrotli1 libbrotli-dev + - name: checkout openssl + uses: actions/checkout@v2 + - name: config + run: ./config --banner=Configured --debug enable-asan enable-ubsan enable-comp enable-brotli -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -DPEDANTIC && perl configdata.pm --dump + - name: make + run: make -s -j4 + - name: make test + run: make test HARNESS_JOBS=${HARNESS_JOBS:-4} OPENSSL_TEST_RAND_ORDER=0 + + enable_zstd_and_asan_ubsan: + runs-on: ubuntu-latest + steps: + - name: install zstd + run: | + sudo apt-get update + sudo apt-get -yq --no-install-suggests --no-install-recommends --force-yes install zstd libzstd1 libzstd-dev + - name: checkout openssl + uses: actions/checkout@v2 + - name: config + run: ./config --banner=Configured --debug enable-asan enable-ubsan enable-comp enable-zstd -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -DPEDANTIC && perl configdata.pm --dump + - name: make + run: make -s -j4 + - name: make test + run: make test HARNESS_JOBS=${HARNESS_JOBS:-4} OPENSSL_TEST_RAND_ORDER=0 + no-legacy: runs-on: ubuntu-latest steps: diff --git a/.github/workflows/windows_comp.yml b/.github/workflows/windows_comp.yml new file mode 100644 index 0000000000..64e7f15081 --- /dev/null +++ b/.github/workflows/windows_comp.yml @@ -0,0 +1,71 @@ +# Copyright 2022 The OpenSSL Project Authors. All Rights Reserved. +# +# Licensed under the Apache License 2.0 (the "License"). You may not use +# this file except in compliance with the License. You can obtain a copy +# in the file LICENSE in the source distribution or at +# https://www.openssl.org/source/license.html + +name: Windows Compression GitHub CI + +on: + pull_request: + paths: + - 'crypto/comp/*.c' + push: + paths: + - '**.c' + +permissions: + contents: read + +jobs: + zstd: + runs-on: windows-latest + steps: + - uses: actions/checkout@v2 + - uses: ilammy/msvc-dev-cmd@v1 + - uses: ilammy/setup-nasm@v1 + - name: prepare the build directory + run: mkdir _build + - name: Get zstd + working-directory: _build + run: | + vcpkg install zstd:x64-windows + - name: config + working-directory: _build + run: | + perl ..\Configure enable-comp enable-zstd --with-zstd-include=C:\vcpkg\packages\zstd_x64-windows\include --with-zstd-lib=C:\vcpkg\packages\zstd_x64-windows\lib\zstd.lib no-makedepend VC-WIN64A + perl configdata.pm --dump + - name: build + working-directory: _build + run: nmake + - name: test + working-directory: _build + run: | + $env:Path+=";C:\vcpkg\packages\zstd_x64-windows\bin" + nmake test VERBOSE_FAILURE=yes TESTS="-test_fuzz* -test_fipsload" HARNESS_JOBS=4 + brotli: + runs-on: windows-latest + steps: + - uses: actions/checkout@v2 + - uses: ilammy/msvc-dev-cmd@v1 + - uses: ilammy/setup-nasm@v1 + - name: prepare the build directory + run: mkdir _build + - name: Get brotli + working-directory: _build + run: | + vcpkg install brotli:x64-windows + - name: config + working-directory: _build + run: | + perl ..\Configure enable-comp enable-brotli --with-brotli-include=C:\vcpkg\packages\brotli_x64-windows\include --with-brotli-lib=C:\vcpkg\packages\brotli_x64-windows\lib no-makedepend VC-WIN64A + perl configdata.pm --dump + - name: build + working-directory: _build + run: nmake + - name: test + working-directory: _build + run: | + $env:Path+=";C:\vcpkg\packages\brotli_x64-windows\bin" + nmake test VERBOSE_FAILURE=yes TESTS="-test_fuzz* -test_fipsload" HARNESS_JOBS=4