distro_features_check: expand with MACHINE_FEATURES and COMBINED_FEATURES, rename

Besides checking DISTRO_FEATURES for required or conflicting features,
being able to check MACHINE_FEATURES and/or COMBINED_FEATURES may also
be useful at times.

Temporarily support the old class name with a warning about future
deprecation.

(From OE-Core rev: 5f4875b950ce199e91f99c8e945a0c709166dc14)

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Denys Dmytriyenko
2019-11-14 19:40:07 -05:00
committed by Richard Purdie
parent a616ffebdc
commit 9702544b3e
91 changed files with 180 additions and 120 deletions

View File

@@ -1,32 +1,7 @@
# Allow checking of required and conflicting DISTRO_FEATURES
#
# ANY_OF_DISTRO_FEATURES: ensure at least one item on this list is included
# in DISTRO_FEATURES.
# REQUIRED_DISTRO_FEATURES: ensure every item on this list is included
# in DISTRO_FEATURES.
# CONFLICT_DISTRO_FEATURES: ensure no item in this list is included in
# DISTRO_FEATURES.
#
# Copyright 2013 (C) O.S. Systems Software LTDA.
# Temporarily provide fallback to the old name of the class
python () {
# Assume at least one var is set.
distro_features = set((d.getVar('DISTRO_FEATURES') or '').split())
any_of_distro_features = set((d.getVar('ANY_OF_DISTRO_FEATURES') or '').split())
if any_of_distro_features:
if set.isdisjoint(any_of_distro_features, distro_features):
raise bb.parse.SkipRecipe("one of '%s' needs to be in DISTRO_FEATURES" % ' '.join(any_of_distro_features))
required_distro_features = set((d.getVar('REQUIRED_DISTRO_FEATURES') or '').split())
if required_distro_features:
missing = set.difference(required_distro_features, distro_features)
if missing:
raise bb.parse.SkipRecipe("missing required distro feature%s '%s' (not in DISTRO_FEATURES)" % ('s' if len(missing) > 1 else '', ' '.join(missing)))
conflict_distro_features = set((d.getVar('CONFLICT_DISTRO_FEATURES') or '').split())
if conflict_distro_features:
conflicts = set.intersection(conflict_distro_features, distro_features)
if conflicts:
raise bb.parse.SkipRecipe("conflicting distro feature%s '%s' (in DISTRO_FEATURES)" % ('s' if len(conflicts) > 1 else '', ' '.join(conflicts)))
python __anonymous() {
bb.warn("distro_features_check.bbclass is deprecated, please use features_check.bbclass instead")
}
inherit features_check

View File

@@ -0,0 +1,85 @@
# Allow checking of required and conflicting DISTRO_FEATURES
#
# ANY_OF_DISTRO_FEATURES: ensure at least one item on this list is included
# in DISTRO_FEATURES.
# REQUIRED_DISTRO_FEATURES: ensure every item on this list is included
# in DISTRO_FEATURES.
# CONFLICT_DISTRO_FEATURES: ensure no item in this list is included in
# DISTRO_FEATURES.
# ANY_OF_MACHINE_FEATURES: ensure at least one item on this list is included
# in MACHINE_FEATURES.
# REQUIRED_MACHINE_FEATURES: ensure every item on this list is included
# in MACHINE_FEATURES.
# CONFLICT_MACHINE_FEATURES: ensure no item in this list is included in
# MACHINE_FEATURES.
# ANY_OF_COMBINED_FEATURES: ensure at least one item on this list is included
# in COMBINED_FEATURES.
# REQUIRED_COMBINED_FEATURES: ensure every item on this list is included
# in COMBINED_FEATURES.
# CONFLICT_COMBINED_FEATURES: ensure no item in this list is included in
# COMBINED_FEATURES.
#
# Copyright 2019 (C) Texas Instruments Inc.
# Copyright 2013 (C) O.S. Systems Software LTDA.
python () {
# Assume at least one var is set.
distro_features = set((d.getVar('DISTRO_FEATURES') or '').split())
any_of_distro_features = set((d.getVar('ANY_OF_DISTRO_FEATURES') or '').split())
if any_of_distro_features:
if set.isdisjoint(any_of_distro_features, distro_features):
raise bb.parse.SkipRecipe("one of '%s' needs to be in DISTRO_FEATURES" % ' '.join(any_of_distro_features))
required_distro_features = set((d.getVar('REQUIRED_DISTRO_FEATURES') or '').split())
if required_distro_features:
missing = set.difference(required_distro_features, distro_features)
if missing:
raise bb.parse.SkipRecipe("missing required distro feature%s '%s' (not in DISTRO_FEATURES)" % ('s' if len(missing) > 1 else '', ' '.join(missing)))
conflict_distro_features = set((d.getVar('CONFLICT_DISTRO_FEATURES') or '').split())
if conflict_distro_features:
conflicts = set.intersection(conflict_distro_features, distro_features)
if conflicts:
raise bb.parse.SkipRecipe("conflicting distro feature%s '%s' (in DISTRO_FEATURES)" % ('s' if len(conflicts) > 1 else '', ' '.join(conflicts)))
# Assume at least one var is set.
machine_features = set((d.getVar('MACHINE_FEATURES') or '').split())
any_of_machine_features = set((d.getVar('ANY_OF_MACHINE_FEATURES') or '').split())
if any_of_machine_features:
if set.isdisjoint(any_of_machine_features, machine_features):
raise bb.parse.SkipRecipe("one of '%s' needs to be in MACHINE_FEATURES" % ' '.join(any_of_machine_features))
required_machine_features = set((d.getVar('REQUIRED_MACHINE_FEATURES') or '').split())
if required_machine_features:
missing = set.difference(required_machine_features, machine_features)
if missing:
raise bb.parse.SkipRecipe("missing required machine feature%s '%s' (not in MACHINE_FEATURES)" % ('s' if len(missing) > 1 else '', ' '.join(missing)))
conflict_machine_features = set((d.getVar('CONFLICT_MACHINE_FEATURES') or '').split())
if conflict_machine_features:
conflicts = set.intersection(conflict_machine_features, machine_features)
if conflicts:
raise bb.parse.SkipRecipe("conflicting machine feature%s '%s' (in MACHINE_FEATURES)" % ('s' if len(conflicts) > 1 else '', ' '.join(conflicts)))
# Assume at least one var is set.
combined_features = set((d.getVar('COMBINED_FEATURES') or '').split())
any_of_combined_features = set((d.getVar('ANY_OF_COMBINED_FEATURES') or '').split())
if any_of_combined_features:
if set.isdisjoint(any_of_combined_features, combined_features):
raise bb.parse.SkipRecipe("one of '%s' needs to be in COMBINED_FEATURES" % ' '.join(any_of_combined_features))
required_combined_features = set((d.getVar('REQUIRED_COMBINED_FEATURES') or '').split())
if required_combined_features:
missing = set.difference(required_combined_features, combined_features)
if missing:
raise bb.parse.SkipRecipe("missing required machine feature%s '%s' (not in COMBINED_FEATURES)" % ('s' if len(missing) > 1 else '', ' '.join(missing)))
conflict_combined_features = set((d.getVar('CONFLICT_COMBINED_FEATURES') or '').split())
if conflict_combined_features:
conflicts = set.intersection(conflict_combined_features, combined_features)
if conflicts:
raise bb.parse.SkipRecipe("conflicting machine feature%s '%s' (in COMBINED_FEATURES)" % ('s' if len(conflicts) > 1 else '', ' '.join(conflicts)))
}

View File

@@ -113,7 +113,7 @@ COMPATIBLE_MACHINE[doc] = "A regular expression that resolves to one or more tar
COMPLEMENTARY_GLOB[doc] = "Defines wildcards to match when installing a list of complementary packages for all the packages installed in an image."
CONFFILES[doc] = "Identifies editable or configurable files that are part of a package."
CONFIG_SITE[doc] = "A list of files that contains autoconf test results relevant to the current build. This variable is used by the Autotools utilities when running configure."
CONFLICT_DISTRO_FEATURES[doc] = "When a recipe inherits the distro_features_check class, this variable identifies distribution features that would be in conflict should the recipe be built."
CONFLICT_DISTRO_FEATURES[doc] = "When a recipe inherits the features_check class, this variable identifies distribution features that would be in conflict should the recipe be built."
CORE_IMAGE_EXTRA_INSTALL[doc] = "Specifies the list of packages to be added to the image. You should only set this variable in the conf/local.conf file in the Build Directory."
COREBASE[doc] = "Specifies the parent directory of the OpenEmbedded Core Metadata layer (i.e. meta)."
CONF_VERSION[doc] = "Tracks the version of local.conf. Increased each time build/conf/ changes incompatibly."
@@ -346,7 +346,7 @@ QMAKE_PROFILES[doc] = "Specifies your own subset of .pro files to be built for u
RCONFLICTS[doc] = "The list of packages that conflict with another package. Note that the package will not be installed if the conflicting packages are not first removed."
RDEPENDS[doc] = "Lists a package's runtime dependencies (i.e. other packages) that must be installed for the package to be built. They must be the names of other packages as listed in the PACKAGES variable, not recipe names (PN)."
REQUIRED_DISTRO_FEATURES[doc] = "When a recipe inherits the distro_features_check class, this variable identifies distribution features that must exist in the current configuration in order for the OpenEmbedded build system to build the recipe."
REQUIRED_DISTRO_FEATURES[doc] = "When a recipe inherits the features_check class, this variable identifies distribution features that must exist in the current configuration in order for the OpenEmbedded build system to build the recipe."
RM_WORK_EXCLUDE[doc] = "With rm_work enabled, this variable specifies a list of packages whose work directories should not be removed."
ROOTFS[doc] = "Indicates a filesystem image to include as the root filesystem."
ROOTFS_POSTPROCESS_COMMAND[doc] = "Added by classes to run post processing commands once the OpenEmbedded build system has created the root filesystem."

View File

@@ -15,7 +15,7 @@ SRC_URI = "${KERNELORG_MIRROR}/linux/utils/usb/usbutils/usbutils-${PV}.tar.gz \
SRC_URI[md5sum] = "7484445cbcf04b3eacac892fe58f8d9f"
SRC_URI[sha256sum] = "ae2e10aad530d95839b6f4d46cd41715eae6f0f1789310d793e9be21b3e7ae20"
inherit autotools pkgconfig distro_features_check update-alternatives
inherit autotools pkgconfig features_check update-alternatives
ALTERNATIVE_${PN} = "lsusb"
ALTERNATIVE_PRIORITY = "100"

View File

@@ -1,6 +1,6 @@
require avahi.inc
inherit distro_features_check
inherit features_check
ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
DEPENDS += "avahi"

View File

@@ -64,7 +64,7 @@ S = "${WORKDIR}/bluez-${PV}"
CVE_PRODUCT = "bluez"
inherit autotools pkgconfig systemd update-rc.d distro_features_check ptest gobject-introspection-data
inherit autotools pkgconfig systemd update-rc.d features_check ptest gobject-introspection-data
EXTRA_OECONF = "\
--enable-test \

View File

@@ -20,7 +20,7 @@ SRC_URI = "git://github.com/connectivity/connman-gnome.git \
S = "${WORKDIR}/git"
inherit autotools-brokensep gtk-icon-cache pkgconfig distro_features_check
inherit autotools-brokensep gtk-icon-cache pkgconfig features_check
ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
RDEPENDS_${PN} = "connman"

View File

@@ -28,7 +28,7 @@ PACKAGES += "${PN}-codegen ${PN}-utils"
LEAD_SONAME = "libglib-2.0.*"
inherit meson gettext gtk-doc pkgconfig ptest-gnome upstream-version-is-even bash-completion gio-module-cache manpages distro_features_check
inherit meson gettext gtk-doc pkgconfig ptest-gnome upstream-version-is-even bash-completion gio-module-cache manpages features_check
GTKDOC_MESON_OPTION = "gtk_doc"

View File

@@ -6,7 +6,7 @@ DEPENDS = "virtual/${TARGET_PREFIX}gcc libgcc-initial linux-libc-headers"
PROVIDES = "virtual/libc"
PROVIDES += "virtual/libintl virtual/libiconv"
inherit autotools texinfo distro_features_check systemd
inherit autotools texinfo features_check systemd
LEAD_SONAME = "libc.so"

View File

@@ -35,7 +35,7 @@ PACKAGECONFIG ??= "python \
PACKAGECONFIG[python] = "--with-python=${PYTHON},--without-python,python3"
PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
inherit autotools pkgconfig binconfig-disabled ptest distro_features_check
inherit autotools pkgconfig binconfig-disabled ptest features_check
inherit ${@bb.utils.contains('PACKAGECONFIG', 'python', 'python3native', '', d)}

View File

@@ -8,7 +8,7 @@ PR = "r13"
PACKAGE_ARCH = "${TUNE_PKGARCH}"
inherit packagegroup distro_features_check
inherit packagegroup features_check
# rdepends on libx11-dev
REQUIRED_DISTRO_FEATURES = "x11"

View File

@@ -8,7 +8,7 @@ PACKAGE_WRITE_DEPS += "systemd-systemctl-native"
S = "${WORKDIR}"
inherit distro_features_check
inherit features_check
ALLOW_EMPTY_${PN} = "1"

View File

@@ -12,7 +12,7 @@ SRC_URI = "file://serial-getty@.service"
S = "${WORKDIR}"
# As this package is tied to systemd, only build it when we're also building systemd.
inherit distro_features_check
inherit features_check
REQUIRED_DISTRO_FEATURES = "systemd"
do_install() {

View File

@@ -8,7 +8,7 @@ DEPENDS = "intltool-native gperf-native libcap util-linux"
SECTION = "base/shell"
inherit useradd pkgconfig meson perlnative update-rc.d update-alternatives qemu systemd gettext bash-completion manpages distro_features_check
inherit useradd pkgconfig meson perlnative update-rc.d update-alternatives qemu systemd gettext bash-completion manpages features_check
# As this recipe builds udev, respect systemd being in DISTRO_FEATURES so
# that we don't build both udev and systemd in world builds.

View File

@@ -29,7 +29,7 @@ SRC_URI[sha256sum] = "60bbc8c1e1792056e23761d22960b30bb13eccc2cabff8c7310a01f4d5
S = "${WORKDIR}/sysvinit-${PV}"
B = "${S}/src"
inherit update-alternatives distro_features_check
inherit update-alternatives features_check
DEPENDS_append = " update-rc.d-native base-passwd virtual/crypt"
REQUIRED_DISTRO_FEATURES = "sysvinit"

View File

@@ -23,7 +23,7 @@ SRC_URI = "http://dev.gentoo.org/~blueness/${BPN}/${BP}.tar.gz \
SRC_URI[md5sum] = "ce166b3fdd910c2a4a840378f48fedaf"
SRC_URI[sha256sum] = "61e4948e9e51271c3cce2bb5311a30b206dd03ef011062e6c627fb007e43f6b8"
inherit autotools update-rc.d qemu pkgconfig distro_features_check
inherit autotools update-rc.d qemu pkgconfig features_check
CONFLICT_DISTRO_FEATURES = "systemd"

View File

@@ -11,7 +11,7 @@ SRC_URI = "\
S = "${WORKDIR}"
inherit allarch systemd distro_features_check
inherit allarch systemd features_check
REQUIRED_DISTRO_FEATURES = "systemd"

View File

@@ -35,7 +35,7 @@ SRC_URI = "${GNU_MIRROR}/mtools/mtools-${PV}.tar.bz2 \
SRC_URI_append_class-native = " file://disable-hardcoded-configs.patch"
inherit autotools texinfo distro_features_check
inherit autotools texinfo features_check
EXTRA_OECONF = "--without-x"

View File

@@ -20,7 +20,7 @@ S = "${WORKDIR}/git"
DEPENDS = "systemd libxslt-native xmlto-native docbook-xml-dtd4-native docbook-xsl-stylesheets-native intltool"
inherit pkgconfig autotools systemd distro_features_check
inherit pkgconfig autotools systemd features_check
REQUIRED_DISTRO_FEATURES = "systemd"

View File

@@ -150,7 +150,7 @@ do_install() {
fi
}
inherit distro_features_check
inherit features_check
REQUIRED_DISTRO_FEATURES = "pam"
BBCLASSEXTEND = "nativesdk native"

View File

@@ -28,7 +28,7 @@ SRC_URI[sha256sum] = "d798b08af8a8e2063ddde6c9fa3398ca81484f27dec642c5627ffcaa0d
UPSTREAM_CHECK_REGEX = "xdg-utils-(?P<pver>((\d+[\.\-_]*)+)((rc|alpha|beta)\d+)?)\.(tar\.gz|tgz)"
# Needs brokensep as this doesn't use automake
inherit autotools-brokensep distro_features_check
inherit autotools-brokensep features_check
# The xprop requires x11 in DISTRO_FEATURES
REQUIRED_DISTRO_FEATURES = "x11"

View File

@@ -8,7 +8,7 @@ DEPENDS = "libsoup-2.4 webkitgtk gtk+3 iso-codes avahi libnotify gcr \
glib-2.0 glib-2.0-native json-glib libdazzle"
GNOMEBASEBUILDCLASS = "meson"
inherit gnomebase gsettings distro_features_check upstream-version-is-even gettext
inherit gnomebase gsettings features_check upstream-version-is-even gettext
REQUIRED_DISTRO_FEATURES = "x11 opengl"
SRC_URI = "${GNOME_MIRROR}/${GNOMEBN}/${@gnome_verdir("${PV}")}/${GNOMEBN}-${PV}.tar.${GNOME_COMPRESS_TYPE};name=archive \

View File

@@ -11,7 +11,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=55ca817ccb7d5b5b66355690e9abc605"
DEPENDS = "gtk+3 p11-kit glib-2.0 libgcrypt \
${@bb.utils.contains('GI_DATA_ENABLED', 'True', 'libxslt-native', '', d)}"
inherit gnomebase gtk-icon-cache gtk-doc distro_features_check upstream-version-is-even vala gobject-introspection gettext
inherit gnomebase gtk-icon-cache gtk-doc features_check upstream-version-is-even vala gobject-introspection gettext
# depends on gtk+3, but also x11 through gtk+-x11
REQUIRED_DISTRO_FEATURES = "x11"

View File

@@ -10,7 +10,7 @@ DEPENDS = "glib-2.0 cairo pango atk jpeg libpng gdk-pixbuf \
LICENSE = "LGPLv2 & LGPLv2+ & LGPLv2.1+"
inherit autotools gettext pkgconfig gtk-doc update-alternatives gtk-immodules-cache gsettings distro_features_check gobject-introspection
inherit autotools gettext pkgconfig gtk-doc update-alternatives gtk-immodules-cache gsettings features_check gobject-introspection
BBCLASSEXTEND = "native nativesdk"

View File

@@ -8,7 +8,7 @@ BUGTRACKER = "https://gitlab.gnome.org/GNOME/libdazzle/issues"
LIC_FILES_CHKSUM = "file://COPYING;md5=8f0e2cd40e05189ec81232da84bd6e1a"
GNOMEBASEBUILDCLASS = "meson"
inherit gnomebase upstream-version-is-even vala distro_features_check gobject-introspection
inherit gnomebase upstream-version-is-even vala features_check gobject-introspection
DEPENDS = "glib-2.0-native glib-2.0 gtk+3"

View File

@@ -7,7 +7,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34"
DEPENDS = "dbus gtk+3 glib-2.0"
inherit gnomebase gtk-doc distro_features_check gobject-introspection
inherit gnomebase gtk-doc features_check gobject-introspection
# depends on gtk+3
ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"

View File

@@ -5,7 +5,7 @@ box UIs, presentations, kiosk style applications and so on."
HOMEPAGE = "http://www.clutter-project.org/"
LICENSE = "LGPLv2.1+"
inherit clutter ptest-gnome distro_features_check upstream-version-is-even gobject-introspection
inherit clutter ptest-gnome features_check upstream-version-is-even gobject-introspection
# depends on cogl-1.0 which needs opengl
REQUIRED_DISTRO_FEATURES ?= "opengl"

View File

@@ -2,7 +2,7 @@ SUMMARY = "GStreamer integration library for Clutter"
HOMEPAGE = "http://www.clutter-project.org/"
LICENSE = "LGPLv2+"
inherit clutter distro_features_check upstream-version-is-even gobject-introspection
inherit clutter features_check upstream-version-is-even gobject-introspection
# depends on clutter-1.0 which depends on cogl-1.0
REQUIRED_DISTRO_FEATURES ?= "opengl"

View File

@@ -3,7 +3,7 @@ HOMEPAGE = "http://www.clutter-project.org/"
LICENSE = "LGPLv2+"
CLUTTERBASEBUILDCLASS = "meson"
inherit clutter distro_features_check upstream-version-is-even gobject-introspection gtk-doc
inherit clutter features_check upstream-version-is-even gobject-introspection gtk-doc
# depends on clutter-1.0 which depends on cogl-1.0
REQUIRED_DISTRO_FEATURES ?= "opengl"

View File

@@ -6,7 +6,7 @@ can render without stepping on each others toes."
HOMEPAGE = "http://wiki.clutter-project.org/wiki/Cogl"
LICENSE = "MIT"
inherit clutter distro_features_check upstream-version-is-even gobject-introspection
inherit clutter features_check upstream-version-is-even gobject-introspection
# cogl-1.0 needs opengl to build
REQUIRED_DISTRO_FEATURES ?= "opengl"

View File

@@ -15,7 +15,7 @@ SRC_URI[sha256sum] = "04de91e7e6763039bc11940095cd9c7f880baba82196a7765f727ac05a
UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/glew/files/glew"
UPSTREAM_CHECK_REGEX = "/glew/(?P<pver>(\d+[\.\-_]*)+)/"
inherit lib_package pkgconfig distro_features_check
inherit lib_package pkgconfig features_check
REQUIRED_DISTRO_FEATURES = "opengl"

View File

@@ -4,7 +4,7 @@ IMAGE_FEATURES += "splash package-management ssh-server-dropbear hwcodecs"
LICENSE = "MIT"
inherit core-image distro_features_check
inherit core-image features_check
REQUIRED_DISTRO_FEATURES = "wayland"

View File

@@ -4,7 +4,7 @@ IMAGE_FEATURES += "splash package-management x11-base"
LICENSE = "MIT"
inherit core-image distro_features_check
inherit core-image features_check
REQUIRED_DISTRO_FEATURES = "x11"

View File

@@ -13,7 +13,7 @@ UPSTREAM_CHECK_COMMITS = "1"
S = "${WORKDIR}/git"
inherit meson pkgconfig distro_features_check
inherit meson pkgconfig features_check
REQUIRED_DISTRO_FEATURES = "opengl"

View File

@@ -15,7 +15,7 @@ SRC_URI[md5sum] = "e2845de8d2782b2d31c01ae8d7cd4cbb"
SRC_URI[sha256sum] = "002958c5528321edd53440235d3c44e71b5b1e09b9177e8daf677450b6c4433d"
UPSTREAM_CHECK_URI = "https://github.com/anholt/libepoxy/releases"
inherit meson pkgconfig distro_features_check
inherit meson pkgconfig features_check
REQUIRED_DISTRO_FEATURES = "opengl"
REQUIRED_DISTRO_FEATURES_class-native = ""

View File

@@ -17,7 +17,7 @@ SRC_URI = "git://git.yoctoproject.org/${BPN}"
S = "${WORKDIR}/git"
inherit autotools pkgconfig gettext distro_features_check
inherit autotools pkgconfig gettext features_check
# The libxtst requires x11 in DISTRO_FEATURES
REQUIRED_DISTRO_FEATURES = "x11"

View File

@@ -21,7 +21,7 @@ SRC_URI = "git://git.yoctoproject.org/${BPN}"
S = "${WORKDIR}/git"
inherit autotools pkgconfig distro_features_check
inherit autotools pkgconfig features_check
# depends on virtual/libx11
REQUIRED_DISTRO_FEATURES = "x11"

View File

@@ -25,7 +25,7 @@ UPSTREAM_CHECK_URI = "https://github.com/intel/libva-utils/releases"
DEPENDS = "libva"
inherit autotools pkgconfig distro_features_check
inherit autotools pkgconfig features_check
# depends on libva which requires opengl
REQUIRED_DISTRO_FEATURES = "opengl"

View File

@@ -26,7 +26,7 @@ UPSTREAM_CHECK_URI = "https://github.com/intel/libva/releases"
DEPENDS = "libdrm virtual/mesa"
inherit autotools pkgconfig distro_features_check
inherit autotools pkgconfig features_check
REQUIRED_DISTRO_FEATURES = "opengl"

View File

@@ -17,7 +17,7 @@ SRC_URI = "git://git.yoctoproject.org/matchbox-window-manager \
S = "${WORKDIR}/git"
inherit autotools pkgconfig distro_features_check
inherit autotools pkgconfig features_check
# depends on virtual/libx11
REQUIRED_DISTRO_FEATURES = "x11"

View File

@@ -21,7 +21,7 @@ S = "${WORKDIR}/glu-${PV}"
DEPENDS = "virtual/libgl"
inherit autotools pkgconfig distro_features_check
inherit autotools pkgconfig features_check
# Requires libGL.so which is provided by mesa when x11 in DISTRO_FEATURES
REQUIRED_DISTRO_FEATURES = "x11 opengl"

View File

@@ -22,7 +22,7 @@ SRC_URI = "https://mesa.freedesktop.org/archive/demos/${BPN}-${PV}.tar.bz2 \
SRC_URI[md5sum] = "6b65a02622765522176d00f553086fa3"
SRC_URI[sha256sum] = "01e99c94a0184e63e796728af89bfac559795fb2a0d6f506fa900455ca5fff7d"
inherit autotools pkgconfig distro_features_check
inherit autotools pkgconfig features_check
# depends on virtual/egl, virtual/libgl ...
REQUIRED_DISTRO_FEATURES = "opengl x11"

View File

@@ -24,7 +24,7 @@ PROVIDES = " \
virtual/mesa \
"
inherit meson pkgconfig python3native gettext distro_features_check
inherit meson pkgconfig python3native gettext features_check
# Unset these to stop python trying to report the target Python setup
_PYTHON_SYSCONFIGDATA_NAME[unexport] = "1"

View File

@@ -1,7 +1,7 @@
SUMMARY = "Clutter based UI widget library"
LICENSE = "LGPLv2.1"
inherit clutter autotools distro_features_check gobject-introspection gtk-doc
inherit clutter autotools features_check gobject-introspection gtk-doc
# depends on clutter-1.0 which depends on cogl-1.0
REQUIRED_DISTRO_FEATURES = "opengl"

View File

@@ -6,7 +6,7 @@ SUMMARY = "Clutter package groups"
PR = "r6"
inherit packagegroup distro_features_check
inherit packagegroup features_check
# rdepends on clutter-*
REQUIRED_DISTRO_FEATURES = "opengl"

View File

@@ -2,7 +2,7 @@ SUMMARY = "Basic X11 session"
DESCRIPTION = "Packages required to set up a basic working X11 session"
PR = "r1"
inherit packagegroup distro_features_check
inherit packagegroup features_check
# rdepends on matchbox-wm
REQUIRED_DISTRO_FEATURES = "x11"

View File

@@ -7,7 +7,7 @@ PR = "r40"
PACKAGE_ARCH = "${MACHINE_ARCH}"
inherit packagegroup distro_features_check
inherit packagegroup features_check
# rdepends on XSERVER
REQUIRED_DISTRO_FEATURES = "x11"

View File

@@ -4,7 +4,7 @@
PR = "r40"
inherit packagegroup distro_features_check
inherit packagegroup features_check
REQUIRED_DISTRO_FEATURES = "x11"
PACKAGES = "${PN} ${PN}-utils"

View File

@@ -21,7 +21,7 @@ X11_RDEPS = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'mesa-demos', '', d)
DEPENDS = "libpng waffle libxkbcommon virtual/libgl python3-mako-native python3-numpy-native python3-six-native virtual/egl"
inherit cmake pkgconfig python3native distro_features_check bash-completion
inherit cmake pkgconfig python3native features_check bash-completion
# depends on virtual/libgl
REQUIRED_DISTRO_FEATURES += "opengl"

View File

@@ -2,7 +2,7 @@ SUMMARY = "A clock combined with a game of pong"
LICENSE = "GPLv2+"
DEPENDS = "virtual/libx11 xdmcp xau"
inherit distro_features_check pkgconfig
inherit features_check pkgconfig
# depends on virtual/libx11
REQUIRED_DISTRO_FEATURES = "x11"

View File

@@ -17,7 +17,7 @@ SECTION = "libs"
DEPENDS = "virtual/libx11 libsm xcb-util"
inherit autotools pkgconfig distro_features_check
inherit autotools pkgconfig features_check
# depends on virtual/libx11
REQUIRED_DISTRO_FEATURES = "x11"

View File

@@ -16,7 +16,7 @@ SRC_URI = "git://anongit.freedesktop.org/virglrenderer \
S = "${WORKDIR}/git"
inherit autotools pkgconfig distro_features_check
inherit autotools pkgconfig features_check
BBCLASSEXTEND = "native nativesdk"

View File

@@ -20,7 +20,7 @@ S = "${WORKDIR}/git"
REQUIRED_DISTRO_FEATURES = 'vulkan'
inherit cmake distro_features_check
inherit cmake features_check
DEPENDS = "vulkan-loader assimp"
do_install_append () {

View File

@@ -16,7 +16,7 @@ S = "${WORKDIR}/git"
REQUIRED_DISTRO_FEATURES = "vulkan"
inherit cmake distro_features_check
inherit cmake features_check
ANY_OF_DISTRO_FEATURES = "x11 wayland"
DEPENDS += "vulkan-headers"

View File

@@ -10,7 +10,7 @@ SRCREV = "3ccd7f6ebae3e1919adf837718c04feb6c2acc61"
S = "${WORKDIR}/git"
inherit cmake distro_features_check
inherit cmake features_check
ANY_OF_DISTRO_FEATURES = "x11 wayland"
REQUIRED_DISTRO_FEATURES = "vulkan"

View File

@@ -9,7 +9,7 @@ SRC_URI[sha256sum] = "d9c899f710c50cfdd00f5f4cdfeaef0687d8497362239bdde93bed6c90
UPSTREAM_CHECK_URI = "http://www.waffle-gl.org/releases.html"
inherit meson distro_features_check lib_package bash-completion
inherit meson features_check lib_package bash-completion
# This should be overridden per-machine to reflect the capabilities of the GL
# stack.

View File

@@ -30,7 +30,7 @@ do_install() {
sed -i 's,@LOCALSTATEDIR@,${localstatedir},g' ${D}${bindir}/weston-start
}
inherit update-rc.d distro_features_check systemd
inherit update-rc.d features_check systemd
# rdepends on weston which depends on virtual/egl
REQUIRED_DISTRO_FEATURES = "opengl"

View File

@@ -16,7 +16,7 @@ SRC_URI[sha256sum] = "a00a6d207b6a45f95f4401c604772a307c3767e5e2beecf3d879110c43
UPSTREAM_CHECK_URI = "https://wayland.freedesktop.org/releases.html"
inherit meson pkgconfig useradd distro_features_check
inherit meson pkgconfig useradd features_check
# depends on virtual/egl
REQUIRED_DISTRO_FEATURES = "opengl"

View File

@@ -17,7 +17,7 @@ S = "${WORKDIR}"
# Since we refer to ROOTLESS_X which is normally enabled per-machine
PACKAGE_ARCH = "${MACHINE_ARCH}"
inherit update-rc.d systemd distro_features_check
inherit update-rc.d systemd features_check
REQUIRED_DISTRO_FEATURES = "x11"

View File

@@ -7,7 +7,7 @@ DEPENDS = "virtual/libx11 libxi libxrandr"
PV = "0.7.5+git${SRCPV}"
PR = "r6"
inherit autotools pkgconfig distro_features_check
inherit autotools pkgconfig features_check
# depends on virtual/libx11
REQUIRED_DISTRO_FEATURES = "x11"

View File

@@ -12,6 +12,6 @@ INC_PR = "r8"
SRC_URI = "${XORG_MIRROR}/individual/app/${BPN}-${PV}.tar.bz2"
inherit autotools pkgconfig distro_features_check
inherit autotools pkgconfig features_check
FILES_${PN} += " ${libdir}/X11/${BPN} ${datadir}/X11/app-defaults/"

View File

@@ -13,7 +13,7 @@ SRC_URI = "${XORG_MIRROR}/individual/driver/${BPN}-${PV}.tar.bz2"
FILES_${PN} += " ${libdir}/xorg/modules/drivers/*.so"
inherit autotools pkgconfig distro_features_check
inherit autotools pkgconfig features_check
# depends on virtual/xserver
REQUIRED_DISTRO_FEATURES = "x11"

View File

@@ -14,7 +14,7 @@ INC_PR = "r2"
SRC_URI = "${XORG_MIRROR}/individual/font/${XORG_PN}-${PV}.tar.bz2"
S = "${WORKDIR}/${XORG_PN}-${PV}"
inherit autotools pkgconfig distro_features_check
inherit autotools pkgconfig features_check
# The mkfontscale-native requires x11 in DISTRO_FEATURES
REQUIRED_DISTRO_FEATURES = "x11"

View File

@@ -13,7 +13,7 @@ SRC_URI = "file://misc"
PE = "1"
PR = "r2"
inherit allarch distro_features_check
inherit allarch features_check
# The font-alias requires x11 in DISTRO_FEATURES
REQUIRED_DISTRO_FEATURES = "x11"

View File

@@ -25,7 +25,7 @@ PACKAGES_DYNAMIC = "^libxcb-.*"
FILES_${PN} = "${libdir}/libxcb.so.*"
inherit autotools pkgconfig distro_features_check
inherit autotools pkgconfig features_check
# The libxau and others requires x11 in DISTRO_FEATURES
REQUIRED_DISTRO_FEATURES = "x11"

View File

@@ -18,6 +18,6 @@ DEPENDS += "gperf-native"
SRC_URI = "http://xcb.freedesktop.org/dist/${BPN}-${PV}.tar.bz2"
inherit autotools pkgconfig distro_features_check
inherit autotools pkgconfig features_check
REQUIRED_DISTRO_FEATURES = "x11"

View File

@@ -11,7 +11,7 @@ SRC_URI = "${XORG_MIRROR}/individual/lib/${XORG_PN}-${PV}.tar.bz2"
S = "${WORKDIR}/${XORG_PN}-${PV}"
inherit autotools distro_features_check pkgconfig
inherit autotools features_check pkgconfig
EXTRA_OECONF = "--disable-specs --without-groff --without-ps2pdf --without-fop"

View File

@@ -24,7 +24,7 @@ S = "${WORKDIR}/${XORG_PN}-${PV}"
inherit autotools pkgconfig
inherit distro_features_check
inherit features_check
REQUIRED_DISTRO_FEATURES = "x11"
LIB_DEPS = "pixman libxfont2 xtrans libxau libxext libxdmcp libdrm libxkbfile libpciaccess"

View File

@@ -19,6 +19,6 @@ SRC_URI = "http://downloads.yoctoproject.org/releases/xrestop/xrestop-${PV}.tar.
SRC_URI[md5sum] = "d8a54596cbaf037e62b80c4585a3ca9b"
SRC_URI[sha256sum] = "67c2fc94a7ecedbaae0d1837e82e93d1d98f4a6d759828860e552119af3ce257"
inherit autotools pkgconfig distro_features_check
inherit autotools pkgconfig features_check
# depends on virtual/libx11
REQUIRED_DISTRO_FEATURES = "x11"

View File

@@ -13,7 +13,7 @@ SRCREV = "d953c127c1146b50d5676618299933950685dcd7"
S = "${WORKDIR}/git"
inherit meson pkgconfig distro_features_check
inherit meson pkgconfig features_check
ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"

View File

@@ -20,7 +20,7 @@ S = "${WORKDIR}/${PNREAL}-${PV}"
REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
UNKNOWN_CONFIGURE_WHITELIST_append = " --enable-introspection --disable-introspection"
inherit autotools pkgconfig distutils3-base upstream-version-is-even gobject-introspection distro_features_check
inherit autotools pkgconfig distutils3-base upstream-version-is-even gobject-introspection features_check
EXTRA_OECONF += "--with-libpython-dir=${libdir}"

View File

@@ -19,7 +19,7 @@ SRC_URI[sha256sum] = "cb570f6f1e78cb364fbe3c4fb8751824ee9db0c942ba61b62380b9b5ab
S = "${WORKDIR}/${REALPN}-${PV}"
DEPENDS = "libva gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad"
inherit autotools pkgconfig gtk-doc distro_features_check upstream-version-is-even
inherit autotools pkgconfig gtk-doc features_check upstream-version-is-even
REQUIRED_DISTRO_FEATURES ?= "opengl"

View File

@@ -17,7 +17,7 @@ SRCREV ="3cdccdc9505643e50f8208171d9eee5de11a42ff"
S = "${WORKDIR}/git"
inherit autotools pkgconfig distro_features_check
inherit autotools pkgconfig features_check
ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"

View File

@@ -17,7 +17,7 @@ UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>(\d+(\.\d+)+))"
S = "${WORKDIR}/git"
inherit autotools pkgconfig distro_features_check
inherit autotools pkgconfig features_check
# The settings-daemon requires x11 in DISTRO_FEATURES
REQUIRED_DISTRO_FEATURES = "x11"

View File

@@ -20,7 +20,7 @@ EXTRA_OECONF = "--enable-startup-notification --with-dbus"
S = "${WORKDIR}/git"
inherit autotools pkgconfig distro_features_check
inherit autotools pkgconfig features_check
# The startup-notification requires x11 in DISTRO_FEATURES
REQUIRED_DISTRO_FEATURES = "x11"

View File

@@ -18,7 +18,7 @@ SRC_URI = "git://git.yoctoproject.org/${BPN};branch=matchbox-keyboard-0-1 \
S = "${WORKDIR}/git"
inherit autotools pkgconfig gettext gtk-immodules-cache distro_features_check
inherit autotools pkgconfig gettext gtk-immodules-cache features_check
# The libxft, libfakekey and matchbox-panel-2 requires x11 in DISTRO_FEATURES
REQUIRED_DISTRO_FEATURES = "x11"

View File

@@ -37,4 +37,4 @@ FILES_${PN} += "${libdir}/matchbox-panel/*.so \
${datadir}/icons/"
FILES_${PN}-dev += "${libdir}/matchbox-panel/*.la"
inherit autotools pkgconfig distro_features_check gettext
inherit autotools pkgconfig features_check gettext

View File

@@ -13,7 +13,7 @@ PR = "r30"
# based on the machine architecture.
PACKAGE_ARCH = "${MACHINE_ARCH}"
inherit distro_features_check
inherit features_check
# The matchbox-theme-sato requires x11 in DISTRO_FEATURES
REQUIRED_DISTRO_FEATURES = "x11"

View File

@@ -16,6 +16,6 @@ UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>(\d+(\.\d+)+))"
S = "${WORKDIR}/git"
inherit autotools pkgconfig distro_features_check
inherit autotools pkgconfig features_check
ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"

View File

@@ -8,7 +8,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=aae86bb34b0a83716ca09f4e783d6ba4"
DEPENDS = "matchbox-wm"
SECTION = "x11/wm"
inherit autotools pkgconfig distro_features_check
inherit autotools pkgconfig features_check
FILES_${PN} += "${datadir}/themes"

View File

@@ -7,7 +7,7 @@ PR = "r33"
PACKAGE_ARCH = "${MACHINE_ARCH}"
inherit packagegroup distro_features_check
inherit packagegroup features_check
REQUIRED_DISTRO_FEATURES = "x11"
PACKAGES = "${PN} ${PN}-base ${PN}-apps ${PN}-games"

View File

@@ -21,7 +21,7 @@ SRC_URI[sha256sum] = "6804043b3ee3a703edde41c724946174b505fe958703eadbd7e0876ece
UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/pcmanfm/files/PCManFM%20%2B%20Libfm%20%28tarball%20release%29/PCManFM/"
inherit autotools pkgconfig distro_features_check
inherit autotools pkgconfig features_check
# The startup-notification requires x11 in DISTRO_FEATURES
REQUIRED_DISTRO_FEATURES = "x11"

View File

@@ -24,7 +24,7 @@ PV = "0.0+git${SRCPV}"
S = "${WORKDIR}/git"
inherit autotools distro_features_check pkgconfig
inherit autotools features_check pkgconfig
PACKAGECONFIG ??= "gtk3"
PACKAGECONFIG[gtk2] = "--with-gtk=2,,gtk+,"

View File

@@ -16,7 +16,7 @@ UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>(\d+(\.\d+)+))"
S = "${WORKDIR}/git"
inherit autotools pkgconfig distro_features_check
inherit autotools pkgconfig features_check
FILES_${PN} += "${libdir}/matchbox-panel/*.so"

View File

@@ -17,7 +17,7 @@ UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>(\d+(\.\d+)+))"
S = "${WORKDIR}/git"
inherit autotools pkgconfig gconf distro_features_check
inherit autotools pkgconfig gconf features_check
FILES_${PN} = "${bindir}/* ${sysconfdir}"

View File

@@ -24,7 +24,7 @@ SRC_URI = "http://www.webkitgtk.org/releases/${BPN}-${PV}.tar.xz \
SRC_URI[md5sum] = "65e06fe73ee166447894aaea95038e3b"
SRC_URI[sha256sum] = "6b80f0637a80818559ac8fd50db3b394f41cb61904fb9b3ed65fa51635806512"
inherit cmake pkgconfig gobject-introspection perlnative distro_features_check upstream-version-is-even gtk-doc
inherit cmake pkgconfig gobject-introspection perlnative features_check upstream-version-is-even gtk-doc
REQUIRED_DISTRO_FEATURES = "x11 opengl"

View File

@@ -9,7 +9,7 @@ SRC_URI[archive.sha256sum] = "0b51e6d339fa2bcca3a3e3159ccea574c67b107f1ac8b00047
DEPENDS = "dbus glib-2.0 glib-2.0-native atk at-spi2-core libxml2"
GNOMEBASEBUILDCLASS = "meson"
inherit gnomebase distro_features_check upstream-version-is-even
inherit gnomebase features_check upstream-version-is-even
PACKAGES =+ "${PN}-gnome ${PN}-gtk2"

View File

@@ -9,7 +9,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \
DEPENDS = "glib-2.0 glib-2.0-native dbus dbus-glib virtual/libx11"
RDEPENDS_${PN} += "base-files"
inherit autotools pkgconfig distro_features_check
inherit autotools pkgconfig features_check
# depends on virtual/libx11
REQUIRED_DISTRO_FEATURES = "x11"

View File

@@ -19,7 +19,7 @@ SRC_URI = "${SOURCEFORGE_MIRROR}/pcmanfm/libfm-${PV}.tar.xz \
SRC_URI[md5sum] = "c15ecd2c9317e2c385cd3f046d0b61ba"
SRC_URI[sha256sum] = "96b1244bde41ca0eef0332cfb5c67bb16725dfd102128f3e6f74fadc13a1cfe4"
inherit autotools pkgconfig gtk-doc gettext distro_features_check
inherit autotools pkgconfig gtk-doc gettext features_check
ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
EXTRA_OECONF = "--with-gtk=3"

View File

@@ -12,7 +12,7 @@ SRC_URI = "http://0pointer.de/lennart/projects/nss-myhostname/nss-myhostname-${P
SRC_URI[md5sum] = "d4ab9ac36c053ab8fb836db1cbd4a48f"
SRC_URI[sha256sum] = "2ba744ea8d578d1c57c85884e94a3042ee17843a5294434d3a7f6c4d67e7caf2"
inherit autotools distro_features_check
inherit autotools features_check
COMPATIBLE_HOST_libc-musl = 'null'

View File

@@ -14,7 +14,7 @@ DEPENDS = "glib-2.0 gtk+3 libpcre2 libxml2-native gperf-native"
GNOMEBASEBUILDCLASS = "meson"
GIR_MESON_OPTION = 'gir'
inherit gnomebase gtk-doc distro_features_check upstream-version-is-even gobject-introspection
inherit gnomebase gtk-doc features_check upstream-version-is-even gobject-introspection
# vapigen.m4 is required when vala is not present (but the one from vala should be used normally)
SRC_URI += "file://0001-app.cc-use-old-school-asignment-to-avoid-gcc-4.8-err.patch \