-
Notifications
You must be signed in to change notification settings - Fork 36
Description
Is your feature request related to a problem? Please describe.
A valid requirement is to support COMPONENTS while using ApraPipes in any codebase (find_package)
Describe the solution you'd like
OPENCV and BOOST allows including COMPONENTS in CMakelists and the library links against only those components. For eg.
find_package(Boost COMPONENTS filesystem log chrono REQUIRED)
This will include only the filesystem, log & chrono components from BOOST.
For ApraPipes, following component, for eg, will make sense:
GTK -> currently this is correlated to CUDA on linux/arm and it is frequently not required in projects
Describe alternatives you've considered
Alternative is to create different flavored and custom builds, which seems unsustainable.
Additional context
ApraNVR has no requirement for GTK but building ApraPipes requires GTK ( this builds by default on ApraPipes ARM build which assumes CUDA by default) - but we do not need CUDA for ApraNVR, thus increasing the build size which is unnecessary. The alternative solution was to build arm-no-cuda build for ApraPipes