54 Commits
Author SHA1 Message Date
Oliver Hamlet ec93abaaf4 Update CI Cargo caching config
The target directory doesn't exist, so there's no point listing it. The two files added are used by "cargo install" to track what's been installed.
2025-06-07 13:40:31 +01:00
Oliver Hamlet dde8942c22 Revert "Remove cargo caching in CI"
This reverts commit 072c62e55d.
2025-06-07 13:09:22 +01:00
Oliver Hamlet c8adf5d702 Update Windows CI to windows-2025
windows-2019 will be fully retired by the end of June, and 2025 is the latest version.

This means that Windows build artifacts will be built using MSVC 2022, not MSVC 2019. They should be ABI-compatible across this change, since they expose no third-party types and Microsoft say that their compiler and standard library didn't break ABI between 2019 and 2022, but a newer version of the redistributable might be needed.
2025-06-07 12:55:50 +01:00
Oliver Hamlet 072c62e55d Remove cargo caching in CI
It didn't work because it didn't have the right target directories listed, but even with the right directories it wouldn't work because they get wiped by CMake when it starts building.
2025-05-12 21:42:44 +01:00
Oliver Hamlet 9b8b01bb80 Only install Rust i686-pc-windows-msvc target when it's needed 2025-05-12 21:34:23 +01:00
Oliver Hamlet c6747a85c8 Use uv to manage docs Python dependencies
UV's use of a lockfile makes building the docs more reliable, and it installs the dependencies faster too (though in CI that's largely hidden by having to install Doxygen every time).
2025-05-12 17:21:58 +01:00
Oliver Hamlet 21d86a328f Configure CPack to use all available threads
It doesn't have any effect with the 7Z generator that's used on Windows, but I've added it for Windows anyway in case that changes in a future version of CMake.
2025-05-12 08:54:20 +01:00
Oliver Hamlet f29f6cd0f6 Update Breathe to v4.36.0
The new version of Breathe requires Doxygen v1.9.2+, so also upgrade
Doxygen in the Windows CI builds.
2025-05-12 08:42:55 +01:00
Oliver Hamlet e2ed8a01b1 CMake build with --parallel in GitHub Actions 2025-05-11 17:32:13 +01:00
Oliver Hamlet 2af6f26580 Update esplugin to v6.1.3
This requires an update to cbindgen to handle some newer syntax (C
string literals).
2025-04-30 08:39:03 +01:00
Oliver Hamlet 7abfc66f8c Run tests in parallel in CI 2025-01-15 19:01:06 +00:00
Oliver Hamlet 1f4d43a49f Adapt build to CMake's CMP0167 policy
This is a little awkward because libloot only needs Boost's headers, but it doesn't supply a CMake config unless it's built, so we build the system stub to make that happen as quickly as possible.
2025-01-15 18:31:58 +00:00
Oliver Hamlet 1e57ea1a39 Tweak how CMake is run in CI 2025-01-15 18:21:51 +00:00
Oliver Hamlet 9b6ec47709 Use ctest to run tests in CI 2025-01-15 18:17:31 +00:00
Oliver Hamlet 9dd391d65d Remove Linux release CI job
The build was run to prove it works, but that happens in the CI job anyway, so it's just a maintenance burden.
2025-01-13 19:18:33 +00:00
Oliver Hamlet e0301302aa Install ICU from package repositories in CI
Now that the Linux release builds are no longer published, there's no real need to depend on a specific different version.
2025-01-13 19:05:40 +00:00
Oliver Hamlet 65f8bcd410 Update CI cargo cache config 2025-01-13 19:05:40 +00:00
Oliver Hamlet 0c4bc2f59a Migrate Linux CI to the ubuntu-24.04 GitHub Actions runner
The ubuntu-20.04 runner is due to be deprecated on 2025-02-01 and
unsupported by 2025-04-01.

The ubuntu-24.04 runner does not include cbindgen, so it's now installed
using apt.

GCC 10 doesn't support the newer libtbb that is in Ubuntu 24.04's apt
repositories, so update to GCC 13.

The behaviour of std::filesystem::equivalent changed at some point
between GCC 10 and GCC 13, so the tests have been updated to reflect
that.
2025-01-13 19:03:26 +00:00
Oliver Hamlet 6bc2189cc5 Update Boost to 1.87.0
Also update the download URL as downloads seem to no longer be hosted on JFrog.
2025-01-05 11:59:40 +00:00
Oliver Hamlet 32db24e1c8 Don't upload Linux release archives
Run the build to prove it works, but don't publish the archive because LOOT no longer needs it, and it's not very portable to other Linux distributions or versions of Ubuntu, and people might try to use it instead of building from source.
2024-11-18 21:10:21 +00:00
Oliver Hamlet 2be17d80e9 Fix Linux workflows 2024-08-09 21:17:18 +01:00
Oliver Hamlet 6dbe751727 Update GitHub Actions to fix warnings 2024-04-28 18:35:17 +01:00
Oliver Hamlet 6821994248 Update Boost to 1.83.0 2023-09-30 15:21:31 +01:00
Oliver Hamlet cc44fda875 Fix Linux release build 2023-09-13 10:03:52 +01:00
Oliver Hamlet 26519efa44 Update ICU to v71.1
This is so that LOOT can be packaged as a Flatpack package that uses the
KDE runtime's ICU libraries, which are v71.1, and so avoid bundling
a different version.
2023-08-18 08:22:12 +01:00