diff options
Diffstat (limited to 'meta/classes')
-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" | |||
453 | python () { | 453 | python () { |
454 | import exceptions | 454 | import exceptions |
455 | 455 | ||
456 | # If we're building a target package we need to use fakeroot (pseudo) | ||
457 | # in order to capture permissions, owners, groups and special files | ||
458 | if not bb.data.inherits_class('native', d) and not bb.data.inherits_class('cross', d): | ||
459 | deps = (bb.data.getVarFlag('do_install', 'depends', d) or "").split() | ||
460 | deps.append('virtual/fakeroot-native:do_populate_sysroot') | ||
461 | bb.data.setVarFlag('do_install', 'depends', " ".join(deps),d) | ||
462 | bb.data.setVarFlag('do_install', 'fakeroot', 1, d) | ||
463 | deps = (bb.data.getVarFlag('do_package', 'depends', d) or "").split() | ||
464 | deps.append('virtual/fakeroot-native:do_populate_sysroot') | ||
465 | bb.data.setVarFlag('do_package', 'depends', " ".join(deps),d) | ||
466 | bb.data.setVarFlag('do_package', 'fakeroot', 1, d) | ||
456 | source_mirror_fetch = bb.data.getVar('SOURCE_MIRROR_FETCH', d, 0) | 467 | source_mirror_fetch = bb.data.getVar('SOURCE_MIRROR_FETCH', d, 0) |
457 | if not source_mirror_fetch: | 468 | if not source_mirror_fetch: |
458 | need_host = bb.data.getVar('COMPATIBLE_HOST', d, 1) | 469 | need_host = bb.data.getVar('COMPATIBLE_HOST', d, 1) |