[libcamera-devel] [RFC PATCH] libcamera: base: Make message.h and mutex.h private
Kieran Bingham
kieran.bingham at ideasonboard.com
Wed Aug 10 10:27:03 CEST 2022
Quoting Laurent Pinchart via libcamera-devel (2022-08-08 16:19:18)
> The message.h and mutex.h headers are not used in the libcamera public
> API. Make them private to avoid there usage in applications, and to
> prevent having to maintain them with a stable ABI.
>
> As mutex.h is used by libcamerasrc, the GStreamer element must switch
> from the libcamera_public to the libcamera_private dependency.
Not used by public API == Private. So I don't think this is even RFC ;-)
Reviewed-by: Kieran Bingham <kieran.bingham at ideasonboard.com>
However I'd still like to make -base more widely reusable sometime, But
then that needs to go alongside something that goes 'on top' of
libcamera too to support add on helpers ... (libcamera-top? still
waiting to complete the bikeshedding there before I create the library
heheh).
> Signed-off-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
> ---
> include/libcamera/base/message.h | 2 ++
> include/libcamera/base/mutex.h | 2 ++
> src/gstreamer/meson.build | 2 +-
> 3 files changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/include/libcamera/base/message.h b/include/libcamera/base/message.h
> index 65572c7470e9..b939af6f79bb 100644
> --- a/include/libcamera/base/message.h
> +++ b/include/libcamera/base/message.h
> @@ -9,6 +9,8 @@
>
> #include <atomic>
>
> +#include <libcamera/base/private.h>
> +
> #include <libcamera/base/bound_method.h>
>
> namespace libcamera {
> diff --git a/include/libcamera/base/mutex.h b/include/libcamera/base/mutex.h
> index 2d23e49e4546..52441c55287a 100644
> --- a/include/libcamera/base/mutex.h
> +++ b/include/libcamera/base/mutex.h
> @@ -10,6 +10,8 @@
> #include <condition_variable>
> #include <mutex>
>
> +#include <libcamera/base/private.h>
> +
> #include <libcamera/base/thread_annotations.h>
>
> namespace libcamera {
> diff --git a/src/gstreamer/meson.build b/src/gstreamer/meson.build
> index 77c79140eb37..eda246d7ffc8 100644
> --- a/src/gstreamer/meson.build
> +++ b/src/gstreamer/meson.build
> @@ -42,7 +42,7 @@ endif
> libcamera_gst = shared_library('gstlibcamera',
> libcamera_gst_sources,
> cpp_args : libcamera_gst_cpp_args,
> - dependencies : [libcamera_public, gstvideo_dep, gstallocator_dep],
> + dependencies : [libcamera_private, gstvideo_dep, gstallocator_dep],
> install: true,
> install_dir : '@0@/gstreamer-1.0'.format(get_option('libdir')),
> )
> --
> Regards,
>
> Laurent Pinchart
>
More information about the libcamera-devel
mailing list