Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[VIDEO-2852] Facilitate running on GitHub's own runners #26

Merged
merged 5 commits into from
Mar 18, 2025

Conversation

btgoodwin
Copy link

@btgoodwin btgoodwin commented Mar 13, 2025

This PR includes changes that, in concert with changes from laerdallabs/cerbero-action#1, allows for cerbero builds to run on the standard GHA windows-2022 -based runners. Summary:

  1. The wavpack update addressed a macro generation issue between ninja and cmake.
  2. Cerbero assumed that Scripts (vs bin) would exist when calling .rmdir on it, which was not the case for some reason. The result was a crash; the fix was to check if the directory exists before trying to delete it.
  3. The installed python version requirement according to cerbero is 3.7 however it uses features from 3.10, so that fix is here.
  4. The x264 package failed to build for no clear reason; an upstream cerbero patch that ports it to meson resolves that issue.
  5. An upstream gstreamer patch for gst-plugins-bad performs a now-necessary cast of a struct to ensure that the code can be compiled against SDKs newer than 10.0.22621.0 (26100 was the breaking version).

btgoodwin and others added 5 commits March 3, 2025 13:05
os.rmdir will error out if the directory doesn't exist.  In a github action using msys2-ucrt, the line fails because the Scripts directory doesn't exist (meaning, it's likely the for loop that just ran didn't do anything either, BTW).
Upstream no longer provides Mercurial-style snapshots. However,
we already host a port which follows that convention. I turned it into a
patch following the well known convention,

> git switch stable
> git diff stable..164.3108-meson | git apply
> git add *
> git commit -m "Add Meson build"
> git format-patch -n HEAD~1

And since x264 is another library that shares bugs w.r.t. Android 32-bit
linking, I ported the relevant linker flags to the Android.mk for
GStreamer so that downstream users can get it fixed out of the box.

See #215

Fixes #286

Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1400>
Copy link
Member

@jawilson jawilson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@jawilson jawilson merged commit 25d3d94 into 1.24-lldc Mar 18, 2025
1 check passed
@jawilson jawilson deleted the 1.24-lldc-cerbero-action-patches branch March 18, 2025 01:20
@jawilson jawilson restored the 1.24-lldc-cerbero-action-patches branch March 18, 2025 01:42
@jawilson
Copy link
Member

@btgoodwin looks like this broke the default branch after merging so I undid the merge. I'm not sure why since this PR built. Can you re-submit it?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants