summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Pipping <sebastian@pipping.org>2022-01-01 15:22:26 +0100
committerSebastian Pipping <sebastian@pipping.org>2022-01-01 15:58:47 +0100
commit9470015a1f62f6030415262bf7b990ad0abc5008 (patch)
tree983fcc5b30a909a6441ffe2fcc4116484c3c5579
parent4a0af42c35b5efb45d3bdeb4057543be6f5f3b3b (diff)
downloadlibexpat-git-9470015a1f62f6030415262bf7b990ad0abc5008.tar.gz
Actions: Check for realistic minimum CMake version requirementactions-cover-cmake-required-version
-rw-r--r--.github/workflows/cmake-required-version.yml72
-rw-r--r--expat/Changes3
2 files changed, 75 insertions, 0 deletions
diff --git a/.github/workflows/cmake-required-version.yml b/.github/workflows/cmake-required-version.yml
new file mode 100644
index 00000000..5b77e9ab
--- /dev/null
+++ b/.github/workflows/cmake-required-version.yml
@@ -0,0 +1,72 @@
+# __ __ _
+# ___\ \/ /_ __ __ _| |_
+# / _ \\ /| '_ \ / _` | __|
+# | __// \| |_) | (_| | |_
+# \___/_/\_\ .__/ \__,_|\__|
+# |_| XML parser
+#
+# Copyright (c) 2022 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: Ensure realistic minimum CMake version requirement
+
+on:
+ pull_request:
+ push:
+ schedule:
+ - cron: '0 2 * * 5' # Every Friday at 2am
+
+jobs:
+ checks:
+ name: Ensure realistic minimum CMake version requirement
+ runs-on: ubuntu-20.04
+ steps:
+ - uses: actions/checkout@v2.4.0
+
+ - name: Install ancient CMake
+ run: |
+ set -ux
+
+ needed_cmake_version="$(sed -n 's/cmake_minimum_required(VERSION \(.*\))/\1/p' expat/CMakeLists.txt)"
+
+ installer_filename="cmake-${needed_cmake_version}-linux-x86_64.sh"
+ download_url="https://github.com/Kitware/CMake/releases/download/v${needed_cmake_version}/${installer_filename}"
+ wget --no-verbose "${download_url}"
+
+ chmod +x "${installer_filename}"
+ mkdir ~/.local/
+
+ ./"${installer_filename}" --prefix="${HOME}"/.local/ --skip-license
+
+ hash cmake # or the running shell will keep using the cached old location
+ present_cmake_version="$(cmake --version | sed -n 's/cmake version \(.*\)/\1/p')"
+ [[ ${present_cmake_version} = ${needed_cmake_version} ]]
+
+ - name: Build libexpat using ancient CMake
+ run: |
+ set -ux
+ mkdir expat/build
+ cd expat/build
+ cmake --version
+ cmake ..
+ make VERBOSE=1 all test install DESTDIR="${PWD}/ROOT/"
+ find ROOT/ -not -type d | sort
diff --git a/expat/Changes b/expat/Changes
index 45334300..2cfb5ecd 100644
--- a/expat/Changes
+++ b/expat/Changes
@@ -7,6 +7,9 @@ Release x.x.x xxx xxxxxxxx xx xxxx
#535 CMake: Make call to file(GENERATE [..]) work for CMake <3.19
#527 #528 Address compiler warnings
+ Infrastructure:
+ #536 CI: Check for realistic minimum CMake version
+
Release 2.4.2 Sun December 19 2021
Other changes:
#509 #510 Link againgst libm for function "isnan"