From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Mon, 03 Nov 2025 12:52:41 +0100 X-Sieve: CMU Sieve 2.4 Received: from mail-wr1-f55.google.com (mail-wr1-f55.google.com [209.85.221.55]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 5A3Bqbf2001297 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Mon, 3 Nov 2025 12:52:38 +0100 Received: by mail-wr1-f55.google.com with SMTP id ffacd0b85a97d-429c93a2939sf625130f8f.2 for ; Mon, 03 Nov 2025 03:52:38 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1762170741; cv=pass; d=google.com; s=arc-20240605; b=TWLEEq4xcxAiUjded44LPpFUmKHUVb/9VR9RvH3Cfr1Udm0XsIov0eu6KKmApQ/aVg mdwJfbAVOqEh8lO70UIijM+2vSkZ4kjqMQB8EG/7GVb1Mo2Y/ZqHGe8TBSz8q1Nlxln6 noA0e9v7UYRwC/b+v3Fn/SKXqKl/0i0DgFmCoZjMoe/qsHncP5q3dsihlM3tSCufQkyj uQl9jFlXtygdi6OuF43QUYTkPhWuUFQLP53DQronSHpAOaX6e70H5bpWD46HifQtMaXN qNkirI8+pd1JCnlKjmcm232+zt+LIxulDROCVq9/RpJGn3o5tEa3c5dqjiafs0Z1aV+C SLVg== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to:feedback-id:mime-version :references:in-reply-to:message-id:date:subject:to:from :dkim-signature; bh=KMXb3IrGBAfKg6Kyu6zlFqgOuhwrj0O+CPQDzBc3RNE=; fh=am8oLDbx4MQIn2RbJgS2BVXK5oCoWo0/hG/VIekHHKA=; b=FurPKkTWQLvcCkswpVpJac97asSsgAAAtv2JgeWTXfGw9I8RBXjhRHWaG38SH3VHrK WWXYpoetwe/vwjDRsB20VdiaLY+ZtyxJ+o5ioQDpsOH0+NJyk6Z/6A1wSZmthxBy4pdR I9I4eUXFfMd3Ovn0ZRlHzKvTjOOo6Y/z0tBU9/Dda+bvAQLUl8X5a1Cc+spYF5/A08tu mveBYr+Jsq3uvwstc7FjMT+iw7stZxIVc7IzfZ5tlbgYanxmJgC0cGGYEzH0lbgqAf7j aCHvwnxt8xRjmhvyfD4Xg3s2WVOZJGRYp6tBa4sk1H/rNWbbvI+rR2Cy9Q/aNDhsC/wz 4tzQ==; darn=ilbers.de ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=mUnKHM0z; spf=pass (google.com: domain of fm-294854-202511031152164a2698cf9e00020790-ot4xnt@rts-flowmailer.siemens.com designates 185.136.64.226 as permitted sender) smtp.mailfrom=fm-294854-202511031152164a2698cf9e00020790-OT4xnT@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20230601; t=1762170741; x=1762775541; darn=ilbers.de; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:feedback-id :mime-version:references:in-reply-to:message-id:date:subject:to:from :from:to:cc:subject:date:message-id:reply-to; bh=KMXb3IrGBAfKg6Kyu6zlFqgOuhwrj0O+CPQDzBc3RNE=; b=nvlczVzylADMQNWJFnkAMZaK4bUAwC5y6R+GLjfK2gpxhJXkCHkFgcniwbciGI3SpL wLLX2BkxLg82W1kY+oIhR6xR9nH9JkOpe3dE6TX3oAf1bYEOSn/aQDX4SLoR1VLTDbEw gmwnZXBrAqtXHBGD07aOV79yQ5QKsjJnv87q/XTGnNRMiqoXvmZ9jLm/1GoLs44OfwVf k49h82GfeqfYTnFUekVs375sNnGV1DRTD+uUO36lyttwxR0UcHFmvmutI7Rjo4ZSd0/K zMc+dTIS2nzsNJ+6UvusVWXdtyotx6x9kuAoQsl4ItENE1c4H51JRx3sCKv1x0bv502V d51g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1762170741; x=1762775541; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:feedback-id :mime-version:references:in-reply-to:message-id:date:subject:to:from :x-beenthere:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=KMXb3IrGBAfKg6Kyu6zlFqgOuhwrj0O+CPQDzBc3RNE=; b=cdyy5gW8x3xom4300d0P4Q5426lr8CQGW10LVjgOjVK7oP7r1tdXMDkR2pD7Zzfb3a HeJebpm6bgNVzZCwrt6WEW5yycm60gfqKvZmJ+CPzqL0zZ9UuEIFLg1Z/YXNWYP35yEN FaUHhXaVztniYzx1P/A8u9DfXlxYIyQNnhcyWQlK0D5IYY5XqDGtcVTKHF9EPxAaSP4k kMzIfnICx4rukNfHFe+ACVhyw9UV96+HP1GDVWzsK+ZNEV+z6Og+GYx9cwvb15e0Vqa4 Dfj5VKcVUqsjXjgbZ4o+kuT+oIplGEQy9Z9Lp2f3VJ4Fxg9MHVBsXLVwW2dbCwVsde0r /hJg== X-Forwarded-Encrypted: i=2; AJvYcCUa1OrP03UItHth5u/9DeuQHB4BUU3YSEkp65MAG5p++veSWEbwv0x5WZaOdYJJAQUy/ZEB@ilbers.de X-Gm-Message-State: AOJu0Yzcbg5RDTBUPDTVwMYjBsFzZjdUy8x0kkbtTeLRZGurLfhuq6Bi mE2ZDtugz4L9RDmg31sktqFKgZRQ0L4j0ibGgHPxazZz2x33nuvbZDZN X-Google-Smtp-Source: AGHT+IG28snzf8AEcnBR0hqwrF4+juaBrBDCMD8Jrm6BACvjLCZb01iWXYzjiLBTzwaVgygzv4MclQ== X-Received: by 2002:a5d:5f95:0:b0:429:b7cd:47ff with SMTP id ffacd0b85a97d-429bd6a8e04mr11143321f8f.40.1762170740981; Mon, 03 Nov 2025 03:52:20 -0800 (PST) X-BeenThere: isar-users@googlegroups.com; h="Ae8XA+alpYOIPViBQlCD4J8gKRNCxDTrm/6AzlyDx4uicU1/Eg==" Received: by 2002:a05:6000:24c4:b0:426:fc42:689f with SMTP id ffacd0b85a97d-429b4e0dd00ls2076803f8f.2.-pod-prod-05-eu; Mon, 03 Nov 2025 03:52:17 -0800 (PST) X-Received: by 2002:a05:6000:1869:b0:429:cc39:99bc with SMTP id ffacd0b85a97d-429cc399bf6mr4641531f8f.10.1762170737520; Mon, 03 Nov 2025 03:52:17 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1762170737; cv=none; d=google.com; s=arc-20240605; b=fJz5/CQHFCXmIjfPhdx/JIJCyx+jQeImKukwzIJHQYNvlsnlZSSAZfz94Pr6pIeryQ 4tgnQPUDGp7Krye3BWqQD1B/BOs6itvZmeLahdPnuLTUgUcBcohDXArLwLiyiLJ5JYPm 9VmvYm9dBk/gtyETLORKzE2dp5QXuDv/PBfu780xWmExr3rO1vlI3A+eAbaT3J6mvMWR ZHNMQcey5vM2dWnoXMa6HK3gkRefFDkjq6sXyY83yNREkGmjqv6sYit2Zp8TMdXD0ukg yPbKmGObY3vQEWivbIVO2ou04ijstyagTTziPLXXQ0sbGG7EXGHaSk+JvUo5+42LKT9Z hqnA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=feedback-id:content-transfer-encoding:mime-version:references :in-reply-to:message-id:date:subject:to:from:dkim-signature; bh=+hR2M8rs1bN7R8akyxfyT9o4XmiiUA0ZqtLlih/whus=; fh=hOBXq6nisExkIRIwN8IDOmOCLKwX8PM0ANlxQbNMEqA=; b=OsLjQG8Ox+ISPwjoCtInMGyKXpSTX9HKzOiZSEp6vOs8x8ZBOw8cD8FYDt5v8tn0CT nuPTg2EVnj6IHgHSiXecTmwmCnTunURljyFzZzqj+Mjh+yB5G/teOOfygSHf/2/xUu9w oNHd21oKThAccXLRfMHkkcw/OOAg7XZgZtYXbQNEcKPmWDDPIp2TsogeN5FNxE3/EUgH WWqXAnWtyzJlCzfBWPUEREwpv3WsR6ptBbMXLvqiSXW3CuKGOo4csA++LYFb6VIhAJvw 1FXaCv0DY6JRQjfytbi6crIvHXgbAOk3IO/XGSNgWMohnp0gn6ora3EkWGf5+1J0+SSh zSjw==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=mUnKHM0z; spf=pass (google.com: domain of fm-294854-202511031152164a2698cf9e00020790-ot4xnt@rts-flowmailer.siemens.com designates 185.136.64.226 as permitted sender) smtp.mailfrom=fm-294854-202511031152164a2698cf9e00020790-OT4xnT@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from mta-64-226.siemens.flowmailer.net (mta-64-226.siemens.flowmailer.net. [185.136.64.226]) by gmr-mx.google.com with ESMTPS id ffacd0b85a97d-429cf2d4cabsi95113f8f.1.2025.11.03.03.52.17 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 03 Nov 2025 03:52:17 -0800 (PST) Received-SPF: pass (google.com: domain of fm-294854-202511031152164a2698cf9e00020790-ot4xnt@rts-flowmailer.siemens.com designates 185.136.64.226 as permitted sender) client-ip=185.136.64.226; Received: by mta-64-226.siemens.flowmailer.net with ESMTPSA id 202511031152164a2698cf9e00020790 for ; Mon, 03 Nov 2025 12:52:17 +0100 From: "'Jan Kiszka' via isar-users" To: isar-users Subject: [PATCH 05/27] linux-custom: Migrate to a bbclass Date: Mon, 3 Nov 2025 12:51:53 +0100 Message-ID: <57c97fea3642d7c13aa88a9ab2089192f95869a8.1762170735.git.jan.kiszka@siemens.com> In-Reply-To: References: MIME-Version: 1.0 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-294854:519-21489:flowmailer X-Original-Sender: jan.kiszka@siemens.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=mUnKHM0z; spf=pass (google.com: domain of fm-294854-202511031152164a2698cf9e00020790-ot4xnt@rts-flowmailer.siemens.com designates 185.136.64.226 as permitted sender) smtp.mailfrom=fm-294854-202511031152164a2698cf9e00020790-OT4xnT@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com X-Original-From: Jan Kiszka Reply-To: Jan Kiszka Content-Type: text/plain; charset="UTF-8" Precedence: list Mailing-list: list isar-users@googlegroups.com; contact isar-users+owners@googlegroups.com List-ID: X-Spam-Checked-In-Group: isar-users@googlegroups.com X-Google-Group-Id: 914930254986 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , X-Spam-Status: No, score=-4.9 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,MAILING_LIST_MULTI, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_MSPIKE_H2,RCVD_IN_RP_CERTIFIED, RCVD_IN_RP_RNBL,RCVD_IN_RP_SAFE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on shymkent.ilbers.de X-TUID: bak2XhuDuqQr From: Jan Kiszka "inherit linux-kernel" is shorter and a more common pattern compared to OE/yocto. Keep the original .inc file as transitional helper, issuing a warning when it's used with a migration suggestion. Signed-off-by: Jan Kiszka --- .../linux-kernel.bbclass} | 2 +- meta/recipes-kernel/linux/linux-custom.inc | 316 +----------------- 2 files changed, 7 insertions(+), 311 deletions(-) copy meta/{recipes-kernel/linux/linux-custom.inc => classes-recipe/linux-kernel.bbclass} (99%) diff --git a/meta/recipes-kernel/linux/linux-custom.inc b/meta/classes-recipe/linux-kernel.bbclass similarity index 99% copy from meta/recipes-kernel/linux/linux-custom.inc copy to meta/classes-recipe/linux-kernel.bbclass index 601908db..8bf26f62 100644 --- a/meta/recipes-kernel/linux/linux-custom.inc +++ b/meta/classes-recipe/linux-kernel.bbclass @@ -51,7 +51,7 @@ KERNEL_DEFCONFIG ??= "" HEADERS_INSTALL_EXTRA ??= "" # Add our template meta-data to the sources -FILESPATH:append := ":${FILE_DIRNAME}/files" +FILESPATH:append = ":${LAYERDIR_core}/recipes-kernel/linux/files" SRC_URI += "file://debian" # Variables and files that make our templates diff --git a/meta/recipes-kernel/linux/linux-custom.inc b/meta/recipes-kernel/linux/linux-custom.inc index 601908db..c372ec56 100644 --- a/meta/recipes-kernel/linux/linux-custom.inc +++ b/meta/recipes-kernel/linux/linux-custom.inc @@ -1,317 +1,13 @@ -# Custom kernel build +# Transitional include for linux-kernel.bbclass # # This software is a part of ISAR. -# Copyright (c) Siemens AG, 2022 -# Copyright (c) Mentor Graphics, a Siemens business, 2022 +# Copyright (c) Siemens AG, 2025 # # SPDX-License-Identifier: MIT -# Settings that would typically be done from the custom kernel recipe -# ------------------------------------------------------------------- +inherit linux-kernel -CHANGELOG_V = "${PV}+${PR}" -DESCRIPTION ?= "Custom kernel" -MAINTAINER ?= "isar-users " -DISTRIBUTOR ?= "ISAR" - -# pinned due to known or possible issues with compat 12 -DEBIAN_COMPAT:buster = "10" - -KBUILD_DEPENDS ?= "build-essential:native, \ - libelf-dev:native, \ - libncurses-dev:native, \ - libssl-dev:native, \ - bc, \ - bison, \ - cpio, \ - dwarves, \ - flex, \ - git, \ - kmod, \ - linux-image-${KERNEL_NAME_PROVIDED}:${DISTRO_ARCH} , \ - rsync," - -KERNEL_DEBIAN_DEPENDS ?= "initramfs-tools | linux-initramfs-tool, \ - kmod, \ - linux-base (>= 4.3~)," - -KERNEL_HEADERS_DEBIAN_DEPENDS ?= "" - -KERNEL_LIBC_DEV_ARCH_ALL = "0" -KERNEL_LIBC_DEV_ARCH_ALL:trixie = "1" -KERNEL_LIBC_DEV_DEPLOY ?= "0" - -# Settings that may be changed on a per distro, machine or layer basis -# -------------------------------------------------------------------- - -LINUX_VERSION_EXTENSION ?= "" - -KERNEL_DEFCONFIG ??= "" - -HEADERS_INSTALL_EXTRA ??= "" - -# Add our template meta-data to the sources -FILESPATH:append := ":${FILE_DIRNAME}/files" -SRC_URI += "file://debian" - -# Variables and files that make our templates -# ------------------------------------------- - -TEMPLATE_FILES += " \ - debian/control.tmpl \ - debian/isar/build.tmpl \ - debian/isar/clean.tmpl \ - debian/isar/common.tmpl \ - debian/isar/configure.tmpl \ - debian/isar/install.tmpl \ - debian/isar/version.cfg.tmpl \ - debian/linux-image.postinst.tmpl \ - debian/linux-image.postrm.tmpl \ - debian/linux-image.preinst.tmpl \ - debian/linux-image.prerm.tmpl \ - debian/rules.tmpl \ -" - -TEMPLATE_VARS += " \ - KBUILD_DEPENDS \ - KERNEL_ARCH \ - KERNEL_DEBIAN_DEPENDS \ - KERNEL_BUILD_DIR \ - KERNEL_FILE \ - KERNEL_HEADERS_DEBIAN_DEPENDS \ - KERNEL_LIBC_DEV_ARCH \ - LINUX_VERSION_EXTENSION \ - KERNEL_NAME_PROVIDED \ - KERNEL_CONFIG_FRAGMENTS \ - KCFLAGS \ - KAFLAGS \ - DISTRIBUTOR \ - KERNEL_EXTRA_BUILDARGS \ - HEADERS_INSTALL_EXTRA \ - ISAR_ENABLE_COMPAT_ARCH \ - COMPAT_DISTRO_ARCH \ - DEBIAN_COMPAT \ -" - -inherit dpkg -inherit kbuildtarget - -# Add custom cflags to the kernel build -KCFLAGS ?= "-fdebug-prefix-map=${CURDIR}=." -KAFLAGS ?= "-fdebug-prefix-map=${CURDIR}=." - -# Add extra arguments to the kernel build -KERNEL_EXTRA_BUILDARGS ??= "" - -# Derive name of the kernel packages from the name of this recipe -KERNEL_NAME_PROVIDED ?= "${@ d.getVar('BPN').partition('linux-')[2]}" - -# Determine cross-profile override -python() { - if d.getVar("DISTRO_ARCH") != d.getVar("HOST_ARCH") and bb.utils.to_boolean(d.getVar("ISAR_CROSS_COMPILE")) and "class-native" not in d.getVar("OVERRIDES").split(":"): - d.appendVar("OVERRIDES", ":cross-profile") -} - -# Default profiles and provides -BUILD_PROFILES = "kernel kbuild" - -# We only offer the -kbuildtarget variant when actually cross compiling -BBCLASSEXTEND:append:cross-profile = " kbuildtarget" - -# When cross-profile is active: -# build only kernel (including config) with the default variant of the recipe -BUILD_PROFILES:cross-profile = "kernel" - -# -native: kbuild package for host -BUILD_PROFILES:class-native = "kbuild" -RECIPE_PROVIDES:class-native = " \ - linux-headers-${KERNEL_NAME_PROVIDED} \ - linux-kbuild-${KERNEL_NAME_PROVIDED}" -# Use pseudo target to pull in the base variant of the recipe. -# Will be auto-extended with -native by multiarch.bbclass. -# Using DEPENDS instead of RDEPENDS to ensure creation of kernel including -# pregenerated kernel config before host specific linux-kbuild package build -DEPENDS:class-native += "${BPN}-pseudo" - -# -kbuildtarget: kbuild package for target, enforcing non-cross-build -BUILD_PROFILES:class-kbuildtarget = "kbuild" -RECIPE_PROVIDES:class-kbuildtarget = " \ - linux-headers-${KERNEL_NAME_PROVIDED} \ - linux-kbuild-${KERNEL_NAME_PROVIDED}" -# Using DEPENDS instead of RDEPENDS to ensure creation of kernel including -# pregenerated kernel config before target specific linux-kbuild package build -DEPENDS:class-kbuildtarget = "${BPN}" -ISAR_CROSS_COMPILE:class-kbuildtarget = "0" - -# Make bitbake know we will be producing linux-image and linux-headers packages -# Also make it know about other packages from control -RECIPE_PROVIDES = " \ - linux-image-${KERNEL_NAME_PROVIDED} \ - linux-headers-${KERNEL_NAME_PROVIDED} \ - linux-libc-dev \ - linux-libc-dev-${DISTRO_ARCH}-cross \ - linux-image-${KERNEL_NAME_PROVIDED}-dbg \ - linux-kbuild-${KERNEL_NAME_PROVIDED} \ - ${BPN}-pseudo-native \ -" -# When cross-profile is active: -# kbuild package is provided by -native or -kbuildtarget variant. Also headers -# provisioning moves over to ensure those variants are pulled, although the -# package itself is still built by the base recipe. -RECIPE_PROVIDES:remove:cross-profile = " \ - linux-headers-${KERNEL_NAME_PROVIDED} \ - linux-kbuild-${KERNEL_NAME_PROVIDED}" - -# As the multiarch class will not append -compat to -pseudo-native, we end up -# with two providers of it. Remove the wrong one. -RECIPE_PROVIDES:remove:class-compat = "${BPN}-pseudo-native" - -# Append headers depends -HEADERS_DEPENDS = ", linux-kbuild-${KERNEL_NAME_PROVIDED} | linux-kbuild-${KERNEL_NAME_PROVIDED}-${DISTRO_ARCH}-cross" -KERNEL_HEADERS_DEBIAN_DEPENDS:append = "${HEADERS_DEPENDS}" - -# Append provides -PROVIDES += "${RECIPE_PROVIDES}" - -# Append build profiles -DEB_BUILD_PROFILES += "${BUILD_PROFILES}" - -def get_kernel_arch(d): - distro_arch = d.getVar("DISTRO_ARCH") - if distro_arch in ["amd64", "i386"]: - kernel_arch = "x86" - elif distro_arch == "arm64": - kernel_arch = "arm64" - elif distro_arch == "armhf": - kernel_arch = "arm" - elif distro_arch == "mipsel": - kernel_arch = "mips" - elif distro_arch == "riscv64": - kernel_arch = "riscv" - else: - kernel_arch = "" - return kernel_arch - -KERNEL_ARCH ??= "${@get_kernel_arch(d)}" - -# set KERNEL_FILE without depending on package arch used in bitbake.conf -KERNEL_FILE:forcevariable = "${@ 'vmlinux' if d.getVar('KERNEL_ARCH') in ['mipsel', 'riscv', 'arm64'] else 'vmlinuz'}" - -def config_fragments(d): - fragments = [] - sources = d.getVar("SRC_URI").split() - for s in sources: - _, _, local, _, _, parm = bb.fetch.decodeurl(s) - apply = parm.get("apply") - if apply == "no": - continue - base, ext = os.path.splitext(os.path.basename(local)) - if ext and ext in (".cfg"): - fragments.append(local) - return fragments - -def get_additional_build_profiles(d): - profiles = d.getVar('BASE_DISTRO') - if not bb.utils.to_boolean(d.getVar('KERNEL_LIBC_DEV_DEPLOY')): - profiles += ' nolibcdev' - elif bb.utils.to_boolean(d.getVar('KERNEL_LIBC_DEV_ARCH_ALL')): - profiles += ' libcdev-arch-all' - return profiles - -KERNEL_LIBC_DEV_ARCH = "${@ bb.utils.contains('DEB_BUILD_PROFILES', 'libcdev-arch-all', 'all\nMulti-Arch: foreign', 'any', d) }" -DEB_BUILD_PROFILES += "${@get_additional_build_profiles(d)}" - -do_prepare_build:prepend() { - # copy meta-data over to source tree - rm -rf ${S}/debian - cp -r ${WORKDIR}/debian ${S}/ - - # remove templates from the source tree - find ${S}/debian -name *.tmpl | xargs rm -f - - # rename install/remove hooks to match user-specified name for our linux-image package - mv ${S}/debian/linux-image.postinst ${S}/debian/linux-image-${KERNEL_NAME_PROVIDED}.postinst - mv ${S}/debian/linux-image.postrm ${S}/debian/linux-image-${KERNEL_NAME_PROVIDED}.postrm - mv ${S}/debian/linux-image.preinst ${S}/debian/linux-image-${KERNEL_NAME_PROVIDED}.preinst - mv ${S}/debian/linux-image.prerm ${S}/debian/linux-image-${KERNEL_NAME_PROVIDED}.prerm - - # produce a changelog for our kernel build - deb_add_changelog - - # make sure user-specified directories do exist in ${S} - if [ -n "${HEADERS_INSTALL_EXTRA}" ]; then - for d in ${HEADERS_INSTALL_EXTRA}; do - [ -d ${S}/${d} ] || { - bbfatal "HEADERS_INSTALL_EXTRA: '${d}' not found in \${S}!" - } - done - fi -} - -# build directory for our "full" kernel build -KERNEL_BUILD_DIR = "build-full" - -def get_kernel_config_target(d): - kernel_defconfig = d.getVar('KERNEL_DEFCONFIG') - - config_target = kernel_defconfig - - if kernel_defconfig: - workdir=d.getVar('WORKDIR') - if os.path.isfile(workdir + "/" + kernel_defconfig): - config_target = "olddefconfig" - else: - config_target = "defconfig KBUILD_DEFCONFIG=" + kernel_defconfig - else: - config_target = "defconfig" - - return config_target - -def get_kernel_config_fragments(d): - src_frags = " ".join(config_fragments(d)) - out_frags = " ".join(map(lambda frag: 'debian/fragments/' + frag, config_fragments(d))) - - linux_version_extension = d.getVar('LINUX_VERSION_EXTENSION') - if linux_version_extension: - out_frags += " debian/isar/version.cfg" - - return out_frags - -KERNEL_CONFIG_FRAGMENTS = "${@get_kernel_config_fragments(d)}" - -dpkg_configure_kernel() { - grep -q "KERNEL_CONFIG_TARGET=" ${S}/debian/isar/configure || - cat << EOF | sed -i '/^do_configure() {/ r /dev/stdin' ${S}/debian/isar/configure - KERNEL_CONFIG_TARGET="${@get_kernel_config_target(d)}" -EOF - - rm -rf ${S}/${KERNEL_BUILD_DIR} && mkdir -p ${S}/${KERNEL_BUILD_DIR} - if [ -n "${KERNEL_DEFCONFIG}" ]; then - if [ -e "${WORKDIR}/${KERNEL_DEFCONFIG}" ]; then - cp ${WORKDIR}/${KERNEL_DEFCONFIG} ${S}/${KERNEL_BUILD_DIR}/.config - fi - fi - - # copy config fragments over to the kernel tree - src_frags="${@ " ".join(config_fragments(d)) }" - rm -rf ${S}/debian/fragments - for frag in ${src_frags}; do - basedir=$(dirname ${frag}) - mkdir -p ${S}/debian/fragments/${basedir} - cp ${WORKDIR}/${frag} ${S}/debian/fragments/${basedir}/ - done -} - -get_localversion_auto() { - if grep -q "^CONFIG_LOCALVERSION_AUTO=y" ${S}/${KERNEL_BUILD_DIR}/.config; then - cd ${S} - if head=$(git rev-parse --verify --short HEAD 2>/dev/null); then - echo "-g${head}" >${S}/.scmversion - fi - fi -} - -do_dpkg_source:prepend() { - dpkg_configure_kernel - get_localversion_auto +do_warn_custom_inc() { + bbwarn "Please migrate from \"require recipes-kernel/linux/linux-custom.inc\" to \"inherit linux-kernel\"" } +addtask warn_custom_inc before do_unpack -- 2.51.0 -- 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/57c97fea3642d7c13aa88a9ab2089192f95869a8.1762170735.git.jan.kiszka%40siemens.com.