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; Thu, 14 Nov 2024 17:24:05 +0100 X-Sieve: CMU Sieve 2.4 Received: from mail-il1-f189.google.com (mail-il1-f189.google.com [209.85.166.189]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 4AEGO31h003140 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 14 Nov 2024 17:24:04 +0100 Received: by mail-il1-f189.google.com with SMTP id e9e14a558f8ab-3a3c72d4ac4sf9036895ab.3 for ; Thu, 14 Nov 2024 08:24:04 -0800 (PST) ARC-Seal: i=3; a=rsa-sha256; t=1731601438; cv=pass; d=google.com; s=arc-20240605; b=Dptcut3ygxfho4vRAvj7Fcx8rSyrgN81G4s3Fby8IzDMkty/FsUniQnQXPGEgNWflQ 4u+Fg39GGahqNporckTFzGyKI971qmWNuZJCkwRzPDQqIG5VX2Qei5buTfHMLXYSiyKf LOjeFBs3xnnUAXZ3x+lP/CC3cijdX5g7m5kedXaD9PgaCNDNJucDGJJCjHX3oocdgGd3 S64LbgDiaIMR7n2QieVwmY3/p3S08i474u0RqCVs7ouNaQL738W/dmbo1AqicIVlV9gr I4fZ0rQvf9cx0Ws7S5IBmwCZNNvcZdyEUO4jmtqWFIQkAx10KdwJbODRvdtMynLNH0gg GzgA== 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:in-reply-to :autocrypt:content-language:from:references:to:subject:user-agent :date:message-id:dkim-signature; bh=bg/aW6ONt9tZtgODgK41NUZLAwKT4Iz+zBJ+Q4PThAY=; fh=iwc1SNiuGNfbdIw56tNDEzLAo0lnCr5i5rLS5Twm1Wc=; b=Rh0Fe8GiycY4kRrPQwT++hZuBvXQmzO6LOeq4HBKs9Muu/MOrIzl3FtfFR6hHgXUF1 okROmf8xugBlhe5okRYDDXOnk/CLfaBdW2sSJDIH+eyOih5u4rAovJ+syOKDSnAoM2v7 VzxW7ppFDeL+X8FdrxnptXK/Igk1NjR2PB8968A/61uWNFtXkbhB/Lb8iuB2vs4NtCu6 UO2ETu6aJtJzy1//oQKbqQ7h+NgIJ4r0bKJpA25eRU6m5qnXZdYtb5E6gmoxX5lyr4bd 7WMslrJKz8V/vOUR0pb2ZEziZoJUu6Yz2N5GmE1TG1bjScUBZFlt15xLDHZbsiAhkhYb DWAg==; darn=ilbers.de ARC-Authentication-Results: i=3; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=vQK7uICZ; 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 jan.kiszka@siemens.com designates 2a01:111:f403:c200::1 as permitted sender) smtp.mailfrom=jan.kiszka@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=1731601438; x=1732206238; 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 :in-reply-to:autocrypt:content-language:from:references:to:subject :user-agent:date:message-id:from:to:cc:subject:date:message-id :reply-to; bh=bg/aW6ONt9tZtgODgK41NUZLAwKT4Iz+zBJ+Q4PThAY=; b=U+vgkHOWmZl2y1V+bGdsT6M8eeupDY5ZLPW48cQL1+bJ5JBqbJnDazylbZSBNa3t4a jpoerz4h5bD+FdZ0fUfsu7YAkdGcQnvuHzzX7aR0fTakjValeR6Ga6eP2Rg2X4xTN7Sg SOGB9lntuBSK20V1YAUiKfu9FUGClQ4yvDdMCb2c00Cg/Qgw6EOoe0bjCBTkzjtumq17 X9ZYugTDC8infFU9hYywJXD0UWbWQOquB684RLBbcFUsJwdTnXLk46winqJL9k4r85Ex sLt7BUMDAtCSRxz9ugtnV7O53db+7GZMySeKIMGaJ0+IheWpdj5o2e2grcXcO3o08Ebe gf4A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1731601438; x=1732206238; 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 :in-reply-to:autocrypt:content-language:from:references:to:subject :user-agent:date:message-id:x-beenthere:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=bg/aW6ONt9tZtgODgK41NUZLAwKT4Iz+zBJ+Q4PThAY=; b=e3HiFBgprojOt2a7XtnCI/TMTWe4gf1c18F/KGfxh9fCGdgsl2KU3jCi7ZkAogKyND RTR38GUl6rlff4seSjodlAls0Evb+CwmUsl+8ieHZuLwf/8D3RnMaf3yWGLf6W1djxCU EOvQAdg+a6OK14WHKoABn2OU989X92jIkFTpGHX9ASM5wqhgAkOpLJH6pbrW2qMAbNE4 ii4tgXPBY726PjSXOnLs7JY6ntNtK+I0d1qycTzwCLCOsFOi0DlyG2DTqFtmfqBQO4mo +LKcoSg9vaCTDYrW/IoKA0Kp1z0pwI4lbQTAhotLvVkKaRjTXUCkGr9pcCZCvhdw6ZmY 7Zag== X-Forwarded-Encrypted: i=3; AJvYcCUICFo8AmeJzwi4/gBTkVzaw9l/KOOAbOtFWxXNNBeTEcwFtHy4MlH1+XNqohIhC8nnLayV@ilbers.de X-Gm-Message-State: AOJu0YzPHUI1yFS1F6b/QKdwPHY0CHQgFwi33Zjb1h9YQkoUiqpN6xXb EWguyWyaSSbXZqCoeWZtHmh1oCek+EcCGX0VcMbRPYzrdxzlecar X-Google-Smtp-Source: AGHT+IGIL2hwQFnKB80KQHIxMMJOK0up7+j9uLM1y7jZ65MLt/z5BxgebyE0YmtF3M9CRlok676R4w== X-Received: by 2002:a05:6e02:1846:b0:3a6:c1ef:f320 with SMTP id e9e14a558f8ab-3a70c87a313mr110404515ab.18.1731601437643; Thu, 14 Nov 2024 08:23:57 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a92:c8c9:0:b0:3a3:daaf:d989 with SMTP id e9e14a558f8ab-3a71f17dde6ls4986445ab.0.-pod-prod-01-us; Thu, 14 Nov 2024 08:23:55 -0800 (PST) X-Forwarded-Encrypted: i=3; AJvYcCXB9QJLjiwWS7ahFbGJGhrhUhutmc4LNc9mN0XohJ9HqvlYoIv4PGwNOFIpY714cZDaoAO8aOxu+O2D@googlegroups.com X-Received: by 2002:a05:6602:13c1:b0:83a:f447:f0b9 with SMTP id ca18e2360f4ac-83e431d24femr1185091639f.9.1731601435492; Thu, 14 Nov 2024 08:23:55 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1731601435; cv=pass; d=google.com; s=arc-20240605; b=IlsDhaLh8iTyyu5kwI0ZVl8NCGkQ1M5OB24QxT17gNRl4N9YYUlWohfU7XjEvHt8Hn Pzs/hzKtzRRKxPaHybnErpzSGL1QJl9mr8XuesXoziQFYVzlrR9JOX3H8HIojSGEqb9v xwWQgyCtwQrV9d5GCkiQ0zgUSQJPukgdQ2D5RuihRerwCPC/9Xs3m0l1iKsUHsvVSp+F 6c2pZWcgfwOn5MkVOAw0+9nD70ZZpA4MctIUZbV6/Rv4BpyPaaFGMviWzgPOturrZ6Ue IE2S5zkx8F/GofrQHdf0iZ0NK2kyNvReyyYSY70Sv5hL6h1vXu/MKCqZGhbwGjusGl6+ dY2A== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=mime-version:content-transfer-encoding:in-reply-to:autocrypt :content-language:from:references:to:subject:user-agent:date :message-id:dkim-signature; bh=Si6pEp7wY04zEHlFZ8i7OfGq1vtmpRTuJkUqHmFjDbE=; fh=nqv5BdWwaJvZP4SeJq1YGdKI0JWylvp0WhHuUmZ72go=; b=bEXsiD3A5Gafcyb0fCqpy4l11FRKX0g72/pBh9MQlfoi/b/+TdWgyDVsZQMaQhE2PD aU2Do/e5k8Cv7uJve2vSjLhdBlNfUeNE+u8IsYiUXeunq3tHtgC15tI96GswpEcwKNo5 yhUpnKE71nm5lEMtsIvwJKKlH73aau1mdovrmjE+6lxmKwQhJi4ywmrtxCOVUp3fYwKO VPy89gKY9vst3/C37UFtYi8/T5CyG6zwTtrPVuuFSxDrPtrh0WciaHOQkVyHCNc+gxL6 gabA0J5BMvXQWj8p6MnU0hdN5nds3GnaNDW7rVD5gvv2DKrJKaij12bm5hpsyTEPDGGI WyYw==; dara=google.com ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=vQK7uICZ; 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 jan.kiszka@siemens.com designates 2a01:111:f403:c200::1 as permitted sender) smtp.mailfrom=jan.kiszka@siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from DB3PR0202CU003.outbound.protection.outlook.com (mail-northeuropeazlp170110001.outbound.protection.outlook.com. [2a01:111:f403:c200::1]) by gmr-mx.google.com with ESMTPS id 8926c6da1cb9f-4e02fd8ec18si64009173.7.2024.11.14.08.23.54 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 14 Nov 2024 08:23:55 -0800 (PST) Received-SPF: pass (google.com: domain of jan.kiszka@siemens.com designates 2a01:111:f403:c200::1 as permitted sender) client-ip=2a01:111:f403:c200::1; ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=SkWY4cqwDSXlNpCkiksu8bZ7XucRYzEbf6dSbdvQ5FJKuzzt5+8F1QG0kqoX+A7PgeYm5/jM0NG4NXC0He0ggvn/dKPBX5dsAyAHF9PtaczFCtlxizjX2nPsA3MH5ZjpOqaYPtupRuhwVFA6v2Ul3sS/S/HGg+tV0p57f3RiodPUvO/5IutdwuXdvhF+DHGuvIAfNuFlUnnFLX8Z5Frxv3i6kmnV5Unv7G1JCBgEl/z59JtqB8/rqCdaEKZ9IXrfTMWc1pxhkrkNoGSssAcigxX9Ove18HIPxoPX5YGRGEv1ZxPbks3bYhnuC7D1GaOiHvP7H3igm6mhD5TU4UY5lA== 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=Si6pEp7wY04zEHlFZ8i7OfGq1vtmpRTuJkUqHmFjDbE=; b=sjcghIxo/K5wA3sBik/u2gaMbC9Ei/FoZnhqJj64pftizvlakl5WzU1RxwSlMcHWtDIj74UE+UA90NkOn4k623ahCwlDfXA+pClYDVW7LO/eHPtmwavpmWzZ25B0Yo9dbnOzC4ubAvBGffjR94YFhRAYNPkl8oUVQd2OyxVVoOhmsJKEr5OFrW7VQFwY1JIlpTqMyFj+YwXn5wb+F0J6BNbTzwwgUsEjnholrjLBzTwT/peqWoDpMVK4QEsb/V7hgBEdrjdVg+be/jdOfFRLxgNjnRygHzuCM58u9uWdrIZT+FKW7OWHx6LPBMWHuSTHREv6ZL/m5SiwIC0zWPIU3Q== 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 AS4PR10MB6181.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:20b:588::19) by GV1PR10MB8606.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:150:1ce::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8158.17; Thu, 14 Nov 2024 16:23:51 +0000 Received: from AS4PR10MB6181.EURPRD10.PROD.OUTLOOK.COM ([fe80::8fe1:7e71:cf4a:7408]) by AS4PR10MB6181.EURPRD10.PROD.OUTLOOK.COM ([fe80::8fe1:7e71:cf4a:7408%6]) with mapi id 15.20.8158.013; Thu, 14 Nov 2024 16:23:51 +0000 Message-ID: Date: Thu, 14 Nov 2024 17:23:50 +0100 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH] RFC: features.bbclass,bitbake.conf: use features lists To: Christopher Larson , isar-users@googlegroups.com References: From: "'Jan Kiszka' via isar-users" Content-Language: en-US Autocrypt: addr=jan.kiszka@siemens.com; keydata= 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 In-Reply-To: Content-Type: text/plain; charset="UTF-8" X-ClientProxiedBy: FR0P281CA0157.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:b3::20) To AS4PR10MB6181.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:20b:588::19) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS4PR10MB6181:EE_|GV1PR10MB8606:EE_ X-MS-Office365-Filtering-Correlation-Id: e6927f2d-fcd3-43c5-1f8e-08dd04c8b9e6 X-MS-Exchange-AtpMessageProperties: SA X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|366016; X-Microsoft-Antispam-Message-Info: =?utf-8?B?VmpQWHo1Mjl3QkRmd2J0R2pHaDJZT0NWTGpZNlhiYzlYaEpTMitKRFdtUDFp?= =?utf-8?B?UHlOb1M3NmtPZWRqK2c3SElncGdZeGhnRnhiek9BdzUvWmZlY1NJT0M0Sit6?= =?utf-8?B?VlByZlZhS0lkRm5ENWdzUyt4NnJsUDV2WUZ6YlhZV1VZNzlIdkIyK0lCa0cw?= =?utf-8?B?bUhscTZpak9zRzZ0OW5nWm4vcDE1Y0pwdGRTUXNoY2c2d1hoNEgxdjNUV0dT?= =?utf-8?B?UGN1dFljdG5WbjEwcUdac3dxbDB5NVhmcmlWZ0h0a09MaHc3aGJ2aVpZU0Iw?= =?utf-8?B?RXRFMDBtR1VHOGlGbkphWVFJL1VsQU4zUzVnanNVSWlDbVo4d3N5NDJBRzhp?= =?utf-8?B?dVZTRHRGb1dqb2l6UDlyWjQ0ZW0wdWs4OU1ab2NsZno2MTA1R2xpL2hUeVc3?= =?utf-8?B?c0ZFZ25TZkk1Z3MwbEJpUTQvVHFndXg0YnV0V1I1VmxUWitUSmYreFAwTXAz?= =?utf-8?B?RlVHeWNRRUJzOXRpUjRlczd2Z1E4UlJIVXVqTWlnU0xwZWx6MUI2T2xjRVc2?= =?utf-8?B?WHpwNWxySkVySU1PYzE0cTNIRTJsdXRjRGNDZlgzYWtDWnZuVkN5UkVJdXZh?= =?utf-8?B?RklNU1doMGszbmNpa2xzZjZ3eklyNmVVT1pRMHIrakEyeng2TVVieG8vZFVF?= =?utf-8?B?cmdvSGxNcEpNOG4wVDNiZGVpYktScUtmNWVjMzVacWxLZnNMSHZyUDJqTGkr?= =?utf-8?B?OG5yUnlTUmRUanNVVG1RLzhsRmNnZHFpRFpIT0VURUhhQjExM3UzeVZ2aTRO?= =?utf-8?B?TEFIOVNVbHNXd1AwZFJZR3J6ZitnYjRQUXU4QTMyU1dFSWEzaG5IVEhTSG9J?= =?utf-8?B?dEZ6dWpHRmd0dmVrZW1DcUJ4R1Z3bm1hS0hncHdZcjJaRmdSOWZzUUZTbGRS?= =?utf-8?B?VEJwc3kzOCtJZVZhaFZxV3hVS0RGVWg5ZXB4RzlYSnhaQ3JWVVVlSkVmVmlq?= =?utf-8?B?YllHUGVMb2pXTHhvVVhzR1ZSYmdJd3lMdHRZcmd2QmFQQUovemZ6R09YdzlX?= =?utf-8?B?LzFjdnVxa3NZcW9aaGZDQ1BmaHovNkYxbEZsVlVnZk1LOTFPNVNHQ1lMdjJE?= =?utf-8?B?Wm4zUHNwSFArZXRPZk12RllISUhVWjVFbTFNR0lBQmZDN2txKzZrc2ZzVnhs?= =?utf-8?B?cncxaGNXTU9lbzBzVGZzTVFxYVFEYzdIU1BIdkdWSFJjWUNGV045ZG9CdXM2?= =?utf-8?B?aUhDMlk1cGhuSG9nQlhka2hTRHpUMWFJU0tMbk1EcjhmcGxUbXRtQjV1Z2FQ?= =?utf-8?B?Y0FlVmpzaFIvYURCTTY2Y2RRQm1lNHVxVUhqSGU5S1NVZmVRMEVJVEZCVzFx?= =?utf-8?B?UTNlTHYxblhkNkNIcFFEc1ZLMGFSZGdNMUJHbXYreWhiZk5rUTdjSXpnV1gy?= =?utf-8?B?aWZoVlc5eVpSdkdlQW5zVFpJTkduR25vWWtUSjVoUndVaXFwM3ZEcDlQTTdx?= =?utf-8?B?RkV0dXRISlY5OHNYbkgrNjhyQUp4NTZiOVR5UStwMGNTZk0xbmZudU1Ddkg2?= =?utf-8?B?TWRMNnUyblBPWjlPZXpuVGM3U25PTTFnZzRTb0JhZlFBU0txSDVSTFpTMUFy?= =?utf-8?B?cUJBc21uczQyQXZ1ZHNuZGgxTmRzV3k3T09yM1hXNllTVUtDYnNrYzBPL2pm?= =?utf-8?B?bGx1cVJ2b2Jiam9ja1FBTDF0N0xpSXBidlgyemhpZC9HbTVnMFNVZllqUElC?= =?utf-8?B?M1NyQUF2aXg5V0dIRDEvWXlxNXdUK0EzRHdmWVZzS1hpMzFidlYvVVE5ODhk?= =?utf-8?Q?CJ9KR3hb/P3hK/lxxlQZz+BPsIyxIs7tuuEua++?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS4PR10MB6181.EURPRD10.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(376014)(366016);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?V2RQVytRQ2Vib05xVVFvUlZFZVpJeWNzc0RwM3Zhbjk0TXRVRVBkS1pwMXVD?= =?utf-8?B?YzNVcllLWnF6ZC9veG0vSGdZSW1iYmt2TE1RVTB5NFIzVkcyQXZZRWFtWHhp?= =?utf-8?B?cWIwc1Z2RExrWTNRTm54WTkyaUVMUlQvU0YzRXpySWxha3hTNEJEYkYreFYv?= =?utf-8?B?bkNNTWZvcUYzNUNYYXVGSTFOa3VhdGV2NWNraW00SzVRWGliV0tCYU8wRnFn?= =?utf-8?B?SFFsS29tdnJHMWZwQXlEdzhpQ1YxZEJqSUxuZFlObkV1TG9lVXRETlI4bGZZ?= =?utf-8?B?U1VtMmk0ZUJoL3F1M05ieFJ3d0phWWpBbGpZL0ZoLzI3dlI2WGFoMkFQRzdT?= =?utf-8?B?QXdQaW5WMGFIUEpjZzV6U0hsLzVXdUMxWVY5Mm1YajJibEZ2eDZHckVhQUZG?= =?utf-8?B?Vzlrb2hEc1RRS280alUyTy90dUhGelRvQUEwSGliN29IVlo1c2hGTWNZQUkz?= =?utf-8?B?a2taNUM2MzNzV0FFVWtobnBSMWRtR0VUbVZGYXVTcWlWVlozdTlZR1BPR0dy?= =?utf-8?B?SENHN1R6Q0lybXN0c3FuM2c2V0RlRjVSQlRDVG53K3NoL28yMENoMU5qUGVF?= =?utf-8?B?RTN5Vzg1U3cvcHRMOUcxQkdkaUdJdEMxcVllaTI3VVVadjlFUHZzOVV3Q1pD?= =?utf-8?B?bDl1ejVrelE2UkJEZkdET2cvVUQxVzU4ZlhzUVFrZmhyRG1kWEFUS0ZLVnZL?= =?utf-8?B?bG9mUWdoYjVKODVidmVkT2JKT1MxRk1zVXlTZXYxaHVIZ0dEWEVzcXdMUXBn?= =?utf-8?B?N1EyZ1R0MmZuTm9EYjZHTUdUa2Rud1VKaUNlS1JkUXlXYm9pUWpQVnNMNWRL?= =?utf-8?B?elA4MlAxVnNFbHNuUFJkRkpZd2dONERFWUVvR0d2RnFHa0tRckd6RVdmakFo?= =?utf-8?B?ck1NNXVYM0JBMlluOGljQlRHSUlVTFk1d1hJZ09OaUZMYldMRm9jMlJ3Y2xT?= =?utf-8?B?cjFIKzlncFRQYkxZUnR2UUpSUHFxNWFSQVFUbnlvN0Q2bXBOc2pRRmV6MC9m?= =?utf-8?B?aHlsNUIrTURnRmNvTDc1NzUwVHZ5KzlxUjRwRTE2dzJhUEtyeXJxRnorMWFi?= =?utf-8?B?OXU4OUhZakViOWg5M05rZDhPdUw4ZUxZaEc2MithY1l4QnAweDR5RTRCVGMv?= =?utf-8?B?SGVoeGlIdjlMK0Q0eThYblpLRTk3T1pZRzhhQkFwNDgvLzF3TW5ubDM3Tlc5?= =?utf-8?B?Sk1ucDUyQ0h6VW9DMjUzUkhEcklmVlpGbGx5TXNaSjNoN2w2ZTNzbTloTmRv?= =?utf-8?B?eVhGc0RnemZUVHFnM1MxTFFXbXNpSGZSWUtqdFZmeUNOV3lzdFZzOEsvdTRa?= =?utf-8?B?VFF6Q0tiR2R0RExid0lYZ1NibVEzQ2Z4b0dhZEJoblFZV2J6VFgyeFlkQVVk?= =?utf-8?B?bmxXK29TRDJWN1JQb2NIVGgrMEtGY3czVDdsRTJ6b2p6MTNHcnRYSGkvdTc4?= =?utf-8?B?ZjZweUZNQjhyTjl5VWtITVlxVWtjTndneVBDaGFyY2dwZTB4NVFYY0RSeGsv?= =?utf-8?B?Q01MelZrcE1CblliUGNDUko1ZGtwZVg2K3l5ZUdkWGpzZXArYVdKQWVlQS8y?= =?utf-8?B?R0NDM0luYVBtMFJPRWVlbkxRN0ZIbFJNbSt3cFRPNnNkWjgyMnV6Sm9RTVgr?= =?utf-8?B?ZklyTWR6VWovZE1zNFhJRFB4YWVESHU2bnZ3K0NxV1hqQmdGMWpobGlNTksx?= =?utf-8?B?QlZ6NFFYMmN3d0J5ck1ITi9pZ2JMcmQ5YjFwdEUwQTllTnpMNVRkc3BTL24z?= =?utf-8?B?TXpwZHBFUzB2SVNOQ2REd0VVUWY0ZU1YN0FGSkk2enBzTkFyYUM4anZQY3J3?= =?utf-8?B?djJYV2MwMkRTNEJvSjR1ZDlOYnRZS29kK2p6WkFTNjc3Y1lUY2x4d2N3NWs5?= =?utf-8?B?QzB1eTFrTzFoTFVkdTFQZ0RwL0RyOWFrQ1NvbFhmdXozTzlwd2txcHRaWjNN?= =?utf-8?B?RGhDbHlKZGVCQzlrK3Y2U1dQeGNKYnd6OHJEdHB3YTRzcmtjcUpaQmQ5SXZF?= =?utf-8?B?UlZTUWl6UlBJWnF4eHZlc2o1VzN2U0hEKzNUVTVnZktIa05ZVEFCWDNVNncw?= =?utf-8?B?T3VXeHFSMWZZOFNGZ1ovMjgrclk0Ym5JQVU4MjRLOWs1L0daanVzT0dhbC9Y?= =?utf-8?B?TUpyVzhKbmJFbThKb0l0VlA2WllRbENMbHh4QW45OXE4TXNEb1BHajkvY2JX?= =?utf-8?B?TWc9PQ==?= X-OriginatorOrg: siemens.com X-MS-Exchange-CrossTenant-Network-Message-Id: e6927f2d-fcd3-43c5-1f8e-08dd04c8b9e6 X-MS-Exchange-CrossTenant-AuthSource: AS4PR10MB6181.EURPRD10.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Nov 2024 16:23:51.6720 (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: 9RK17iSKHS0r4SUNmHO9sDqV/+ZWHcYPF0kUt8RGY3xknpPxqH5uXd4ccmzcxMPnobK8DPI9EFvRi7g5XLekwQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR10MB8606 X-Original-Sender: jan.kiszka@siemens.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=vQK7uICZ; 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 jan.kiszka@siemens.com designates 2a01:111:f403:c200::1 as permitted sender) smtp.mailfrom=jan.kiszka@siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com X-Original-From: Jan Kiszka Reply-To: Jan Kiszka 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: jwIS+qS8XBe+ 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? > 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? BTW, missing signed-off, but I that might be because of "RFC". > --- > > 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. > +# 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? 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? BTW, patch was mangled by your email client. > +# > +# IMPLIED_IMAGE_FEATURES[alpha] = "beta" So, if I add "alpha" to IMAGE_FEATURES, I will also get "beta" as feature, right? > +# > +# IMAGE_FEATURES += "alpha theta -theta" > +# > +# # SOME_VARIBLE="yes" if 'beta' is in IMAGE_FEATURES, "no" otherwise > +# SOME_VARIABLE = "${@bb.utils.contains('IMAGE_FEATURES', 'beta', > 'yes', 'no', d)}" > +# # SOME_VARIBLE_TWO="yes" if 'beta' and 'alpha' are in > IMAGE_FEATURES, "no" otherwise > +# SOME_VARIABLE_TWO = "${@bb.utils.contains('IMAGE_FEATURES', > ['beta', 'alpha'], 'yes', 'no', d)}" > +# # SOME_VARIBLE_THREE="yes" if 'beta' or 'theta' are in > IMAGE_FEATURES, "no" otherwise > +# SOME_VARIABLE_THREE = "${@bb.utils.contains_any('IMAGE_FEATURES', > ['beta', 'theta'], 'yes', 'no', d)}" > + > + > +def remove_prefixed_features(var, d): > + """Return the items to be removed from var with :remove. > + > + This function is intended to be used in a :remove handler to remove > + items from a variable. It will interpret items prefixed with a '-' as > + items to be removed. > + > + As an internal note, the 'remove_prefixed_features_internal' flag > is used to > + avoid infinite recursion. > + """ > + if d.getVarFlag(var, 'remove_prefixed_features_internal') == '1': > + return '' > + > + from collections import Counter > + > + d.setVarFlag(var, 'remove_prefixed_features_internal', '1') > + try: > + value = d.getVar(var) > + counter = Counter() > + for v in value.split(): > + if v.startswith('-'): > + counter[v[1:]] -= 1 > + counter[v] -= 1 > + else: > + counter[v] += 1 > + return ' '.join(v for v, c in counter.items() if c < 1) > + finally: > + d.delVarFlag(var, 'remove_prefixed_features_internal') > + > +def add_implied_features(var, implied_var, d): > + """Return the items to be appended due to the presence of other > items in var. > + > + This function is intended to be used in a :append handler to append > + items from a variable. It will rely on the mapping of implied features > + to append the corresponding items. > + > + As an internal note, the 'add_implied_features_internal' flag is used to > + avoid infinite recursion. > + """ > + if d.getVarFlag(var, 'add_implied_features_internal') == '1': > + return '' > + > + def implied_features(feature, implied_mapping, d, seen=None): > + """Return the implied features for a given feature.""" > + if seen is None: > + seen = set() > + if feature in seen: > + return '' > + seen.add(feature) > + implied = implied_mapping.get(feature, '').split() > + return ' '.join(implied + [implied_features(f, > implied_mapping, d, seen) for f in implied]) > + > + d.setVarFlag(var, 'add_implied_features_internal', '1') > + try: > + value = d.getVar(var) > + implied_mapping = d.getVarFlags(implied_var) > + if implied_mapping is None: > + return '' > + > + return ' '.join(implied_features(f, implied_mapping, d) for f > in value.split()) > + finally: > + d.delVarFlag(var, 'add_implied_features_internal') > diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf > index cda98035..4dedb081 100644 > --- a/meta/conf/bitbake.conf > +++ b/meta/conf/bitbake.conf > @@ -172,6 +172,31 @@ BBINCLUDELOGS ??= "yes" > # Add event handlers for bitbake > INHERIT += "isar-events sstate" > > +# Make features variables available > +INHERIT += "features" > + > +BASE_REPO_FEATURES ??= "" > +BASE_REPO_FEATURES[doc] = "Specifies the list of features for the > base-apt repository." > +BASE_REPO_FEATURES:remove = > "${@remove_prefixed_features('BASE_REPO_FEATURES', d)}" > +BASE_REPO_FEATURES:prepend = > "${@add_implied_features('BASE_REPO_FEATURES', > 'IMPLIED_BASE_REPO_FEATURES', d)} " > + > +MACHINE_FEATURES ??= "" > +MACHINE_FEATURES[doc] = "Specifies the list of hardware features the > MACHINE is capable of supporting." > +MACHINE_FEATURES:remove = "${@remove_prefixed_features('MACHINE_FEATURES', d)}" > +MACHINE_FEATURES:prepend = > "${@add_implied_features('MACHINE_FEATURES', > 'IMPLIED_MACHINE_FEATURES', d)} " > + > +DISTRO_FEATURES ??= "" > +DISTRO_FEATURES[doc] = "The software support you want in your > distribution for various features." > +DISTRO_FEATURES:remove = "${@remove_prefixed_features('DISTRO_FEATURES', d)}" > +DISTRO_FEATURES:prepend = "${@add_implied_features('DISTRO_FEATURES', > 'IMPLIED_DISTRO_FEATURES', d)} " > + > +COMBINED_FEATURES = "${@oe.utils.set_intersect('DISTRO_FEATURES', > 'MACHINE_FEATURES', d)}" > + > +ROOTFS_FEATURES ??= "" > +ROOTFS_FEATURES[doc] = "The list of features to be included in a root > filesystem. Typically, you configure this variable in an image recipe > or class." > +ROOTFS_FEATURES:remove = "${@remove_prefixed_features('ROOTFS_FEATURES', d)}" > +ROOTFS_FEATURES:prepend = "${@add_implied_features('ROOTFS_FEATURES', > 'IMPLIED_ROOTFS_FEATURES', d)} " > + > # Buildstats requires IMAGE_ROOTFS to be always defined > IMAGE_ROOTFS ??= "${WORKDIR}/rootfs" > INHERIT += "${@'buildstats' if > bb.utils.to_boolean(d.getVar('USE_BUILDSTATS')) else ''}" > -- > 2.45.2 > 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. Jan -- Siemens AG, Technology Linux Expert Center -- 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/ad1008bd-9f8e-4626-8df9-ca4231b5287a%40siemens.com.