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; Wed, 25 Mar 2026 16:23:06 +0100 X-Sieve: CMU Sieve 2.4 Received: from mail-ed1-f60.google.com (mail-ed1-f60.google.com [209.85.208.60]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 62PFN5Xd013860 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Wed, 25 Mar 2026 16:23:05 +0100 Received: by mail-ed1-f60.google.com with SMTP id 4fb4d7f45d1cf-66abcbae876sf409519a12.2 for ; Wed, 25 Mar 2026 08:23:05 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1774452180; cv=pass; d=google.com; s=arc-20240605; b=diVK99uIbVdL2b6DX23vXaEIfkXx4m7aofMLpF0HUz11NesO09rYHBy2GDCZFtAC/h jafDnnzgCiz7hY6U16y7Ie4CUq4zB8VtTqzB+QM+giuxH3nVl+6djC3V9TAXcaEU2DRE Qp8Lc1kSdw7COqMQiJMjuLiqT+ZlUR5RRC6Mw7tmD6mcbsR/g5sTuadhlHkmGe1KxdH9 BSinttBeCkGOV9dt5c29vyPKMbMzfj1oICG0QgadlbeD5EpciOFiHOyyWHDpRThl7YWS qKNzsBB/QCG28KVtV72AOiJILfmhACMzCCIC4eXxfi0vmFNNgUaNvek9SnyHM4w16Hy4 Bx0w== 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:in-reply-to:from:content-language :references:to:subject:user-agent:mime-version:date:message-id :sender:dkim-signature; bh=RACygomBf0b+qGe3kqZJtv4pJo/juZrkGP+bcPe9TXk=; fh=dMahohCTqJuXbzSvplNg1LmbBMrve8SGs89ejLUsdpU=; b=P/xNCgcPv5Zxz1OomvER4fXveP0W5JejRtAzTEhjgZOMAN8DbY10ls/TrDvcUUlI27 DRt0K9xX2r2ntHKHyEfMmhwYaDd5QoLumEUHHLsQMLyHFhU3RhjZWdeAccgGdeGOE3Tx DDxnErDA2UrgTVqm7gDQrMTyrEYYWWOibyQJjH8LUDuYi1w75G04Imt8Cww7S3I20+vp r3LCHsTN9/VBvJEmIZoEWbtZ8pl118X/GGx+/xOUif8ezlakxpVJ8BTSvCSNkkm2LTvj 7q4GcwLRPyF9yLau6ut8UayLfkzb11MOb5luqOPY5d9AF2/GHCiWrwNyKCIOROMCBIpV edjA==; darn=ilbers.de ARC-Authentication-Results: i=2; gmr-mx.google.com; spf=pass (google.com: domain of wzh@ilbers.de designates 85.214.156.166 as permitted sender) smtp.mailfrom=wzh@ilbers.de DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20251104; t=1774452180; x=1775056980; darn=ilbers.de; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:x-original-authentication-results :x-original-sender:in-reply-to:from:content-language:references:to :subject:user-agent:mime-version:date:message-id:sender:from:to:cc :subject:date:message-id:reply-to; bh=RACygomBf0b+qGe3kqZJtv4pJo/juZrkGP+bcPe9TXk=; b=bTxtsiEM4VHQbAxjesXTyzsgTF30GwbJ2vvlnT0JeRGNinzRZ09LP1pQXExHQ/ZiJm jOafkqz64IVPeY4KBLODbeRX1uPCC/d+71EktS6zVdnMW8Jtx/IgKM+Qm2txPEt08YLP iEqRq3pLK0iBoOWamJpk/VkJ91yfUa26RiInal3hauSazz7dnRpdc36nFaFVCJ6EdrkN n4WCR7h4xFCsORYURaZLyM2q7+A6Vh0IAMC5xSsc/5S6j6JAIrMeds24sPPs0MtJEeb1 QoIZ/SDXUDZOAodDbLxptLpG3efy3PTaI49HOfy8HxAyFQEJXxWlf0kYOztx55ihMMn0 1Nog== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774452180; x=1775056980; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence :x-original-authentication-results:x-original-sender:in-reply-to :from:content-language:references:to:subject:user-agent:mime-version :date:message-id:x-beenthere:x-gm-message-state:sender:from:to:cc :subject:date:message-id:reply-to; bh=RACygomBf0b+qGe3kqZJtv4pJo/juZrkGP+bcPe9TXk=; b=GTfZVE0dkDKNygnMzSDRvTYSS70hoIZurPvXbIKA9vA9wlcZftVaKjMVFplIqyRiPR 4XQ90VktfpGI1QtLpRlDyyn74/Q/lihliJ7VM7CUVazp/Y4ekmoA1O22Gx6TuqZYvvyx pmAfU+W8vpqqVx7M6NKBu2Q++/V67yayUWGx/faAiz0TSJZZ/C50ssweH9gD3coBYQQq OzFnD8IgL5xxY0nkhMpZAkTBIujS528WBg2NMirKqHhoC8TvwLC+XXJQ24UR75C6PnZy 9jR6+lLp5YJzFG2NjwW0qUr5HTh9qbr8EPo8i+n8JwAakrVGgYGwtj6/xk3y7vofChdy 828g== Sender: isar-users@googlegroups.com X-Forwarded-Encrypted: i=2; AJvYcCX0yeiapj529ueoqZSVDUMeRqFe7edJEQybHEt48nqy7OSwp2AqN7mJ27FeNW2wCBMMCJvL@ilbers.de X-Gm-Message-State: AOJu0YzUS9e/8O9+nzmebBVBbAKRH2ryUHaTI3KZMFD+jaMi4VjuwoU8 DzsYnx49TVQhWgBPYLWDkUefX6D72YUR+MCL+VDSxNKsbQGnFSSDUlKj X-Received: by 2002:a05:6402:44d3:b0:65f:9c21:e68e with SMTP id 4fb4d7f45d1cf-66a826185a8mr2241214a12.5.1774452179946; Wed, 25 Mar 2026 08:22:59 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com; h="AYAyTiLQyitwtMlvTsegP4SF3ALRIMVHGyJ6xMKxsIRr5zaatQ==" Received: by 2002:aa7:dad4:0:b0:66a:9a3c:9d1c with SMTP id 4fb4d7f45d1cf-66a9a3c9f9els117588a12.1.-pod-prod-08-eu; Wed, 25 Mar 2026 08:22:58 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCU1B/06UZIBRqnId9fjiDRzHz986wg/8Gd9XJeij3l2qTeEsvdTOcJitolaxoJ4WajTtUeH9nfE4eys@googlegroups.com X-Received: by 2002:a05:6402:44d3:b0:65f:9c21:e68e with SMTP id 4fb4d7f45d1cf-66a826185a8mr2241163a12.5.1774452177800; Wed, 25 Mar 2026 08:22:57 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1774452177; cv=none; d=google.com; s=arc-20240605; b=fiDM03Lmf9gBeo2aYkDbExd+rd9HUp5cwZGbLrrH6KfHtmp+Kz/VLrvNhQdr6Y/Odm GaJx7wuHl9eYAjouKZx8RKqLemQu7wTtVap9glJrNadAc2+2yxKQfssnt+6cQR67/4Jz Nb3VLIdEveA/l1TMsEGY3oEj6PI/RcUidLXfPIfBnhvTs8bNmA+1/ZHJEAoEnLUwA2ki TA/5yV1svmnRKWTHcsWFag44jeD68pr5AneVxOGt9oQudLyFWpSRjUfF0xfxGnYD6ZCo XYTQsmhb79eJd8DGwyOvLEGFCssQB/ZV9ZUS6LbqOAGqSROTxpLoUhORHP/UF87yB0Ic 4UEA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=content-transfer-encoding:in-reply-to:from:content-language :references:to:subject:user-agent:mime-version:date:message-id; bh=wiux/IjbG9zVg7l+VGCo9EJjhzsDELADfuLdqruWOp8=; fh=IxbeHM4vWxalf1XNf2rnGcQL+r1v0Lr0C6ICsGNNkYw=; b=M0qrjAdja54l3my814RLOKNHOnhlkNCTM5k23bQPWxMvGWPD56pCty+MTuf4+MnriR KtMYwmSDm3b2m0RAngcrgfI7bWIZ4PbTjDUgEDIJk4cMzSWaOLvPbSGNMISbMsu8YW+o 4QvpiEf/S8FFvLhavf0y1D8MFQvC8kcl6QtHFqHSxN5DZx/+6rbCZ6WTWihmNsMmsYgU nFZVt0Q+w1R/894JncEsygbxnhjxiRAJRfLl2QlyNUZarZgbZ+y3XiogTrwI1U3U2ubb sUvrHj5Qu5TJ1eQuvPocUrNVmjk2NWCNaA3Dix4XY3Ty6Erx+AGyt3gZcCb/iLZB+E/A HMZQ==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: domain of wzh@ilbers.de designates 85.214.156.166 as permitted sender) smtp.mailfrom=wzh@ilbers.de Received: from shymkent.ilbers.de (shymkent.ilbers.de. [85.214.156.166]) by gmr-mx.google.com with ESMTPS id 4fb4d7f45d1cf-66a829a3d94si51570a12.3.2026.03.25.08.22.57 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Wed, 25 Mar 2026 08:22:57 -0700 (PDT) Received-SPF: pass (google.com: domain of wzh@ilbers.de designates 85.214.156.166 as permitted sender) client-ip=85.214.156.166; Received: from [192.168.178.117] (host-80-81-17-52.static.customer.m-online.net [80.81.17.52]) (authenticated bits=0) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPSA id 62PFMuqG013853 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 25 Mar 2026 16:22:56 +0100 Message-ID: <4327810b-f425-4602-a7a2-c9a40de071b3@ilbers.de> Date: Wed, 25 Mar 2026 16:22:56 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH] meta: kernel: Make specifying KERNEL_CONFIG_FRAGMENTS more flexible To: Jan Kiszka , isar-users References: Content-Language: en-US From: Zhihang Wei In-Reply-To: Content-Type: text/plain; charset="UTF-8"; format=flowed X-Spam-Status: No, score=-4.6 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_EF,HEADER_FROM_DIFFERENT_DOMAINS, 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-Original-Sender: wzh@ilbers.de X-Original-Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of wzh@ilbers.de designates 85.214.156.166 as permitted sender) smtp.mailfrom=wzh@ilbers.de 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-TUID: zuoFLB2MF7OE On 3/23/26 08:03, 'Jan Kiszka' via isar-users wrote: > From: Jan Kiszka > > This allows to add kernel config fragments from other sources than just > individual files in SRC_URI. > > Signed-off-by: Jan Kiszka > --- > > isar-cip-core will first use this, currently externalizing part of its > in-tree fragments to the cip-kernel-config repo. > > RECIPE-API-CHANGELOG.md | 9 +++++ > meta/classes-recipe/linux-kernel.bbclass | 37 ++++++++++++------- > .../linux/files/debian/isar/configure.tmpl | 2 +- > 3 files changed, 33 insertions(+), 15 deletions(-) > > diff --git a/RECIPE-API-CHANGELOG.md b/RECIPE-API-CHANGELOG.md > index e44b4b9d..2eff4fc3 100644 > --- a/RECIPE-API-CHANGELOG.md > +++ b/RECIPE-API-CHANGELOG.md > @@ -972,3 +972,12 @@ we introduce the variables ``MMAPTOPT_NOEXPKEYSIGN`` and ``DISTRO_MM_OPTS``. > While the former provides an argument to disable the key expiry checking, the > latter allows users to inject custom options into ``mmdebstrap``. For details, > see ``man mmdebstrap``. Use with care! > + > +### Provide additional fragments via KERNEL_CONFIG_FRAGMENTS > + > +Custom kernel builds can now inject config fragments into the build which were > +not provided via individual SRC_URI entries. If a kernel source tree contains a > +fragment, this can be specified via adding `${S}/path/to/fragment.cfg` to > +`KERNEL_CONFIG_FRAGMENTS`. If a fragment was checked out into ${WORKDIR} as > +part of a repository, a tarball, or some other directory structure, just > +specify it relative to ${WORKDIR} in `KERNEL_CONFIG_FRAGMENTS`. > diff --git a/meta/classes-recipe/linux-kernel.bbclass b/meta/classes-recipe/linux-kernel.bbclass > index 6e383408..9429996f 100644 > --- a/meta/classes-recipe/linux-kernel.bbclass > +++ b/meta/classes-recipe/linux-kernel.bbclass > @@ -83,7 +83,7 @@ TEMPLATE_VARS += " \ > KERNEL_LIBC_DEV_ARCH \ > LINUX_VERSION_EXTENSION \ > KERNEL_NAME_PROVIDED \ > - KERNEL_CONFIG_FRAGMENTS \ > + KCONFIG_FRAGMENTS \ > KCFLAGS \ > KAFLAGS \ > DISTRIBUTOR \ > @@ -214,8 +214,10 @@ 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'}" > > +KERNEL_CONFIG_FRAGMENTS ?= "" > + > def config_fragments(d): > - fragments = [] > + fragments = d.getVar('KERNEL_CONFIG_FRAGMENTS').split() > sources = d.getVar("SRC_URI").split() > for s in sources: > _, _, local, _, _, parm = bb.fetch.decodeurl(s) > @@ -284,17 +286,21 @@ def get_kernel_config_target(d): > > 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" > +KERNEL_CONFIG_FRAGMENTS:append = " \ > + ${@'${S}/debian/isar/version.cfg' if d.getVar('LINUX_VERSION_EXTENSION') else ''}" > > - return out_frags > +def get_kernel_config_fragments(d): > + out_frags = "" > + S = d.getVar('S') + '/' > + for frag in config_fragments(d): > + if frag.startswith(S): > + out_frags += ' ' + frag[len(S):] > + else: > + out_frags += ' debian/fragments/' + frag > + return out_frags.strip() > > -KERNEL_CONFIG_FRAGMENTS = "${@get_kernel_config_fragments(d)}" > +# internal list of config fragments > +KCONFIG_FRAGMENTS = "${@get_kernel_config_fragments(d)}" > > dpkg_configure_kernel() { > grep -q "KERNEL_CONFIG_TARGET=" ${S}/debian/isar/configure || > @@ -313,9 +319,12 @@ EOF > 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}/ > + # skip frag if it starts with ${S}, thus is part of the sources > + if [ "${frag#${S}}" = "$frag" ]; then > + basedir=$(dirname ${frag}) > + mkdir -p ${S}/debian/fragments/${basedir} > + cp ${WORKDIR}/${frag} ${S}/debian/fragments/${basedir}/ > + fi > done > } > > diff --git a/meta/recipes-kernel/linux/files/debian/isar/configure.tmpl b/meta/recipes-kernel/linux/files/debian/isar/configure.tmpl > index 73f554ed..75c920b8 100644 > --- a/meta/recipes-kernel/linux/files/debian/isar/configure.tmpl > +++ b/meta/recipes-kernel/linux/files/debian/isar/configure.tmpl > @@ -26,7 +26,7 @@ do_configure() { > # Process kernel config target and fragments > ${MAKE} O=${KERNEL_BUILD_DIR} ${KERNEL_CONFIG_TARGET} > ./scripts/kconfig/merge_config.sh -O ${KERNEL_BUILD_DIR}/ \ > - ${KERNEL_BUILD_DIR}/.config ${KERNEL_CONFIG_FRAGMENTS} > + ${KERNEL_BUILD_DIR}/.config ${KCONFIG_FRAGMENTS} > fi > > # Stop tracing Could you add a test case for this usage? Zhihang -- 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/4327810b-f425-4602-a7a2-c9a40de071b3%40ilbers.de.