]> code.ossystems Code Review - openembedded-core.git/commitdiff
Add umask task control
authorMark Hatle <mark.hatle@windriver.com>
Wed, 22 Jun 2011 04:56:25 +0000 (23:56 -0500)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 30 Jun 2011 19:46:34 +0000 (20:46 +0100)
Bitbake now allows the umask to be specified per task.  The
following tasks will have a umask of 022 set by default:

do_configure
do_compile
do_install
do_package
do_populate_sysroot
do_rootfs

do_configure and do_compile need a umask of 022 set because -many- recipes
directly copy generated files out of recipe's build directory.  Instead of
fixing each existing and future recipe, it was shown to be much easier to
just set the umask.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
meta/classes/base.bbclass
meta/classes/image.bbclass
meta/classes/staging.bbclass
meta/recipes-devtools/installer/adt-installer_1.0.bb
meta/recipes-kernel/linux/linux-tools.inc

index 1f9baf93bfd7fadb852f2a70f5e1df190aee2701..52f231675cefa3901de0002290959b251b9031c1 100644 (file)
@@ -262,14 +262,18 @@ python () {
     # 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):
+        bb.data.setVarFlag('do_configure', 'umask', 022, d)
+        bb.data.setVarFlag('do_compile', 'umask', 022, 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)
+        bb.data.setVarFlag('do_install', 'umask', 022, 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)
+        bb.data.setVarFlag('do_package', 'umask', 022, d)
         bb.data.setVarFlag('do_package_setscene', 'fakeroot', 1, d)
     source_mirror_fetch = bb.data.getVar('SOURCE_MIRROR_FETCH', d, 0)
     if not source_mirror_fetch:
index 2469442d70899b06d2e3136c9c248c048b325ba7..e77ec427fc91fd48b8c92fc55d039d53e340d76b 100644 (file)
@@ -83,6 +83,8 @@ do_build[nostamp] = "1"
 
 # Must call real_do_rootfs() from inside here, rather than as a separate
 # task, so that we have a single fakeroot context for the whole process.
+do_rootfs[umask] = 022
+
 fakeroot do_rootfs () {
        #set -x
        rm -rf ${IMAGE_ROOTFS}
index fef64573989c3c8b052bb0bb12bb750ddb091cfc..04d51ede428ba369c6f72b267f0e3e9073313461 100644 (file)
@@ -58,6 +58,7 @@ sysroot_stage_all() {
 }
 
 do_populate_sysroot[dirs] = "${SYSROOT_DESTDIR}"
+do_populate_sysroot[umask] = 022
 
 addtask populate_sysroot after do_install
 
index 8f6e91fc5b64303ca3544ffd677e9bd7e620e2f3..0537440a6fedc393730b3503ff75615a42c4db4b 100644 (file)
@@ -54,6 +54,8 @@ SRC_URI = "svn://opkg.googlecode.com/svn;module=trunk;proto=http \
            file://opkg/conf/opkg-sdk-i686.conf \
          "
 
+do_deploy[umask] = 022
+
 fakeroot do_deploy () {
        cd ${WORKDIR}
        mkdir -p ${ADT_DEPLOY}
index e4740d73bb0fb6aea6e229bc84fda19174cadd10..729e912714ec72a7209d33a57e3ae6901205f33c 100644 (file)
@@ -19,6 +19,8 @@ fakeroot do_install_perf() {
 addtask compile_perf after do_compile before do_install
 addtask install_perf after do_install before do_package
 
+do_compile_perf[umask] = 022
+do_install_perf[umask] = 022
 
 PERFDEPENDS = "virtual/libc:do_populate_sysroot elfutils:do_populate_sysroot"
 PERFDEPENDS_libc-uclibc = ""