-
Notifications
You must be signed in to change notification settings - Fork 6.4k
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
[libvmaf] New port #41152
[libvmaf] New port #41152
Conversation
@microsoft-github-policy-service agree |
For naming this package ( For example, on my Fedora 40 system, vmaf is split into three packages:
|
ports/libvmaf/vcpkg.json
Outdated
{ | ||
"name": "libvmaf", | ||
"version": "3.0.0", | ||
"port-version": 1, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"port-version": 1, |
New port doesn't need add port-version
.
Android and iOS compilation is disabled due to weird errors when compiling the
I need some more time to investigate this issue, and I don't think there are many people who want to run VMAF on Android or iOS (at least, not me).
|
vcpkg doesn't set the wrong sysroot. But many packages do configuration wrong, or make wrong assumptions. And the NDK really contributes to confusion. |
Note that vcpkg builds with API level 21 by default. You can test locally with a higher API level e.g. using
If it builds successfully, the CI failure shall be recorded in Lines 564 to 567 in 43b4ba9
Some packages need even higher levels. |
ports/libvmaf/vcpkg.json
Outdated
"description": "libvmaf is a library developed by Netflix to compute the VMAF (Video Multi-Method Assessment Fusion) metric.", | ||
"homepage": "https://github.com/Netflix/vmaf", | ||
"license": "BSD-2-Clause-Patent", | ||
"supports": "!windows & !android & !ios", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
According to their GHA, windows is supported.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
According to their GHA, windows is supported.
However, it is only tested under msys2. The libvmaf codebase extensively uses POSIX-specific headers such as <pthread.h>
and <unistd.h>
. I don't think it will build cleanly on Windows with MSVC. Patching a lot of code to make it work on Windows doesn't seem like a good idea, as this should be addressed in the upstream project, not in vcpkg.
The libvmaf library itself doesn't use |
The issue is with meson, not vcpkg. I added a workaround for mesonbuild/meson#3049 as a patch. If the API level is changed to 24 or above in the future, or if meson is fixed to no longer define |
Fixes #41129.
find_package
calls are REQUIRED, are satisfied byvcpkg.json
's declared dependencies, or disabled with CMAKE_DISABLE_FIND_PACKAGE_Xxx.vcpkg.json
matches what upstream says.vcpkg.json
matches what upstream says../vcpkg x-add-version --all
and committing the result.