[oe] license_create_manifest fails on jethro

Stefan Agner stefan at agner.ch
Fri Mar 11 03:12:55 UTC 2016


Hi Anibal,

I think the patch a7976cbae3 ("license_class: Reimplemented manifest
creation in python") broke Ångstroms way of deploying license files.
With jethro I get the following error when building the _second_
machine:

ERROR: Error executing a python function in
/build/ags/oe-core_V2.6/build/../stuff/meta-toradex/recipes/images/console-trdx-image.bb:

The stack trace of python calls that resulted in this exception/failure
was:
File: 'license_create_manifest', lineno: 110, function: <module>
     0106:
     0107:                        os.link(pkg_license,
pkg_rootfs_license)
     0108:
     0109:
 *** 0110:license_create_manifest(d)
     0111:
File: 'license_create_manifest', lineno: 86, function:
license_create_manifest
     0082:                pkg_rootfs_license_dir =
os.path.join(rootfs_license_dir, pkg)
     0083:                os.makedirs(pkg_rootfs_license_dir)
     0084:                pkg_license_dir =
os.path.join(d.getVar('LICENSE_DIRECTORY', True),
     0085:                                           
pkg_dic[pkg]["PN"])
 *** 0086:                licenses = os.listdir(pkg_license_dir)
     0087:                for lic in licenses:
     0088:                    rootfs_license =
os.path.join(rootfs_license_dir, lic)
     0089:                    pkg_license =
os.path.join(pkg_license_dir, lic)
     0090:                    pkg_rootfs_license =
os.path.join(pkg_rootfs_license_dir, lic)
Exception: OSError: [Errno 2] No such file or directory:
'/build/ags/oe-core_V2.6/build/out-glibc/deploy/licenses/colibri_imx7/alsa-utils'

ERROR: Function failed: license_create_manifest
ERROR: Logfile of failure stored in:
/build/ags/oe-core_V2.6/build/out-glibc/work/colibri_imx7-angstrom-linux-gnueabi/console-trdx-image/V2.6-r0/temp/log.do_rootfs.29351
ERROR: Task 7
(/build/ags/oe-core_V2.6/build/../stuff/meta-toradex/recipes/images/console-trdx-image.bb,
do_rootfs) failed with exit code '1'

It might relate to how Ångström configures the LICENSE_DIRECTORY
variable (by including MACHINE_ARCH, see
https://github.com/Angstrom-distribution/meta-angstrom/blob/angstrom-v2015.12-yocto2.0/conf/distro/include/angstrom-core-tweaks.inc):
LICENSE_DIRECTORY = "${DEPLOY_DIR}/licenses/${MACHINE_ARCH}"

I am not sure what exactly causes the issue, but after reverting your
patch two consecutive builds of different machines succeeded...

However, I still get a lot of warnings such as:
WARNING: The license listed LGPLv2.1 was not in the licenses collected
for systemd

Any ideas?

--
Stefan



More information about the Openembedded-devel mailing list