Commit graph

25 commits

Author SHA1 Message Date
Andrew Kaster
22d7aa53fa Meta: Tell vcpkg we don't need to build vulkan-loader
Trying to build VulkanLoader from source is a giant headache of
unnecessary packages. Every modern distro has vulkan packages, let's
depend on those instead of trying to build something for both wayland
and X11.
2024-07-07 09:51:29 -06:00
Andrew Kaster
bd97442771 Meta: Add vulkan and vulkan-headers to vcpkg dependencies
Also require a specific ICU version to not run into unexpected problems.
2024-07-06 01:44:58 +02:00
Timothy Flynn
bd73dd316d LibTimeZone: Remove LibTimeZone and TZDB data
All users have been ported to the ICU implementation.
2024-06-26 10:14:02 +02:00
Zaggy1024
81001b37ce LibMedia: Use FFmpeg to decode more video formats
VP9 continues to function, but this also allows AV1 to be decoded. With
this commit, H.264 is still non-functional, as the decoder requires
some extra initial data from the track definition in the Matroska file.
2024-06-24 12:41:32 -06:00
Daniel Bertalan
9df41954c0 CI: Use Xcode's Clang in the macOS workflows
Most users will be building with Xcode Clang on macOS anyway, as our
build scripts default to the system compiler if it's new enough. We
already have an upstream Clang-based workflow on Linux, so we won't lose
any compiler coverage by switching to Apple Clang on macOS.

This should help us avoid build breakages like #186.
2024-06-23 10:39:53 -06:00
Timothy Flynn
9220a89d2f CI+LibUnicode: Remove the UCD from the system 2024-06-22 14:56:39 +02:00
Andrew Kaster
bf3c11229f CMake: Create a set of vcpkg overlay triplets for sanitizers
This changes the Sanitizer configs to build all the vcpkg dependencies
with our specified CFLAGS and CXXFLAGS for ASAN and UBSAN.

Unfortunately, we can't yet enable actually compiling them with
sanitizers enabled, because this causes test failures that need to be
investigated.
2024-06-18 04:47:57 -06:00
Timothy Flynn
7ecca42898 CI: Restore the code linting job
Unlike in Serenity, let's just run this job once per PR rather than on
every job. This lets us install fewer dependencies on the build-and-test
pipelines.
2024-06-16 15:30:28 -04:00
Timothy Flynn
6675ef3f24 CI+LibLocale: Remove the CLDR from the system 2024-06-16 06:57:08 +02:00
Diego
5f66e31e56 CI+Documentation: Use WABT version 1.0.35
Required for `wast2json` to work with latest spec-tests.
2024-06-09 12:16:17 +02:00
Timothy Flynn
221507c567 LibLocale: Install ICU package and link into LibLocale
Rather than removing LibLocale entirely, we will use it as a wrapper
around ICU (which has some C-like interfaces, and uses UTF-16 for its
string types). Using ICU will provide better web compatibility overall,
and will let us implement features we were previously unable to (e.g.
Intl.Collator requires data that is not in the JSON export of the CLDR).
2024-06-09 10:47:28 +02:00
Andrew Kaster
bffdd280bf CI: Create and use a GitHub Actions cache for vcpkg 2024-06-07 11:15:48 -04:00
Timothy Flynn
b36ab480bf Meta+Toolchain+CI: Add a script to bootstrap vcpkg
And hook it into ladybird.sh for convenience. The script will set up
PATH and other environment variables automatically.

On CI, vcpkg is theoretically already installed on Linux machines, but
not with the right environment variables, and not on macOS. So this also
makes CI use this script to bootstrap vcpkg.
2024-06-06 11:27:03 -04:00
Andrew Kaster
72cdd1892b CI: Remove remnants of old setup action that was preventing macOS builds 2024-06-03 10:53:53 +02:00
Andrew Kaster
6d3a54e4a8 Meta: Update Documentation and CI for repo move 2024-06-03 10:53:53 +02:00
Timothy Flynn
5e34a41f06 CI: Be a bit less paranoid about old compiler versions existing
We explicitly tell CMake what compiler to use. No need to remove older
versions, which was just one extra thing we needed to maintain.
2024-05-15 15:20:29 -06:00
Timothy Flynn
18f9efe92d CI: Explicitly install gcc-13 on CI
We're now getting errors on CI due to gcc-13 being missing. We can
probably be smarter about what packages we install, depending on the
workflow being run. But let's first unblock CI.

The error we get is a bit strange and inconsistent. Some CI runners seem
to already have gcc-13 installed. Others don't and can't find the gcc-13
package without the test Ubuntu toolchain PPA.
2024-05-15 15:20:29 -06:00
Timothy Flynn
fffa4ef250 CI: Move the nightly Android CI to GitHub actions 2024-05-10 16:07:23 -04:00
Timothy Flynn
c7828b0640 CI: Remove custom python setup
The only python on the CI machines is now python3. The python installed
by setup-python (which is CPython) seems to have issues running WPT.
2024-05-08 14:46:39 -06:00
Timothy Flynn
520667bda0 CI: Install the six python package
Needed for WPT.
2024-05-08 14:46:39 -06:00
Timothy Flynn
d7dc279ba8 CI: Add the extracted wabt package to the PATH
Unlike Azure, we can't just set the PATH environment variable in GitHub
Actions. We must add it using a special GITHUB_PATH file.
2024-05-08 14:46:39 -06:00
Timothy Flynn
33cf9e68dd CI: Use the correct value for the toolchain ccache primary key 2024-05-08 14:46:39 -06:00
Andrew Kaster
e5f361500e CI: Use common cache restore and cache save action on GitHub Actions
Unfortunately a composite action cannot have a `post:` step like
JavaScript actions are allowed to have, so we need to explicitly call
the post/save actions ourselves from the workflow file when we want to
save Toolchain/QEMU/ccache caches.

Co-Authored-By: Timothy Flynn <trflynn89@pm.me>
2024-05-07 15:28:46 -06:00
Timothy Flynn
4f62066ad0 CI: Run brew update before installing macOS packages
This is needed to update brew's internal list of formulae, otherwise it
does not know about llvm-18.
2024-05-06 09:31:55 -06:00
Andrew Kaster
5aa28c31d5 CI: Use a local GitHub Action to setup installed packages 2024-05-02 06:22:10 -06:00