There's more...

Let's see how to integrate our proprietary-licensed code into the Yocto build system. When preparing the recipe for our application, we can take several approaches to licensing:

  • Mark LICENSE as closed. This is the usual case for a proprietary application. We use the following:
LICENSE = "CLOSED" 
  • Mark LICENSE as proprietary and include some type of license agreement. This is commonly done when releasing binaries with some sort of end user agreement that is referenced in the recipe. For example, the meta-freescale layer uses this type of license to comply with Freescale's End User License Agreement. An example is:
LICENSE = "Proprietary" 
LIC_FILES_CHKSUM = "file://EULA.txt;md5=93b784b1c11b3fffb1638498a8dde3f6" 
  • Provide multiple licensing options, such as an open source license and a commercial license. In this case, the LICENSE variable is used to specify the open licenses, and the LICENSE_FLAGS variable is used for commercial licenses. A typical example is the gstreamer1.0-plugins-ugly package in Poky:
LICENSE = "GPLv2+ & LGPLv2.1+ & LGPLv2+" 
LICENSE_FLAGS = "commercial" 
LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343                               file://tests/check/elements/xingmux.c;beginline=1;endline=21;md5=4c771b8af188724855cb99cadd390068" 

When the LICENSE_FLAGS variable is set on a recipe, the package will not be built unless the license appears on the LICENSE_FLAGS_WHITELIST variable too, typically defined in your conf/local.conf file. For the earlier example, we would add this:

LICENSE_FLAGS_WHITELIST = "commercial" 

The LICENSE and LICENSE_FLAGS_WHITELIST variables can match exactly for a very narrow match or broadly, as in the preceding example, which matches all licenses that begin with the word commercial. For narrow matches, the package name must be appended to the license name; for instance, if we only wanted to whitelist the gstreamer1.0-plugins-ugly package from the earlier example but nothing else, we could use the following:

LICENSE_FLAGS_WHITELIST = "commercial_gstreamer1.0-plugins-ugly" 
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset