From: Uladzimir Bely <ubely@ilbers.de>
To: Arulpandiyan Vadivel <arulpandiyan.vadivel@siemens.com>,
isar-users@googlegroups.com
Subject: Re: [PATCH] linux-custom: support to add linux-libc-dev package with kernel name
Date: Fri, 07 Feb 2025 10:48:40 +0300 [thread overview]
Message-ID: <ef269256329920679936e19979be59ab65ef6c16.camel@ilbers.de> (raw)
In-Reply-To: <20250121094736.99179-1-arulpandiyan.vadivel@siemens.com>
On Tue, 2025-01-21 at 15:17 +0530, 'Arulpandiyan Vadivel' via isar-
users wrote:
> 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 / linux-libc-dev-
> ${DISTRO_ARCH}-cross
> and a Provides: clause.
>
> Signed-off-by: Arulpandiyan Vadivel
> <arulpandiyan.vadivel@siemens.com>
>
> ---
> Changes since v4
> - Updated KERNEL_PKG_LIBC_HEADERS path with KERNEL_NAME_PROVIDED
>
> Changes since v3
> - Updated commit message to include cross packages
> - updated doc/custom_kernel.md documentation
>
> Changes since v2
> - Updated commit message as suggested
> - Added KERNEL_NAME_PROVIDED for cross packages of linux-libc-dev as
> well
>
> ---
> ---
> RECIPE-API-CHANGELOG.md | 12
> ++++++++++++
> doc/custom_kernel.md | 4 ++--
> meta/recipes-kernel/linux/files/debian/control.tmpl | 10 +++++++---
> .../linux/files/debian/isar/common.tmpl | 2 +-
> .../linux/files/debian/isar/install.tmpl | 2 +-
> meta/recipes-kernel/linux/linux-custom.inc | 2 ++
> 6 files changed, 25 insertions(+), 7 deletions(-)
>
> diff --git a/RECIPE-API-CHANGELOG.md b/RECIPE-API-CHANGELOG.md
> index f310553a..64c0f34a 100644
> --- a/RECIPE-API-CHANGELOG.md
> +++ b/RECIPE-API-CHANGELOG.md
> @@ -702,3 +702,15 @@ enable cross-compilation. Otherwize
> ISAR_CROSS_COMPILE = "0" now should be set
> in local.conf to disable cross-compilation for all the recipes.
> Sample local.conf from meta-isar used by isar-init-build-env is also
> changed
> to enable cross-compilation by default.
> +
> +### Enable linux-libc-dev package with KERNEL_NAME
> +
> +By default linux-libc-dev and linux-libc-dev-${DISTRO_ARCH}-cross
> package
> +was generated for architecture it builds for.
> +
> +This change helps to generate the `linux-libc-dev-${KERNEL_NAME}`
> and
> +`linux-libc-dev-${DISTRO_ARCH}-cross-${KERNEL_NAME}`.
> +For example, If `KERNEL_NAME` is configured as `foo` for arm64, now
> +`linux-libc-dev-foo` and `linux-libc-dev-arm64-cross-foo` package
> will be
> +generated. This will help to have multiple versions of linux-libc-
> dev packages
> +available for respective bsps in apt feeds.
> diff --git a/doc/custom_kernel.md b/doc/custom_kernel.md
> index ce5f1bf7..2dca577c 100644
> --- a/doc/custom_kernel.md
> +++ b/doc/custom_kernel.md
> @@ -51,9 +51,9 @@ 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}` package to support
> user-land builds
>
> - 11. Only build/ship the `linux-libc-dev` package if instructed to
> + 11. Only build/ship the `linux-libc-dev-${KERNEL_NAME}` package if
> instructed to
> (`KERNEL_LIBC_DEV_DEPLOY` equals to `"1"`)
>
> 12. Support both native and cross compiles (`ISAR_CROSS_COMPILE`)
> diff --git a/meta/recipes-kernel/linux/files/debian/control.tmpl
> b/meta/recipes-kernel/linux/files/debian/control.tmpl
> index ec0da1ab..a79b86c4 100644
> --- a/meta/recipes-kernel/linux/files/debian/control.tmpl
> +++ b/meta/recipes-kernel/linux/files/debian/control.tmpl
> @@ -22,19 +22,23 @@ 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: ${KERNEL_LIBC_DEV_ARCH}
> Description: Linux support headers for userspace development
> This package provides userspaces headers from the Linux kernel.
> These headers
> are used by the installed headers for GNU glibc and other system
> libraries.
>
> -Package: linux-libc-dev-${DISTRO_ARCH}-cross
> +Package: linux-libc-dev-${DISTRO_ARCH}-cross-${KERNEL_NAME_PROVIDED}
> Build-Profiles: <!nolibcdev cross !kbuild>
> Section: devel
> +Conflicts: linux-kernel-headers-${DISTRO_ARCH}-cross
> Provides: linux-kernel-headers-${DISTRO_ARCH}-cross
> +Replaces: linux-kernel-headers-${DISTRO_ARCH}-cross
> Architecture: all
> Description: Linux Kernel Headers for development (for cross-
> compiling)
> This package provides 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 f9cc2f02..b004214f 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 6d742f02..290a7d56 100644
> --- a/meta/recipes-kernel/linux/files/debian/isar/install.tmpl
> +++ b/meta/recipes-kernel/linux/files/debian/isar/install.tmpl
> @@ -248,7 +248,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 77700a5d..4f68f4cd 100644
> --- a/meta/recipes-kernel/linux/linux-custom.inc
> +++ b/meta/recipes-kernel/linux/linux-custom.inc
> @@ -152,7 +152,9 @@ RECIPE_PROVIDES = " \
> linux-image-${KERNEL_NAME_PROVIDED} \
> linux-headers-${KERNEL_NAME_PROVIDED} \
> linux-libc-dev \
> + linux-libc-dev-${KERNEL_NAME_PROVIDED} \
> linux-libc-dev-${DISTRO_ARCH}-cross \
> + linux-libc-dev-${DISTRO_ARCH}-cross-${KERNEL_NAME_PROVIDED} \
> linux-image-${KERNEL_NAME_PROVIDED}-dbg \
> linux-kbuild-${KERNEL_NAME_PROVIDED} \
> ${BPN}-pseudo-native \
> --
> 2.39.5
>
Applied to next, thanks.
--
Best regards,
Uladzimir.
--
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/ef269256329920679936e19979be59ab65ef6c16.camel%40ilbers.de.
prev parent reply other threads:[~2025-02-07 7:48 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
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 [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=ef269256329920679936e19979be59ab65ef6c16.camel@ilbers.de \
--to=ubely@ilbers.de \
--cc=arulpandiyan.vadivel@siemens.com \
--cc=isar-users@googlegroups.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