diff options
| author | Mark Hatle <mhatle@windriver.com> | 2010-08-04 06:36:30 -0700 | 
|---|---|---|
| committer | Mark Hatle <mhatle@windriver.com> | 2010-08-04 10:40:49 -0700 | 
| commit | aed7ee04fdd4bb49997a30785fbb100e33a3f2c7 (patch) | |
| tree | c72ded6dec3a00464eead384f88f0969898408e1 | |
| parent | f4322c6adb10ff45e27181cd785ff45a7a68f76a (diff) | |
| download | openembedded-core-aed7ee04fdd4bb49997a30785fbb100e33a3f2c7.tar.gz openembedded-core-aed7ee04fdd4bb49997a30785fbb100e33a3f2c7.tar.bz2 openembedded-core-aed7ee04fdd4bb49997a30785fbb100e33a3f2c7.zip | |
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 <mhatle@windriver.com>
| -rw-r--r-- | meta/classes/base.bbclass | 11 | 
1 files changed, 11 insertions, 0 deletions
| diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass index bcde312220..816de3fcf2 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) | 
