From: "'cedric.hombourger@siemens.com' via isar-users" <isar-users@googlegroups.com>
To: "isar-users@googlegroups.com" <isar-users@googlegroups.com>,
"Vadivel, Arulpandiyan" <arulpandiyan.vadivel@siemens.com>
Cc: "srikanth.krishnakar@siemens.com" <srikanth.krishnakar@siemens.com>
Subject: Re: [PATCH] linux-custom: support to add linux-libc-dev package with kernel name
Date: Sun, 12 Jan 2025 20:46:28 +0000 [thread overview]
Message-ID: <8b5a84a18e2a506ad199c7c034d18dd83d5b3f3d.camel@siemens.com> (raw)
In-Reply-To: <20250112190000.69110-1-arulpandiyan.vadivel@siemens.com>
On Mon, 2025-01-13 at 00:30 +0530, Arulpandiyan Vadivel wrote:
> Add support to build linux-libc-dev package with
> KERNEL_NAME_PROVIDED.
> With this change the user is able to update the apt feeds with user
> desired
> package for their architecture.
> With current approach for a single architecture only one linux-libc-
> dev
> package is possible for the components.
> In few scenarios where multiple BSP's were supported for same
> architecture
> adding them to the same component of apt feeds might not be possible
> with reprepro.
The commit log should IMO be reworded as you are using terms and
concepts that are potentially specific to our downstream projects.
This change is however relevant to Isar. Below my attempt to describe
the change and our motivation (further details may be required by the
maintainers).
Debian and Ubuntu use unified kernel headers and a single linux-libc-
dev package is shipped. In contrast, Isar may build multiple kernel
variants with different versions and/or patches and their packages but
linux-libc-dev are suffixed with -${KERNEL_NAME_PROVIDED}: this allows
each variant to exist in isar-apt (reprepro may not have more than one
version of a given package for a given suite). Apply the same suffix to
linux-libc-dev and a Provides: clause.
>
> Signed-off-by: Arulpandiyan Vadivel
> <arulpandiyan.vadivel@siemens.com>
> ---
> doc/custom_kernel.md | 2 +-
> meta/recipes-kernel/linux/files/debian/control.tmpl | 6 ++++--
> meta/recipes-kernel/linux/files/debian/isar/common.tmpl | 2 +-
> meta/recipes-kernel/linux/files/debian/isar/install.tmpl | 2 +-
> meta/recipes-kernel/linux/linux-custom.inc | 2 +-
> 5 files changed, 8 insertions(+), 6 deletions(-)
>
> diff --git a/doc/custom_kernel.md b/doc/custom_kernel.md
> index ce5f1bf7..89c7c088 100644
> --- a/doc/custom_kernel.md
> +++ b/doc/custom_kernel.md
> @@ -51,7 +51,7 @@ The linux-custom recipe provides support for:
>
> Only the `host` specific package is built automatically at cross
> builds.
>
> - 10. Produce a `linux-libc-dev` package to support user-land builds
> + 10. Produce a `linux-libc-dev-${KERNEL_NAME_PROVIDED}` package to
> support user-land builds
>
> 11. Only build/ship the `linux-libc-dev` package if instructed to
> (`KERNEL_LIBC_DEV_DEPLOY` equals to `"1"`)
> diff --git a/meta/recipes-kernel/linux/files/debian/control.tmpl
> b/meta/recipes-kernel/linux/files/debian/control.tmpl
> index 04ad0f4f..a4c0ed9e 100644
> --- a/meta/recipes-kernel/linux/files/debian/control.tmpl
> +++ b/meta/recipes-kernel/linux/files/debian/control.tmpl
> @@ -22,10 +22,12 @@ Description: ${KERNEL_NAME_PROVIDED} Linux kernel
> headers for @KR@
> .
> This is useful for people who need to build external modules
>
> -Package: linux-libc-dev
> +Package: linux-libc-dev-${KERNEL_NAME_PROVIDED}
> Build-Profiles: <!nolibcdev kernel>
> Section: devel
> -Provides: linux-kernel-headers
> +Conflicts: linux-libc-dev
> +Provides: linux-libc-dev
> +Replaces: linux-libc-dev
> Architecture: any
> Description: Linux support headers for userspace development
> This package provides userspaces headers from the Linux kernel.
> These headers
> diff --git a/meta/recipes-kernel/linux/files/debian/isar/common.tmpl
> b/meta/recipes-kernel/linux/files/debian/isar/common.tmpl
> index def8480e..bab41757 100644
> --- a/meta/recipes-kernel/linux/files/debian/isar/common.tmpl
> +++ b/meta/recipes-kernel/linux/files/debian/isar/common.tmpl
> @@ -8,7 +8,7 @@ set -e
> ARCH=${KERNEL_ARCH}
> KERNEL_PKG_IMAGE=linux-image-${KERNEL_NAME_PROVIDED}
> KERNEL_PKG_KERN_HEADERS=linux-headers-${KERNEL_NAME_PROVIDED}
> -KERNEL_PKG_LIBC_HEADERS=linux-libc-dev
> +KERNEL_PKG_LIBC_HEADERS=linux-libc-dev-${KERNEL_NAME_PROVIDED}
> KERNEL_PKG_LIBC_HEADERS_CROSS=linux-libc-dev-${DISTRO_ARCH}-cross
> KERNEL_PKG_KERN_KBUILD=linux-kbuild-${KERNEL_NAME_PROVIDED}
> KERNEL_PKG_KERN_KBUILD_CROSS=${KERNEL_PKG_KERN_KBUILD}-
> ${DISTRO_ARCH}-cross
> diff --git a/meta/recipes-kernel/linux/files/debian/isar/install.tmpl
> b/meta/recipes-kernel/linux/files/debian/isar/install.tmpl
> index 0a7bdd66..e1602b9d 100644
> --- a/meta/recipes-kernel/linux/files/debian/isar/install.tmpl
> +++ b/meta/recipes-kernel/linux/files/debian/isar/install.tmpl
> @@ -225,7 +225,7 @@ install_headers() {
> if dpkg --compare-versions "${krel}" "lt" "5.4.24"; then
> headers_check
> fi
> - [ -z ${kern_pkgs["linux-libc-dev"]} ] || libc_headers
> + [ -z ${kern_pkgs["linux-libc-dev-${KERNEL_NAME_PROVIDED}"]} ] ||
> libc_headers
> kernel_headers
> }
>
> diff --git a/meta/recipes-kernel/linux/linux-custom.inc
> b/meta/recipes-kernel/linux/linux-custom.inc
> index bf6c879b..26fd8719 100644
> --- a/meta/recipes-kernel/linux/linux-custom.inc
> +++ b/meta/recipes-kernel/linux/linux-custom.inc
> @@ -145,7 +145,7 @@ ISAR_CROSS_COMPILE:class-kbuildtarget = "0"
> RECIPE_PROVIDES = " \
> linux-image-${KERNEL_NAME_PROVIDED} \
> linux-headers-${KERNEL_NAME_PROVIDED} \
> - linux-libc-dev \
> + linux-libc-dev-${KERNEL_NAME_PROVIDED} \
We could keep linux-libc-dev and add linux-libc-dev-
${KERNEL_NAME_PROVIDED}
> linux-libc-dev-${DISTRO_ARCH}-cross \
What about the -cross package? A similar issue may exist
> linux-image-${KERNEL_NAME_PROVIDED}-dbg \
> linux-kbuild-${KERNEL_NAME_PROVIDED} \
--
Cedric Hombourger
Siemens AG
www.siemens.com
--
You received this message because you are subscribed to the Google Groups "isar-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to isar-users+unsubscribe@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/isar-users/8b5a84a18e2a506ad199c7c034d18dd83d5b3f3d.camel%40siemens.com.
next prev parent reply other threads:[~2025-01-12 20:46 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-01-12 19:00 'Arulpandiyan Vadivel' via isar-users
2025-01-12 20:46 ` 'cedric.hombourger@siemens.com' via isar-users [this message]
2025-01-13 8:07 ` [PATCH V2] " 'Arulpandiyan Vadivel' via isar-users
2025-01-13 14:04 ` 'cedric.hombourger@siemens.com' via isar-users
2025-01-14 16:33 ` [PATCH V3] " 'Arulpandiyan Vadivel' via isar-users
2025-01-17 13:25 ` 'Jan Kiszka' via isar-users
2025-01-17 17:37 ` 'Arulpandiyan Vadivel' via isar-users
2025-01-17 17:40 ` 'Jan Kiszka' via isar-users
2025-01-17 17:44 ` 'Jan Kiszka' via isar-users
2025-01-17 17:59 ` 'Arulpandiyan Vadivel' via isar-users
2025-01-17 18:02 ` [PATCH V4] " 'Arulpandiyan Vadivel' via isar-users
2025-01-21 9:47 ` [PATCH] " 'Arulpandiyan Vadivel' via isar-users
2025-02-06 11:50 ` 'Vadivel, Arulpandiyan' via isar-users
2025-02-07 7:48 ` Uladzimir Bely
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=8b5a84a18e2a506ad199c7c034d18dd83d5b3f3d.camel@siemens.com \
--to=isar-users@googlegroups.com \
--cc=arulpandiyan.vadivel@siemens.com \
--cc=cedric.hombourger@siemens.com \
--cc=srikanth.krishnakar@siemens.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox