From eb56f89a9b2163bdb8c91dbdc33696fea052d032 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Thu, 18 Aug 2022 10:38:28 +0100 Subject: distrooverrides: Move back to classes whilst it's usage is clarified Signed-off-by: Richard Purdie --- meta/classes-recipe/distrooverrides.bbclass | 38 ----------------------------- meta/classes/distrooverrides.bbclass | 38 +++++++++++++++++++++++++++++ 2 files changed, 38 insertions(+), 38 deletions(-) delete mode 100644 meta/classes-recipe/distrooverrides.bbclass create mode 100644 meta/classes/distrooverrides.bbclass (limited to 'meta') diff --git a/meta/classes-recipe/distrooverrides.bbclass b/meta/classes-recipe/distrooverrides.bbclass deleted file mode 100644 index 8d9d7cda7d..0000000000 --- a/meta/classes-recipe/distrooverrides.bbclass +++ /dev/null @@ -1,38 +0,0 @@ -# -# Copyright OpenEmbedded Contributors -# -# SPDX-License-Identifier: MIT -# - -# Turns certain DISTRO_FEATURES into overrides with the same -# name plus a df- prefix. Ensures that these special -# distro features remain set also for native and nativesdk -# recipes, so that these overrides can also be used there. -# -# This makes it simpler to write .bbappends that only change the -# task signatures of the recipe if the change is really enabled, -# for example with: -# do_install:append:df-my-feature () { ... } -# where "my-feature" is a DISTRO_FEATURE. -# -# The class is meant to be used in a layer.conf or distro -# .inc file with: -# INHERIT += "distrooverrides" -# DISTRO_FEATURES_OVERRIDES += "my-feature" -# -# Beware that this part of OVERRIDES changes during parsing, so usage -# of these overrides should be limited to .bb and .bbappend files, -# because then DISTRO_FEATURES is final. - -DISTRO_FEATURES_OVERRIDES ?= "" -DISTRO_FEATURES_OVERRIDES[doc] = "A space-separated list of entries. \ -Each entry is added to OVERRIDES as df- if is in DISTRO_FEATURES." - -DISTRO_FEATURES_FILTER_NATIVE:append = " ${DISTRO_FEATURES_OVERRIDES}" -DISTRO_FEATURES_FILTER_NATIVESDK:append = " ${DISTRO_FEATURES_OVERRIDES}" - -# If DISTRO_FEATURES_OVERRIDES or DISTRO_FEATURES show up in a task -# signature because of this line, then the task dependency on -# OVERRIDES itself should be fixed. Excluding these two variables -# with DISTROOVERRIDES[vardepsexclude] would just work around the problem. -DISTROOVERRIDES .= "${@ ''.join([':df-' + x for x in sorted(set(d.getVar('DISTRO_FEATURES_OVERRIDES').split()) & set((d.getVar('DISTRO_FEATURES') or '').split()))]) }" diff --git a/meta/classes/distrooverrides.bbclass b/meta/classes/distrooverrides.bbclass new file mode 100644 index 0000000000..8d9d7cda7d --- /dev/null +++ b/meta/classes/distrooverrides.bbclass @@ -0,0 +1,38 @@ +# +# Copyright OpenEmbedded Contributors +# +# SPDX-License-Identifier: MIT +# + +# Turns certain DISTRO_FEATURES into overrides with the same +# name plus a df- prefix. Ensures that these special +# distro features remain set also for native and nativesdk +# recipes, so that these overrides can also be used there. +# +# This makes it simpler to write .bbappends that only change the +# task signatures of the recipe if the change is really enabled, +# for example with: +# do_install:append:df-my-feature () { ... } +# where "my-feature" is a DISTRO_FEATURE. +# +# The class is meant to be used in a layer.conf or distro +# .inc file with: +# INHERIT += "distrooverrides" +# DISTRO_FEATURES_OVERRIDES += "my-feature" +# +# Beware that this part of OVERRIDES changes during parsing, so usage +# of these overrides should be limited to .bb and .bbappend files, +# because then DISTRO_FEATURES is final. + +DISTRO_FEATURES_OVERRIDES ?= "" +DISTRO_FEATURES_OVERRIDES[doc] = "A space-separated list of entries. \ +Each entry is added to OVERRIDES as df- if is in DISTRO_FEATURES." + +DISTRO_FEATURES_FILTER_NATIVE:append = " ${DISTRO_FEATURES_OVERRIDES}" +DISTRO_FEATURES_FILTER_NATIVESDK:append = " ${DISTRO_FEATURES_OVERRIDES}" + +# If DISTRO_FEATURES_OVERRIDES or DISTRO_FEATURES show up in a task +# signature because of this line, then the task dependency on +# OVERRIDES itself should be fixed. Excluding these two variables +# with DISTROOVERRIDES[vardepsexclude] would just work around the problem. +DISTROOVERRIDES .= "${@ ''.join([':df-' + x for x in sorted(set(d.getVar('DISTRO_FEATURES_OVERRIDES').split()) & set((d.getVar('DISTRO_FEATURES') or '').split()))]) }" -- cgit 1.2.3-korg