Re: COPY_LIC_DIRS, COPY_LIC_MANIFEST and firmware upgrades


Bryan Evenson
 

Martin,

-----Original Message-----
From: Martin Jansa [mailto:martin.jansa@...]
Sent: Monday, November 02, 2015 3:32 PM
To: Bryan Evenson <bevenson@...>
Cc: yocto@...
Subject: Re: [yocto] COPY_LIC_DIRS, COPY_LIC_MANIFEST and firmware
upgrades

On Mon, Nov 02, 2015 at 05:13:48PM +0000, Bryan Evenson wrote:
All,

I'm on poky/dizzy-1.7.2 and I've been using COPY_LIC_DIRS and
COPY_LIC_MANIFEST to include the license text on my image. I noticed
something about the way it operates and I'm wondering if it's a problem
when it comes to Free and Open Source Software compliance.

If I build an image with COPY_LIC_MANIFEST and COPY_LIC_DIRS both set
to 1, then the image is generated with the directory /usr/share/common-
licenses that include all the licenses for all the packages in the image. There is
also /usr/share/common-licenses/license.manifest which summarizes all the
licenses in the directory. Let's call this starting point image version A.

Later on in development I add package "foo-extra" to the image. I add
"foo-extra" to the RDEPENDS list for package "foo" which now needs the
new package for proper operation. The built image now includes in
/usr/share/common-licenses/foo-extra the license for the new package.
We'll call this image version B.

If I ship a product that was burned with image verison A then it has all the
licenses for all the packages that were installed in the image. Likewise, if I
ship a product that was burned with image version B then it has all the
licenses for all the packages that were installed in the image. However, if a
product ships with image version A and then is upgraded to image version B
then package "foo-extra" is installed due to dependencies but the license for
"foo-extra" is not included in the upgrade. The /usr/share/common-licenses
directory is not tied to any package, so firmware upgrade does not add,
modify or remove any of the licenses in /usr/share/common-licenses.

Is this a problem when it comes to FOSS compliance? If so, is there a
suggested way of including the new licenses for firmware upgrades?

You can also enable LICENSE_CREATE_PACKAGE which should create <pkg>-
lic packages rrecommended from <pkg> so they should get installed together
with image upgrade, see:
https://bugzilla.yoctoproject.org/show_bug.cgi?id=3743
Thanks for the information, I'll give this a try. I noticed I don't see any reference to LICENSE_CREATE_PACKAGE in the Yocto documentation. Should I add a bug in Bugzilla to add documentation for this variable?

Regards,
Bryan


--
Martin 'JaMa' Jansa jabber: Martin.Jansa@...

Join yocto@lists.yoctoproject.org to automatically receive all group messages.