Commit Graph

39 Commits

Author SHA1 Message Date
Chris Thrasher
7ee2173aca
Update CI image to macOS 14 2024-03-12 12:47:55 -06:00
Martin Jeřábek
7677c1658e ci: add clang-tidy run 2024-03-01 21:24:45 +01:00
Devon Adair
62d4aecb8c
Conan v2 (#2805)
* Removed Conan1 build.py file using conan package tools that are no longer supported

* Working conan 1 and 2 build with the test package. 

updated the test_package to be updated to conan 2 and fixed missing cmake. Still need to check that the license file is packaged up and that the packages look identical before the changes

* Removing debug prints and the license check that isn't working yet

* Working license file copied over as it was before

* Migrated the properties of cpp_info to conan 2. Keeping conan 1 support by checking the version of conan

https://docs.conan.io/1/migrating_to_2.0/properties.html

* Revert "Removed Conan1 build.py file using conan package tools that are no longer supported"

This reverts commit a606d1dfe6.

* Need to add a set_version to parse the version from CMakeLists.txt

Adding a package build yaml to ensure conan keeps building on 1 and 2

* Setting lowercase catch2 for pkg_config and cmake_target_name

* Fixing the namespace for conan file cmake_target_name
2024-02-17 16:42:44 +01:00
Martin Hořeňovský
bbba3d8a06
Disable CI for GCC 5 and 6
They can't compile the new constexpr decomposer because
`ITransientExpression` has a defaulted virtual destructor. We could
instead drop the virtual destructor - it only exists to silence
static analysis tools complaining about having virtual functions
without virtual destructor - but GCC 5 and 6 are positively ancient,
so we drop them instead.
2024-02-11 14:36:17 +01:00
Martin Hořeňovský
658acee86e
Run tests on all cores in GHA jobs 2024-01-15 14:22:45 +01:00
Martin Hořeňovský
d1d7414eb9
Always run apt-get update before apt-get install
The base images for GitHub Actions are updated weekly, but
sometimes that is not enough to be able to install the packages
we require. The recommended fix for this is to always run
`apt-get update` before `apt-get install`.
2023-12-09 12:05:45 +01:00
Krzysiek Karbowiak
01cac90c62
Bump up actions/checkout version to v4 (#2760) 2023-11-09 10:31:49 +01:00
Krzysiek Karbowiak
b735dfce2d
Increase build parallelism on macOS (#2759)
Co-authored-by: Martin Hořeňovský <martin.horenovsky@gmail.com>
2023-11-07 22:17:47 +01:00
Martin Hořeňovský
c8363143e7
Add test scaffolding for catch_discover_tests 2023-06-14 21:14:33 +02:00
Martin Hořeňovský
72b60dfd28
Cleanup the Windows GHA builds
* Use CMD as the shell and simplify configure/build steps
* Include plaform in the build name
2022-12-30 23:58:05 +01:00
Martin Hořeňovský
77fbacb03f
Add VS 2019-2022 C+14/17 jobs to GHA
For now I added only the basic build matrix, without coverage
collection and more special builds, like WMAIN.

However, due to GHA being so much faster than AppVeyor, all
these builds are now done against the 'all-tests' prefix, making
the builds more uniform than they were on AppVeyor.
2022-12-16 22:34:33 +01:00
Martin Hořeňovský
2d7be1f7de
Add Clang-10 and GCC-10 C++20 builds 2022-11-22 16:17:18 +01:00
Vertexwahn
41990e0fe6
Fix Bazel build (#2563)
Also adds a CI job for Bazel build to avoid future breakage.
2022-11-11 16:54:22 +01:00
Martin Hořeňovský
0a1b0ae9d1
Meson build fixes
* Add missing files to `tests/meson.build`
* Rename meson build workflows to be more easily identifiable
2022-11-04 19:24:36 +01:00
Martin Hořeňovský
272bed081e
Set CMAKE_CXX_STANDARD_REQUIRED=ON in Github Action builds 2022-10-29 21:05:02 +02:00
Martin Hořeňovský
e94976ec9c
Downgrade MacOS version in GHA 2022-10-15 13:06:50 +02:00
Mike Crowe
4db8b50aab
Add support for building with Meson (#2530)
The Meson[1] build system makes it easier incorporate third-party
libaries into a project if they also build using Meson.

Let's add a minimal Meson build that's compatible with the CMake build,
along with a GitHub workflow to check that it builds and that at least
the simplest SelfTest runs.

The handling of catch_user_config.hpp is inspired by BUILD.bazel and
doesn't attempt to support any configuratons options. Such features
could be added later.

Meson strongly discourages using wildcards to specify sources, so the
source and header lists are copied from CMakeLists.txt.

Add a new test workflow to test the Meson builds. I was unable to get
these tests to pass with Ubuntu 20.04, so they use Ubuntu 22.04.

I'm neither a CMake nor a Meson expert, but the results seem to work for
me.

[1] https://mesonbuild.com/

Co-authored-by: Mike Crowe <mcrowe@brightsign.biz>
2022-10-01 23:28:30 +02:00
Dimitrij Mijoski
c75430834d Add GCC 5 and GCC 6 to CI 2022-09-15 13:40:16 +02:00
Martin Hořeňovský
a118799631
Switch MacOS image to macos-12 in Github Actions
Also updated GCC version to GCC-11, which is packaged in the
runner image.
2022-08-03 23:54:49 +02:00
Martin Hořeňovský
c2bc321607
Add pipeline running tests under Valgrind to GitHub Action 2022-04-24 13:34:50 +02:00
Martin Hořeňovský
ea9029c478
Fix pkg list name in CMake config workflow 2022-04-24 13:34:36 +02:00
Martin Hořeňovský
72f0372664
Add tests for CMake configure toggles passing to Catch2 build 2022-02-20 19:32:30 +01:00
Martin Hořeňovský
96790b1d23
Always install the used compiler in Github Actions
This avoids the CI breaking again when the base images remove
an older compiler again.
2021-05-28 11:30:06 +02:00
Martin Hořeňovský
2cb5210caf
Fix and improve GitHub Actions CI
* Fixed problem with older compilers by explicitly installing the
  right compiler version.
* Split apart simple builds that can be well described by a build
  matrix, and builds that need special CMake defines or similar
  special snowflake handling.
* Ported some extras + examples builds from TravisCI to GitHub
  Actions.
2021-04-30 23:26:28 +02:00
Martin Hořeňovský
749d953712
Add Clang 10 + C++17 build to linux CI 2021-02-20 22:26:22 +01:00
Martin Hořeňovský
4b50b13970
Disable C++ extensions for linux CI builds 2021-02-20 20:39:23 +01:00
Martin Hořeňovský
29050daec0
Add Linux and Windows CI builds with surrogate TUs 2021-02-19 23:23:00 +01:00
Martin Hořeňovský
c787b1edc9
Make Linux builds print stdout on ctest test failure 2020-12-15 09:58:19 +01:00
Martin Hořeňovský
230f23e6ee
Add more Clang builds to github actions 2020-11-29 10:22:21 +01:00
Martin Hořeňovský
88504e5332
Use Ubuntu-20.04 runner for running header guard validation
Using `ubuntu-latest` is triggering warning that it will soon migrate
from 18.04 to 20.04, so I am migrating preventively.
2020-11-28 23:09:10 +01:00
Martin Hořeňovský
4da0c18526
C++17 Mac builds 2020-11-28 21:13:00 +01:00
Martin Hořeňovský
1d746a15ac
Move Examples and ExtraTests Mac builds to Github Actions 2020-11-28 21:03:38 +01:00
Martin Hořeňovský
f30a9e3feb
Move some Mac builds from Travis to GitHub Actions 2020-11-28 17:47:26 +01:00
Martin Hořeňovský
0442229dc9
Start using GitHub actions for Linux builds
For now we switched only some of the builds, those that do not
need manually installed compiler packages to function.
2020-11-28 11:13:16 +01:00
Martin Hořeňovský
0fa133a0c5
Run checking scripts directly 2020-11-10 15:25:52 +01:00
Martin Hořeňovský
447b39cae0
Better names for misc-checks workflow steps 2020-11-10 15:25:24 +01:00
George Xanthakis
d913837a5d
Adds license check in CI 2020-11-10 00:51:24 +02:00
George Xanthakis
39e13bf530
Adds duplication check for source files in CI 2020-11-07 21:35:41 +02:00
Martin Hořeňovský
2baa472bcc
Add GitHub action to check that include guards use standard pattern
Based on work by @innerout, but finished and merged by me, because
the GitHub action refused to run for him.

Closes #2075
Closes #2091
2020-11-06 21:36:31 +01:00