From 91bbf116d75d79b481924c8ee54b78a07da41ace Mon Sep 17 00:00:00 2001 From: Philipp Zabel Date: Mon, 20 Aug 2007 11:04:29 +0000 Subject: task.bbclass: add a task class that sets common task recipe variables and automates adding -dev and -dbg packages --- classes/task.bbclass | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 classes/task.bbclass (limited to 'classes/task.bbclass') diff --git a/classes/task.bbclass b/classes/task.bbclass new file mode 100644 index 0000000000..4edd704829 --- /dev/null +++ b/classes/task.bbclass @@ -0,0 +1,27 @@ +# Task packages are only used to pull in other packages +# via their dependencies. They are empty. +ALLOW_EMPTY = "1" + +# By default, only the task package itself is in PACKAGES. +# -dbg and -dev flavours are handled by the anonfunc below. +# This means that task recipes used to build multiple task +# packages have to modify PACKAGES after inheriting task.bbclass. +PACKAGES = "${PN}" + +# By default, task 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 task.bbclass +PACKAGE_ARCH = "all" + +# 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. +python () { + packages = bb.data.getVar('PACKAGES', d, 1).split() + genpackages = [] + for pkg in packages: + for postfix in ['-dbg', '-dev']: + genpackages.append(pkg+postfix) + bb.data.setVar('PACKAGES', ' '.join(packages+genpackages), d) +} + -- cgit 1.2.3-korg