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; Tue, 19 Nov 2024 21:14:14 +0100 X-Sieve: CMU Sieve 2.4 Received: from mail-qv1-f63.google.com (mail-qv1-f63.google.com [209.85.219.63]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 4AJKECle001667 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Tue, 19 Nov 2024 21:14:13 +0100 Received: by mail-qv1-f63.google.com with SMTP id 6a1803df08f44-6d419e1e6e2sf56754566d6.1 for ; Tue, 19 Nov 2024 12:14:13 -0800 (PST) ARC-Seal: i=3; a=rsa-sha256; t=1732047247; cv=pass; d=google.com; s=arc-20240605; b=aRSaAxSxnLhWqhPKUFRBCLgs5CQghb8385dGV1K2t2nfnQh39vV+6o0B92HOUAU9tZ PXz01f/zdIqTVzmnADSFlWX8QXJC30zeJo6D7THdgefPktMTnX+iAAKA8Dbl3+hsTX+y nDlysB6HAFmz9AYAC6wKa8dlObw68hYhPM84c4VmyACO3bbv3uItbqXQE0N9QGN+MSw5 i/FUlpFA31gs5CAGLOGuL00w5Ccl5fmmqKMH1w44ceZoUtkr+ZQaDKmXkLxTgDHx2ofO jW1//IQmfcso/OCZtIsRnMhXY+prXgjkNMp2k25jrs+9BA4D5s79rBfH9Az2znNufTMM q+Nw== ARC-Message-Signature: i=3; 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:mime-version:content-id :user-agent:content-language:accept-language:in-reply-to:references :message-id:date:thread-index:thread-topic:subject:to:from :dkim-signature; bh=RLAFf0L/GQEL5d9WjYTtg26VyXvL5Al9s9sT4DEp/F8=; fh=MaLmbQug3Kvel76yXnpUTqbJLwPNEnvTrt7gbLEFtoA=; b=HNTEfbh2dLAEhSzV7mSKjgV1i9m2DLkhS5zDYWGQFXb/GRWAH8NHuHYkxwUZORKxb8 wSGvYQotm0VtDBGd6mBo9LdEas36I+SZYtYtuhgqK01neDjixWSyhHN7fkggzi9+SrLT SS1IyM1ykmJJVi9vKFQxC8MK5FHfsIv+9owYQW5bVgMLo5FVlK5o7GoNJgEAeOIWod8f 6xZHo6X4y3C5TQV1EQw+5LhxFNrk/xP6WcGD80zoxHHvU0mk9JJQUogXve9T1KMnZ6DZ yEM/b/xIoMaehPh23IxXARsJuk2BZsT2n2m5bq7d0oxMSIAdCpJhWRBrBgbfN+WVYsIl PgIA==; darn=ilbers.de ARC-Authentication-Results: i=3; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=Ls4I8u82; arc=pass (i=1 spf=pass spfdomain=siemens.com dkim=pass dkdomain=siemens.com dmarc=pass fromdomain=siemens.com); spf=pass (google.com: domain of chris.larson@siemens.com designates 2a01:111:f403:c112::5 as permitted sender) smtp.mailfrom=chris.larson@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=1732047247; x=1732652047; 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:mime-version :content-id:user-agent:content-language:accept-language:in-reply-to :references:message-id:date:thread-index:thread-topic:subject:to :from:from:to:cc:subject:date:message-id:reply-to; bh=RLAFf0L/GQEL5d9WjYTtg26VyXvL5Al9s9sT4DEp/F8=; b=VK2KC5pb2L6Qe3nNT9hHJkmxHDqz0t5GmE4SyHovsu7yPb0I5EGgnqMR9Ro/c/ZSub mcEg6wILXf0wxT36yfVkdQfXhj2R9uuQJoszr8x6kORo5hxcH7M7WVvx0Yy7r7CRFpNv w/6i/T58ttIewksl9Plfixq8th0tsjj29GIzaHLNyCGWcrkn458Nki0DbEOR0wx2pT2T 5EiKwXSWmUAQPq5xiPdgHKOigpL39As3GghqKcUM7w/fNI41Dg9yQxs22k0csRqPqCXw 48gEouNYf8SfPi0gE7ekMCtWSyPV34NvxA9uL670zfBYBR9I4WU0Sia0zJFlCrU5vInZ dmCg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1732047247; x=1732652047; 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:mime-version :content-id:user-agent:content-language:accept-language:in-reply-to :references:message-id:date:thread-index:thread-topic:subject:to :from:x-beenthere:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=RLAFf0L/GQEL5d9WjYTtg26VyXvL5Al9s9sT4DEp/F8=; b=ReFOCbVXUPuswNvBvdnYOpIMuK/k1ca2+t5EYUbFq/YjkrTEdNireZCIa9SIZ/HXN1 CnbR4/osZGmuzya1cJYZBRP8U7VR1UboimkbNfr+tz464QOPxW60OPuFdkgGTqN7HFh8 QD/OCHNDgFMMLdczEjhpIFR47u+tiINvTEqm4pDZHJoJS+b6JcV0HX38ilTeMdDzQPaN BTmc8gVkveoYSoJlN8rP4FVTl/XNlLRrxwOyp7ASCahf3nzPuAJ3oE3QS4iQcYcyzfdr quWdVzaOrDhlwEDz+OFEAb+q/bAGiSswQOHP0KSwSToKIz/kLy8Gu1gbQVkArAacJ0Yu +VSg== X-Forwarded-Encrypted: i=3; AJvYcCXAiBEoKr98y9X8gqgutdlINZ8ycdLTrz6CTrEmmQsXO7U/YwASt9rjiqQC9tKogeF+OAA7@ilbers.de X-Gm-Message-State: AOJu0YyrT77d6yQ+me4eZZMee02a3dCy90ZZSwwSLWLP+LSQtB6rBsh7 0jvyWRfAv9ETzd72/ohQc18Ev0j31I8GGxW9WQSn2oViqa0f8tXA X-Google-Smtp-Source: AGHT+IHM+BcNzb5n4HccqAFtAuCgg98PF5ChRioOfn0UXirmzMf/soYHuD3irV6YFvVEe6YpJzPowQ== X-Received: by 2002:a05:6214:27c2:b0:6d4:e0a:230e with SMTP id 6a1803df08f44-6d43779ca50mr4638746d6.16.1732047247255; Tue, 19 Nov 2024 12:14:07 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a05:6214:258c:b0:6bd:9552:bc87 with SMTP id 6a1803df08f44-6d40dcb0d78ls40173356d6.2.-pod-prod-04-us; Tue, 19 Nov 2024 12:14:06 -0800 (PST) X-Received: by 2002:a05:6102:32d2:b0:49b:dffb:dd41 with SMTP id ada2fe7eead31-4adaf52d772mr485667137.16.1732047246267; Tue, 19 Nov 2024 12:14:06 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1732047246; cv=pass; d=google.com; s=arc-20240605; b=Nq85i4K+JRnm5/W4HHXa45/C2jlvK9qWCUGlOSfpdMosWOcxykhpWfLsV1reYL3hsB G4AMHCnyIYPLShg8M/7+CO6w77PhReLTMPX6tPcYuTQhm7PA1WlqbK3SgzYmcdqwnMzv vj41NVw8nYSywqQIDIG+zpd+fAKmzabb06DIBMFBnV5KyCYcSfdJ3iIVawkdo4ZKRgy5 j6XeNFAym53VfCnByoNM/5g8P1k22idJlAD3J01W12xpJzixIaSOIRndNkImt1pdtPUX XArl7BDeiTC4IDNEhExITKDwxCHPF8cuvT7LLdphCw9vnrcC8YJ4QWHIuq86LmkJkyJX cnJA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=mime-version:content-transfer-encoding:content-id:user-agent :content-language:accept-language:in-reply-to:references:message-id :date:thread-index:thread-topic:subject:to:from:dkim-signature; bh=Nsk9zBFRevT/zAYAZn4dlBWuy68QgV1UFohDGpz3Qjw=; fh=OCLipNJhBAjuYZVWe88RgIbTd+C/BiXjPppf4/h0OyA=; b=NU3Di5BU6bxlGGIpAua24D6BV6pE9cCDKHFztfSCmLbIzeUUpEYEk98GwttdWl0SYg xK/VGiPQwn9hehzf3Zk5fo2Vq5S5KzvO7TzQ5JmejbWABk4aGUevbLZjevstu6FlFYYN QQEjtNH8//9CAsOTiF0Ltuyg05Xas609z6ufFo/yWMA/yRFuyvkmSzlBzib7vK+qYZqg MmBHHAn7m9nHzVoy3tI0XGi7f5iLXpt4OWXlIqp+esiyuCascZnkpwKxF++avw30Uk60 ih4P/zi46YNByQ5Hkgj6WNyY8J1BWtxy9lUdCqSIvE7/cuUFFoifpOQ8LiAb8P0QMbvF IrUw==; dara=google.com ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=Ls4I8u82; arc=pass (i=1 spf=pass spfdomain=siemens.com dkim=pass dkdomain=siemens.com dmarc=pass fromdomain=siemens.com); spf=pass (google.com: domain of chris.larson@siemens.com designates 2a01:111:f403:c112::5 as permitted sender) smtp.mailfrom=chris.larson@siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from CY7PR03CU001.outbound.protection.outlook.com (mail-westcentralusazlp170120005.outbound.protection.outlook.com. [2a01:111:f403:c112::5]) by gmr-mx.google.com with ESMTPS id ada2fe7eead31-4ad65b4ea23si484164137.2.2024.11.19.12.14.05 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 19 Nov 2024 12:14:06 -0800 (PST) Received-SPF: pass (google.com: domain of chris.larson@siemens.com designates 2a01:111:f403:c112::5 as permitted sender) client-ip=2a01:111:f403:c112::5; ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=w2JfQ65yijOjdo3+MRsbv31fLqXVNizlOn7F7bDsAQrLN9xEiFEFTl01eWcFFA9GLBIgOq77J10syjqYTeQBg36W73nGkQbPh38kTUthL+rDy6TV5TwsPDK9zMDOaLWDYL7/3s2jxI/nOtNBU0Zxq12bjGU87SL8FF3DSsMoZp68H04+JYT3Ss32H5J/S8NecqqckS6B+C0KVsMtZGwU5Wj/HSfjNW4sSBj/4lyrB5O3xhSiBpJQQSgbWISV30FRK6QcHLv5CWzwdSMWWVjHHqZ+HdMJrvdO+ldY+oiCmKd5xVMJwiCXOZKqJxnfzM6UAJmORvyG2JzeVpu18ki5RA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=Nsk9zBFRevT/zAYAZn4dlBWuy68QgV1UFohDGpz3Qjw=; b=XR3Asu0ArDNOYeopTG2U5OscI3Ntpc1xoUZUullJOyKkuql2NwqAKjkYXje7Xh/rGULaIc7LNE7bFV7QiRl22bIdjNAhqm6tDUwcbF74Pe+4yrVsOhwPxIdd7Uv5n3okRippEeUbEScnxCzGcU2QIc6eO96ygZmClp1cZ60//SpX1s0ffaI/lHV2CBRiGlZbcdRWmPF/Es4rbXprg9nw3BK5YMdbFx2iS3XB9WIho0q9kCzCmp4puJi7yAfFZPykwb1G9z5J/IP1ZEgHymUgWoHE6sAA7Qa5Hf5am/dm6Daraw0ROsfyr9DCabDrZlRxB0G6+3bvaqVoAKkaGT7ndQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=siemens.com; dmarc=pass action=none header.from=siemens.com; dkim=pass header.d=siemens.com; arc=none Received: from BN0PR07MB8375.namprd07.prod.outlook.com (2603:10b6:408:12e::24) by PH8PR07MB9583.namprd07.prod.outlook.com (2603:10b6:510:224::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8158.18; Tue, 19 Nov 2024 20:14:01 +0000 Received: from BN0PR07MB8375.namprd07.prod.outlook.com ([fe80::a27c:dbcb:4b45:bc5d]) by BN0PR07MB8375.namprd07.prod.outlook.com ([fe80::a27c:dbcb:4b45:bc5d%6]) with mapi id 15.20.8158.019; Tue, 19 Nov 2024 20:14:01 +0000 From: "'Larson, Chris' via isar-users" To: "isar-users@googlegroups.com" Subject: Re: [PATCH] RFC: features.bbclass,bitbake.conf: use features lists Thread-Topic: [PATCH] RFC: features.bbclass,bitbake.conf: use features lists Thread-Index: AQHbNFoWIaM4K4ChZUmCUjAqwD0ZObK2+ngAgAemPIA= Date: Tue, 19 Nov 2024 20:14:01 +0000 Message-ID: References: In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Mozilla Thunderbird x-ms-exchange-imapappendstamp: BN0PR07MB8375.namprd07.prod.outlook.com (15.20.8158.013) x-ms-exchange-messagesentrepresentingtype: 1 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: BN0PR07MB8375:EE_|PH8PR07MB9583:EE_ x-ms-office365-filtering-correlation-id: 51e7b99a-4e6f-4b85-a76f-08dd08d6b558 x-ms-exchange-atpmessageproperties: SA x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0;ARA:13230040|1800799024|366016|376014|38070700018; x-microsoft-antispam-message-info: =?utf-8?B?c3RjVmhtTnpyaGZkVVlPQjZkS1FiT3IxdlR5ZGd3clppOFhURXdSYlYxZFFD?= =?utf-8?B?aU9sbktlb2tQc1VnZ29XVXNHZlZMeVA0a1ZCNHd2ckxzSmdGdXJKVVo4OEZZ?= =?utf-8?B?Q2h5OEdKcW1VYjREdDdET3FxaEkzRXlKTXMvUGtBNXd1SzN6dk13QkNPSCtn?= =?utf-8?B?YTBJaEdqODJqb2pnNWJyTHVSekQxaVQ3Sk96T09SSGoxZnRnTk5tWWl1L1lJ?= =?utf-8?B?WHZnZXFNSDlCNzByb3JyVFoxWE9aekZNMlFHc01tNlV5WmJIK2N1SzhpdVRO?= =?utf-8?B?MHh5aTdlekVQa2czcGpjQTJNT3VBdStyQWxvNG5aRmlrRkd0S3NuVFdCbDRT?= =?utf-8?B?WkZQUXpkMUZnbEg2d1Fsd1FpRHY1N25JRDFpRzVXSWdBSUFQTm55RERXOUsz?= =?utf-8?B?UXNRTUd3cG8wbXJQNkR2TnlxUEFTMzhIejd1VURFUVdnZGs4anowd0tYZHZW?= =?utf-8?B?Zm81WUkvSDVTWEM0bGFQbnJwNmIvVGFnVFlCaUdhMWVJc1Rwb1lIZk9hOWFq?= =?utf-8?B?Z0tEeHdtSnZCLyt3VDE0aDdXU0VOaE9LN0dBRXErRGxEY3kyY1gzdjh1Q0Fi?= =?utf-8?B?czNqVTczQUxwYUkxa2hXQ3YwWW50REl6NGtZbTdZTVFsOTcrakZoVGJTRFZY?= =?utf-8?B?bnF0OEFZZEFLZnNsMzFhbEJuRm0zRGl5MnRvNGhCYVlWMDhmbTVIc2VzTzVV?= =?utf-8?B?OUtKYi9MWVdBSy84K0luN1NRZER6Wk1lV0FLYmloOEViNDVaSVY0bE80ZW9p?= =?utf-8?B?QzNHR1JmMjFMNE5hdnBhZXJ0ZGtRUHdBTWdJRkJCdFo2RGJybzlMTEJUdlpn?= =?utf-8?B?Y3Jla0FITkcwZ1E4Q0prdmFYMnpLNERZcmsvc3ZRMnJGRmtFSzk3ZkxaUlZT?= =?utf-8?B?a1lYOXh4Y3R5bGVobG9RZzJqV1N3YktDZE8yU3V2cEpjSEY3WUdqL2lXRlBa?= =?utf-8?B?WWV6NHpDK1Y2dmRWeHk2cUlTMU5TL0QzazFsOXNLeU82R1ZseEd1YkdJZTUy?= =?utf-8?B?azZNYVgvMDBNUVV0Rnh5TkVHVkFqWEc4QWo3V0RyM1NmKzEvV3ZMWTk1RTVC?= =?utf-8?B?ZkIwdlhuYVplM0c4eW03SlpNVmVkd0lTZ2RqQUY4NGVLTFZzVEFnVkcxQU9D?= =?utf-8?B?QTZVQWxaOHlmaTlGazB0UjRNbmljYWh0dUgrVkpCanQ5enc0cTZmRTVyaExr?= =?utf-8?B?UEdGWFUwY1ZiWHFSaW9wQVJrMk1XbDlSSXNOVGRmdzVxT200MW1xYU9HdmM2?= =?utf-8?B?dC9mQ1d5RU1LeExwaTd5WStOTXQxQ1Y0Mk1zM01KTWdmYk16M2RPTm9jVzRt?= =?utf-8?B?ckFQaTRGVUFERVczRnhnUlFhZmlHT3RkY01wWHFrMTRqNWJKVnFXZnVDbU9a?= =?utf-8?B?MjRTcVJIWUNuVUNaVXlRWU1SeU1ITUh5THZvV2g2SjNzK2h0MkhiSzZvNTdp?= =?utf-8?B?YlVZNjFKNUpwUVpySEQ5VU9vOFhEdWlMNTNCZ0R3RnhSWWVHMjM5TUQxOGZs?= =?utf-8?B?cnBtWGFSamZ1OU92WHJtdUhWWHZCdlJaODVNMGFRaUh5K2d5My9YeDBOT21Z?= =?utf-8?B?Wjl0SEwwZE0vNHFPYktraWpkVjh5clFCbWJjQ3dwcDliOTFLdWZTS0ZoUk9u?= =?utf-8?B?T0lFYnRDS3VXeEpMT2FRN1JZNjh0UnRXVUZTektBOU9GazR2a2EvMll2dllz?= =?utf-8?B?Z1dPOU92VWRvaUpWQlFJMk9KTXpERlp3U2tnSmJocFJqUWRJTkpyeEpVVkRs?= =?utf-8?Q?biwrtUca1mYqYpqzzkzIiVL0u8TJ0wl8NJC40vC?= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN0PR07MB8375.namprd07.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(366016)(376014)(38070700018);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?dDlIaFRnaUJOdndPMWtMVUlTd2c4LzlRcXZrdEoxK2JFc3ZRNW1pejlLVi83?= =?utf-8?B?Zy8xcHJzKy9TZTRrZ0dJT3ZHbE5KOFI0OEVEdWN6R1hFOVlUajVZVVBQNWk5?= =?utf-8?B?L1I5RjhiV0xxUENFbXFKeUFTbUl2MWhyNlVYQnh1VFBsNmcxUjdLYithUU96?= =?utf-8?B?cHExZjA2WDhiMlIwbHZSdHVoMk5KeWo1NmpHd24zY0RPZWI2Y05BZGNDTmxk?= =?utf-8?B?aStmRGlUczE5VmRRZ2tCVGJYMGNmT2FRTkRma2ZRQ3Mrem84ZWRTMDh3enBr?= =?utf-8?B?N1RId2d6bEUyeHBMangveVhZNGt1MlJoSGVudElhTkh4dXlTU3B3YTRUeDVX?= =?utf-8?B?eFRmUzh5eXVCY1Z2NEpXbGdTT3d3ckJ6MUV6SmgvOGF4RHlUWnVYZUh3dEdC?= =?utf-8?B?cStnWFdqNUFodmkvaXR2WUhiVUxHekcwMGZoRWIvVEhRZlJJc1RtTVFxMENw?= =?utf-8?B?RW9qY3BWOTRpNHFpbExmYzlTUEVwMWEwODg1TXl5TUNRMkFGbTdYTG5lQlZy?= =?utf-8?B?NEtzdHM4UEsybmNyT3JvN2RtSU9OSW5uMEpJMzkyaEx5S2dncWd2c2VhaUhp?= =?utf-8?B?UkhKMmZseVBGNXdpVjJBeDlJdEltd3JPSDZBVUdKeGRQWGRuVVNOSm13VmRz?= =?utf-8?B?OVc3RTYzOE5EaU9GK2p3NXlnYWszQzB1VjZEdWlSMDBCVy83ajY0ZEU5aXBW?= =?utf-8?B?NnJKcTZaWWdSSmc2bGpwQ0R0ZFB1Y2p1Vis2Z1NYemdaSmJoSTBMRnpRdTQ4?= =?utf-8?B?Ty9yRElwN1VQeU1GQmp1QWc4eGhJZkJwUGpWNzBKR3EyeVZNZXN3UFZJTC9L?= =?utf-8?B?TUNjMzJmOVV5cW90SElBVzVsN0tGNXYzUjlsb0FEU3FvVmF6RjdtMFlaRDhG?= =?utf-8?B?T2U3ZURjNDRQK3A4Nm1vR3FlamZRdVFESlY2QnBKN3d4ckdZOGxDMnUxbDVL?= =?utf-8?B?UWVwQ0xMbmJhN21nTGtuem1vSHhuWkJ2SllhT2hGa09wZDJqNzZ5dm45OUls?= =?utf-8?B?SDZabVZUMVpaRHNaK1hzZnpmNjBsb0lObGQvbEpsa3RkQWVkVER4SnI2MWc4?= =?utf-8?B?dDU5SWpLNDNYRkNFZEZNbjdnZkQvK3hJLzhKQ09nanNuV1Znb3IxZ3lBa0dr?= =?utf-8?B?VExZdDVxWS9yWjFvT3NHSCtMNyt2bytzWUpmMVdjUVpUOGpTMzFNdDltUDlZ?= =?utf-8?B?cjB2T3Z4RFgwT3ZmZnZ3aEpsOHh3dTBwT0xsSE9oanZqZTJYbDlOdzhwV0cv?= =?utf-8?B?MDQ0V1FZbTFjUHpPZXM3NTdSQmFldm9mTmNOdHpTNGQzRTVHMmR3eUZBdzVI?= =?utf-8?B?eEswdDY3UE1uejhnNTUxek0wSU5iMHR0T3VhZ0psZjZJMnJYUlJkdlRsemtR?= =?utf-8?B?d1psT0hzbGpObEdQTjFBeitwaVlGUEx2REVMUWtDb0tGY3ZHWG9qeDNIOEdH?= =?utf-8?B?ZXRvN05zNG9CenNULzZVQUxWbm84VGZJVCs3dHJQN1d1RnlpaDN6dnBUclAw?= =?utf-8?B?RzBsa1hEUk5wTnNVaHJYM2VmVlVVVmY0WVVIRW1hTTUyOFlaSFVQTUFBUWtI?= =?utf-8?B?eEEyektEQzI5YTFmb1MrRWxtak80NUlyTXN0VExBdXl3Z0REUXFUeU5RU1Y4?= =?utf-8?B?aXdKbVhCOS9jZVNkZ2xHT3N5VU96SzJtYVAzdVdDdElFQXRqdGphMWVtb2pw?= =?utf-8?B?MmtQS3hjMFN2VzQzUVByT05BTlM5MFpJcldGWlNTa1hoTXhmY3Jkc2FHT2Ew?= =?utf-8?B?cDFXdjVLQlZhUXVwYUwySzdQM1JmdHNINEZhNlQ5eHVydjJYdGJyQXhBWnJJ?= =?utf-8?B?Q1NaWlRZNnFtbndLTjJ2a0g0M1MxRlR2RG5xWGgwRkRuZVZLVTBlS1lEUTRk?= =?utf-8?B?T3Z3VVU1ODlRVFE1cnAwK3Y4emlmeUJFVjNmRW4wdFpoVUhJdnJRNFAxcXAv?= =?utf-8?B?WEVnMC8zdVQ5Q0dmT3RZcWEvMVNIclV0djBpSkJjbnF3RXAxZkNxQ3lNL0pp?= =?utf-8?B?NHcvQkU2RVNDdDBHUkFObnZ3REFaakkraVFLbWlycEtlMGU3SlZ2WEVxRUZ3?= =?utf-8?B?YjN3YXZLNTJyTWtGc0I0VW9oM1hmaFZmNTg2SnB3N3EyckwxaUtuUFRLYWpV?= =?utf-8?Q?o1GEc0M12E8vnsyC41m31yFcC?= Content-Type: text/plain; charset="UTF-8" Content-ID: <2DC4EF6B66CFBF45AF72FCF5DC82FA9E@siemens.onmicrosoft.com> MIME-Version: 1.0 X-OriginatorOrg: siemens.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BN0PR07MB8375.namprd07.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 51e7b99a-4e6f-4b85-a76f-08dd08d6b558 X-MS-Exchange-CrossTenant-originalarrivaltime: 19 Nov 2024 20:14:01.4448 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 38ae3bcd-9579-4fd4-adda-b42e1495d55a X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: OgOCdgqqru41KCXjZb1XB81jmmWmKS2uwdUGkmhfEiEVx1izQ/9ya5/K0awbFMLJ3Nz06IZrFBTzjzdmpJjo0x1PoO9YYkj50tVRxqKkaFM= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR07MB9583 X-Original-Sender: chris.larson@siemens.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=Ls4I8u82; arc=pass (i=1 spf=pass spfdomain=siemens.com dkim=pass dkdomain=siemens.com dmarc=pass fromdomain=siemens.com); spf=pass (google.com: domain of chris.larson@siemens.com designates 2a01:111:f403:c112::5 as permitted sender) smtp.mailfrom=chris.larson@siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com X-Original-From: "Larson, Chris" Reply-To: "Larson, Chris" 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=-3.3 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FORGED_MUA_MOZILLA, LOTS_OF_MONEY,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: Hs6oOib8MHAT On 11/14/2024 9:23 AM, 'Jan Kiszka' via isar-users wrote: > On 11.11.24 17:51, Christopher Larson wrote: >> Any thoughts on something like this? Too much? >> >> The intention is that downstreams would use standard bitbake functions >> to check features, the same way they do in the Yocto Project, which >> ensures that signatures and variable checksums never include the >> entirety of the features variable, only the presence or absence of the >> feature being checked. >> >> This also adds bits to allow one to disable a feature without having >> to use the problematic :remove mechanism, which can't be undone by >> downstream layers easily. In this case, MY_FEATURES += "feature-a" and >> then MY_FEATURES += "-feature-a" would result in removing it. Order > > Is that "-feature" feature something upstream OE has as well? Or how do > they handle that use case? This isn't an upstream feature, though ideally it should be. Most just directly use :remove when necessary, but it does end up adding complications for downstreams unless they use intermediate variables, and even then you end up with workarounds like DISTRO_FEATURES_REMOVE:remove = "somefeature" to undo its removal, which is confusing :) >> matters, so it can be re-added again later on without complication. It >> also adds a minimal mechanism to let one feature pull in others >> implicitly, which helps to avoid duplication when a feature is a >> superset of another. > > Same question: Would that syntax or even the logic isar-specific or in > line with OE? This is also not present in OE at this time, though OE has similar functionality, implemented in similar ways, for example, the support for dependencies amongst image compression/conversion tools. As these two are enhancements, not regressions, I don't think there would be any issue with someone migrating from OE to isar, only perhaps in the other direction. That said, I have no objection to pursuing their submission in OE-Core also. > BTW, missing signed-off, but I that might be because of "RFC". Indeed! >> diff --git a/meta/classes/features.bbclass b/meta/classes/features.bbclass >> new file mode 100644 >> index 00000000..32964c91 >> --- /dev/null >> +++ b/meta/classes/features.bbclass >> @@ -0,0 +1,91 @@ > > Missing license/copyright header. I'll fix that when I submit the non-RFC patch, thanks. >> +# Functions to manipulate feature lists >> +# >> +# This class provides functions to manipulate feature lists. The functions >> +# are intended to be used in :remove and :append handlers to remove or append >> +# items to a variable. The remove will interpret items prefixed with a '-' >> +# as items to be removed. The append function will rely on a mapping of >> +# implied features to append the corresponding items. The intention is to >> +# provide the ability for a feature to imply enabling of other features, >> +# much like a dependency, but without the implication of order. >> +# >> +# Usage example: >> +# >> +# IMAGE_FEATURES ??= "" >> +# IMAGE_FEATURES:remove = "${@remove_prefixed_features('IMAGE_FEATURES', d)}" >> +# IMAGE_FEATURES:prepend = >> "${@add_implied_features('IMAGE_FEATURES', 'IMPLIED_IMAGE_FEATURES', >> d)} " >> +# IMAGE_FEATURES_DISABLED = "${@' '.join(f for f in >> remove_prefixed_features('IMAGE_FEATURES', d).split() if not >> f.startswith('-'))}" > > What's the purpose of the last line? Or is it a stale example? Remnant line, thanks. > And then these three or four lines are kind of boilerplate for every > feature group one would like to create? Would there be a way to template > that with the feature variable name as parameter? That's an excellent question, and one which I considered as well, but forgot to mention in the email and commit. A big part of why I implemented these features as inline python in :remove and :append was to ensure that there are no issues with order-of-operations in the metadata, and to ensure that we don't break the bitbake checksumming for lists of items like features. BitBake has special handling of the `contains` functions to ensure that a caller only depends on the presence or absence of the feature they care about, rather than depending on the entirety of the feature variable, as that would lead to very brittle checksums, and reduced shared state usage. If one was to provide wrapper functions to check for a feature and implement this logic there, it would bypass bitbake's handling in this regard. The other option was to implement the removal and prepend at some specific point, for example, in an event handler (i.e. ConfigParsed, BuildStarted), or anonymous python. The problem with that has to due to with order of operations, as the behavior would be incorrect if one checks for a feature before this code runs. Any code to automatically set the flags based on a list of supported features variables would run into the same issue. The bitbake file format is already rather prone to issues relating to when operations happen, so setting the flags immediately, and having them operate when the variable is checked, seemed like a reasonable approach. There's an argument to be made that no one should be checking for features prior to ConfigParsed anyway, as we don't know if a later config file will add or remove a feature, so combining a contains() with, say, :=, would be error prone to begin with. This is a valid argument in favor of applying the templating at ConfigParsed-time, but I figured it was clearer to be explicit here, even if it led to a small amount of redundancy, rather than adding more order-dependent logic, particularly given the small number of supported features variables. I'd certainly like to hear opinions on this, though. Thoughts? > BTW, patch was mangled by your email client. Ah, apparently using git imap-send to tweak the email before sending still ended up mangling it. Apologies. I'll use format-patch, tweak, and then send-email instead. >> +# >> +# IMPLIED_IMAGE_FEATURES[alpha] = "beta" > > So, if I add "alpha" to IMAGE_FEATURES, I will also get "beta" as > feature, right? Exactly, yes. > Looks like it could be useful. I would just like to ensure that we are > not creating unneeded surprises for those coming from/going to OE Yocto. > And bonus for a template-based setup. Understood, thanks for the feedback. If anyone has any ideas on how to pull off the templating either without adding order-dependent operations, or feels strongly that it's worth doing so, I'd love to discuss that. Would you feel better if I pursue submission to oe-core first? -- Christopher Larson 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/BN0PR07MB837594CAD54725861274EC729F202%40BN0PR07MB8375.namprd07.prod.outlook.com.