handshake, writeread: load the cert and key once, not per iteration #310
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: "Test" | |
| on: | |
| pull_request: | |
| workflow_dispatch: | |
| jobs: | |
| debian-11: | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| release: [ | |
| { | |
| openssl-branch: "openssl-3.4", | |
| cmakeopts: '-D "run_newrawkey_algos=newrawkey;-a;x25519" -D "run_evp_fetch_pqs=evp_fetch;;"', | |
| configopts: 'no-apps no-tests', | |
| has-ssl_poll_perf: false, | |
| }, { | |
| openssl-branch: "openssl-3.5", | |
| cmakeopts: '', | |
| configopts: 'no-apps no-tests', | |
| has-ssl_poll_perf: false, | |
| }, { | |
| openssl-branch: "openssl-3.6", | |
| cmakeopts: '', | |
| configopts: 'no-apps no-tests', | |
| has-ssl_poll_perf: true, | |
| }, { | |
| openssl-branch: "openssl-4.0", | |
| cmakeopts: '', | |
| configopts: 'no-apps no-tests', | |
| has-ssl_poll_perf: true, | |
| }, { | |
| openssl-branch: "openssl-4.1", | |
| cmakeopts: '', | |
| configopts: 'no-apps no-tests', | |
| has-ssl_poll_perf: true, | |
| }, { | |
| openssl-branch: "master", | |
| cmakeopts: '', | |
| configopts: 'no-apps no-tests', | |
| has-ssl_poll_perf: true, | |
| } | |
| ] | |
| runs-on: "ubuntu-latest" | |
| container: "docker.io/library/debian:11" | |
| steps: | |
| - name: "Install prerequisites" | |
| run: | | |
| sed -i -e 's|^deb |#deb |' \ | |
| -e 's|^# deb http://snapshot|deb http://snapshot|' /etc/apt/sources.list && \ | |
| apt-get -o Acquire::Check-Valid-Until=false -o Acquire::Retries=3 update && \ | |
| apt-get install -y cmake gcc g++ make perl | |
| - name: "Checkout openssl" | |
| uses: "actions/checkout@v7" | |
| with: | |
| repository: "openssl/openssl" | |
| ref: ${{ matrix.release.openssl-branch }} | |
| fetch-depth: 1 | |
| path: "openssl" | |
| - name: "Config openssl build" | |
| working-directory: "./openssl" | |
| run: | | |
| ./config ${{ matrix.release.configopts }} --prefix="$PWD/dist" | |
| - name: "Build openssl" | |
| working-directory: "./openssl" | |
| run: | | |
| make -j 4 | |
| - name: "Install openssl" | |
| working-directory: "./openssl" | |
| run: | | |
| make install_sw | |
| - name: "Checkout perftools" | |
| uses: "actions/checkout@v7" | |
| with: | |
| path: "perftools" | |
| - name: "Config perftools build with -DDEBUG" | |
| if: ${{ matrix.release.has-ssl_poll_perf }} | |
| working-directory: "./perftools/source" | |
| run: | | |
| cmake -S . -B build_debug -DOPENSSL_ROOT_DIR="$GITHUB_WORKSPACE/openssl" -DCMAKE_C_FLAGS="-DDEBUG -Werror" -Drun_add_version_dep:BOOL=OFF ${{ matrix.release.cmakeopts }} | |
| - name: "Build ssl_poll_perf with -DDEBUG" | |
| if: ${{ matrix.release.has-ssl_poll_perf }} | |
| working-directory: "./perftools/source" | |
| run: | | |
| cmake --build build_debug --config Debug --target ssl_poll_perf -j 4 -v | |
| - name: "Config perftools build" | |
| working-directory: "./perftools/source" | |
| run: | | |
| cmake -S . -B build -DOPENSSL_ROOT_DIR="$GITHUB_WORKSPACE/openssl" -Drun_add_version_dep:BOOL=OFF ${{ matrix.release.cmakeopts }} | |
| - name: "Build perftools" | |
| working-directory: "./perftools/source" | |
| run: | | |
| cmake --build build --config Release | |
| - name: "Print perftools version information" | |
| working-directory: "./perftools/source" | |
| run: | | |
| cmake --build build --config Release --target run-version -j 4 | |
| - name: "Run perftools" | |
| working-directory: "./perftools/source" | |
| run: | | |
| cmake --build build --config Release --target run -j 4 | |
| ubuntu-20-04: | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| release: [ | |
| { | |
| openssl-branch: "openssl-3.4", | |
| cmakeopts: '-D "run_newrawkey_algos=newrawkey;-a;x25519" -D "run_evp_fetch_pqs=evp_fetch;;" -D OPENSSL_VERSION=3.4', | |
| configopts: 'no-apps no-tests', | |
| has-ssl_poll_perf: false, | |
| }, { | |
| openssl-branch: "openssl-3.5", | |
| cmakeopts: '-D OPENSSL_VERSION=3.5', | |
| configopts: 'no-apps no-tests', | |
| has-ssl_poll_perf: false, | |
| }, { | |
| openssl-branch: "openssl-3.6", | |
| cmakeopts: '-D OPENSSL_VERSION=3.6', | |
| configopts: 'no-apps no-tests', | |
| has-ssl_poll_perf: true, | |
| }, { | |
| openssl-branch: "openssl-4.0", | |
| cmakeopts: '-D OPENSSL_VERSION=4.0', | |
| configopts: 'no-apps no-tests', | |
| has-ssl_poll_perf: true, | |
| }, { | |
| openssl-branch: "openssl-4.1", | |
| cmakeopts: '-D OPENSSL_VERSION=4.1', | |
| configopts: 'no-apps no-tests', | |
| has-ssl_poll_perf: true, | |
| }, { | |
| openssl-branch: "master", | |
| cmakeopts: '-D OPENSSL_VERSION=4.2', | |
| configopts: 'no-apps no-tests', | |
| has-ssl_poll_perf: true, | |
| } | |
| ] | |
| runs-on: "ubuntu-latest" | |
| container: "docker.io/library/ubuntu:20.04" | |
| steps: | |
| - name: "Install prerequisites" | |
| env: | |
| DEBIAN_FRONTEND: "noninteractive" | |
| run: | | |
| apt-get update | |
| apt-get install -y cmake gcc g++ make perl | |
| - name: "Checkout openssl" | |
| uses: "actions/checkout@v7" | |
| with: | |
| repository: "openssl/openssl" | |
| ref: ${{ matrix.release.openssl-branch }} | |
| fetch-depth: 1 | |
| path: "openssl" | |
| - name: "Config openssl build" | |
| working-directory: "./openssl" | |
| run: | | |
| ./config ${{ matrix.release.configopts }} --prefix="$PWD/dist" | |
| - name: "Build openssl" | |
| working-directory: "./openssl" | |
| run: | | |
| make -j 4 | |
| - name: "Install openssl" | |
| working-directory: "./openssl" | |
| run: | | |
| make install_sw | |
| - name: "Checkout perftools" | |
| uses: "actions/checkout@v7" | |
| with: | |
| path: "perftools" | |
| - name: "Config perftools build with -DDEBUG" | |
| if: ${{ matrix.release.has-ssl_poll_perf }} | |
| working-directory: "./perftools/source" | |
| run: | | |
| cmake -S . -B build_debug -DOPENSSL_ROOT_DIR="$GITHUB_WORKSPACE/openssl" -DCMAKE_C_FLAGS="-DDEBUG -Werror" -Drun_add_version_dep:BOOL=OFF ${{ matrix.release.cmakeopts }} | |
| - name: "Build ssl_poll_perf with -DDEBUG" | |
| if: ${{ matrix.release.has-ssl_poll_perf }} | |
| working-directory: "./perftools/source" | |
| run: | | |
| cmake --build build_debug --config Debug --target ssl_poll_perf -j 4 -v | |
| - name: "Config perftools build" | |
| working-directory: "./perftools/source" | |
| run: | | |
| cmake -S . -B build -DOPENSSL_ROOT_DIR="$GITHUB_WORKSPACE/openssl" -Drun_add_version_dep:BOOL=OFF ${{ matrix.release.cmakeopts }} | |
| - name: "Build perftools" | |
| working-directory: "./perftools/source" | |
| run: | | |
| cmake --build build --config Release | |
| - name: "Print perftools version information" | |
| working-directory: "./perftools/source" | |
| run: | | |
| cmake --build build --config Release --target run-version -j 4 | |
| - name: "Run perftools" | |
| working-directory: "./perftools/source" | |
| run: | | |
| cmake --build build --config Release --target run -j 4 | |
| freebsd-13: | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| release: [ | |
| { | |
| openssl-branch: "openssl-3.4", | |
| cmakeopts: '-D "run_newrawkey_algos=newrawkey;-a;x25519" -D "run_evp_fetch_pqs=evp_fetch;;" -D "run_handshake_pool_size=handshake;;;-o 4"', | |
| configopts: 'no-apps no-tests', | |
| has-ssl_poll_perf: false, | |
| }, { | |
| openssl-branch: "openssl-3.5", | |
| cmakeopts: '-D "run_handshake_pool_size=handshake;;;-o 4"', | |
| configopts: 'no-apps no-tests', | |
| has-ssl_poll_perf: false, | |
| }, { | |
| openssl-branch: "openssl-3.6", | |
| cmakeopts: '-D "run_handshake_pool_size=handshake;;;-o 4"', | |
| configopts: 'no-apps no-tests', | |
| has-ssl_poll_perf: true, | |
| }, { | |
| openssl-branch: "openssl-4.0", | |
| cmakeopts: '-D "run_handshake_pool_size=handshake;;;-o 4"', | |
| configopts: 'no-apps no-tests', | |
| has-ssl_poll_perf: true, | |
| }, { | |
| openssl-branch: "openssl-4.1", | |
| cmakeopts: '-D "run_handshake_pool_size=handshake;;;-o 4"', | |
| configopts: 'no-apps no-tests', | |
| has-ssl_poll_perf: true, | |
| }, { | |
| openssl-branch: "master", | |
| cmakeopts: '', | |
| configopts: 'no-apps no-tests', | |
| has-ssl_poll_perf: true, | |
| } | |
| ] | |
| runs-on: "ubuntu-latest" | |
| steps: | |
| - name: "Install prerequisites" | |
| uses: "cross-platform-actions/action@fe0167d8082ac584754ef3ffb567fded22642c7d" #v0.27.0 | |
| with: | |
| operating_system: "freebsd" | |
| version: "13.4" | |
| shutdown_vm: false | |
| run: | | |
| sudo pkg install -y cmake gcc perl5 | |
| - name: "Checkout openssl" | |
| uses: "actions/checkout@v7" | |
| with: | |
| repository: "openssl/openssl" | |
| ref: ${{ matrix.release.openssl-branch }} | |
| fetch-depth: 1 | |
| path: "openssl" | |
| - name: "Config openssl build" | |
| uses: "cross-platform-actions/action@fe0167d8082ac584754ef3ffb567fded22642c7d" #v0.27.0 | |
| with: | |
| operating_system: "freebsd" | |
| version: "13.4" | |
| shutdown_vm: false | |
| run: | | |
| cd openssl | |
| ./config ${{ matrix.release.configopts }} --prefix="$PWD/dist" | |
| - name: "Build openssl" | |
| uses: "cross-platform-actions/action@fe0167d8082ac584754ef3ffb567fded22642c7d" #v0.27.0 | |
| with: | |
| operating_system: "freebsd" | |
| version: "13.4" | |
| shutdown_vm: false | |
| run: | | |
| cd openssl | |
| make -j 4 | |
| - name: "Install openssl" | |
| uses: "cross-platform-actions/action@fe0167d8082ac584754ef3ffb567fded22642c7d" #v0.27.0 | |
| with: | |
| operating_system: "freebsd" | |
| version: "13.4" | |
| shutdown_vm: false | |
| run: | | |
| cd openssl | |
| make install_sw | |
| - name: "Checkout perftools" | |
| uses: "actions/checkout@v7" | |
| with: | |
| path: "perftools" | |
| - name: "Config perftools build with -DDEBUG" | |
| if: ${{ matrix.release.has-ssl_poll_perf }} | |
| uses: "cross-platform-actions/action@fe0167d8082ac584754ef3ffb567fded22642c7d" #v0.27.0 | |
| with: | |
| operating_system: "freebsd" | |
| version: "13.4" | |
| shutdown_vm: false | |
| run: | | |
| cd perftools/source | |
| cmake -S . -B build_debug -DOPENSSL_ROOT_DIR="$GITHUB_WORKSPACE/openssl" -DCMAKE_C_FLAGS="-DDEBUG -Werror" -Drun_add_version_dep:BOOL=OFF ${{ matrix.release.cmakeopts }} | |
| - name: "Build ssl_poll_perf with -DDEBUG" | |
| if: ${{ matrix.release.has-ssl_poll_perf }} | |
| uses: "cross-platform-actions/action@fe0167d8082ac584754ef3ffb567fded22642c7d" #v0.27.0 | |
| with: | |
| operating_system: "freebsd" | |
| version: "13.4" | |
| shutdown_vm: false | |
| run: | | |
| cd perftools/source | |
| cmake --build build_debug --config Debug --target ssl_poll_perf -j 4 -v | |
| - name: "Config perftools build" | |
| uses: "cross-platform-actions/action@fe0167d8082ac584754ef3ffb567fded22642c7d" #v0.27.0 | |
| with: | |
| operating_system: "freebsd" | |
| version: "13.4" | |
| shutdown_vm: false | |
| run: | | |
| cd perftools/source | |
| cmake -S . -B build -DOPENSSL_ROOT_DIR="$GITHUB_WORKSPACE/openssl" -Drun_add_version_dep:BOOL=OFF ${{ matrix.release.cmakeopts }} | |
| - name: "Build perftools" | |
| uses: "cross-platform-actions/action@fe0167d8082ac584754ef3ffb567fded22642c7d" #v0.27.0 | |
| with: | |
| operating_system: "freebsd" | |
| version: "13.4" | |
| shutdown_vm: false | |
| run: | | |
| cd perftools/source | |
| cmake --build build --config Release | |
| - name: "Print perftools version information" | |
| uses: "cross-platform-actions/action@fe0167d8082ac584754ef3ffb567fded22642c7d" #v0.27.0 | |
| with: | |
| operating_system: "freebsd" | |
| version: "13.4" | |
| shutdown_vm: false | |
| run: | | |
| cd perftools/source | |
| cmake --build build --config Release --target run-version -j 4 | |
| - name: "Run perftools" | |
| uses: "cross-platform-actions/action@fe0167d8082ac584754ef3ffb567fded22642c7d" #v0.27.0 | |
| with: | |
| operating_system: "freebsd" | |
| version: "13.4" | |
| shutdown_vm: false | |
| run: | | |
| cd perftools/source | |
| cmake --build build --config Release --target run -j 4 | |
| windows: | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| release: [ | |
| { | |
| openssl-branch: "openssl-3.4", | |
| cmakeopts: '-D "run_newrawkey_algos=newrawkey;-a;x25519" -D "run_evp_fetch_pqs=evp_fetch;;"', | |
| configopts: 'no-apps no-tests', | |
| has-ssl_poll_perf: false, | |
| z7-patch: "0001-Windows-Use-Z7-compiler-flag-to-enable-parallel-buil.patch", | |
| }, { | |
| openssl-branch: "openssl-3.5", | |
| cmakeopts: '', | |
| configopts: 'no-apps no-tests', | |
| has-ssl_poll_perf: false, | |
| z7-patch: "0001-Windows-Use-Z7-compiler-flag-to-enable-parallel-buil.patch", | |
| }, { | |
| openssl-branch: "openssl-3.6", | |
| cmakeopts: '', | |
| configopts: 'no-apps no-tests', | |
| has-ssl_poll_perf: true, | |
| z7-patch: "0001-Windows-Use-Z7-compiler-flag-to-enable-parallel-buil.patch", | |
| }, { | |
| openssl-branch: "openssl-4.0", | |
| cmakeopts: '', | |
| configopts: 'no-apps no-tests', | |
| has-ssl_poll_perf: true, | |
| z7-patch: "0001-Windows-Use-Z7-compiler-flag-to-enable-parallel-buil.patch", | |
| }, { | |
| openssl-branch: "openssl-4.1", | |
| cmakeopts: '', | |
| configopts: 'no-apps no-tests', | |
| has-ssl_poll_perf: true, | |
| z7-patch: '', | |
| }, { | |
| openssl-branch: "master", | |
| cmakeopts: '', | |
| configopts: 'no-apps no-tests', | |
| has-ssl_poll_perf: true, | |
| z7-patch: '', | |
| } | |
| ] | |
| runs-on: "windows-latest" | |
| steps: | |
| - name: "Checkout perftools" | |
| uses: "actions/checkout@v7" | |
| with: | |
| path: "perftools" | |
| - name: "Install nasm" | |
| if: github.repository == 'openssl/perftools' | |
| run: | | |
| $installer = "nasm-3.01-installer-x64.exe" | |
| Invoke-WebRequest -Uri "https://openssl-library.org/ci-deps/$installer" -OutFile $installer | |
| $expected = (Get-Content "$env:GITHUB_WORKSPACE\perftools\.github\ci-deps.json" -Raw | ConvertFrom-Json).$installer | |
| $actual = (Get-FileHash $installer -Algorithm SHA256).Hash | |
| if ($actual -ne $expected) { throw "SHA256 mismatch for $installer (expected $expected, got $actual)" } | |
| Start-Process -FilePath ".\$installer" -ArgumentList '/S' -Wait | |
| "C:\Program Files\NASM" | Out-File -FilePath "$env:GITHUB_PATH" -Append | |
| - name: "Install nasm (forks)" | |
| if: github.repository != 'openssl/perftools' | |
| run: | | |
| $installer = "nasm-3.01-installer-x64.exe" | |
| Invoke-WebRequest -Uri "https://www.nasm.us/pub/nasm/releasebuilds/3.01/win64/$installer" -OutFile $installer | |
| Start-Process -FilePath ".\$installer" -ArgumentList '/S' -Wait | |
| "C:\Program Files\NASM" | Out-File -FilePath "$env:GITHUB_PATH" -Append | |
| - name: "Install jom" | |
| if: github.repository == 'openssl/perftools' | |
| run: | | |
| mkdir C:\jom | |
| Invoke-WebRequest -Uri "https://openssl-library.org/ci-deps/jom-1.1.7.exe" -OutFile C:\jom\jom.exe | |
| $expected = (Get-Content "$env:GITHUB_WORKSPACE\perftools\.github\ci-deps.json" -Raw | ConvertFrom-Json).'jom-1.1.7.exe' | |
| $actual = (Get-FileHash C:\jom\jom.exe -Algorithm SHA256).Hash | |
| if ($actual -ne $expected) { throw "SHA256 mismatch for jom.exe (expected $expected, got $actual)" } | |
| "C:\jom" | Out-File -FilePath "$env:GITHUB_PATH" -Append | |
| - name: "Install jom (forks)" | |
| if: github.repository != 'openssl/perftools' | |
| run: | | |
| mkdir C:\jom | |
| Invoke-WebRequest -Uri "https://download.qt.io/official_releases/jom/jom_1_1_7.zip" -OutFile C:\jom\jom.zip | |
| Expand-Archive -Path C:\jom\jom.zip -DestinationPath C:\jom | |
| "C:\jom" | Out-File -FilePath "$env:GITHUB_PATH" -Append | |
| - name: "Checkout openssl" | |
| uses: "actions/checkout@v7" | |
| with: | |
| repository: "openssl/openssl" | |
| ref: ${{ matrix.release.openssl-branch }} | |
| fetch-depth: 1 | |
| path: "openssl" | |
| - name: "Apply the /Z7 parallel-build patch to openssl" | |
| if: ${{ matrix.release.z7-patch != '' }} | |
| working-directory: ".\\openssl" | |
| run: | | |
| git apply -C1 --verbose "$env:GITHUB_WORKSPACE\perftools\patches\${{ matrix.release.z7-patch }}" | |
| - name: "Config openssl build" | |
| working-directory: ".\\openssl" | |
| shell: cmd | |
| run: | | |
| call "C:\Program Files\Microsoft Visual Studio\18\Enterprise\VC\Auxiliary\Build\vcvars64.bat" | |
| perl Configure no-makedepend ${{ matrix.release.configopts }} | |
| - name: "Build openssl" | |
| working-directory: ".\\openssl" | |
| shell: cmd | |
| run: | | |
| call "C:\Program Files\Microsoft Visual Studio\18\Enterprise\VC\Auxiliary\Build\vcvars64.bat" | |
| jom /j4 /S | |
| - name: "Config perftools build with -DDEBUG" | |
| if: ${{ matrix.release.has-ssl_poll_perf }} | |
| working-directory: ".\\perftools\\source" | |
| run: | | |
| cmake -S . -B .\build_debug -DOPENSSL_ROOT_DIR="$env:GITHUB_WORKSPACE\openssl" -DCMAKE_C_FLAGS="/DDEBUG" -Drun_add_version_dep:BOOL=OFF ${{ matrix.release.cmakeopts }} | |
| - name: "Build ssl_poll_perf with -DDEBUG" | |
| if: ${{ matrix.release.has-ssl_poll_perf }} | |
| working-directory: ".\\perftools\\source" | |
| run: | | |
| cmake --build .\build_debug --config Debug --target ssl_poll_perf -j 4 -v | |
| - name: "Config perftools build" | |
| working-directory: ".\\perftools\\source" | |
| run: | | |
| cmake -S . -B .\build -DOPENSSL_ROOT_DIR="$env:GITHUB_WORKSPACE\openssl" -Drun_add_version_dep:BOOL=OFF ${{ matrix.release.cmakeopts }} | |
| - name: "Build perftools" | |
| working-directory: ".\\perftools\\source" | |
| run: | | |
| cmake --build .\build --config Release | |
| - name: "Print perftools version information" | |
| working-directory: ".\\perftools\\source" | |
| run: | | |
| cmake --build .\build --config Release --target run-version -j 4 | |
| - name: "Run perftools" | |
| working-directory: ".\\perftools\\source" | |
| run: | | |
| cmake --build .\build --config Release --target run -j 4 | |
| macos: | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| release: [ | |
| { | |
| openssl-branch: "openssl-3.4", | |
| cmakeopts: '-D "run_newrawkey_algos=newrawkey;-a;x25519" -D "run_evp_fetch_pqs=evp_fetch;;" -D "run_handshake_pool_size=handshake;;;-o 4"', | |
| configopts: 'no-apps no-tests', | |
| has-ssl_poll_perf: false, | |
| }, { | |
| openssl-branch: "openssl-3.5", | |
| cmakeopts: '-D "run_handshake_pool_size=handshake;;;-o 4"', | |
| configopts: 'no-apps no-tests', | |
| has-ssl_poll_perf: false, | |
| }, { | |
| openssl-branch: "openssl-3.6", | |
| cmakeopts: '-D "run_handshake_pool_size=handshake;;;-o 4"', | |
| configopts: 'no-apps no-tests', | |
| has-ssl_poll_perf: true, | |
| }, { | |
| openssl-branch: "openssl-4.0", | |
| cmakeopts: '-D "run_handshake_pool_size=handshake;;;-o 4"', | |
| configopts: 'no-apps no-tests', | |
| has-ssl_poll_perf: true, | |
| }, { | |
| openssl-branch: "openssl-4.1", | |
| cmakeopts: '-D "run_handshake_pool_size=handshake;;;-o 4"', | |
| configopts: 'no-apps no-tests', | |
| has-ssl_poll_perf: true, | |
| }, { | |
| openssl-branch: "master", | |
| cmakeopts: '', | |
| configopts: 'no-apps no-tests', | |
| has-ssl_poll_perf: true, | |
| } | |
| ] | |
| runs-on: "macos-latest" | |
| steps: | |
| - name: "Checkout openssl" | |
| uses: "actions/checkout@v7" | |
| with: | |
| repository: "openssl/openssl" | |
| ref: ${{ matrix.release.openssl-branch }} | |
| fetch-depth: 1 | |
| path: "openssl" | |
| - name: "Config openssl build" | |
| working-directory: "./openssl" | |
| run: | | |
| ./config ${{ matrix.release.configopts }} --prefix="$PWD/dist" | |
| - name: "Build openssl" | |
| working-directory: "./openssl" | |
| run: | | |
| make -j 4 | |
| - name: "Install openssl" | |
| working-directory: "./openssl" | |
| run: | | |
| make install_sw | |
| - name: "Checkout perftools" | |
| uses: "actions/checkout@v7" | |
| with: | |
| path: "perftools" | |
| - name: "Config perftools build with -DDEBUG" | |
| if: ${{ matrix.release.has-ssl_poll_perf }} | |
| working-directory: "./perftools/source" | |
| run: | | |
| cmake -S . -B build_debug -DOPENSSL_ROOT_DIR="$GITHUB_WORKSPACE/openssl" -DCMAKE_C_FLAGS="-DDEBUG -Werror" -Drun_add_version_dep:BOOL=OFF ${{ matrix.release.cmakeopts }} | |
| - name: "Build ssl_poll_perf with -DDEBUG" | |
| if: ${{ matrix.release.has-ssl_poll_perf }} | |
| working-directory: "./perftools/source" | |
| run: | | |
| cmake --build build_debug --config Debug --target ssl_poll_perf -j 4 -v | |
| - name: "Config perftools build" | |
| working-directory: "./perftools/source" | |
| run: | | |
| cmake -S . -B build -DOPENSSL_ROOT_DIR="$GITHUB_WORKSPACE/openssl" -Drun_add_version_dep:BOOL=OFF ${{ matrix.release.cmakeopts }} | |
| - name: "Build perftools" | |
| working-directory: "./perftools/source" | |
| run: | | |
| cmake --build build --config Release | |
| - name: "Print perftools version information" | |
| working-directory: "./perftools/source" | |
| run: | | |
| cmake --build build --config Release --target run-version -j 4 | |
| - name: "Run perftools" | |
| working-directory: "./perftools/source" | |
| run: | | |
| cmake --build build --config Release --target run -j 4 |