All of lore.kernel.org
 help / color / mirror / Atom feed
From: Philippe Gerum <rpm@xenomai.org>
To: Emmanuel Pacaud <emmanuel.pacaud@lapp.in2p3.fr>
Cc: xenomai <xenomai@lists.linux.dev>
Subject: Re: Simple Xenomai 4 API use examples and a question
Date: Sun, 24 Aug 2025 11:02:28 +0200	[thread overview]
Message-ID: <877bytks7v.fsf@xenomai.org> (raw)
In-Reply-To: <120fe6031963eed74f04c365c7b780a86af579c0.camel@lapp.in2p3.fr> (Emmanuel Pacaud's message of "Fri, 22 Aug 2025 15:29:23 +0200")

Emmanuel Pacaud <emmanuel.pacaud@lapp.in2p3.fr> writes:

> [1. text/markdown]
> Le vendredi 22 août 2025 à 09:13 +0200, Emmanuel Pacaud a écrit :
>> I have started to work on a repository which is intended as a collection of very simple (dumb) examples of Xenomai 4 API use. Each example is an application, sometimes coupled with a kernel module, with the strict minimum around the actual API use. Applications and kernel modules are built using meson. The meson files are also kept the their simplest form. That was easy for the application building, not so for the kernel modules.
>
> In my quest of the simplest example, there is this line in <https://gitlab.com/emmanuelpacaud/xenomai-c-examples/-/blob/8253729aa3eb669576e387bba80085c91199f3cf/meson.build>:
>
> ```
> exe = executable (e, e + '.c',
>                   dependencies: evl_dep,
>                   c_args:   ['-I' + evl_dep.get_pkgconfig_variable('includedir') 'uapi'],
>                   install: true)
> ```
>
> In my setup, I, don't install kernel user space API headers, as it is a diskless one, where I want to be able to switch between different kernels. So I let install-uapi enabled, which means *-abi.h files are installed in $prefix/include/uapi. Which means I have to add this path to the include path manually, as it is not present in the pkg config file, using c_args parameter.
>
> Is it intended ? I would have expected them to be installed along the other libevl headers. If so, I think the C flags in pkg config file should include $includedir/uapi, when install-uapi option is enabled.
>
> Emmanuel.

Since ABI 42 guarantees that we have no naming conflict anymore thanks
to the -abi.h suffix for those headers, we can merge them with the
common library headers, leaving the evl.pc generation as is. I'm pushing
the following change to the -next branch to address this:

diff --git a/meson/install-uapi.sh b/meson/install-uapi.sh
index 333122b..2ccee5e 100644
--- a/meson/install-uapi.sh
+++ b/meson/install-uapi.sh
@@ -3,4 +3,4 @@
 # $2 = $includedir
 
 cd $1
-find -L evl \! \( -name '*~' \) -type f | cpio -pdum --quiet $MESON_INSTALL_DESTDIR_PREFIX/$2/uapi
+find -L evl \! \( -name '*~' \) -type f | cpio -pdum --quiet $MESON_INSTALL_DESTDIR_PREFIX/$2

Please let me know if that fixes the issue on your end.

-- 
Philippe.

      reply	other threads:[~2025-08-24  9:02 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-08-22  7:13 Simple Xenomai 4 API use examples and a question Emmanuel Pacaud
2025-08-22  7:34 ` Philippe Gerum
2025-08-22  7:35   ` Philippe Gerum
2025-08-22  7:36     ` Philippe Gerum
2025-08-22  7:45 ` Philippe Gerum
2025-08-22 12:20   ` Emmanuel Pacaud
2025-08-22 13:29 ` Emmanuel Pacaud
2025-08-24  9:02   ` Philippe Gerum [this message]

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=877bytks7v.fsf@xenomai.org \
    --to=rpm@xenomai.org \
    --cc=emmanuel.pacaud@lapp.in2p3.fr \
    --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.