From aed7ee04fdd4bb49997a30785fbb100e33a3f2c7 Mon Sep 17 00:00:00 2001 From: Mark Hatle Date: Wed, 4 Aug 2010 06:36:30 -0700 Subject: base.bbclass: Enable fakeroot (pseudo) usage during install and packaging Use the virtual fakeroot program when installing a package and also during packaging. This is important as it allows us to track full permissions, owners, groups and special files generated by packages. Signed-off-by: Mark Hatle --- meta/classes/base.bbclass | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'meta') diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass index bcde31222..816de3fcf 100644 --- a/meta/classes/base.bbclass +++ b/meta/classes/base.bbclass @@ -453,6 +453,17 @@ do_build[func] = "1" python () { import exceptions + # If we're building a target package we need to use fakeroot (pseudo) + # in order to capture permissions, owners, groups and special files + if not bb.data.inherits_class('native', d) and not bb.data.inherits_class('cross', d): + deps = (bb.data.getVarFlag('do_install', 'depends', d) or "").split() + deps.append('virtual/fakeroot-native:do_populate_sysroot') + bb.data.setVarFlag('do_install', 'depends', " ".join(deps),d) + bb.data.setVarFlag('do_install', 'fakeroot', 1, d) + deps = (bb.data.getVarFlag('do_package', 'depends', d) or "").split() + deps.append('virtual/fakeroot-native:do_populate_sysroot') + bb.data.setVarFlag('do_package', 'depends', " ".join(deps),d) + bb.data.setVarFlag('do_package', 'fakeroot', 1, d) source_mirror_fetch = bb.data.getVar('SOURCE_MIRROR_FETCH', d, 0) if not source_mirror_fetch: need_host = bb.data.getVar('COMPATIBLE_HOST', d, 1) -- cgit v1.2.3