diff options
author | Phil Blundell <philb@gnu.org> | 2005-03-06 12:10:53 +0000 |
---|---|---|
committer | Phil Blundell <philb@gnu.org> | 2005-03-06 12:10:53 +0000 |
commit | cf4cc850b024852964e694b649656936ac87b07a (patch) | |
tree | a4e963b9bc31a6171639af7a368e483463147a6b /classes | |
parent | ee4b7d8c5115e0ea180e719337802b1deb635645 (diff) |
if PARALLEL_INSTALL_MODULES==1, mangle module package names to allow parallel installation of both 2.6 and 2.4 versions
BKrev: 422af34dUAf7zcVTUF0LfWk5i8bWAA
Diffstat (limited to 'classes')
-rw-r--r-- | classes/module.bbclass | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/classes/module.bbclass b/classes/module.bbclass index e69de29bb2..ac76967a76 100644 --- a/classes/module.bbclass +++ b/classes/module.bbclass @@ -0,0 +1,55 @@ +RDEPENDS += "kernel (${KERNEL_VERSION})" +DEPENDS += "virtual/kernel" + +inherit module-base + +python __anonymous() { + v = bb.data.getVar("PARALLEL_INSTALL_MODULES", d, 1) or "0" + if v == "1": + pn = bb.data.getVar("PN", d, 1) + kv = bb.data.getVar("KERNEL_VERSION", d, 1) + newpn = "%s-%s" % (pn, kv) + bb.data.setVar("PN", newpn, d) + bb.data.setVar("OLDPN", pn, d) + provides = bb.data.getVar("PROVIDES", d, 1) + if provides: + provides = "%s %s" % (provides, pn) + else: + provides = pn + bb.data.setVar("PROVIDES", provides, d) +} + +python populate_packages_prepend() { + v = bb.data.getVar("PARALLEL_INSTALL_MODULES", d, 1) or "0" + if v == "1": + kv = bb.data.getVar("KERNEL_VERSION", d, 1) + packages = bb.data.getVar("PACKAGES", d, 1) + for p in packages.split(): + pkg = bb.data.getVar("PKG_%s" % p, d, 1) or p + newpkg = "%s-%s" % (pkg, kv) + bb.data.setVar("PKG_%s" % p, newpkg, d) + rprovides = bb.data.getVar("RPROVIDES_%s" % p, d, 1) + if rprovides: + rprovides = "%s %s" % (rprovides, pkg) + else: + rprovides = pkg + bb.data.setVar("RPROVIDES_%s" % p, rprovides, d) +} + +module_do_compile() { + unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS + oe_runmake KERNEL_PATH=${STAGING_KERNEL_DIR} \ + KERNEL_SRC=${STAGING_KERNEL_DIR} \ + KERNEL_VERSION=${KERNEL_VERSION} \ + CC="${KERNEL_CC}" LD="${KERNEL_LD}" \ + ${MAKE_TARGETS} +} + +module_do_install() { + unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS + oe_runmake DEPMOD=echo INSTALL_MOD_PATH="${D}" CC="${KERNEL_CC}" LD="${KERNEL_LD}" modules_install +} + +EXPORT_FUNCTIONS do_compile do_install + +FILES_${PN} = "/etc /lib/modules" |