Ping again. Waiting for your feedback. Regards, Jagadeesh
On Fri, Dec 4, 2015 at 8:57 PM, Jagadeesh Krishnanjanappa < [email protected]> wrote: > Ping. > Any updates regarding this patch? > > Regards, > Jagadeesh > > > On Sat, Nov 28, 2015 at 1:39 PM, Jagadeesh Krishnanjanappa < > [email protected]> wrote: > >> We get below host contamination warnings of license files for >> each recipe, when we try to create a separate ${PN}-lic package (which >> contains license files), by setting LICENSE_CREATE_PACKAGE equal to "1" >> in local.conf. >> >> -- snip -- >> WARNING: QA Issue: libcgroup: >> /libcgroup-lic/usr/share/licenses/libcgroup/generic_LGPLv2.1 is owned by >> uid 5001, which is the same as the user running bitbake. This may be due to >> host contamination [host-user-contaminated] >> WARNING: QA Issue: attr: /attr-lic/usr/share/licenses/attr/libattr.c is >> owned by uid 5001, which is the same as the user running bitbake. This may >> be due to host contamination [host-user-contaminated] >> WARNING: QA Issue: bash: /bash-lic/usr/share/licenses/bash/COPYING is >> owned by uid 5001, which is the same as the user running bitbake. This may >> be due to host contamination [host-user-contaminated] >> -- CUT -- >> >> Since the license files from source and OE-core, are populated in a normal >> shell environment rather in pseudo environment (fakeroot); the ownership >> of >> these files will be same as host user running bitbake. During the >> do_package >> task (which runs in pseudo environment (fakeroot)), os.link preserves the >> ownership of these license files as host user instead of root user. >> This causes license files to have UID same as host user id and resulting >> in >> above warnings during do_package_qa task. >> >> Changing ownership of license files to root user (which has UID and GID >> as 0) >> under pseudo environment will solve above warnings, and on exiting pseudo >> environment the license files will continue to be owned by host user. >> Perform >> this manipulation within try/except statements, as tasks which are not >> exected >> under pseudo (such as do_populate_lic) result in OSError when trying to >> change ownership of license files. >> >> Signed-off-by: Jagadeesh Krishnanjanappa <[email protected]> >> --- >> meta/classes/license.bbclass | 9 +++++++++ >> 1 file changed, 9 insertions(+) >> >> diff --git a/meta/classes/license.bbclass b/meta/classes/license.bbclass >> index c616a20..8fff156 100644 >> --- a/meta/classes/license.bbclass >> +++ b/meta/classes/license.bbclass >> @@ -185,6 +185,15 @@ def copy_license_files(lic_files_paths, destdir): >> os.remove(dst) >> if os.access(src, os.W_OK) and (os.stat(src).st_dev == >> os.stat(destdir).st_dev): >> os.link(src, dst) >> + try: >> + os.chown(dst,0,0) >> + except OSError as err: >> + if err.errno == 1: >> + # suppress "Operation not permitted" error, as >> + # sometimes this function is not executed under >> pseudo >> + pass >> + else: >> + raise >> else: >> shutil.copyfile(src, dst) >> except Exception as e: >> -- >> 1.9.1 >> >> >
-- _______________________________________________ Openembedded-core mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-core
