From patchwork Mon Dec 16 20:16:01 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "chris.larson" X-Patchwork-Id: 3986 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Mon, 16 Dec 2024 21:16:44 +0100 X-Sieve: CMU Sieve 2.4 Received: from mail-pg1-f186.google.com (mail-pg1-f186.google.com [209.85.215.186]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 4BGKGfP5027015 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Mon, 16 Dec 2024 21:16:43 +0100 Received: by mail-pg1-f186.google.com with SMTP id 41be03b00d2f7-7fd5777a6aasf3243427a12.0 for ; Mon, 16 Dec 2024 12:16:43 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1734380196; cv=pass; d=google.com; s=arc-20240605; b=j9vjdkLqH0ljVeZqZWbzM2Pk5ozyDoHElRjcHVn5Ugws0mGD5TAsiHsnkOxX9f8/V8 nxPxsWd8mKkPJopi5ONGC+bCIbTEwdQAQUyboJH1jK2zQ7k9n2QOVdNCywGm9Xh+DHDM K897MBSIuujWfz5oPV6r+ahlyyDUdT1GJkjehbmlsLW/kXAEj7oLId5EBRNOSibgOzDr XI3Ul+iOsqcmneCpVgDRpDs6sDE+R9czaKP/kFPttHh1TOGE9xFhmDwZg34jjQL7MudV 6UIckV4CEC8k4hK0sbuH7SG/wqiZzOMDeWcpi65/YIYsffMQfC1jjAMLMFvE0oeaBhDC J3Xg== 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 :message-id:date:subject:cc:to:from:dkim-signature; bh=qpOzt7gB2Tu+3ntA7Hjx6iYpMTYMt0/lKnrx4+F7J1w=; fh=v33+/34iqneMa8zYNZemNgC9pQfN82Mx+mGoDL9p0t8=; b=kXNmFBhE/rKWK/7G8YhthxEjx8AaY8o5+tsNbhtx+vOTaVZMXAXV3Rnf6XpO4ucCMD Zbrw6KaAF8byASrvkfoZQUCIO4vYWtXVuJdXNwiJLZV7rmsjtSd0mCXXzGDW66oxkMfe YsW7jIMApmSQJ0FbEvf3ol0uOGVb+C7JXZOICQubnwpb5/MUwcNunMgBAT+vUWMntVM9 zezyIe0G7EyPoGuJwSNrSYzrgcfkeklHbr0Eyg7e5pKCERe5H7LDPCL5ZKxXddvSq00y lx0rhXlMFnJbiQmdJNEL0ia+tV5as14HgY30cCQUCvOGIveKPPy+U67KULP5D8fkZUgB tWbA==; darn=isar-build.org ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=PqOqOFWt; spf=pass (google.com: domain of fm-1325773-202412162016327a143311339a96d68f-vbpd9o@rts-flowmailer.siemens.com designates 185.136.65.228 as permitted sender) smtp.mailfrom=fm-1325773-202412162016327a143311339a96d68f-vbpD9O@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=1734380196; x=1734984996; darn=isar-build.org; 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:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to; bh=qpOzt7gB2Tu+3ntA7Hjx6iYpMTYMt0/lKnrx4+F7J1w=; b=MIo/HFnHxzCbHnoW8OYOJ8jEsSfcqlys0z+BJPOgfQREZqz+bEAMjPrN3/AbuXdpls 9kmvq9S2uBJ1byzzeI1PTV2M2QCLr3aaQcHOZFJFgKvdV73ZqvYXx7ar5XRCOV1tYMDO 4Q2jYlTiMLnwbNn+RECZz5QA2kNGjEyya3r9NqZ90ipjm0p4G0LZ1FxI8bPe+Fjc4hCZ UZJMm6Z7bB+PXNaLRvA0bIUnUvEyvXZDIkd7MsBOtkMCgvOXJGb2TQiM7hzubQS117O3 wmGWEn0ygWf8moNk48EeODpJiELsqc/sHjTbNCl32H9rKVSF21n9nXlQYstAnaenwQKP mKSg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1734380196; x=1734984996; 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:message-id:date:subject:cc:to:from:x-beenthere :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=qpOzt7gB2Tu+3ntA7Hjx6iYpMTYMt0/lKnrx4+F7J1w=; b=i3G3DSBqcJc2jqC9ANn0a7jJZjqAP0+aZg7awlY+Q30QnWxqLZfpE5gqU0WiWyfHCh bRSkn2I38kXUg+DfwJJPxlKWZUlJxfbajJ8orZWaNGxEErjdydiUai0u8fcT6C5Cjkbu x51AAVuG3AFTu342GPAc1qahssH+CpdjqWHbDqpDDNIHxPXan+FbyTlD7drp6kTTvGEp I/Sx8VlBIVp5h8Jj6UnXbq4lh5y0mBPwBE14M75JhG6HYyszqBl7NIHvoan8HtMHCjZm 9xkpHRwZ1/TVjqchHxIMMI6IpdKVVjQPYrmbfcqGBTHzyA34zh3qMw7l7mZlEXpP14Ag iZbw== X-Forwarded-Encrypted: i=2; AJvYcCWHx6OsH+GXL9JSJSxYuU73+daVwB86vRZm5x1cJCAMdmeuJg0pAAz4hMZDMZNh33dcs/JNxIU=@isar-build.org X-Gm-Message-State: AOJu0Yy+hNzRD3DPrN34U1ZVZcM9SUxVffpiDKCUWSwgNxSKBvKP0dFM JlqZoTw6+XV67NJvdFOL1/H9DqRvnLdxbdXsW1i8KLvkinLVIYEx X-Google-Smtp-Source: AGHT+IGwLE8yC/mIdX6axDbb6f6fEhfJ5hZMj6HPvgGUKO/r4ObAyWPdTYNnbojfsfJOJ5xXr4hYVg== X-Received: by 2002:a17:90b:1b07:b0:2ef:cbcc:768b with SMTP id 98e67ed59e1d1-2f2d87bd428mr955204a91.6.1734380195747; Mon, 16 Dec 2024 12:16:35 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a17:90b:1dc3:b0:2f1:2e10:8152 with SMTP id 98e67ed59e1d1-2f291b3296fls362495a91.2.-pod-prod-00-us; Mon, 16 Dec 2024 12:16:34 -0800 (PST) X-Received: by 2002:a17:90b:38ca:b0:2ef:9dbc:38d1 with SMTP id 98e67ed59e1d1-2f2d87bd3d7mr896549a91.5.1734380194314; Mon, 16 Dec 2024 12:16:34 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1734380194; cv=none; d=google.com; s=arc-20240605; b=LixCZj0Uhv0H/X2oAYqC6vFHCNeoWR35Xk91Sjz+U+AUzv9nAdxaoaw2f+Lf7Ggkwr XXtZHpwktkeyPcc1dNq2U6tQfZufHCY7AKcLRYacKjcJUf5bIT140db7kw6Wovkvwk8N NoepUML0fTuBVOGWsT0VWJsMwMim/m5WSawHsun8dAZaeitNBHC0nUDeDUP+85JSF6Qn 6Cwbi8p5TgnJ/Yv7MEXL8JzZydhNml6YY55QQzOheXFJ6yTVZqJupnglRcIBfOgMKRDJ tvuocfOZ+RPFA5g1OYWWDr3mYoMXMFBLG8YhzQMNukbdipPAurV6YZ6r3IyJ2iHvZ1KK moHg== 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:message-id:date :subject:cc:to:from:dkim-signature; bh=Z2qdRMPJ22d2U/THtGBae9wCwVydSgylrFswtrQbZFA=; fh=driaQgy5ky1wrDv6HWsujA4dQyOYnFdmRvvxQJrALr8=; b=UHvLp3h6Tw6j9y5P2WCX5PfeYs0cs/a9+PuHjfEGr6qmZtU5FXJ1eRCvjNsfELee5+ B/qfnBFc9jqLwfP92QHv404h2RDEyd0tkeQOHlNDD6kcojdRD3EESvXNcY2AIL6BUx7t pgI58zgh7Z5HZXswuO3hJ8rkoDOLqaA7p+DKtXjpXPlOR1kYL1IM/AHFWo3tEopsjqqm N1XyUMhjBRJ+TOk9a8qJWlkWtonRwETXapOCQ/Qbv6pAOs9J6NzPvVA0Vmw4JW3Lsj7Y mv6Km6Qki8bel1CrNlTqiZNrBuxlOHXJ4+LORYSuZtrlbrZLcLobhL3PCQg7/7m7zP2V G/1Q==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=PqOqOFWt; spf=pass (google.com: domain of fm-1325773-202412162016327a143311339a96d68f-vbpd9o@rts-flowmailer.siemens.com designates 185.136.65.228 as permitted sender) smtp.mailfrom=fm-1325773-202412162016327a143311339a96d68f-vbpD9O@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from mta-65-228.siemens.flowmailer.net (mta-65-228.siemens.flowmailer.net. [185.136.65.228]) by gmr-mx.google.com with ESMTPS id 98e67ed59e1d1-2f142f8f025si357995a91.3.2024.12.16.12.16.34 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 16 Dec 2024 12:16:34 -0800 (PST) Received-SPF: pass (google.com: domain of fm-1325773-202412162016327a143311339a96d68f-vbpd9o@rts-flowmailer.siemens.com designates 185.136.65.228 as permitted sender) client-ip=185.136.65.228; Received: by mta-65-228.siemens.flowmailer.net with ESMTPSA id 202412162016327a143311339a96d68f for ; Mon, 16 Dec 2024 21:16:32 +0100 X-Patchwork-Original-From: "chris.larson via isar-users" From: "chris.larson" To: isar-users@googlegroups.com Cc: Christopher Larson Subject: [PATCH] lists.bbclass,bitbake.conf: use features lists Date: Mon, 16 Dec 2024 13:16:01 -0700 Message-ID: <20241216201602.619-1-chris.larson@siemens.com> MIME-Version: 1.0 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-1325773:519-21489:flowmailer X-Original-Sender: chris.larson@siemens.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=PqOqOFWt; spf=pass (google.com: domain of fm-1325773-202412162016327a143311339a96d68f-vbpd9o@rts-flowmailer.siemens.com designates 185.136.65.228 as permitted sender) smtp.mailfrom=fm-1325773-202412162016327a143311339a96d68f-vbpD9O@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com X-Original-From: chris.larson@siemens.com Reply-To: chris.larson@siemens.com 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_H3,RCVD_IN_MSPIKE_WL, 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-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= From: Christopher Larson The intention behind this commit is to ease and encourage the use of Yocto-style features variables, beyond our current usage: - Add a bbclass to ease the handling of list variables in general - Add default values for the features variables - Add the features variables to the list variables - Add a combined features variable The intention is that a downstream layer will use `bb.utils.contains` or `bb.utils.contains_any` to enable or disable functionality based on the presence of defined features, rather than adding new variables in each case. Signed-off-by: Christopher Larson Signed-off-by: Christopher Larson Signed-off-by: Christopher Larson --- meta/classes/lists.bbclass | 97 ++++++++++++++++++++++++++++++++++++++ meta/conf/bitbake.conf | 19 ++++++++ 2 files changed, 116 insertions(+) create mode 100644 meta/classes/lists.bbclass diff --git a/meta/classes/lists.bbclass b/meta/classes/lists.bbclass new file mode 100644 index 00000000..c872f4bd --- /dev/null +++ b/meta/classes/lists.bbclass @@ -0,0 +1,97 @@ +# Functions to improve the functionality of bitbake list variables. +# +# - Add the ability to remove items from a list variable without using :remove. +# - Add the ability for a list item to imply the addition of other list items. +# + +# Usage requires either adding the variable name to LIST_VARIABLES, or manually +# adding a :remove and a :prepend to each fully supported list variable. +# +# To remove items from a configured list, simply append the item to be removed +# to the variable with a '-' or '~' prefix. For example, to remove 'alpha' from +# IMAGE_FEATURES, add '-alpha' to IMAGE_FEATURES. +# +# To support implied list items, create a mapping of items to be appended to +# the variable when a specific item is present. For example, to append 'beta' +# to IMAGE_FEATURES when 'alpha' is present, configure IMAGE_FEATURES as such, +# then set IMPLIED_IMAGE_FEATURES[alpha] = "beta". +# +# Boilerplate example: +# +# # Either this: +# LIST_VARIABLES += "IMAGE_FEATURES" +# +# # Or this: +# IMAGE_FEATURES:remove = "${@remove_prefixed_items('IMAGE_FEATURES', d)}" +# IMAGE_FEATURES:prepend = "${@add_implied_items('IMAGE_FEATURES', 'IMPLIED_IMAGE_FEATURES', d)} " +# +# Usage example: +# +# # IMAGE_FEATURES will be "beta alpha" if the following configuration is used: +# IMPLIED_IMAGE_FEATURES[alpha] = "beta" +# IMAGE_FEATURES += "alpha" +# +# # IMAGE_FEATURES will be "first" if the following configuration is used: +# IMAGE_FEATURES = "first second" +# IMAGE_FEATURES += "-second" + + +def remove_prefixed_items(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 '-' + or '~' as items to be removed. + """ + # Use a flag to avoid infinite recursion. + if d.getVarFlag(var, 'remove_prefixed_items_internal') == '1': + return '' + + from collections import Counter + + d.setVarFlag(var, 'remove_prefixed_items_internal', '1') + try: + value = d.getVar(var) + counter = Counter() + for v in value.split(): + if v.startswith('-') or 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_items_internal') + + +def add_implied_items(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 supplied mapping of implied items + to append the corresponding items. + """ + # Use a flag to avoid infinite recursion. + if d.getVarFlag(var, 'add_implied_items_internal') == '1': + return '' + + def implied_items(item, implied_mapping, d, seen=None): + """Return the implied items for a given item.""" + if seen is None: + seen = set() + if item in seen: + return '' + seen.add(item) + implied = implied_mapping.get(item, '').split() + return ' '.join(implied + [implied_items(f, implied_mapping, d, seen) for f in implied]) + + d.setVarFlag(var, 'add_implied_items_internal', '1') + try: + value = d.getVar(var) + implied_mapping = d.getVarFlags(implied_var) + if implied_mapping is None: + return '' + + return ' '.join(implied_items(f, implied_mapping, d) for f in value.split()) + finally: + d.delVarFlag(var, 'add_implied_items_internal') diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf index ef408faa..5ab8ced7 100644 --- a/meta/conf/bitbake.conf +++ b/meta/conf/bitbake.conf @@ -175,6 +175,25 @@ BBINCLUDELOGS ??= "yes" # Add event handlers for bitbake INHERIT += "isar-events sstate" +# Make features variables available +INHERIT += "lists" + +LIST_VARIABLES += "BASE_REPO_FEATURES MACHINE_FEATURES DISTRO_FEATURES ROOTFS_FEATURES" + +BASE_REPO_FEATURES ??= "" +BASE_REPO_FEATURES[doc] = "Specifies the list of features for the base-apt repository." + +MACHINE_FEATURES ??= "" +MACHINE_FEATURES[doc] = "Specifies the list of hardware features the MACHINE is capable of supporting." + +DISTRO_FEATURES ??= "" +DISTRO_FEATURES[doc] = "The software support you want in your distribution for various features." + +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." + # Buildstats requires IMAGE_ROOTFS to be always defined IMAGE_ROOTFS ??= "${WORKDIR}/rootfs" INHERIT += "${@'buildstats' if bb.utils.to_boolean(d.getVar('USE_BUILDSTATS')) else ''}" From patchwork Fri Jan 24 21:20:38 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "chris.larson" X-Patchwork-Id: 4043 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Fri, 24 Jan 2025 22:21:17 +0100 X-Sieve: CMU Sieve 2.4 Received: from mail-lj1-f184.google.com (mail-lj1-f184.google.com [209.85.208.184]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 50OLLG4R015728 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Fri, 24 Jan 2025 22:21:17 +0100 Received: by mail-lj1-f184.google.com with SMTP id 38308e7fff4ca-3034638be43sf11824251fa.3 for ; Fri, 24 Jan 2025 13:21:16 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1737753670; cv=pass; d=google.com; s=arc-20240605; b=eP9PE03NDbrM2TAxso0ery2FVDuPfyqiWjSDM1xqntUpdqVLgFMP9FYWJEqk7veKCk +SU1cw2cglRaMyM0KMNXp4LTwGRL9HCv18qUZy6ibdzeOuiVh6r+aGeuoKh8EH1dmt0s K4/eEp8ijulqzvXpAdzsYP8bCFCKhU7E3ugmb+Y3xJApusmUVxmlMEnPU+tGEOmVFBHa +1MvTXMJkHPgD85CRN+X37kql5RlOff62YE99FXUriXwQzmvZTz9rE7Txy9FaW/5mtzD 6LnE26yY2UVg676eNqHnKJWoZsCPHIPfx1bPkIlZisGPrDAfIvGIoeSrAd5lkzVbzPbB 5Jlw== 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:cc:to:from :dkim-signature; bh=urqVgeG/ymM5bQqNXn0a7Fw6Mw+aQuYIuPUQGFGGpQQ=; fh=yuUjoyJLbIUTGF3DODU9D/GPJc2t4efqGMgVxZJd9OE=; b=kGDB3UGmSh1TaR68muue56OLQXShgTdCL3uCXofHk8hvIAsTJW39qI7B69nTWV+13x Lqrh0gwOMSrFTnDqlTD0KjXzXss/8jI4exJ7fSDjb8jrZWws71u2ejU0nPWtsJHjRRJf WkrRnTmjzBx/6jDCsf4MO4HOBCw4vlZsJa5nsmuv2wElz8j4t7+oCjEQXBchL1qfFVtz 3UV8J3grJkAlkakFx678rXO+fTmL0Xt4/hc6zA2c7XWL5dXdgNxvHrS0QN0QqCS1eVP2 OhsrI4GuEIeF5+urK8zSzNPk7Jgaz31uVyWcFFGyhktQ6EEbU9sXmvQwIOqnhi0j3ZGm TDSg==; darn=isar-build.org ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=B0viBcXT; spf=pass (google.com: domain of fm-1325773-202501242121076449a19ae18372df89-6pzmah@rts-flowmailer.siemens.com designates 185.136.64.228 as permitted sender) smtp.mailfrom=fm-1325773-202501242121076449a19ae18372df89-6pzMah@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=1737753670; x=1738358470; darn=isar-build.org; 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:cc:to :from:from:to:cc:subject:date:message-id:reply-to; bh=urqVgeG/ymM5bQqNXn0a7Fw6Mw+aQuYIuPUQGFGGpQQ=; b=FhwhEqy/IkFPAu5OI662giWeZaCDOLxWJWpYOX8TONzaIPELnQ3JpXLR2H5ivk0qeX 8F6D/t4AzPNf6Osz4QJF9swkxEArGjAfJmbYO1rZ6UCpcUYc59lulCL/dfbZhlHDUocQ jBzPraesneyOqpvDjxuxxQNbcoMbMUAVca8J7JfgizgEFKpHqLB/RAYmolCh93VspX1X ZysGwR2Vrwyn8Bxi4sz1HxUekpp7gCYVeiysU+JRonXLxgx9aC7BA8Ztxv5Js6wDGGbF GC1RDVtsR0U/+ZiTWrpNlGeh0YSd4KqJdjQf6TL6+4RpGYlMivMmqXD3bv2P5NeONLHY AX9Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737753670; x=1738358470; 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:cc:to :from:x-beenthere:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=urqVgeG/ymM5bQqNXn0a7Fw6Mw+aQuYIuPUQGFGGpQQ=; b=oA/POKiL4XuMAWb4FVsytxGK5/yM5KJC8ZMozsiVYFEXsJjhl4cSXZgIs7/m1d/flZ HCJ1DS23b9rbnB5nJO6Kgy7qb9C/Lih0DZpQdlDk1HwMMNln0Nm86jOv5eK94xzxErkD oLSL1dXs3p/jZx5BW+ZYrk0G/vOLHs1jlCuS6IhIvXM6Yay0NQKPKPtBXAdVY92zNVon w0oG/Jd5F3BaQjxhfWA8FcB2oxFSQMMT3Iu2CdzbU+2WXJbWdR901jv1hIkD0orZ4YBR LWAv63kmzUt3lFsdSsX8uROXAFyRJf2czjhkic3ab+eHW3GGM+ELRvtVb2TodBL04fHL MWBQ== X-Forwarded-Encrypted: i=2; AJvYcCXcwGhe0MVQNqNMpQeD/PCPu+hQCmoCtMtTCuJDSogTyuOIsh2ceyzk9sEKn3gkKhKqLxgkawU=@isar-build.org X-Gm-Message-State: AOJu0YyahNJ99EOSxOnUd60Vb1OIW9ty69GyEsXXCB+AddjRmF9X78yZ ljib5zRaPzUqbNfT4YeqGwJU1VnQBqzkqwXm/X3SZUcbgagywh6t X-Google-Smtp-Source: AGHT+IGuJ9G+cTKV3vS7D9HRoXl+cIGtB/9ny7ZR/+ZdWcOf0BKorKuPeqbbBrGx0TLseHy3gIftsQ== X-Received: by 2002:a2e:be9d:0:b0:306:10d6:28ad with SMTP id 38308e7fff4ca-3072ca5dabamr116208191fa.8.1737753670000; Fri, 24 Jan 2025 13:21:10 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a05:651c:54a:b0:300:1923:a0b5 with SMTP id 38308e7fff4ca-30761c68bc7ls5488971fa.0.-pod-prod-07-eu; Fri, 24 Jan 2025 13:21:08 -0800 (PST) X-Received: by 2002:ac2:41d1:0:b0:542:1b6a:b476 with SMTP id 2adb3069b0e04-5439c218dedmr8720097e87.7.1737753667733; Fri, 24 Jan 2025 13:21:07 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1737753667; cv=none; d=google.com; s=arc-20240605; b=HjNdEP0NYGTlbUlHAKhp5Xx+5NH+jp4GHfRhh/OM+H2B5GImeeqUPFuBvHo+WRwNm2 qj9e1LVQ5QmzafsYzlcYpSM3mLm2Jc7EbNvlsAcx75wiGGtK9UHzpmFMsIKaDll46cMR 4N5skqEI5Kk8OKdl+p4AgTCZCMgAMocDjbAGO8RjeItatoDxsuAEbK62lUcIdGFJRycI mdsi+pBjG6H+hDnrtPePQrqaDdgLJFiZDBSTBWZxSwoJGTz1VG2DDxo/3r0UbUKLis9Q NagG+UbDcdL7Is6+mIYwW28XoUekSaGaAKpc0lr+ZyBBPLgv0vIAdv7sfEo9R13xdztK YiGA== 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:cc:to:from:dkim-signature; bh=bYJrrpQEbQgNBqgU5WvsunS0rLIaRqf7PHXupKLMQ1I=; fh=3bh9z2BWAzGAc1byRhMi0K+arMZmX5BQHE0sOxINdyU=; b=VWBic8FV+8VPB2RMkQT9SIFSsiCNjfTF5E8QI+XYfOMqiwxlAwF0hA+TbLIXfQdry9 0JViVBt/ik0d0YSlTrfBMj6fGyIheKuNUnNYTdWdcyaBst9GkU0q1qNvWnEfqQ1YEtD/ w678iWc9TY7fiXcBz3MkSAx0Kl92ssmnMh6RMyY69vkAHftDL3MzDoq2d/kkUhYzznYo NymYRiaI70BeP9FZ30wHtDqGgR3tEkTvJDRqgmQwtX3vbyBGzl9qU/DxHQr/LlJTYc4F xroJnmCaBPAEBZXxlPNDJ5ZBlEi8xk3N8tJ0BVKEuVvVb1aLccX34ey0Xmr0b0EzYHm4 Mx1A==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=B0viBcXT; spf=pass (google.com: domain of fm-1325773-202501242121076449a19ae18372df89-6pzmah@rts-flowmailer.siemens.com designates 185.136.64.228 as permitted sender) smtp.mailfrom=fm-1325773-202501242121076449a19ae18372df89-6pzMah@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from mta-64-228.siemens.flowmailer.net (mta-64-228.siemens.flowmailer.net. [185.136.64.228]) by gmr-mx.google.com with ESMTPS id 2adb3069b0e04-543c82228c5si66497e87.1.2025.01.24.13.21.07 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 24 Jan 2025 13:21:07 -0800 (PST) Received-SPF: pass (google.com: domain of fm-1325773-202501242121076449a19ae18372df89-6pzmah@rts-flowmailer.siemens.com designates 185.136.64.228 as permitted sender) client-ip=185.136.64.228; Received: by mta-64-228.siemens.flowmailer.net with ESMTPSA id 202501242121076449a19ae18372df89 for ; Fri, 24 Jan 2025 22:21:07 +0100 X-Patchwork-Original-From: "chris.larson via isar-users" From: "chris.larson" To: isar-users@googlegroups.com Cc: Christopher Larson Subject: [PATCHv3 2/3] bitbake.conf: use lists.bbclass for our existing features vars Date: Fri, 24 Jan 2025 14:20:38 -0700 Message-ID: <20250124212040.473-2-chris.larson@siemens.com> In-Reply-To: <20241216201602.619-1-chris.larson@siemens.com> References: <20241216201602.619-1-chris.larson@siemens.com> MIME-Version: 1.0 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-1325773:519-21489:flowmailer X-Original-Sender: chris.larson@siemens.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=B0viBcXT; spf=pass (google.com: domain of fm-1325773-202501242121076449a19ae18372df89-6pzmah@rts-flowmailer.siemens.com designates 185.136.64.228 as permitted sender) smtp.mailfrom=fm-1325773-202501242121076449a19ae18372df89-6pzMah@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com X-Original-From: chris.larson@siemens.com Reply-To: chris.larson@siemens.com 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-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= From: Christopher Larson Add BASE_REPO_FEATURES and ROOTFS_FEATURES to LIST_VARIABLES. Define fallback values and documentation flags for those variables. Signed-off-by: Christopher Larson --- meta/conf/bitbake.conf | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf index cda98035..4906858a 100644 --- a/meta/conf/bitbake.conf +++ b/meta/conf/bitbake.conf @@ -172,6 +172,16 @@ BBINCLUDELOGS ??= "yes" # Add event handlers for bitbake INHERIT += "isar-events sstate" +INHERIT += "lists" + +LIST_VARIABLES += "BASE_REPO_FEATURES ROOTFS_FEATURES" + +BASE_REPO_FEATURES ??= "" +BASE_REPO_FEATURES[doc] = "Specifies the list of features for the base-apt repository." + +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." + # Buildstats requires IMAGE_ROOTFS to be always defined IMAGE_ROOTFS ??= "${WORKDIR}/rootfs" INHERIT += "${@'buildstats' if bb.utils.to_boolean(d.getVar('USE_BUILDSTATS')) else ''}" From patchwork Fri Jan 24 21:20:39 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "chris.larson" X-Patchwork-Id: 4045 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Fri, 24 Jan 2025 22:21:18 +0100 X-Sieve: CMU Sieve 2.4 Received: from mail-lj1-f186.google.com (mail-lj1-f186.google.com [209.85.208.186]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 50OLLH3X015734 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Fri, 24 Jan 2025 22:21:18 +0100 Received: by mail-lj1-f186.google.com with SMTP id 38308e7fff4ca-30729d93f5csf12991491fa.2 for ; Fri, 24 Jan 2025 13:21:18 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1737753672; cv=pass; d=google.com; s=arc-20240605; b=ZkU3Nqkn3zmqp4UYxgzq4Bj2IgqyMP2ZdBEc15IbrMeWMf4nR++SR3AdJGmPy9Y9iJ PtOe2RN9YFcb74YQgLytFTp5KpnlOkhOVLLbSWdWM3ktUi0AJLXz1USm87Tg9d4zqdmZ ShrQVqM/W2uoVrA7mySN4YYiAPQ9HJ5mcMKQTPgh31Pb1fl45Xqx1yt0fcUmm7uqetOc 2Qe2VUXjRDqETeHjxK8hlRq2xVtCQLYE/3PDAiMRFX8erCjId+pLvbOt3xOb61au5LBy 4RavVlIvFAjMu7i9Xid3lBHqEI4Gkq+sn11eY7p7t6UBpFqgVAfk1Dz/NvMMBVdQTglO 9Myg== 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:cc:to:from :dkim-signature; bh=pDBHP0kC+i3XppEqsbKGPUaF1AnkNsSq9BZRz4JLx0Q=; fh=gIviCLFuEGScb6l2VbWcxCC1mjUUDoCxVwIPKGmXu5k=; b=VJHcldW0KWJMvzz9gAU4XI9W8W7qTrlNK/20RiuNXSfCKVLuuWTVmY+Uqw282pDESA zgf728PYUKMRCNz6BxgL/neN3fLywU9ANrURrty05uRXUvDDZJ8HOquz/1P7hig2J4vf swB2nL87I7y9DRwGne9rdG+/5JVp+U5GRinKrf/BK7Kg7ow1I2hpUnP0bOZZOk5ROfO7 6juACyUXQH0e84gAerTcnTAuNsatYpC1/hguhWNutYIOA6aPQAcuBm+ULwRoBdmILq/t tu1GJYYDW6q37nOKEoho07WxtnJsbXhO839HqCn4RUX2H29uLLJ1vKAhfVKHb36QBRrA o2HQ==; darn=isar-build.org ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=MnRDdgnB; spf=pass (google.com: domain of fm-1325773-2025012421210821a0bcd133a150aa17-a32ro4@rts-flowmailer.siemens.com designates 185.136.64.228 as permitted sender) smtp.mailfrom=fm-1325773-2025012421210821a0bcd133a150aa17-A32ro4@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=1737753672; x=1738358472; darn=isar-build.org; 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:cc:to :from:from:to:cc:subject:date:message-id:reply-to; bh=pDBHP0kC+i3XppEqsbKGPUaF1AnkNsSq9BZRz4JLx0Q=; b=sfXuawHUCiqAmki+FA/JknaI25oTVljy//pGoPXwK/OzB/qe1IpgIpqoQG+cKbyYo4 v2Z4yNl3SqcFqnYubPJlGgaKOZJABdHp6cU7Wg+2qh6LnS9TqhkZC+IauzijO7IJ1mB/ kHzMDwdM/hL1L9gaRw2EmcbjM8fIPyPgQESHIQaeyF25z9Qg9XH0UjSU7xUW4fYFwyEa k4HH2l80V9gpbH6t7NyEbUjm+RDST/1Py9YXgoXOvDmX00eX4BG3FueE2HOSK9kbMGkc /6q3DpDn1nMcWxRkUKmd4qMCNzQx4iKyp8whybMPx7yM1lCJ5YAVPMfv4XqAU9VQZ8ii +a+w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737753672; x=1738358472; 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:cc:to :from:x-beenthere:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=pDBHP0kC+i3XppEqsbKGPUaF1AnkNsSq9BZRz4JLx0Q=; b=r2kCNVdjFbTrWfsN7LcovLnEwE+iZdpIue6/7+EcujSIndwB02SR9NXY2kI868QvJ2 kNR6Yx2+6J5kCLfl39bZB9fmJu9VMY/BwGhNPm+kDfxRpAtegTDZN4bGfkanlrI3f3A5 s0IOCQyQn2QSQCOJ4D2ZUc9PVElJ3qRbuE2cmO0nI2HQCYfR7wNZvO6lNt5PSsE09rkF yLG9b/teD8u/YVfoWfKms0ELmXUF84e79fA2tYs2GKIuZDjj1gCf3YYvPhWYubiRp+8t m/+qNneERbhb64rC2xUC5h2toowsWD7zOYkuw1dy+FgX02O4CIwDGDflR/STy2yxYDkq 2pyQ== X-Forwarded-Encrypted: i=2; AJvYcCUu27aMh8UITEF11Y/Z2HJmS9ELhbGTkWvRuY7Nhz4AAG5rPzoR9kFEKX7gOod84gnvYTYDRdw=@isar-build.org X-Gm-Message-State: AOJu0Yz2rt/ka8CQ8yfSxAJom8zx4OPk9/ZeCgI5xAr6BF7c4l1411bg Cyl695M2IhUYpnUjA9tMF0/MGIpXUPPYmaoS24OCxx0KzG6Kz3pL X-Google-Smtp-Source: AGHT+IFY7JDwt4XanavI3RtJnHu+00IUOQb9O/OHc70OAIwIX0uw80+LKNcTAf+533X9LjbCEcVbtQ== X-Received: by 2002:a05:651c:154b:b0:302:264e:29ec with SMTP id 38308e7fff4ca-3072cad1a59mr120777971fa.11.1737753671186; Fri, 24 Jan 2025 13:21:11 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a2e:bc87:0:b0:2ff:a069:421d with SMTP id 38308e7fff4ca-30761db00dbls6844811fa.2.-pod-prod-04-eu; Fri, 24 Jan 2025 13:21:09 -0800 (PST) X-Received: by 2002:a19:f803:0:b0:542:6fcd:50ed with SMTP id 2adb3069b0e04-5439c2874edmr9724273e87.51.1737753668788; Fri, 24 Jan 2025 13:21:08 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1737753668; cv=none; d=google.com; s=arc-20240605; b=gWjK2mSm3zSA4lTyzDSAxbs3dJL5/DyF0wmZXtK/Ie7nyfl6f8SzEs/gVUusS1L9Wy glJGKB/3hVqz5x7CvTCVxHo2FW/OFS6CAyLryMwOiSyuWr9+6qmTiN1+NaTo+PPxyfqI ok4i4DsPLZiD8Wv2x49M5Zwv8I8SdX5g5cKV4DfPkODZe5R0Dkq4gW5+ssrYw2h0n+VQ xpBTEkCqjlW9nKz2c34gaE1BlgBvxdNR/zYr04/pMILpAew4Q+AZMhzIHRqU7xzGeGlh 7OFomc62xovT0+7yVzMuMdCeml/kC4JjqHGejq/oyeo2rTVfjD1WxZ9j9UIW2UW2Sm34 DNfw== 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:cc:to:from:dkim-signature; bh=2RikPbyWmSyu3hEAG0eU3zKhTwN2gwLBTpBwJ2WyxTE=; fh=3bh9z2BWAzGAc1byRhMi0K+arMZmX5BQHE0sOxINdyU=; b=M2BFWMy0SjAL3xz1TKc/MDYwHAzKp5leScymGEXmFmQExKWqroAvi7Za+3iVaFmDYE FonKHyLRpYMwPDVJb5FDMVbwoxAMMy8bF+TRUmd4ORX8hzSmWkZ/BvQ2TqsGj6V6twAh 9A9icxiQr0rQzrWopGaJQMCiC/Oz2PLGs4tiRBxx5FarLEIHFWmqDGHIhjXTjzGnz0/h GNZC6z94KbNQY5J3JFx9uGhEntmLYDS8BlFoOSA2Ir6+qhqa2m5odFZASryCAg2Jecp8 JjH+Z6i2x0bvjQrge7zH+tvC3i5AlPiyZH0Gfxi1LU0ssK0ki4nk8J1KKIWUZszsd0/H kkog==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=MnRDdgnB; spf=pass (google.com: domain of fm-1325773-2025012421210821a0bcd133a150aa17-a32ro4@rts-flowmailer.siemens.com designates 185.136.64.228 as permitted sender) smtp.mailfrom=fm-1325773-2025012421210821a0bcd133a150aa17-A32ro4@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from mta-64-228.siemens.flowmailer.net (mta-64-228.siemens.flowmailer.net. [185.136.64.228]) by gmr-mx.google.com with ESMTPS id 2adb3069b0e04-543c82228c5si66497e87.1.2025.01.24.13.21.08 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 24 Jan 2025 13:21:08 -0800 (PST) Received-SPF: pass (google.com: domain of fm-1325773-2025012421210821a0bcd133a150aa17-a32ro4@rts-flowmailer.siemens.com designates 185.136.64.228 as permitted sender) client-ip=185.136.64.228; Received: by mta-64-228.siemens.flowmailer.net with ESMTPSA id 2025012421210821a0bcd133a150aa17 for ; Fri, 24 Jan 2025 22:21:08 +0100 X-Patchwork-Original-From: "chris.larson via isar-users" From: "chris.larson" To: isar-users@googlegroups.com Cc: Christopher Larson Subject: [PATCHv3 3/3] bitbake.conf: add MACHINE_FEATURES, DISTRO_FEATURES, COMBINED_FEATURES Date: Fri, 24 Jan 2025 14:20:39 -0700 Message-ID: <20250124212040.473-3-chris.larson@siemens.com> In-Reply-To: <20241216201602.619-1-chris.larson@siemens.com> References: <20241216201602.619-1-chris.larson@siemens.com> MIME-Version: 1.0 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-1325773:519-21489:flowmailer X-Original-Sender: chris.larson@siemens.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=MnRDdgnB; spf=pass (google.com: domain of fm-1325773-2025012421210821a0bcd133a150aa17-a32ro4@rts-flowmailer.siemens.com designates 185.136.64.228 as permitted sender) smtp.mailfrom=fm-1325773-2025012421210821a0bcd133a150aa17-A32ro4@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com X-Original-From: chris.larson@siemens.com Reply-To: chris.larson@siemens.com 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-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= From: Christopher Larson These variables are useful to allow toggling of functionality in their respective configuration files to alter how images are constructed. Common usage would be for an image recipe to alter ROOTFS_FEATURES basd on configured machine, distro, or combined features. Signed-off-by: Christopher Larson --- meta/conf/bitbake.conf | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf index 4906858a..9f3b8a4e 100644 --- a/meta/conf/bitbake.conf +++ b/meta/conf/bitbake.conf @@ -172,13 +172,22 @@ BBINCLUDELOGS ??= "yes" # Add event handlers for bitbake INHERIT += "isar-events sstate" +# Make features variables available INHERIT += "lists" -LIST_VARIABLES += "BASE_REPO_FEATURES ROOTFS_FEATURES" +LIST_VARIABLES += "BASE_REPO_FEATURES MACHINE_FEATURES DISTRO_FEATURES ROOTFS_FEATURES" BASE_REPO_FEATURES ??= "" BASE_REPO_FEATURES[doc] = "Specifies the list of features for the base-apt repository." +MACHINE_FEATURES ??= "" +MACHINE_FEATURES[doc] = "Specifies the list of hardware features the MACHINE is capable of supporting." + +DISTRO_FEATURES ??= "" +DISTRO_FEATURES[doc] = "The software support you want in your distribution for various features." + +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."