Rangi
4e87f61656
Edit some comments and formatting in testing.yml for consistency
2026-07-29 22:08:21 -04:00
Rangi
9d854114ea
Use Ninja as the generator for CMake on FreeBSD
2026-07-30 02:33:47 +02:00
Rangi
70d8d67ffc
Run external tests for FreeBSD ( #2035 )
...
This requires aliasing `make` to `gmake` and `python` to `python3`
2026-07-29 19:45:07 -04:00
Rangi
4350a3252d
Upgrade FreeBSD testing from 14.3 to 15.1
2026-07-10 23:14:39 -04:00
Rangi
a383bec96e
Rename install_deps.sh to install-deps.sh for consistency
2026-07-10 23:12:49 -04:00
ISSOtm
3eb8c7e8f2
Let tests know they are being run under Cygwin
2026-07-05 20:58:50 -04:00
Rangi
189c679e13
Parallelize build jobs according to CPU count
2026-07-05 20:58:50 -04:00
ISSOtm
b12eac356e
Try to automatically determine the test OS name
2026-07-02 10:39:59 -04:00
ISSOtm
04b9c7fa3d
Move external tests files to tests/external/
2026-07-02 10:39:59 -04:00
37818a1847
Updates actions/checkout from 6 to 7 ( #1999 )
...
---------
Signed-off-by: dependabot[bot] <[email protected] >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Rangi <[email protected] >
2026-07-01 23:06:12 -04:00
Rangi
b252877b05
Comment why we use Ninja as the generator for CMake
2026-06-28 17:38:50 -04:00
Rangi
22a3625144
Explicitly test installation with Make and CMake ( #1992 )
2026-06-28 17:31:24 -04:00
Eldred Habert and Rangi
6cba5518e9
Install Pillow together with the rest of our CI deps ( #1952 )
...
We shouldn't assume how the user wants to install things.
In particular, `--break-system-packages` is egregious.
---------
Co-authored-by: Rangi <[email protected] >
2026-06-28 13:06:40 -04:00
Rangi
728bed39d5
Do not support GCC 9 ( #1978 )
...
This will let us use C++20 features that GCC 9's experimental
C++20 support did not yet cover, such as "concepts".
This reverts some commits:
- 6bcd79b997
- d5ce5329ea
- 728d14879b
2026-05-22 16:46:46 -04:00
Eldred Habert
1871b0a0b8
Use Windows git for checkout's post-job cleanup, not Cygwin's git ( #1953 )
...
This fixes an error from using Cygwin's git in checkout's post-job cleanup
2026-05-21 15:25:29 -04:00
ISSOtm
37d39f91f6
Build using GCC 9 in CI
...
Checking that we don't regress this later.
Ubuntu doesn't package GCC 8, and we don't support it either,
so that is a good compromise for now.
2026-04-26 23:30:59 +02:00
ISSOtm
decc5f7153
Let parallelism be determined automatically
...
Ninja is parallel by default;
however, it is not used on FreeBSD, so we still have to specify it there.
2026-04-20 15:32:54 +02:00
ISSOtm
a3c953ea46
Pass C++ compiler to CMake via env var
...
This is a little terser
2026-04-20 15:32:54 +02:00
ISSOtm
d43049c84d
Imply CMake source dir
...
Shortening our command lines slightly
2026-04-20 15:32:54 +02:00
ISSOtm
b6ff54acc3
Avoid libpng compilation on Windows spamming the Microsoft banner
2026-04-20 15:32:54 +02:00
ISSOtm
71fc449452
Use Ninja on Unix platforms
...
It has nicer UX, only showing full command lines when they fail.
It could also be slightly faster, though I've seen no measurable improvement.
2026-04-20 15:32:54 +02:00
ISSOtm
2502d130eb
Use Ninja on Windows
...
MSBuild is slow, and its output is hard to parse visually
(it's all interwoven, like Make without `--output-sync`).
Since we use CMake anyway, we don't care about the build system.
2026-04-20 15:32:54 +02:00
ISSOtm
a78a268cb4
Pass convenience options to Make invoked via CMake
...
Can't pass them to plain Make invocations,
because we try to be compatible with macOS' old Make.
2026-04-20 15:32:54 +02:00
Eldred Habert
6edac50cc4
Target an even older version of Mac OS X
...
We can, so let's not ask if we should!
More realistically, we can right now so it's nice to mark that we do, but this is subject to be re-evaluated if any later changes conflicts with this.
Note also that this only affects the binaries we distribute with our releases!
It may very well be possible to compile RGBDS on even older versions of Mac OS X if you have the appropriate compiler setup;
we're just not testing it nor offering such binaries ourselves, but third-party packagers are welcome to do so.
(Looking at you, TigerBrew! ;)
2026-04-20 14:33:59 +02:00
Rangi
ac2a022124
Set the Cygwin shell once as a default for its job
2026-04-15 23:54:12 -04:00
Rangi
1249c4ef58
Revert "Set up Cygwin before cloning our repo"
...
This reverts commit aeedfb35a6 .
2026-04-15 21:53:29 -04:00
ISSOtm
aeedfb35a6
Set up Cygwin before cloning our repo
...
Otherwise different Gits set up and tear down the repo,
leading to issues.
2026-04-16 03:16:56 +02:00
ISSOtm
63609871f4
Cache downloaded dependencies for MinGW build also
...
Forgot about you!
2026-04-16 02:56:14 +02:00
ISSOtm
a802bcb320
Switch MinGW building to CMake
...
Automatically grabs and compiles libpng, and avoids having hacky lines in our Makefile
(the compiler specification *should* be orthogonal to the build target!)
Also move the MinGW package install to the `install_deps.sh` script,
to move logic off of the YAML.
2026-04-16 00:57:33 +02:00
ISSOtm
d48d6fe5d9
Bump our macOS CI runners
2026-04-16 00:25:58 +02:00
Eldred Habert
2968bee86f
Run macos-static tests using CTest ( #1947 )
...
We can, so why not? It has benefits.
2026-04-14 01:25:47 +02:00
Eldred Habert and Rangi
463edc3c01
Enable color output in our Linux and macOS CI tests ( #1939 )
...
Co-authored-by: Rangi <[email protected] >
2026-04-13 19:31:01 +02:00
Eldred Habert
65ec1af1e8
Switch macOS static build to CMake ( #1938 )
...
This moves the tortuous flags out of our CI scripts,
and allows us to benefit from the libpng download caching.
2026-04-12 22:26:15 -04:00
Eldred Habert
78281a4aaa
Break down CTest cases into each test suite ( #1931 )
...
This allows parallelising the individual programs'
test suites, which can save a few minutes!
2026-04-12 21:29:12 -04:00
ISSOtm
c6dbec7830
Stop trying to run version test on Cygwin and FreeBSD
...
Fixes #1934
2026-04-12 23:40:39 +02:00
Eldred Habert
123201ecc6
Avoid repeatedly specifying bash as the command shell in CI ( #1926 )
2026-04-10 22:04:16 -04:00
vulcandth
c3b47abcc8
Use CPack for Windows packaging
2026-04-10 18:01:16 +02:00
ISSOtm
ace2f3e613
Document why lib src cache is cross-OS
...
See https://github.com/gbdev/rgbds/pull/1919#discussion_r3048475606
2026-04-08 12:25:43 +02:00
dependabot[bot] and dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
167a7ee80c
Bump the actions group with 6 updates ( #1910 )
...
- Updates `actions/checkout` from 4 to 6
- Updates `docker/login-action` from 3 to 4
- Updates `Chizkiyahu/delete-untagged-ghcr-action` from 5 to 6
- Updates `actions/upload-artifact` from 4 to 7
- Updates `actions/download-artifact` from 4 to 8
- Updates `cygwin/cygwin-install-action` from 4 to 6
Signed-off-by: dependabot[bot] <[email protected] >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-30 21:28:45 -04:00
Rangi
4ce4162da4
A little .yml cleanup
2026-03-30 20:29:06 -04:00
ISSOtm
8025c2ae66
Require uploaded artifacts to be non-empty
...
We can get silent failures otherwise
2026-03-28 11:31:49 +01:00
Eldred Habert
4b69d5cc8a
Fix name of test repo cache used by macos-static ( #1909 )
2026-03-24 09:02:28 -04:00
Eldred Habert
52aa518e20
Enable Git colours in CI
2026-03-24 12:40:34 +01:00
ISSOtm
6b0658fb59
Cache library deps on Windows
...
Besides the immediate performance improvement, reducing
the frequency of downloads should make spurious
failures (network, rate-limiting...) less bothersome.
2026-03-19 20:30:12 +01:00
ISSOtm
91fdfcd179
Specify MSVC architecture using presets
...
Shortens CI command lines slightly,
and documents the requirement.
2026-03-19 20:30:12 +01:00
ISSOtm
5abebcf61f
Specify build type implicitly
...
Again, shortening the CMake command line.
Unfortunately, this doesn't apply to `--install`.
2026-03-19 20:30:12 +01:00
ISSOtm
145473d9bd
Use develop preset on FreeBSD
...
Leak detection is not supported, so we have to disable it.
2026-03-19 20:30:12 +01:00
ISSOtm
7cf330e3f9
Enable CMake parallelism in a central place
...
Shortening command lines is useful
2026-03-19 20:30:12 +01:00
ISSOtm
2e66515096
Invoke CTest directly
...
This allows passing it arguments directly, like `--verbose` here
(which is more appropriate for CI use).
2026-03-19 20:30:12 +01:00
ISSOtm
c93f377bfb
Enable colour diagnostics in CI
...
At least for CMake.
2026-03-19 20:30:12 +01:00