[PATCH v1] Documentation: Fix `INCLUDE_PATH` doxygen configuration option

Barnabás Pőcze barnabas.pocze at ideasonboard.com
Mon May 26 15:25:08 CEST 2025


2025. 05. 26. 14:19 keltezéssel, Kieran Bingham írta:
> Quoting Barnabás Pőcze (2025-05-26 13:03:55)
>> libcamera header files should be included using the `libcamera/...` prefix.
>> However, `INCLUDE_PATH` is currently set to `@TOP_SRCDIR@/include/libcamera`
>> meaning that doxygen, when encountering `libcamera/x.h`, will try to open
>> `@TOP_SRCDIR@/include/libcamera/libcamera/x.h`, which is not the correct
>> path.
>>
>> Fix that by using `@TOP_{BUILD,SRC}DIR@/include`. This removes the extra
>> `libcamera` component from the path and adds the corresponding directory
>> from the build directory as well since that is an implicit include
>> directory added by meson.
>>
>> Signed-off-by: Barnabás Pőcze <barnabas.pocze at ideasonboard.com>
> 
> This sounds very reasonable - I wonder when this crept in. I recall it
> was a long time ago that we decided to keep libcamera headers under the
> "/libcamera/*" include hierarchy - so I wonder if this was missed back
> then or added since.
> 
> Anyway - it won't matter much - and I believe this sounds right.
> 
> Is there anything in the output doxygen that this fixes or that can
> demonstrate doxygen is now doing the right thing that was missing
> before?

You can see the difference if you run `doxygen -d preprocessor ...`, e.g.

   #include libcamera/base/bound_method.h: already processed! skipping...
   #include libcamera/base/message.h: parsing...
     #include atomic: not found! skipping...
     #include libcamera/base/private.h: parsing...
     #include libcamera/base/bound_method.h: already processed! skipping...

vs.

   #include libcamera/base/bound_method.h: already processed! skipping...
   #include libcamera/base/message.h: not found! skipping...


I don't believe it changes anything in practice, or at least I have not
noticed any changes. But I thought it's better to be correct even if it
does not really do anything.


Regards,
Barnabás Pőcze


> 
> Either way, I'd still give this an ack...
> 
> Reviewed-by: Kieran Bingham <kieran.bingham at ideasonboard.com>
> 
>> ---
>>   Documentation/Doxyfile-common.in | 3 ++-
>>   1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/Documentation/Doxyfile-common.in b/Documentation/Doxyfile-common.in
>> index 045c19dd6..58afea1cd 100644
>> --- a/Documentation/Doxyfile-common.in
>> +++ b/Documentation/Doxyfile-common.in
>> @@ -57,7 +57,8 @@ GENERATE_LATEX         = NO
>>   MACRO_EXPANSION        = YES
>>   EXPAND_ONLY_PREDEF     = YES
>>   
>> -INCLUDE_PATH           = "@TOP_SRCDIR@/include/libcamera"
>> +INCLUDE_PATH           = "@TOP_BUILDDIR@/include" \
>> +                         "@TOP_SRCDIR@/include"
>>   INCLUDE_FILE_PATTERNS  = *.h
>>   
>>   IMAGE_PATH             = "@TOP_SRCDIR@/Documentation/images"
>> -- 
>> 2.49.0
>>



More information about the libcamera-devel mailing list