aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIvan Zhakov <ivan@apache.org>2024-09-15 14:04:07 +0000
committerIvan Zhakov <ivan@apache.org>2024-09-15 14:04:07 +0000
commitcc32a24062b5112bc160f170eac3fcbb8225f95d (patch)
treeb40b855e324475ddff0009174c22630e4178f5be
parentd5d705a13105b92bc4f0e36751136f4ea36ceb7d (diff)
downloadapr-cc32a24062b5112bc160f170eac3fcbb8225f95d.tar.gz
apr-cc32a24062b5112bc160f170eac3fcbb8225f95d.zip
.github/workflows/windows.yml: Explicitly list interested configurations.
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1920677 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--.github/workflows/windows.yml113
1 files changed, 104 insertions, 9 deletions
diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml
index 5784cd282..f47122f4d 100644
--- a/.github/workflows/windows.yml
+++ b/.github/workflows/windows.yml
@@ -11,15 +11,99 @@ jobs:
build:
strategy:
matrix:
- os: [windows-latest]
- build-type: [Debug, Release]
- generator: [ "Visual Studio 17 2022" ]
- arch: [ "Win32", "x64" ]
- toolset: [ "v143", "v142" ]
- build-shared: [ "ON", "OFF" ]
+ include:
+ - name: Default
+ os: windows-latest
+ triplet: x64-windows
+ arch: x64
+ build-type: Debug
+ generator: "Visual Studio 17 2022"
+ build-shared: ON
+ dso-build: ON
+ packages: expat
+ - name: Default x86
+ os: windows-latest
+ triplet: x86-windows
+ arch: x86
+ build-type: Debug
+ generator: "Visual Studio 17 2022"
+ build-shared: ON
+ dso-build: ON
+ packages: expat
+ - name: Use Libxml2
+ os: windows-latest
+ triplet: x64-windows
+ arch: x64
+ build-type: Debug
+ generator: "Visual Studio 17 2022"
+ build-shared: ON
+ dso-build: ON
+ packages: libxml2
+ config: >-
+ -DAPU_USE_XMLITE=OFF
+ -DAPU_USE_EXPAT=OFF
+ -DAPU_USE_LIBXML2=ON
+ - name: Use XmlLite
+ os: windows-latest
+ triplet: x64-windows
+ arch: x64
+ build-type: Debug
+ generator: "Visual Studio 17 2022"
+ build-shared: ON
+ dso-build: ON
+ packages: libxml2
+ config: >-
+ -DAPU_USE_XMLITE=ON
+ -DAPU_USE_EXPAT=OFF
+ -DAPU_USE_LIBXML2=OFF
+ - name: Shared (no DSO)
+ os: windows-latest
+ triplet: x64-windows
+ arch: x64
+ build-type: Debug
+ generator: "Visual Studio 17 2022"
+ build-shared: ON
+ dso-build: OFF
+ packages: expat
+ - name: Minimal
+ os: windows-latest
+ triplet: x64-windows
+ arch: x64
+ build-type: Debug
+ generator: "Visual Studio 17 2022"
+ build-shared: ON
+ dso-build: OFF
+ packages: expat
+ config: >-
+ -DAPU_HAVE_ODBC=OFF
+ -DAPU_HAVE_SQLITE3=OFF
+ -DAPU_HAVE_CRYPTO=OFF
+ - name: ODBC + Sqlite3 + Crypto + Iconv
+ os: windows-latest
+ triplet: x64-windows
+ arch: x64
+ build-type: Debug
+ generator: "Visual Studio 17 2022"
+ build-shared: ON
+ dso-build: OFF
+ packages: expat sqlite3 openssl libiconv
+ config: >-
+ -DAPU_HAVE_ODBC=ON
+ -DAPU_HAVE_SQLITE3=ON
+ -DAPU_HAVE_CRYPTO=ON
+ -DAPU_HAVE_ICONV=ON
+ - name: Static
+ os: windows-latest
+ triplet: x64-windows-static
+ arch: x64
+ build-type: Debug
+ generator: "Visual Studio 17 2022"
+ build-shared: OFF
+ dso-build: OFF
+ packages: expat
fail-fast: false
-
- name: "MSVC ${{ matrix.toolset }} ${{ matrix.arch }} [${{ matrix.build-type }}] build-shared=${{ matrix.build-shared }} on ${{ matrix.os }}"
+
+ name: ${{ matrix.name }}
# The CMake configure and build commands are platform agnostic and should work equally well on Windows or Mac.
# You can convert this to a matrix build if you need cross-platform coverage.
# See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix
@@ -31,7 +115,18 @@ jobs:
- name: Configure CMake
# Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make.
# See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type
- run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{ matrix.build-type }} -DAPR_BUILD_TESTAPR=ON -DBUILD_SHARED_LIBS=${{ matrix.build-shared }} -G "${{ matrix.generator }}" -A ${{ matrix.arch }} -T ${{ matrix.toolset }}
+ run: >-
+ cmake -B ${{github.workspace}}/build
+ -G "${{ matrix.generator }}"
+ -A ${{ matrix.arch }}
+ -T ${{ matrix.toolset }}
+ -DCMAKE_BUILD_TYPE=${{ matrix.build-type }}
+ -DBUILD_SHARED_LIBS=${{ matrix.build-shared }}
+ -DAPR_MODULAR_DSO=${{ matrix.dso-build }}
+ -DAPR_BUILD_TESTAPR=ON
+ -DCMAKE_TOOLCHAIN_FILE=C:/vcpkg/scripts/buildsystems/vcpkg.cmake
+ -DVCPKG_TARGET_TRIPLET=${{ matrix.triplet }}
+ ${{ matrix.config }}
- name: Build
# Build your program with the given configuration