aboutsummaryrefslogtreecommitdiff
path: root/thirdparty/cpr/.github/workflows
diff options
context:
space:
mode:
authorStefan Boberg <[email protected]>2025-10-24 19:32:01 +0200
committerGitHub Enterprise <[email protected]>2025-10-24 19:32:01 +0200
commit4cba4eb3f122c7a1a49b629b1c0656d7f817f001 (patch)
treee184821073167f6e81a75193efca91013d7b359b /thirdparty/cpr/.github/workflows
parentfixed progress bar when scanning changed local files (#608) (diff)
downloadzen-4cba4eb3f122c7a1a49b629b1c0656d7f817f001.tar.xz
zen-4cba4eb3f122c7a1a49b629b1c0656d7f817f001.zip
move cpr in-tree (#605)
* added cpr 1.10.5 in-tree to allow updates to vcpkg without breaking the build * added asio 1.29.0 in-tree to remove one more vcpkg dependency * bumped vcpkg to 2024.06.15 to address failure to build due to use of deprecated binaries in vcpkg (404 error: `https://mirror.msys2.org/mingw/mingw64/mingw-w64-x86_64-pkgconf-1~2.1.0-1-any.pkg.tar.zst` during build)
Diffstat (limited to 'thirdparty/cpr/.github/workflows')
-rw-r--r--thirdparty/cpr/.github/workflows/build-deb.yml36
-rw-r--r--thirdparty/cpr/.github/workflows/build-nuget.yml115
-rw-r--r--thirdparty/cpr/.github/workflows/ci.yml633
-rw-r--r--thirdparty/cpr/.github/workflows/clang-format.yml19
-rw-r--r--thirdparty/cpr/.github/workflows/clang-tidy.yml29
-rw-r--r--thirdparty/cpr/.github/workflows/codeql-analysis.yml71
-rw-r--r--thirdparty/cpr/.github/workflows/cppcheck.yml27
7 files changed, 930 insertions, 0 deletions
diff --git a/thirdparty/cpr/.github/workflows/build-deb.yml b/thirdparty/cpr/.github/workflows/build-deb.yml
new file mode 100644
index 000000000..269b4a6b5
--- /dev/null
+++ b/thirdparty/cpr/.github/workflows/build-deb.yml
@@ -0,0 +1,36 @@
+name: Build Debian Package
+on:
+ push:
+ tags: [ '[0-9]+.[0-9]+.[0-9]+' ]
+ pull_request:
+
+jobs:
+ package-ubuntu-latest-amd64:
+ runs-on: ubuntu-latest
+ steps:
+ - name: "Checkout"
+ uses: actions/checkout@v3
+ with:
+ submodules: true
+ path: cpr
+
+ # Install packages necessary for building libcpr and package
+ - name: "Update package list"
+ run: sudo apt update
+ - name: "Install cpr dependencies"
+ run: sudo apt install -y libssl-dev libcurl4-openssl-dev
+ - name: "Install building tools"
+ run: sudo apt install -y cmake debmake devscripts debhelper
+
+ # Build package of runtime library
+ - name: "Package build of runtime library"
+ env:
+ VERSION: ${{ github.ref_name }}
+ run: bash cpr/package-build/build-package.sh cpr
+
+ - name: "Upload deb-packages"
+ uses: actions/upload-artifact@v3
+ with:
+ name: artifact-deb
+ path: ./*.deb
+
diff --git a/thirdparty/cpr/.github/workflows/build-nuget.yml b/thirdparty/cpr/.github/workflows/build-nuget.yml
new file mode 100644
index 000000000..c7cf4ca26
--- /dev/null
+++ b/thirdparty/cpr/.github/workflows/build-nuget.yml
@@ -0,0 +1,115 @@
+name: Build NuGet Package
+on:
+ push:
+ tags: [ '[0-9]+.[0-9]+.[0-9]+' ]
+ workflow_dispatch:
+ inputs:
+ version:
+ description: 'The optional semantic version number. If not supplied the branch/tag will be used.'
+ type: string
+ no_publish:
+ description: 'Prevent publishing the NuGet package. Just build it and then upload it as an artifact.'
+ type: boolean
+ default: false
+
+jobs:
+ package-windows-latest:
+ runs-on: windows-latest
+ steps:
+ - name: Set version based on input
+ if: ${{ inputs.version }}
+ run: echo "RELEASE_VERSION=${{ inputs.version }}" | Out-File -Append -FilePath $env:GITHUB_ENV -Encoding utf8
+ - name: Set version based on ref
+ if: ${{ !inputs.version }}
+ run: echo "RELEASE_VERSION=$($env:GITHUB_REF -replace 'refs/.*/', '')" | Out-File -Append -FilePath $env:GITHUB_ENV -Encoding utf8
+ - name: Print Version
+ run: echo "NuGet version will be '${{ env.RELEASE_VERSION }}'"
+ - name: Checkout
+ uses: actions/checkout@v3
+ with:
+ submodules: true
+ - name: Setup NuGet.exe
+ uses: nuget/setup-nuget@v1
+ - name: "[Release_x86] Build & Install"
+ env:
+ CMAKE_GENERATOR: "Visual Studio 17 2022"
+ uses: ashutoshvarma/action-cmake-build@master
+ with:
+ build-dir: ${{github.workspace}}/build
+ source-dir: ${{github.workspace}}
+ build-type: Release
+ target: ALL_BUILD
+ run-test: false
+ configure-options: -DBUILD_SHARED_LIBS=ON -DCURL_ZLIB=OFF -A Win32
+ install-build: true
+ install-options: --prefix ${{github.workspace}}\install --config Release
+ - name: "[Release_x86] Copy install files for Release_x86"
+ run: xcopy /e /i /y ${{github.workspace}}\install ${{github.workspace}}\nuget\build\native\x86\Release && xcopy /e /i /y ${{github.workspace}}\install ${{github.workspace}}\nuget\build\native\Win32\Release
+ - name: "[Release_x86] Clean build"
+ run: rm -r -fo ${{github.workspace}}/build
+ - name: "[Debug_x86] Build & Install"
+ env:
+ CMAKE_GENERATOR: "Visual Studio 17 2022"
+ uses: ashutoshvarma/action-cmake-build@master
+ with:
+ build-dir: ${{github.workspace}}/build
+ source-dir: ${{github.workspace}}
+ build-type: Debug
+ target: ALL_BUILD
+ run-test: false
+ configure-options: -DBUILD_SHARED_LIBS=ON -DCURL_ZLIB=OFF -A Win32
+ install-build: true
+ install-options: --prefix ${{github.workspace}}\install --config Debug
+ - name: "[Debug_x86] Copy install files for Debug_x86"
+ run: xcopy /e /i /y ${{github.workspace}}\install ${{github.workspace}}\nuget\build\native\x86\Debug && xcopy /e /i /y ${{github.workspace}}\install ${{github.workspace}}\nuget\build\native\Win32\Debug
+ - name: "[Debug_x86] Clean build"
+ run: rm -r -fo ${{github.workspace}}/build
+ - name: "[Release_x64] Build & Install"
+ env:
+ CMAKE_GENERATOR: "Visual Studio 17 2022"
+ uses: ashutoshvarma/action-cmake-build@master
+ with:
+ build-dir: ${{github.workspace}}/build
+ source-dir: ${{github.workspace}}
+ build-type: Release
+ target: ALL_BUILD
+ run-test: false
+ configure-options: -DBUILD_SHARED_LIBS=ON -DCURL_ZLIB=OFF -A x64
+ install-build: true
+ install-options: --prefix ${{github.workspace}}\install --config Release
+ - name: "[Release_x64] Copy install files for Release_x64"
+ run: xcopy /e /i /y ${{github.workspace}}\install ${{github.workspace}}\nuget\build\native\x64\Release
+ - name: "[Release_x64] Clean build"
+ run: rm -r -fo ${{github.workspace}}/build
+ - name: "[Debug_x64] Build & Install"
+ env:
+ CMAKE_GENERATOR: "Visual Studio 17 2022"
+ uses: ashutoshvarma/action-cmake-build@master
+ with:
+ build-dir: ${{github.workspace}}/build
+ source-dir: ${{github.workspace}}
+ build-type: Debug
+ target: ALL_BUILD
+ run-test: false
+ configure-options: -DBUILD_SHARED_LIBS=ON -DCURL_ZLIB=OFF -A x64
+ install-build: true
+ install-options: --prefix ${{github.workspace}}\install --config Debug
+ - name: "[Debug_x64] Copy install files for Debug_x64"
+ run: xcopy /e /i /y ${{github.workspace}}\install ${{github.workspace}}\nuget\build\native\x64\Debug
+ - name: "Copy Readme.md"
+ run: xcopy /y ${{github.workspace}}\README.md ${{github.workspace}}\nuget
+ - name: "Create NuGet package"
+ env:
+ VERSION: ${{ env.RELEASE_VERSION }}
+ COMMIT_HASH: ${{ github.sha }}
+ run: nuget pack ${{github.workspace}}\nuget\libcpr.nuspec -OutputDirectory ${{github.workspace}} -Properties "VERSION=$ENV:VERSION;COMMIT_HASH=$ENV:COMMIT_HASH"
+ - name: "Upload artifact"
+ uses: actions/upload-artifact@v3
+ with:
+ name: artifact-nuget
+ path: ${{github.workspace}}\*.nupkg
+ - name: "Publish package to NuGet.org"
+ if: ${{ !inputs.no_publish }}
+ env:
+ NUGET_API_KEY: ${{ secrets.NUGET_API_KEY }}
+ run: nuget push ${{github.workspace}}\*.nupkg $ENV:NUGET_API_KEY -Source https://api.nuget.org/v3/index.json
diff --git a/thirdparty/cpr/.github/workflows/ci.yml b/thirdparty/cpr/.github/workflows/ci.yml
new file mode 100644
index 000000000..545a14bec
--- /dev/null
+++ b/thirdparty/cpr/.github/workflows/ci.yml
@@ -0,0 +1,633 @@
+name: CI
+on:
+ push:
+ branches: [ master ]
+ pull_request:
+ branches: [ master ]
+
+jobs:
+ ubuntu-22-04-static-gcc-ssl:
+ runs-on: ubuntu-latest
+ container: ubuntu:22.04
+ steps:
+ - name: Update package list
+ run: apt update
+ - name: Install git
+ run: apt install -y git
+ - name: Checkout
+ uses: actions/checkout@v3
+ with:
+ submodules: true
+ - name: Install libssl-dev
+ run: apt install -y libssl-dev
+ - name: Install cmake
+ run: apt install -y cmake
+ - name: Install build-essential
+ run: apt install -y build-essential
+ - name: "[Release g++] Build & Test"
+ env:
+ CPR_BUILD_TESTS: ON
+ uses: ashutoshvarma/action-cmake-build@master
+ with:
+ build-dir: ${{github.workspace}}/build
+ source-dir: ${{github.workspace}}
+ cc: gcc
+ cxx: g++
+ build-type: Release
+ run-test: true
+ ctest-options: -V
+ configure-options: -DBUILD_SHARED_LIBS=OFF
+
+ ubuntu-22-04-clang-static-ssl:
+ runs-on: ubuntu-latest
+ container: ubuntu:22.04
+ steps:
+ - name: Update package list
+ run: apt update
+ - name: Install git
+ run: apt install -y git
+ - name: Checkout
+ uses: actions/checkout@v3
+ with:
+ submodules: true
+ - name: Install libssl-dev
+ run: apt install -y libssl-dev
+ - name: Install cmake
+ run: apt install -y cmake
+ - name: Install build-essential
+ run: apt install -y build-essential
+ - name: Install clang
+ run: apt install -y clang
+ - name: "[Release g++] Build & Test"
+ env:
+ CPR_BUILD_TESTS: ON
+ uses: ashutoshvarma/action-cmake-build@master
+ with:
+ build-dir: ${{github.workspace}}/build
+ source-dir: ${{github.workspace}}
+ cc: clang
+ cxx: clang++
+ build-type: Release
+ run-test: true
+ ctest-options: -V
+ configure-options: -DBUILD_SHARED_LIBS=OFF
+
+ ubuntu-20-shared-gcc-ssl:
+ runs-on: ubuntu-20.04
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v3
+ with:
+ submodules: true
+ - name: Update package list
+ run: sudo apt update
+ - name: Install libssl-dev
+ run: sudo apt install libssl-dev
+ - name: "[Release g++] Build & Test"
+ env:
+ CPR_BUILD_TESTS: ON
+ uses: ashutoshvarma/action-cmake-build@master
+ with:
+ build-dir: ${{github.workspace}}/build
+ source-dir: ${{github.workspace}}
+ cc: gcc
+ cxx: g++
+ build-type: Release
+ run-test: true
+ ctest-options: -V
+ configure-options: -DBUILD_SHARED_LIBS=ON
+
+ ubuntu-20-static-gcc-mbedtls:
+ runs-on: ubuntu-20.04
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v3
+ with:
+ submodules: true
+ - name: Update package list
+ run: sudo apt update
+ - name: Install libmbedtls-dev
+ run: sudo apt install libmbedtls-dev
+ - name: "[Release g++] Build & Test"
+ env:
+ CPR_BUILD_TESTS: ON
+ CPR_BUILD_TESTS_SSL: OFF
+ CPR_FORCE_MBEDTLS_BACKEND: ON
+ uses: ashutoshvarma/action-cmake-build@master
+ with:
+ build-dir: ${{github.workspace}}/build
+ source-dir: ${{github.workspace}}
+ cc: gcc
+ cxx: g++
+ build-type: Release
+ run-test: true
+ ctest-options: -V
+ configure-options: -DBUILD_SHARED_LIBS=OFF
+
+ ubuntu-20-shared-gcc-mbedtls:
+ runs-on: ubuntu-20.04
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v3
+ with:
+ submodules: true
+ - name: Update package list
+ run: sudo apt update
+ - name: Install libmbedtls-dev
+ run: sudo apt install libmbedtls-dev
+ - name: "[Release g++] Build & Test"
+ env:
+ CPR_BUILD_TESTS: ON
+ CPR_BUILD_TESTS_SSL: OFF
+ CPR_FORCE_MBEDTLS_BACKEND: ON
+ uses: ashutoshvarma/action-cmake-build@master
+ with:
+ build-dir: ${{github.workspace}}/build
+ source-dir: ${{github.workspace}}
+ cc: gcc
+ cxx: g++
+ build-type: Release
+ run-test: true
+ ctest-options: -V
+ configure-options: -DBUILD_SHARED_LIBS=ON
+
+ ubuntu-20-static-gcc-ssl:
+ runs-on: ubuntu-20.04
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v3
+ with:
+ submodules: true
+ - name: Update package list
+ run: sudo apt update
+ - name: Install libssl-dev
+ run: sudo apt install libssl-dev
+ - name: "[Release g++] Build & Test"
+ env:
+ CPR_BUILD_TESTS: ON
+ uses: ashutoshvarma/action-cmake-build@master
+ with:
+ build-dir: ${{github.workspace}}/build
+ source-dir: ${{github.workspace}}
+ cc: gcc
+ cxx: g++
+ build-type: Release
+ run-test: true
+ ctest-options: -V
+ configure-options: -DBUILD_SHARED_LIBS=OFF
+
+ ubuntu-18-gcc-shared-ssl:
+ runs-on: ubuntu-18.04
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v3
+ with:
+ submodules: true
+ - name: Update package list
+ run: sudo apt update
+ - name: Install libssl-dev
+ run: sudo apt install libssl-dev
+ - name: "[Release g++] Build & Test"
+ env:
+ CPR_BUILD_TESTS: ON
+ uses: ashutoshvarma/action-cmake-build@master
+ with:
+ build-dir: ${{github.workspace}}/build
+ source-dir: ${{github.workspace}}
+ cc: gcc
+ cxx: g++
+ build-type: Release
+ run-test: true
+ ctest-options: -V
+ configure-options: -DBUILD_SHARED_LIBS=ON
+
+ ubuntu-18-gcc-static-ssl:
+ runs-on: ubuntu-18.04
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v3
+ with:
+ submodules: true
+ - name: Update package list
+ run: sudo apt update
+ - name: Install libssl-dev
+ run: sudo apt install libssl-dev
+ - name: "[Release g++] Build & Test"
+ env:
+ CPR_BUILD_TESTS: ON
+ uses: ashutoshvarma/action-cmake-build@master
+ with:
+ build-dir: ${{github.workspace}}/build
+ source-dir: ${{github.workspace}}
+ cc: gcc
+ cxx: g++
+ build-type: Release
+ run-test: true
+ ctest-options: -V
+ configure-options: -DBUILD_SHARED_LIBS=OFF
+
+ ubuntu-18-gcc-shared-ssl-system-curl:
+ runs-on: ubuntu-18.04
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v3
+ with:
+ submodules: true
+ - name: Update package list
+ run: sudo apt update
+ - name: Install libssl-dev
+ run: sudo apt install libcurl4-openssl-dev
+ - name: "[Release g++] Build & Test"
+ env:
+ CPR_BUILD_TESTS: ON
+ uses: ashutoshvarma/action-cmake-build@master
+ with:
+ build-dir: ${{github.workspace}}/build
+ source-dir: ${{github.workspace}}
+ configure-options: -DUSE_SYSTEM_CURL=ON -DBUILD_SHARED_LIBS=ON
+ cc: gcc
+ cxx: g++
+ build-type: Release
+ run-test: true
+ ctest-options: -V
+
+ ubuntu-18-gcc-static-ssl-system-curl:
+ runs-on: ubuntu-18.04
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v3
+ with:
+ submodules: true
+ - name: Update package list
+ run: sudo apt update
+ - name: Install libssl-dev
+ run: sudo apt install libcurl4-openssl-dev
+ - name: "[Release g++] Build & Test"
+ env:
+ CPR_BUILD_TESTS: ON
+ uses: ashutoshvarma/action-cmake-build@master
+ with:
+ build-dir: ${{github.workspace}}/build
+ source-dir: ${{github.workspace}}
+ configure-options: -DUSE_SYSTEM_CURL=ON -DBUILD_SHARED_LIBS=OFF
+ cc: gcc
+ cxx: g++
+ build-type: Release
+ run-test: true
+ ctest-options: -V
+
+ ubuntu-18-gcc-ssl-address-leak-undefined-behavior-sanitizer:
+ runs-on: ubuntu-18.04
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v3
+ with:
+ submodules: true
+ - name: Update package list
+ run: sudo apt update
+ - name: Install libssl-dev
+ run: sudo apt install libssl-dev
+ - name: Install sanitizer
+ run: sudo apt install libasan5 libubsan1 liblsan0 libtsan0
+ - name: "[Release g++] Build & Test"
+ env:
+ CPR_BUILD_TESTS: ON
+ CPR_DEBUG_SANITIZER_FLAG_ALL: ON
+ uses: ashutoshvarma/action-cmake-build@master
+ with:
+ build-dir: ${{github.workspace}}/build
+ source-dir: ${{github.workspace}}
+ cc: gcc
+ cxx: g++
+ build-type: Debug
+ run-test: true
+ ctest-options: -V
+
+ ubuntu-18-gcc-ssl-thread-sanitizer:
+ runs-on: ubuntu-18.04
+ if: ${{ false }} # Disabled for now until all problems are resolved
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v3
+ with:
+ submodules: true
+ - name: Update package list
+ run: sudo apt update
+ - name: Install libssl-dev
+ run: sudo apt install libssl-dev
+ - name: Install sanitizer
+ run: sudo apt install libasan5 libubsan1 liblsan0 libtsan0
+ - name: "[Release g++] Build & Test"
+ env:
+ CPR_BUILD_TESTS: ON
+ CPR_DEBUG_SANITIZER_FLAG_THREAD: ON
+ uses: ashutoshvarma/action-cmake-build@master
+ with:
+ build-dir: ${{github.workspace}}/build
+ source-dir: ${{github.workspace}}
+ cc: gcc
+ cxx: g++
+ build-type: Debug
+ run-test: true
+ ctest-options: -V
+
+ ubuntu-18-clang-shared-ssl:
+ runs-on: ubuntu-18.04
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v3
+ with:
+ submodules: true
+ - name: Update package list
+ run: sudo apt update
+ - name: Install libssl-dev
+ run: sudo apt install libssl-dev
+ - name: "[Release g++] Build & Test"
+ env:
+ CPR_BUILD_TESTS: ON
+ uses: ashutoshvarma/action-cmake-build@master
+ with:
+ build-dir: ${{github.workspace}}/build
+ source-dir: ${{github.workspace}}
+ cc: clang
+ cxx: clang++
+ build-type: Release
+ run-test: true
+ ctest-options: -V
+ configure-options: -DBUILD_SHARED_LIBS=ON
+
+ ubuntu-18-clang-static-ssl:
+ runs-on: ubuntu-18.04
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v3
+ with:
+ submodules: true
+ - name: Update package list
+ run: sudo apt update
+ - name: Install libssl-dev
+ run: sudo apt install libssl-dev
+ - name: "[Release g++] Build & Test"
+ env:
+ CPR_BUILD_TESTS: ON
+ uses: ashutoshvarma/action-cmake-build@master
+ with:
+ build-dir: ${{github.workspace}}/build
+ source-dir: ${{github.workspace}}
+ cc: clang
+ cxx: clang++
+ build-type: Release
+ run-test: true
+ ctest-options: -V
+ configure-options: -DBUILD_SHARED_LIBS=OFF
+
+ windows-msvc-shared-ssl:
+ runs-on: windows-latest
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v3
+ with:
+ submodules: true
+ - name: "[Release msvc] Build & Test"
+ env:
+ CMAKE_GENERATOR: "Visual Studio 17 2022"
+ CPR_BUILD_TESTS: ON
+ CPR_BUILD_TESTS_SSL: OFF
+ uses: ashutoshvarma/action-cmake-build@master
+ with:
+ build-dir: ${{github.workspace}}/build
+ source-dir: ${{github.workspace}}
+ build-type: Release
+ target: ALL_BUILD
+ run-test: true
+ ctest-options: -V
+ configure-options: -DBUILD_SHARED_LIBS=ON
+
+ windows-msvc-shared-winssl:
+ runs-on: windows-latest
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v3
+ with:
+ submodules: true
+ - name: "[Release msvc] Build & Test"
+ env:
+ CMAKE_GENERATOR: "Visual Studio 17 2022"
+ CPR_BUILD_TESTS: ON
+ CPR_BUILD_TESTS_SSL: OFF
+ CPR_FORCE_WINSSL_BACKEND: ON
+ uses: ashutoshvarma/action-cmake-build@master
+ with:
+ build-dir: ${{github.workspace}}/build
+ source-dir: ${{github.workspace}}
+ build-type: Release
+ target: ALL_BUILD
+ run-test: true
+ ctest-options: -V
+ configure-options: -DBUILD_SHARED_LIBS=ON
+
+ windows-msvc-static-ssl:
+ runs-on: windows-latest
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v3
+ with:
+ submodules: true
+ - name: "[Release msvc] Build & Test"
+ env:
+ CMAKE_GENERATOR: "Visual Studio 17 2022"
+ CPR_BUILD_TESTS: ON
+ CPR_BUILD_TESTS_SSL: OFF
+ uses: ashutoshvarma/action-cmake-build@master
+ with:
+ build-dir: ${{github.workspace}}/build
+ source-dir: ${{github.workspace}}
+ build-type: Release
+ target: ALL_BUILD
+ run-test: true
+ ctest-options: -V
+ configure-options: -DBUILD_SHARED_LIBS=OFF
+
+ windows-msvc-shared-openssl:
+ runs-on: windows-latest
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v3
+ with:
+ submodules: true
+ - name: Install OpenSSL
+ run: choco install openssl -y
+ - name: "[Release msvc] Build & Test"
+ env:
+ CMAKE_GENERATOR: "Visual Studio 17 2022"
+ CPR_BUILD_TESTS: ON
+ CPR_FORCE_OPENSSL_BACKEND: ON
+ uses: ashutoshvarma/action-cmake-build@master
+ with:
+ build-dir: ${{github.workspace}}/build
+ source-dir: ${{github.workspace}}
+ build-type: Release
+ target: ALL_BUILD
+ run-test: true
+ ctest-options: -V
+ configure-options: -DBUILD_SHARED_LIBS=ON
+
+ windows-msvc-static-openssl:
+ runs-on: windows-latest
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v3
+ with:
+ submodules: true
+ - name: Install OpenSSL
+ run: choco install openssl -y
+ - name: "[Release msvc] Build & Test"
+ env:
+ CMAKE_GENERATOR: "Visual Studio 17 2022"
+ CPR_BUILD_TESTS: ON
+ CPR_FORCE_OPENSSL_BACKEND: ON
+ uses: ashutoshvarma/action-cmake-build@master
+ with:
+ build-dir: ${{github.workspace}}/build
+ source-dir: ${{github.workspace}}
+ build-type: Release
+ target: ALL_BUILD
+ run-test: true
+ ctest-options: -V
+ configure-options: -DBUILD_SHARED_LIBS=OFF
+
+ macos-clang-shared-openssl:
+ runs-on: macos-latest
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v3
+ with:
+ submodules: true
+ - name: Install OpenSSL
+ run: |
+ brew install openssl
+ echo 'export PATH="/usr/local/opt/openssl@3/bin:$PATH"' >> /Users/runner/.bash_profile
+ source ~/.bash_profile
+ export LDFLAGS="-L/usr/local/opt/openssl@3/lib"
+ export CPPFLAGS="-I/usr/local/opt/openssl@3/include"
+ export PKG_CONFIG_PATH="/usr/local/opt/openssl@3/lib/pkgconfig"
+ - name: "[Release clang++] Build & Test"
+ env:
+ CPR_BUILD_TESTS: ON
+ CPR_BUILD_TESTS_SSL: ON
+ OPENSSL_ROOT_DIR: "/usr/local/opt/openssl@3"
+ OPENSSL_LIBRARIES: "/usr/local/opt/openssl@3/lib"
+ uses: ashutoshvarma/action-cmake-build@master
+ with:
+ build-dir: ${{github.workspace}}/build
+ source-dir: ${{github.workspace}}
+ build-type: Release
+ cc: clang
+ cxx: clang++
+ run-test: true
+ ctest-options: -V
+ configure-options: -DBUILD_SHARED_LIBS=ON
+
+ macos-clang-static-openssl:
+ runs-on: macos-latest
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v3
+ with:
+ submodules: true
+ - name: Install OpenSSL
+ run: |
+ brew install openssl
+ echo 'export PATH="/usr/local/opt/openssl@3/bin:$PATH"' >> /Users/runner/.bash_profile
+ source ~/.bash_profile
+ export LDFLAGS="-L/usr/local/opt/openssl@3/lib"
+ export CPPFLAGS="-I/usr/local/opt/openssl@3/include"
+ export PKG_CONFIG_PATH="/usr/local/opt/openssl@3/lib/pkgconfig"
+ - name: "[Release clang++] Build & Test"
+ env:
+ CPR_BUILD_TESTS: ON
+ CPR_BUILD_TESTS_SSL: OFF
+ OPENSSL_ROOT_DIR: "/usr/local/opt/openssl@3"
+ OPENSSL_LIBRARIES: "/usr/local/opt/openssl@3/lib"
+ uses: ashutoshvarma/action-cmake-build@master
+ with:
+ build-dir: ${{github.workspace}}/build
+ source-dir: ${{github.workspace}}
+ build-type: Release
+ cc: clang
+ cxx: clang++
+ run-test: true
+ ctest-options: -V
+ configure-options: -DBUILD_SHARED_LIBS=OFF
+
+ macos-clang-static-autossl:
+ runs-on: macos-latest
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v3
+ with:
+ submodules: true
+ - name: "[Release clang++] Build & Test"
+ env:
+ CPR_BUILD_TESTS: ON
+ CPR_BUILD_TESTS_SSL: OFF
+ uses: ashutoshvarma/action-cmake-build@master
+ with:
+ build-dir: ${{github.workspace}}/build
+ source-dir: ${{github.workspace}}
+ build-type: Release
+ cc: clang
+ cxx: clang++
+ run-test: true
+ ctest-options: -V
+ configure-options: -DBUILD_SHARED_LIBS=OFF
+
+ macos-clang-static-darwinssl:
+ runs-on: macos-latest
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v3
+ with:
+ submodules: true
+ - name: "[Release clang++] Build & Test"
+ env:
+ CPR_BUILD_TESTS: ON
+ CPR_BUILD_TESTS_SSL: OFF
+ uses: ashutoshvarma/action-cmake-build@master
+ with:
+ build-dir: ${{github.workspace}}/build
+ source-dir: ${{github.workspace}}
+ build-type: Release
+ cc: clang
+ cxx: clang++
+ run-test: true
+ ctest-options: -V
+ configure-options: -DBUILD_SHARED_LIBS=OFF -DCPR_FORCE_DARWINSSL_BACKEND=ON
+
+ macos-clang-static-autossl-boost:
+ runs-on: macos-latest
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v3
+ with:
+ submodules: true
+ - name: Install Boost
+ run: |
+ brew install boost
+ - name: "[Release clang++] Build & Test"
+ env:
+ CPR_BUILD_TESTS: ON
+ CPR_BUILD_TESTS_SSL: OFF
+ CPR_USE_BOOST_FILESYSTEM: ON
+ CMAKE_OSX_DEPLOYMENT_TARGET: 10.13
+ uses: ashutoshvarma/action-cmake-build@master
+ with:
+ build-dir: ${{github.workspace}}/build
+ source-dir: ${{github.workspace}}
+ build-type: Release
+ cc: clang
+ cxx: clang++
+ run-test: true
+ ctest-options: -V
+ configure-options: -DBUILD_SHARED_LIBS=OFF
+
diff --git a/thirdparty/cpr/.github/workflows/clang-format.yml b/thirdparty/cpr/.github/workflows/clang-format.yml
new file mode 100644
index 000000000..2f194b87e
--- /dev/null
+++ b/thirdparty/cpr/.github/workflows/clang-format.yml
@@ -0,0 +1,19 @@
+name: "Test Clang Format"
+
+on: [push, pull_request]
+
+jobs:
+ clang-format:
+ runs-on: ubuntu-latest
+ container: fedora:latest
+ steps:
+ - name: Update package list
+ run: sudo dnf update -y
+ - name: Install dependencies
+ run: sudo dnf install -y openssl-devel cmake git gcc clang ninja-build
+ - name: Install clang-tidy
+ run: sudo dnf install -y clang-tools-extra
+ - name: Checkout
+ uses: actions/checkout@v3
+ - name: Check format
+ uses: RafikFarhad/[email protected] \ No newline at end of file
diff --git a/thirdparty/cpr/.github/workflows/clang-tidy.yml b/thirdparty/cpr/.github/workflows/clang-tidy.yml
new file mode 100644
index 000000000..145fec855
--- /dev/null
+++ b/thirdparty/cpr/.github/workflows/clang-tidy.yml
@@ -0,0 +1,29 @@
+name: "Test Clang Tidy"
+
+on: [push, pull_request]
+
+jobs:
+ clang-tidy:
+ runs-on: ubuntu-latest
+ container: fedora:latest
+ steps:
+ - name: Update package list
+ run: sudo dnf update -y
+ - name: Install dependencies
+ run: sudo dnf install -y openssl-devel cmake git gcc clang ninja-build
+ - name: Install clang-tidy
+ run: sudo dnf install -y clang-tools-extra
+ - name: Checkout
+ uses: actions/checkout@v3
+ - name: "[Release g++] Build & Test"
+ env:
+ CPR_BUILD_TESTS: ON
+ uses: ashutoshvarma/action-cmake-build@master
+ with:
+ build-dir: ${{github.workspace}}/build
+ source-dir: ${{github.workspace}}
+ cc: clang
+ cxx: clang++
+ build-type: Release
+ run-test: false
+ configure-options: -DCPR_ENABLE_LINTING=ON \ No newline at end of file
diff --git a/thirdparty/cpr/.github/workflows/codeql-analysis.yml b/thirdparty/cpr/.github/workflows/codeql-analysis.yml
new file mode 100644
index 000000000..0ecf2fe23
--- /dev/null
+++ b/thirdparty/cpr/.github/workflows/codeql-analysis.yml
@@ -0,0 +1,71 @@
+# For most projects, this workflow file will not need changing; you simply need
+# to commit it to your repository.
+#
+# You may wish to alter this file to override the set of languages analyzed,
+# or to provide custom queries or build logic.
+#
+# ******** NOTE ********
+# We have attempted to detect the languages in your repository. Please check
+# the `language` matrix defined below to confirm you have the correct set of
+# supported CodeQL languages.
+#
+name: "CodeQL"
+
+on:
+ push:
+ branches: [ master ]
+ pull_request:
+ # The branches below must be a subset of the branches above
+ branches: [ master ]
+ schedule:
+ - cron: '25 20 * * 3'
+
+jobs:
+ analyze:
+ name: Analyze
+ runs-on: ubuntu-latest
+ permissions:
+ actions: read
+ contents: read
+ security-events: write
+
+ strategy:
+ fail-fast: false
+ matrix:
+ language: [ 'cpp' ]
+ # CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python' ]
+ # Learn more:
+ # https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#changing-the-languages-that-are-analyzed
+
+ steps:
+ - name: Checkout repository
+ uses: actions/checkout@v3
+
+ # Initializes the CodeQL tools for scanning.
+ - name: Initialize CodeQL
+ uses: github/codeql-action/init@v2
+ with:
+ languages: ${{ matrix.language }}
+ # If you wish to specify custom queries, you can do so here or in a config file.
+ # By default, queries listed here will override any specified in a config file.
+ # Prefix the list here with "+" to use these queries and those in the config file.
+ # queries: ./path/to/local/query, your-org/your-repo/queries@main
+
+ # Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
+ # If this step fails, then you should remove it and run the build manually (see below)
+ - name: Autobuild
+ uses: github/codeql-action/autobuild@v2
+
+ # â„šī¸ Command-line programs to run using the OS shell.
+ # 📚 https://git.io/JvXDl
+
+ # âœī¸ If the Autobuild fails above, remove it and uncomment the following three lines
+ # and modify them (or add more) to build your code if your project
+ # uses a compiled language
+
+ #- run: |
+ # make bootstrap
+ # make release
+
+ - name: Perform CodeQL Analysis
+ uses: github/codeql-action/analyze@v2
diff --git a/thirdparty/cpr/.github/workflows/cppcheck.yml b/thirdparty/cpr/.github/workflows/cppcheck.yml
new file mode 100644
index 000000000..5834f37e6
--- /dev/null
+++ b/thirdparty/cpr/.github/workflows/cppcheck.yml
@@ -0,0 +1,27 @@
+name: "Test cppcheck"
+
+on: [push, pull_request]
+
+jobs:
+ cppcheck:
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v3
+ with:
+ submodules: true
+ - name: Update package list
+ run: sudo apt update
+ - name: Install cppcheck
+ run: sudo apt install cppcheck
+ - name: "[Release g++] Build"
+ env:
+ CPR_ENABLE_CPPCHECK: ON
+ uses: ashutoshvarma/action-cmake-build@master
+ with:
+ build-dir: ${{github.workspace}}/build
+ source-dir: ${{github.workspace}}
+ cc: gcc
+ cxx: g++
+ build-type: Release
+ run-test: false \ No newline at end of file