-
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
[aravis] add new port (+add to OpenCV 4 as optional feature) #42351
base: master
Are you sure you want to change the base?
Conversation
"aravis": { | ||
"description": "aravis", | ||
"dependencies": [ | ||
"aravis" |
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.
Enable opt-out from usb.
"aravis" | |
{ | |
"name": "aravis", | |
"default-features": false | |
} |
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.
then it might be better to leave usb
away as a default feature from aravis? i now went with that option to stay aligned with aravis (though i think they make it dependent on the availability of the library by default since they set it to auto
)
include(FindPkgConfig) | ||
pkg_search_module(Aravis REQUIRED aravis-0.8) | ||
if (Aravis_FOUND) | ||
set(Aravis_LIBS "aravis-0.8") | ||
endif() |
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.
This wrapper is pointless and not working correctly.
The code should be added to the consuming projects instead.
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.
without this wrapper i can't do find_package(Aravis REQUIRED)
- i didn't find any documentation on how to resolve this (even vcpkg-cmake-wrapper.cmake
is undocumented beyond the fact that it may exist). how else would you solve this?
ports/aravis/usage
Outdated
The aravis package provides CMake targets: | ||
|
||
find_package(aravis REQUIRED) | ||
target_link_libraries(main PRIVATE ${Aravis_LIBRARIES}) |
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.
Don't add a usage
file here. The tool generates the desired information heristically for pkg-config.
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.
ok, i've removed it.
but then it just says:
aravis provides pkg-config modules:
# Camera control and image acquisition library
aravis-0.8
isn't this less helpful than having a clear example on what to do (as is e.g. the case with the usage
i had provided)?
ed919f4
to
16cbe1d
Compare
16cbe1d
to
51a354c
Compare
51a354c
to
69fffe6
Compare
@dg0yt: thanks a lot for your super fast review! i now have one last CI failure in the android CI builds which i don't know how to solve:
based on labstreaminglayer/liblsl-Android#4 (unrelated library, just found the error description there) this is caused when using a too-old Android NDK as these methods were implemented more recently (Android NDK 24, see also the source code). is there a way to force the CI to build with a newer android SDK version for this port (though the log file does talk about also, i just got this result on windows in the CI:
i guess i do need to add a patch for the build after all to skip generating these bins (at least until it's done in upstream)? |
The Android problem is not the NDK (vcpkg CI has r27c) but the API level (vcpkg uses 21 as default). |
please note:
aravis
feature introduced in this PR) and it worked finearv-camera-test-0.8
,arv-fake-gv-camera-0.8
,arv-test-0.8
andarv-tool-0.8
) which cannot be disabled at the moment (except with a patch to their build system), i've reported this to upstream: add meson option to build only the library AravisProject/aravis#962. i think they currently don't hurt and it's better if this gets fixed in upstream rather than having a patch here.resolves #37072
resolves #3411
checklist:
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.