mirror of
https://github.com/libexpat/libexpat.git
synced 2026-01-31 03:45:50 +00:00
Bumps [actions/checkout](https://github.com/actions/checkout) from 4.3.0 to 5.0.0.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](08eba0b27e...08c6903cd8)
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-version: 5.0.0
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
117 lines
3.9 KiB
YAML
117 lines
3.9 KiB
YAML
# __ __ _
|
|
# ___\ \/ /_ __ __ _| |_
|
|
# / _ \\ /| '_ \ / _` | __|
|
|
# | __// \| |_) | (_| | |_
|
|
# \___/_/\_\ .__/ \__,_|\__|
|
|
# |_| XML parser
|
|
#
|
|
# Copyright (c) 2025 Sebastian Pipping <sebastian@pipping.org>
|
|
# Licensed under the MIT license:
|
|
#
|
|
# Permission is hereby granted, free of charge, to any person obtaining
|
|
# a copy of this software and associated documentation files (the
|
|
# "Software"), to deal in the Software without restriction, including
|
|
# without limitation the rights to use, copy, modify, merge, publish,
|
|
# distribute, sublicense, and/or sell copies of the Software, and to permit
|
|
# persons to whom the Software is furnished to do so, subject to the
|
|
# following conditions:
|
|
#
|
|
# The above copyright notice and this permission notice shall be included
|
|
# in all copies or substantial portions of the Software.
|
|
#
|
|
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
|
|
# NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
|
|
# DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
|
# OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
|
# USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
|
|
name: Build on Windows
|
|
|
|
on:
|
|
pull_request:
|
|
push:
|
|
schedule:
|
|
- cron: '0 2 * * 5' # Every Friday at 2am
|
|
workflow_dispatch:
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
windows_build:
|
|
name: Build on Windows (${{ matrix.runs-on }}, ${{ matrix.cmake_platform }}, ${{ matrix.expat_char_type }})
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
include:
|
|
- runs-on: windows-2025
|
|
cmake_build_type: Debug
|
|
cmake_generator: Visual Studio 17 2022
|
|
cmake_platform: Win32
|
|
expat_char_type: char
|
|
expat_dll: libexpatd.dll
|
|
- runs-on: windows-2022
|
|
cmake_build_type: Debug
|
|
cmake_generator: Visual Studio 17 2022
|
|
cmake_platform: x64
|
|
expat_char_type: wchar_t
|
|
expat_dll: libexpatwd.dll
|
|
defaults:
|
|
run:
|
|
shell: bash
|
|
runs-on: "${{ matrix.runs-on }}"
|
|
steps:
|
|
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
|
|
|
- uses: microsoft/setup-msbuild@6fb02220983dee41ce7ae257b6f4d8f9bf5ed4ce # v2
|
|
|
|
- name: Configure
|
|
env:
|
|
cmake_build_type: ${{ matrix.cmake_build_type }}
|
|
cmake_generator: ${{ matrix.cmake_generator }}
|
|
cmake_platform: ${{ matrix.cmake_platform }}
|
|
expat_char_type: ${{ matrix.expat_char_type }}
|
|
run: |-
|
|
cmake_args=(
|
|
-A "${cmake_platform}"
|
|
-G "${cmake_generator}"
|
|
-DCMAKE_BUILD_TYPE="${cmake_build_type}"
|
|
-DEXPAT_CHAR_TYPE="${expat_char_type}"
|
|
-DEXPAT_WARNINGS_AS_ERRORS=ON
|
|
-Wdev
|
|
-Wdeprecated
|
|
)
|
|
set -x
|
|
cd expat
|
|
mkdir build
|
|
cmake -S . -B build "${cmake_args[@]}"
|
|
|
|
- name: Build
|
|
env:
|
|
cmake_build_type: ${{ matrix.cmake_build_type }}
|
|
run: |-
|
|
msbuild_args=(
|
|
-m
|
|
-property:Configuration="${cmake_build_type}"
|
|
)
|
|
set -x
|
|
cd expat/build
|
|
MSBuild.exe "${msbuild_args[@]}" expat.sln
|
|
|
|
- name: Run tests
|
|
env:
|
|
cmake_build_type: ${{ matrix.cmake_build_type }}
|
|
expat_dll: ${{ matrix.expat_dll }}
|
|
run: |-
|
|
ctest_args=(
|
|
--build-config "${cmake_build_type}"
|
|
--output-on-failure
|
|
--parallel 2
|
|
)
|
|
set -x
|
|
cd expat/build
|
|
cp -v "${cmake_build_type}/${expat_dll}" "tests/${cmake_build_type}/"
|
|
ctest "${ctest_args[@]}"
|