All of lore.kernel.org
 help / color / mirror / Atom feed
From: Clara Kowalsky <clara.kowalsky@siemens.com>
To: Florian Bezdeka <florian.bezdeka@siemens.com>, xenomai@lists.linux.dev
Cc: jan.kiszka@siemens.com
Subject: Re: [PATCH 1/3] docs(xeno3): Fix doxygen parsing of COBALT_IMPL_TIME64 wrappers
Date: Thu, 3 Sep 2026 12:34:13 +0200	[thread overview]
Message-ID: <541bece4-4a55-4be6-9886-228fb23b9da2@siemens.com> (raw)
In-Reply-To: <6af60166194fe03a0058c8cd3429d054125ef948.camel@siemens.com>



On 9/3/26 11:48, Florian Bezdeka wrote:
> On Thu, 2026-09-03 at 10:34 +0200, Clara Kowalsky wrote:
>> The doxygen configuration lacks a definition for COBALT_IMPL_TIME64().
>> Therefore doxygen does not see the expanded wrapper prototype in
>> wrappers_time64.c and instead tries to match @param entries against the
>> macro call.
>>
>> This raises warnings at doc build such as
>>
>> lib/cobalt/wrappers_time64.c:42: warning: argument 'clock_id' of command @param is not found in the argument list of COBALT_IMPL_TIME64(int, clock_getres, __clock_getres64,(clockid_t clock_id, struct timespec *tp))
>>
>> as doxygen is seeing the raw macro form
>>
>> COBALT_IMPL_TIME64(int, clock_getres, __clock_getres64,
>>            (clockid_t clock_id, struct timespec *tp))
>>
>> With the fix, doxygen rewrites the macro to
>>
>> int clock_getres(clockid_t clock_id, struct timespec *tp)
> 
> Hm. The generated documentation should be "generic", right?
> 
> Depending on the chosen build configuration clock_getres OR
> __clock_getres64 would be correct, but that is also hidden from the user
> in glibc land, so we should probably do the same "hiding" here.
> 
> That said: LGTM.

The doxygen mapping should describe the stable public API, not whichever 
internal symbol is emitted for a particular time ABI. So the generated 
docs should expose only the generic API name clock_getres, regardless 
which build variant is selected.
> 
>>
>> It uses the first macro argument (return type), the second (function
>> name) and fourth (parameter list), but ignores the third (alternate
>> function name, unneeded).
>> By this, doxygen sees the actual public function prototype.
>> See #18.
>>
>> Signed-off-by: Clara Kowalsky <clara.kowalsky@siemens.com>
>> ---
>>   doc/doxygen/xeno3prm-common.conf.in | 1 +
>>   1 file changed, 1 insertion(+)
>>
>> diff --git a/doc/doxygen/xeno3prm-common.conf.in b/doc/doxygen/xeno3prm-common.conf.in
>> index 71db05686..ee4ede10d 100644
>> --- a/doc/doxygen/xeno3prm-common.conf.in
>> +++ b/doc/doxygen/xeno3prm-common.conf.in
>> @@ -647,6 +647,7 @@ PREDEFINED = DOXYGEN_CPP			\
>>           "EXPORT_SYMBOL_GPL(symbol)=//"		\
>>           "DECLARE_BITMAP(symbol, nr)=unsigned long symbol[BITS_TO_LONGS(nr)]" \
>>   	"COBALT_IMPL(T,I,A)=T I A"		\
>> +	"COBALT_IMPL_TIME64(T,I,N,A)=T I A"	\
>>   	"COBALT_DECL(T,P)=T P"			\
> 
> No complains about COBALT_DECL_TIME64? Would have expected something
> similar...

I built the documentation with:
./scripts/bootstrap
./configure --enable-doc-build
make -C doc -B V=1 2>&1 | tee /tmp/xeno-doc-build.log

And checked for warnings:
rg -i warn /tmp/xeno-doc-build.log

I didn't get any warnings for COBALT_DECL_TIME64.

> 
>>   	"COBALT_SYSCALL(N,M,T,A)=T N A"		\
>>   	"COBALT_SYSCALL_DECL(N,T,A)=T N A"
>> -- 
>> 2.55.0
> 
> Question to the complete series: Is
> https://gitlab.com/Xenomai/xenomai3/xenomai/-/work_items/18 completely
> closed with this series applied?

Yes, those 3 commits fix all doxygen warnings.

BR,
Clara


  reply	other threads:[~2026-09-03 10:34 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-03  8:34 [PATCH 1/3] docs(xeno3): Fix doxygen parsing of COBALT_IMPL_TIME64 wrappers Clara Kowalsky
2026-09-03  8:34 ` [PATCH 2/3] docs: Fix a2x warning for PDF builds Clara Kowalsky
2026-09-07 14:22   ` Jan Kiszka
2026-09-08  7:27     ` Clara Kowalsky
2026-09-08  7:43       ` Jan Kiszka
2026-09-03  8:34 ` [PATCH 3/3] docs: Match actual return type for RTDM doxygen declarations Clara Kowalsky
2026-09-03 10:53   ` Jan Kiszka
2026-09-03 11:32     ` Clara Kowalsky
2026-09-03  9:48 ` [PATCH 1/3] docs(xeno3): Fix doxygen parsing of COBALT_IMPL_TIME64 wrappers Florian Bezdeka
2026-09-03 10:34   ` Clara Kowalsky [this message]
2026-09-03 10:58     ` Jan Kiszka
2026-09-04  6:27       ` Florian Bezdeka
2026-09-04 11:52         ` Clara Kowalsky
2026-09-03 11:17     ` Florian Bezdeka

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=541bece4-4a55-4be6-9886-228fb23b9da2@siemens.com \
    --to=clara.kowalsky@siemens.com \
    --cc=florian.bezdeka@siemens.com \
    --cc=jan.kiszka@siemens.com \
    --cc=xenomai@lists.linux.dev \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.