Commit Graph

116 Commits

Author SHA1 Message Date
Chris Thrasher
7bb97a85b1 Compile unit tests for iOS and Android
While you can't easily run these unit tests, it's easy enough to
still compile them so we don't need to go out of way to prohibit
this. CMake has some support for running tests on the target OS
so perhaps in the future we find a compelling way to run the test
suite on a mobile OS.
2024-04-13 11:49:45 -06:00
Lukas Dürrenberger
8ccf534993 Revert disabling brew update 2024-04-12 10:25:35 -06:00
binary1248
7e1765717a Fixed coverage data not being collected for MinGW builds because OpenCPPCoverage relies on pdb data being available. 2024-04-11 17:32:24 -06:00
Chris Thrasher
b17150d3c0 Disable code coverage upload in forks 2024-04-11 16:08:32 -06:00
binary1248
90fb07066b Replaced Codecov with Coveralls. 2024-04-11 10:46:27 -06:00
Lukas Dürrenberger
a742b2158f Allow failure of coverage uploads due to rate limits 2024-04-10 23:40:32 +02:00
Lukas Dürrenberger
2b6194a632 Switch back to Codecov GitHub Action with our own token 2024-04-10 23:40:32 +02:00
Chris Thrasher
544a9a8a79 Remove redundant line 2024-03-29 09:58:44 -05:00
Chris Thrasher
2a48b34386 Upgrade CI actions to fix deprecation warnings 2024-02-20 14:28:18 -07:00
Lukas Dürrenberger
e50f7b9759 Add a macOS arm64 build to CI pipeline 2024-02-17 01:38:33 +00:00
Chris Thrasher
32a5440bb8 Fix CI deprecation warnings 2024-02-16 02:08:34 +00:00
Chris Thrasher
1e6eaa5d91 Disable display tests in OpenGL ES CI jobs 2024-02-15 23:40:46 +00:00
vittorioromeo
f3d5762a17 Add static PCH CI jobs for Windows/Linux 2024-02-09 12:52:37 +01:00
Bruno Van de Velde
9cd703aa10 Update location of sdkmanager for Android builds 2024-01-14 15:34:14 -07:00
Bruno Van de Velde
4665d5554a Build the android example in CI 2023-11-14 16:04:30 -07:00
Chris Thrasher
39ba64cfc6 Upgrade to Android NDK r24 2023-11-08 17:13:55 -07:00
binary1248
4fce7e4991 Embed MSVC debugging information when building using a compiler launcher in order to allow ccache to cache compiler output when running a CI workflow. 2023-11-07 10:31:00 -07:00
Chris Thrasher
9b223b45a5 Remove references to C compilers 2023-11-06 11:57:47 -07:00
binary1248
2a8a01ca6c Perform the majority of GitHub Actions workflow MSVC building using Ninja with the exception of ClangCL+MSBuild. 2023-11-05 21:53:58 +01:00
binary1248
ea6cf002b6 Added support for running the GitHub actions workflow using CCache. 2023-11-04 00:37:18 -06:00
Chris Thrasher
9a8ca3227f Add UBsan to CI 2023-10-27 16:36:38 -06:00
Chris Thrasher
0512748fce Run clang-tidy on OpenGL ES codepaths 2023-10-26 22:11:59 -06:00
Chris Thrasher
0de21b8ce3 Promote Windows Unity build jobs to main CI matrix 2023-10-16 13:45:01 -05:00
Chris Thrasher
4ff0dabba3 Promote Windows OpenGL ES jobs to main CI matrix 2023-10-16 13:45:01 -05:00
Chris Thrasher
12439919c7 Promote Linux OpenGL ES jobs to main CI matrix 2023-10-16 13:45:01 -05:00
Chris Thrasher
bdd6ad5145 Promote DRM jobs to main CI matrix 2023-10-16 13:45:01 -05:00
Chris Thrasher
fb88d1a8b3 Set Bash as the default shell 2023-10-09 00:22:34 -06:00
binary1248
25bb6637eb Cache packages downloaded when GitHub actions workflow is run. 2023-10-08 16:48:53 -06:00
binary1248
90ebf68ba3 Added GitHub Actions jobs to build with OpenGL ES on Linux GCC. 2023-10-08 12:13:41 -06:00
Chris Thrasher
e638d7a5e9 Simplify how tests are automatically re-ran in CI
The flakiness is theoretically limited to Linux where we have to
use xvfb-run in CI. Because the tests are ran on Linux via ctest
we can more easily use CTest's built-in support for rerunning
failed tests. We have yet to actually observe this flakiness after
the other changes added in #2474 so it's possible the flakiness
has been entirely addressed.

While I was at it I de-duplicated some code for printing OpenGL
information.
2023-10-05 16:56:05 -06:00
binary1248
e1fe3fdb06 Manually install MinGW when running GitHub Actions workflows. 2023-10-04 18:31:38 +02:00
Chris Thrasher
793ee75873 Only install MinGW when necessary
Installing MinGW 11 takes way too long to tolerate doing this in
all Windows jobs.
2023-10-03 02:42:22 +02:00
Chris Thrasher
9d1d9cde33 Remove Intel oneAPI CI jobs
These started spontaneously failing due to some Debian package
repository key issues.

https://github.com/SFML/SFML/actions/runs/6365368228/job/17282319034#step:6:40
2023-10-01 21:39:58 +02:00
Chris Thrasher
cc147e5827 Install an older version of MinGW
Version 12 changes to URCT instead of MSVCRT which causes linker
issues with all the prebuilt MinGW binaries. This is still a liability
that will have to eventually be fixed.
2023-09-30 18:50:10 -06:00
Chris Thrasher
732115820b Revert "Disable MinGW jobs until linker errors are addressed"
This reverts commit 3acb69e347.
2023-09-30 18:50:10 -06:00
Chris Thrasher
3acb69e347 Disable MinGW jobs until linker errors are addressed
See https://github.com/SFML/SFML/issues/2700
2023-09-22 14:46:27 -06:00
Chris Thrasher
739129d009 Install Ninja in CI
https://github.com/actions/runner-images/issues/8343#issuecomment-1727810519

Ninja's presence in the Windows images was due to it being a
transitive dependency of another packages. It was never guaranteed
to be present. The actions/runner-images devs do not plan on adding
it so we're forced to install it ourselves.
2023-09-22 14:46:27 -06:00
Chris Thrasher
3a0d074b2f Remove trailing whitespace
Some of these files either aren't processed by clang-format or the
trailing whitespace existed within blocks of code where we disabled
clang-format.
2023-09-19 13:30:27 -06:00
Chris Thrasher
910514871e Remove unnecessary CI step
clang-format is already installed in GitHub's Ubuntu image
2023-09-18 09:06:35 -06:00
Chris Thrasher
a71d6bc078 Revert "Disable faulty Windows Clang job"
This reverts commit bbb6f60dda.
2023-09-09 00:17:08 -06:00
Chris Thrasher
1811951b4a Allow for shared libs on iOS 2023-09-05 16:04:20 -06:00
Chris Thrasher
d7ab9208be Add tests for sf::RenderTexture
The generateMipmap test was failing because I forgot to enable MESA
in the MinGW Static Standard Library job.
2023-09-05 10:58:14 -06:00
Chris Thrasher
bbb6f60dda Disable faulty Windows Clang job
The problem is that the Windows CI image hasn't yet be updated to
Clang 16. See this PR for progress on fixing it

https://github.com/actions/runner-images/pull/8134

This has been merged but we still have to wait for the changes to
propogate to all runners.
2023-08-26 21:09:31 -06:00
Chris Thrasher
962e6ed972 Default to building static libraries
See https://github.com/SFML/SFML/issues/2389 for full rationale
2023-08-23 09:17:43 -06:00
Chris Thrasher
10bd1ffeba Remove $GITHUB_WORKSPACE where not needed 2023-08-12 12:10:46 -06:00
Chris Thrasher
157feec05d Simplify CI with CMake presets 2023-08-11 15:25:14 -06:00
Chris Thrasher
5c41a7c6bb Test SFML_USE_STATIC_STD_LIBS 2023-08-11 14:57:10 -06:00
Chris Thrasher
3d63de9a21 Add iOS clang-tidy job 2023-08-04 11:16:20 -06:00
Chris Thrasher
b99a4e341e Add Android clang-tidy job 2023-07-31 15:28:25 -06:00
Chris Thrasher
ddfb7f6cb0 Use modern name for macOS
In a few places I left references to the old name where appropriate.
There are also many CMake references to "OSX" that we have to keep
using since CMake does not offer alternative names for those variables
and target properties.
2023-07-24 21:25:26 -06:00