Skip to content

vapoursynth: Add version 81 - #3403

Draft
luhenry wants to merge 1 commit into
mainfrom
vapoursynth
Draft

luhenry wants to merge 1 commit into
mainfrom
vapoursynth

Conversation

@luhenry

@luhenry luhenry commented Oct 15, 2026 •

Copy link
Copy Markdown
Member

Compiles the VapourSynth frameserver core (meson-python + Cython), a native video-processing/filtering library used in transcoding pipelines, distinct from the already-published av/decord/pyav bindings. Upstream publishes no riscv64 wheel.

Mirrors the linux_x86_64/linux_aarch64 legs of upstream's build.yml, narrowed to the riscv64 image. meson.build already special-cases riscv (disables x86/ARM SIMD paths, defines VS_TARGET_CPU_RISCV), so nothing riscv-specific needed patching there.

Differs from upstream

  • No Windows/macOS legs - riscv64 image only.
  • Splits into a cp312-abi3 build plus a separate cp314t build (meson-python's own override disables limited-api for free-threaded); upstream's build list names cp315t, absent from the riscv64 image, so cp314t is substituted (gotcha 11 shape).

Testing: same as upstream (unittest discover), inherited from [tool.cibuildwheel.linux].

License: four meson-wrap subprojects (glslang, Vulkan-Headers, libp2p, zimg) are statically linked but their licences aren't in the checkout; the patch widens the explicit license-files list, and the workflow stages each from its own upstream repo (glslang/Vulkan-Headers pinned to the wrap's tag; libp2p/zimg's wraps pin revision = HEAD, so those two come from the default branch, matching upstream's own lack of pinning).

Patches

  • 0001-Ship-the-statically-embedded-subprojects-licences-in.patch - To upstream. Adds the missing subproject licences; reproduces on any arch, not riscv64-specific.

Built locally (x86_64): patch applies cleanly to a fresh R81 checkout; no cibuildwheel run (no docker/riscv64 available in this sandbox).

Adds a cibuildwheel-based riscv64 build for vapoursynth R81 (meson-python,
Cython), mirroring the linux leg of upstream's own build.yml. Upstream's
meson.build already has explicit riscv64 handling (VS_TARGET_CPU_RISCV,
x86/arm SIMD paths disabled off that arch), so nothing riscv-specific
needed patching there. Splits into a cp312-abi3 build (meson-python's
limited-api) and a separate cp314t free-threaded build, following the
same shape as build-bcrypt.yml. Includes a licensing patch widening the
explicit license-files list to cover the four statically-linked meson-wrap
subprojects (glslang, Vulkan-Headers, libp2p, zimg), whose notices the
workflow stages from their own upstream repos.

Signed-off-by: Ludovic Henry <git@ludovic.dev>
@luhenry
luhenry marked this pull request as draft October 16, 2026 00:02

This branch has not been deployed

No deployments
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.

1 participant