mirror of
https://git.yoctoproject.org/poky
synced 2026-02-06 00:38:45 +01:00
We used to have issues removing tasks like do_fetch due to implications for targets like world and universe. These have now been resolved. Removing uneeded tasks has advantages compared to noexec since it means that accidentally left in dependencies are no longer needed/processed (e.g. do_patch depends on quilt-native). This cleans up a number of cases which local analysis highlighted as being unneeded leading to slightly cleaner task graphs. (From OE-Core rev: 4e6ee37e09c60e83c0dfd844ba9cf8a07507f099) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
57 lines
2.1 KiB
Plaintext
57 lines
2.1 KiB
Plaintext
# Class for packagegroup (package group) recipes
|
|
|
|
# By default, only the packagegroup package itself is in PACKAGES.
|
|
# -dbg and -dev flavours are handled by the anonfunc below.
|
|
# This means that packagegroup recipes used to build multiple packagegroup
|
|
# packages have to modify PACKAGES after inheriting packagegroup.bbclass.
|
|
PACKAGES = "${PN}"
|
|
|
|
# By default, packagegroup packages do not depend on a certain architecture.
|
|
# Only if dependencies are modified by MACHINE_FEATURES, packages
|
|
# need to be set to MACHINE_ARCH after inheriting packagegroup.bbclass
|
|
PACKAGE_ARCH ?= "all"
|
|
|
|
# Fully expanded - so it applies the overrides as well
|
|
PACKAGE_ARCH_EXPANDED := "${PACKAGE_ARCH}"
|
|
|
|
LICENSE ?= "MIT"
|
|
|
|
inherit ${@oe.utils.ifelse(d.getVar('PACKAGE_ARCH_EXPANDED') == 'all', 'allarch', '')}
|
|
|
|
# This automatically adds -dbg and -dev flavours of all PACKAGES
|
|
# to the list. Their dependencies (RRECOMMENDS) are handled as usual
|
|
# by package_depchains in a following step.
|
|
# Also mark all packages as ALLOW_EMPTY
|
|
python () {
|
|
packages = d.getVar('PACKAGES').split()
|
|
if d.getVar('PACKAGEGROUP_DISABLE_COMPLEMENTARY') != '1':
|
|
types = ['', '-dbg', '-dev']
|
|
if bb.utils.contains('DISTRO_FEATURES', 'ptest', True, False, d):
|
|
types.append('-ptest')
|
|
packages = [pkg + suffix for pkg in packages
|
|
for suffix in types]
|
|
d.setVar('PACKAGES', ' '.join(packages))
|
|
for pkg in packages:
|
|
d.setVar('ALLOW_EMPTY_%s' % pkg, '1')
|
|
}
|
|
|
|
# We don't want to look at shared library dependencies for the
|
|
# dbg packages
|
|
DEPCHAIN_DBGDEFAULTDEPS = "1"
|
|
|
|
# We only need the packaging tasks - disable the rest
|
|
deltask do_fetch
|
|
deltask do_unpack
|
|
deltask do_patch
|
|
deltask do_configure
|
|
deltask do_compile
|
|
deltask do_install
|
|
deltask do_populate_sysroot
|
|
|
|
python () {
|
|
initman = d.getVar("VIRTUAL-RUNTIME_init_manager")
|
|
if initman and initman in ['sysvinit', 'systemd'] and not bb.utils.contains('DISTRO_FEATURES', initman, True, False, d):
|
|
bb.fatal("Please ensure that your setting of VIRTUAL-RUNTIME_init_manager (%s) matches the entries enabled in DISTRO_FEATURES" % initman)
|
|
}
|
|
|