[libcamera-devel] [PATCH v2] libcamera: Add option to configure udev support

Kieran Bingham kieran.bingham at ideasonboard.com
Thu Jul 6 11:43:58 CEST 2023


Quoting Laurent Pinchart via libcamera-devel (2023-07-06 09:00:58)
> libcamera uses udev to support hotplug (and unplug) detection. This is
> an optional feature, which gets selected automatically if udev is
> available. Users may however want to build libcamera without hotplug
> detection, even if udev is available on the system. Add a new feature
> option to control udev support. The default value is auto, which retains
> the existing behaviour.
> 
> Signed-off-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
> ---
> Changes since v1:
> 
> - Add configuration summary for hotplug
> ---
>  meson.build               | 1 +
>  meson_options.txt         | 5 +++++
>  src/libcamera/meson.build | 2 +-
>  3 files changed, 7 insertions(+), 1 deletion(-)
> 
> diff --git a/meson.build b/meson.build
> index 29777529a0d9..363de459e537 100644
> --- a/meson.build
> +++ b/meson.build
> @@ -261,6 +261,7 @@ py_mod.find_installation('python3', modules : py_modules)
>  summary({
>              'Enabled pipelines': pipelines,
>              'Enabled IPA modules': enabled_ipa_names,
> +            'Hotplug support': libudev.found(),

That's a bit different to others ... I guess there's no specific reason
to have a 'hotplug_enabled' flag so


Reviewed-by: Kieran Bingham <kieran.bingham at ideasonboard.com>

>              'Tracing support': tracing_enabled,
>              'Android support': android_enabled,
>              'GStreamer support': gst_enabled,
> diff --git a/meson_options.txt b/meson_options.txt
> index 4405b401d7d3..fad928af4b62 100644
> --- a/meson_options.txt
> +++ b/meson_options.txt
> @@ -66,6 +66,11 @@ option('tracing',
>          value : 'auto',
>          description : 'Enable tracing (based on lttng)')
>  
> +option('udev',
> +       type : 'feature',
> +       value : 'auto',
> +       description : 'Enable udev support for hotplug')
> +
>  option('v4l2',
>          type : 'boolean',
>          value : false,
> diff --git a/src/libcamera/meson.build b/src/libcamera/meson.build
> index 38fbb41e7d6c..b24f82965764 100644
> --- a/src/libcamera/meson.build
> +++ b/src/libcamera/meson.build
> @@ -76,7 +76,7 @@ libdl = null_dep
>  if not cc.has_function('dlopen')
>      libdl = cc.find_library('dl')
>  endif
> -libudev = dependency('libudev', required : false)
> +libudev = dependency('libudev', required : get_option('udev'))
>  libyaml = dependency('yaml-0.1', required : false)
>  
>  # Use one of gnutls or libcrypto (provided by OpenSSL), trying gnutls first.
> 
> base-commit: d06ed87d49ca3d734fd1c2f1409280abb499c625
> prerequisite-patch-id: 03020483e75d365fa1661922fc66b2f16ea11a04
> -- 
> Regards,
> 
> Laurent Pinchart
>


More information about the libcamera-devel mailing list