[libcamera-devel] [PATCH v2 2/5] meson: libcamera: Split public and internal source arrays

Dan Scally dan.scally at ideasonboard.com
Fri Jan 12 12:10:35 CET 2024


On 12/01/2024 10:51, Kieran Bingham wrote:
> Quoting Dan Scally (2024-01-12 10:25:09)
>> On 09/01/2024 22:12, Kieran Bingham wrote:
>>> Quoting Jacopo Mondi via libcamera-devel (2024-01-09 13:41:51)
>>>> Hi Dan
>>>>
>>>> On Fri, Jan 05, 2024 at 04:41:01PM +0000, Daniel Scally via libcamera-devel wrote:
>>>>> Meson array variables hold lists of libcamera's source files. To help
>>>>> facilitate the splitting of Doxygen generated documentation into
>>>>> distinct public and internal versions, split those arrays to separate
>>>>> public and internal variables.
>>>>>
>>>>> Signed-off-by: Daniel Scally <dan.scally at ideasonboard.com>
>>>>> ---
>>>>> Changes in v2:
>>>>>
>>>>>         - New patch
>>>>>
>>>>>    include/libcamera/base/meson.build     |  2 +-
>>>>>    include/libcamera/internal/meson.build | 21 +++++++++++----
>>>>>    src/libcamera/base/meson.build         | 24 +++++++++++------
>>>>>    src/libcamera/meson.build              | 36 ++++++++++++++++----------
>>>>>    4 files changed, 55 insertions(+), 28 deletions(-)
>>>>>
>>>>> diff --git a/include/libcamera/base/meson.build b/include/libcamera/base/meson.build
>>>>> index bace25d5..f24f47de 100644
>>>>> --- a/include/libcamera/base/meson.build
>>>>> +++ b/include/libcamera/base/meson.build
>>>>> @@ -10,7 +10,6 @@ libcamera_base_public_headers = files([
>>>>>        'object.h',
>>>>>        'shared_fd.h',
>>>>>        'signal.h',
>>>>> -    'span.h',
>>>>>        'unique_fd.h',
>>>>>    ])
>>>>>
>>>>> @@ -25,6 +24,7 @@ libcamera_base_private_headers = files([
>>>>>        'mutex.h',
>>>>>        'private.h',
>>>>>        'semaphore.h',
>>>>> +    'span.h',
>>>> Span<> is part of our public API, isn't it ?
>>> I bet it's a real pain to get Doxygen to document though. We might want
>>> a short explanation that the C++20 documentation can be used as a
>>> reference and we'll move to that implementation when we can.
>>
>> Probably this needed explaining better - apologies. Span<> is specifically excluded at the moment
>> via Doxygen's EXCLUDE keyword in the Doxyfile - so it looks a bit weird in this commit, but it's
>> maintaining the current treatment for the file.
>>
>>
>> Alternatively I could leave these arrays untouched and simply keep the
>> EXCLUDE in Doxyfile-public.in to exclude Span<> that way - is that
>> less weird?
> I think so. It's probably important to keep span.h in the
> libcamera_base_public_headers array so that it gets installed as part of
> a libcamera package.
>
> In fact, I think I overlooked that before. If this prevents the span.h
> being installed, that's a breakage so we can't do that.
>
> In otherwords, your new proposal sounds like something we should do.


Ack - doing that now then

> --
> Kieran


More information about the libcamera-devel mailing list