[yocto] Using A Proprietary Closed License Inside A Layer & Its Recipes

Joshua Watt jpewhacker at gmail.com
Fri Jun 16 06:14:44 PDT 2017


On Fri, 2017-06-16 at 09:12 +0000, Thomas Thorne wrote:
> >> Is it only possible to use the special
> >> LICENSE = "CLOSED"
> >> license for licenses not already placed in the main license
> directory?
> >
> > Yes, there's special-case logic for 'CLOSED'.  Can you not just use
> that for your internal pieces?  It's special-cased in a few places.
>  
> I can use CLOSED.  I just wanted to ensure I was following the
> recommended or best practice. 
>  
> As this is an internal thing it should be OK for now.  I was
> wondering what would happen if a closed licenses was updated, as
> nothing would currently note the md5 change. 

FWIW: We created a proprietary license file called files/common-
licenses/company.txt in our proprietary layer, then added the following
to layer.conf:

 COMPANY_COMMON_LICENSES := '${@os.path.normpath("${LAYERDIR}/files/com
mon-licenses")}'
 BB_HASHBASE_WHITELIST_append = " COMPANY_COMMON_LICENSES"

Then a recipe can get the "standard" proprietary license by doing:

 LIC_FILES_CHKSUM =
"file://${COMPANY_COMMON_LICENSES}/company.txt;md5=9b1139fa1fcb869069db
eecca44350a5"

It works pretty well and also make it clear what license the recipe is
under. I believe that the BB_HASHBASE_WHITELIST was necessary at the
time to prevent changes in the project working path from causing a full
rebuild of the all proprietary packages and so that the sstate
signatures would match regardless, but I might be wrong about it being
necessary.

>  
>  
> The mega manual mentions CLOSED in 7 places.  One of those places
> also lists "Proprietary" as a value so I could used either in some
> cases.  Based on my reading of the manual "Proprietary" would not be
> exempt from setting up the LIC_FILES_CHKSUM, but CLOSED would be. 




More information about the yocto mailing list