From fe17e491162f6c7ddd1cb6666165ad463078d4ad Mon Sep 17 00:00:00 2001 From: Anonymous Maarten Date: Fri, 3 Oct 2025 20:59:05 +0200 Subject: [PATCH] ci: build testffmpeg on ubuntu and mac --- .github/workflows/create-test-plan.py | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/.github/workflows/create-test-plan.py b/.github/workflows/create-test-plan.py index 67769cc33e..5517eb1496 100755 --- a/.github/workflows/create-test-plan.py +++ b/.github/workflows/create-test-plan.py @@ -113,6 +113,7 @@ JOB_SPECS = { "msvc-arm64": JobSpec(name="Windows (MSVC, ARM64)", os=JobOs.WindowsLatest, platform=SdlPlatform.Msvc, artifact="SDL-VC-arm64", msvc_arch=MsvcArch.Arm64, ), "msvc-gdk-x64": JobSpec(name="GDK (MSVC, x64)", os=JobOs.WindowsLatest, platform=SdlPlatform.Msvc, artifact="SDL-VC-GDK", msvc_arch=MsvcArch.X64, msvc_project="VisualC-GDK/SDL.sln", gdk=True, no_cmake=True, ), "ubuntu-22.04": JobSpec(name="Ubuntu 22.04", os=JobOs.Ubuntu22_04, platform=SdlPlatform.Linux, artifact="SDL-ubuntu22.04", ), + "ubuntu-latest": JobSpec(name="Ubuntu (latest)", os=JobOs.UbuntuLatest, platform=SdlPlatform.Linux, artifact="SDL-ubuntu-latest", ), "ubuntu-24.04-arm64": JobSpec(name="Ubuntu 24.04 (ARM64)", os=JobOs.Ubuntu24_04_arm, platform=SdlPlatform.Linux, artifact="SDL-ubuntu24.04-arm64", ), "steamrt3": JobSpec(name="Steam Linux Runtime 3.0 (x86_64)", os=JobOs.UbuntuLatest, platform=SdlPlatform.Linux, artifact="SDL-steamrt3", container="registry.gitlab.steamos.cloud/steamrt/sniper/sdk:latest", ), "steamrt3-arm64": JobSpec(name="Steam Linux Runtime 3.0 (arm64)", os=JobOs.Ubuntu24_04_arm, platform=SdlPlatform.Linux, artifact="SDL-steamrt3-arm64", container="registry.gitlab.steamos.cloud/steamrt/sniper/sdk/arm64:latest", ), @@ -457,10 +458,18 @@ def spec_to_job(spec: JobSpec, key: str, trackmem_symbol_names: bool) -> JobDeta "libibus-1.0-dev", "libudev-dev", "fcitx-libs-dev", + # testffmpeg + "libavcodec-dev", + "libavfilter-dev", + "libavutil-dev", + "libswresample-dev", + "libswscale-dev", )) - match = re.match(r"ubuntu-(?P[0-9]+)\.(?P[0-9]+).*", spec.os.value) - ubuntu_year, ubuntu_month = [int(match["year"]), int(match["month"])] - if ubuntu_year >= 22: + match = re.match(r"ubuntu-(?P[0-9]+)\.(?P[0-9]+|latest).*", spec.os.value) + ubuntu_ge_22 = True + if match and match["month"] != "latest": + ubuntu_year, ubuntu_month = [int(match["year"]), int(match["month"])] + ubuntu_ge_22 = ubuntu_year >= 22 job.apt_packages.extend(("libpipewire-0.3-dev", "libdecor-0-dev")) job.apt_packages.extend(( "libunwind-dev", # For SDL_test memory tracking @@ -518,6 +527,10 @@ def spec_to_job(spec: JobSpec, key: str, trackmem_symbol_names: bool) -> JobDeta "-DCMAKE_OSX_DEPLOYMENT_TARGET=10.13", "-DCLANG_TIDY_BINARY=$(brew --prefix llvm)/bin/clang-tidy", )) + job.brew_packages.extend(( + # Brew provides a single architecture (aarch64), so it's not usable for fat libraries + "ffmpeg", # testffmpeg + )) job.shared_lib = SharedLibType.DYLIB job.static_lib = StaticLibType.A job.ccache = True