Skip to content

# Software licensing

## Licences of Software Packages

The software for this board (BSP) contains open-source software with licence agreements that, among other things, restrict linking against closed-source applications (e.g. GPL, LGPL). Before using any of the libraries or applications, it is therefore necessary to check the licence agreements of the used source code. The licences are contained within the source code of the software packages. Furthermore it is necessary to check any valid patents and licence conditions of the used software, especially for multimedia formats (e.g. mp3 format). Kontron Electronics GmbH does not assume any liability for infringements of patents or licence agreements of parts of the provided BSP.
Inside the Yocto build system you find a directory in `<builddir>/tmp/deploy/licenses`, that holds copies of all the licences of the packages, that were built.
To get a list of all the packages and their licences included in your image, you can look at the file `license.manifest` in `<builddir>/tmp/deploy/licenses/<full-image-name>`.

If you have no access to those files, feel free to ask Kontron Electronics to provide them for you.

## Typical open-source licences

Here are some notes and further information on different licences.

Warning

The information in this chapter does not make any claim to be complete or to be legally correct.

### GPLv2 used by the Linux kernel and many other packages

If you release or redistribute a product, that includes software under GPLv2, you are bound to provide the source code of those parts with your product (copyleft).
You can either include the source code with your product and deliver it together, or you can include a written offer to provide the source code when requested.
Attention: GPLv2 does not allow you to provide the source code via a network service (e.g as download). You must deliver it on physical media. Only GPLv3 allows delivery via downloads.
Many GPLv2 licensed packages include the possibility to license it under a later version of the same licence (e.g. GPLv3), but the Linux kernel for example is GPLv2 only.
If you use code inside your application that is licensed under the GPL you must not keep your application code closed, you are obligated to use the GPL and have to provide the programs source code to your customers.
Frequently Asked Questions (FAQ)
A Practical Guide to GPL Compliance

### GPLv3

The GPLv3 is the modernized and updated version of the GPLv2.
See http://www.gnu.org/licenses/quick-guide-gplv3.html.

### LGPLv2.1 used by many libraries

The LGPL is similar to the GPL, but allows that your own proprietary applications link against libraries that are licensed under LGPL, without the need to make your application code public.
If you make changes or additions to the original software, you have to provide these changes to your customer.

### LGPLv3

The LGPLv3 is the modernized and updated version of the LGPLv2.

### MIT

The MIT licence even allows you to modify and distribute software packages, without the need to publish the source code (no copyleft). It is still necessary to include the licence notice in your product.

### BSD

The BSD licence is similar to the MIT licence and has no copyleft.

### Proprietary licences (e.g Freescale/NXP or other HW manufacturers)

The BSP might also contain packages, firmware or drivers, that are licensed under proprietary licences by the manufacturer or other third parties. Depending on your product, those agreements need to be checked for compliance.

## Licence compliance

Warning

The information in this chapter does not make any claim to be complete or to be legally correct.

It is essential to make sure, that your final product complies with all the licences of the included software packages. As mentioned in the last paragraph it depends on the used licences what you have to do for a full licence compliance.

### Notification in the manual

Almost all licences require that you inform your customers in your manual that you use open-source software. You have to mention that parts of your software are open-source software and deliver a list of the components you are using and their particular licences.

### Source code delivery

If you are using software licensed as GPL or LGPL you have to deliver the source code and licence texts of this software to your customers or at least, make it possible that your customer can get it. There a several options to achieve this.
- Direct delivery with your product: You can accompany your product with a volume containing all used source code under the mentioned licences.
- Written offer: You can state in your manual that every customer of your product can get a copy of the source code as long as the delivery of your product is no longer ago than three years or as long as you deliver spare parts. It is allowed to ask for a small fee to cover your expenses.
- Download (For (L)GPL V3 code only): You can send your customers a link where they can download the source code. You have to guarantee that the link will be accessible for the same time as it would be for the written offer.
Kontron Electronics will automatically generate an archive with the used source code files of your product. Due to the size of this file of a few GB we will not send it to you every time it will be generated. Please feel free to contact us whenever you need this archive.
Please be aware that we only can integrate the source code of the programs we have access to. If you add further open-source software, you have to append these sources to our archive.

### Adding own software to your product

If you are using (L)GPL in version 3 licensed code you have, for version 2 it is recommended, to give your customer the opportunity to install his own programs on your product. For code under (L)GPL version 3 you are obligated to grant your customer the right to install his own programs on your product. Version 2 of the licence only recommends, but does not enforce this. To ensure the security of your device, this opportunity does not have to be included in your product from the beginning, it is appropriate to require your customer to send the product back to you and you will disable the necessary security features to allow the installation of custom programs. You can demand that all given warranties of your product will expire at the time of applying custom software.

### Exemplary text for your manual:

English:
This product contains software components which are licensed as free respectively open-source software under the GNU General Public License, versions 2 or 3, or the GNU Lesser General Public License, versions 2.1 or 3. Everyone can get the source code of this software components from us on a data storage medium (CD-ROM, DVD, USB drive) if requested at our customer support at the following address within three years after the delivery of the product or as long as we offer spare parts or support for the product. [Name of the company]
[Contact person]
[Address]
Including the statement of the following product data:
[Product name]
[Serial number]
[Date of delivery]
We also require a fee of EUR 10,- for the costs of preparation of the medium and shipping to be transferred to the following bank account [Bank account]
Preventive it should be mentioned here that using the right of installing own versions of the open-source software components, which is guaranteed in the licence contract, will expire all certifications and warranties of the product. The operation of the manipulated product will happen on one's own authority.

German:
Dieses Produkt enthält Softwarebestandteile, die von den Rechteinhabern als Freie Software bzw. Open Source Software unter der GNU General Public License, Versionen 2 bzw. 3, bzw. der GNU Lesser General Public License, Versionen 2.1 bzw. 3.0, lizenziert werden. Jedermann kann den Quellcode dieser Softwarebestandteile von uns auf einem Datenträger (CD-ROM, DVD oder USB-Stick) erhalten, wenn innerhalb von drei Jahren nach der Auslieferung des Produkts an den Kunden oder solange, wie wir Ersatzteile oder Support für das Produkt anbieten, eine Anfrage an unsere Kundenbetreuung an folgende Adresse
[Name der Firma]
[Ansprechpartner]
[Adresse]
mit Angabe folgender Produktdaten
[Name]
[Seriennummer]
[Auslieferungsdatum]
gestellt wird und EUR 10,- für die Kosten zur Erstellung des Datenträgers und dessen Versendung vorab auf folgendes Konto [Kontoverbindung] überwiesen werden.
Vorsorglich wird darauf hingewiesen, dass die Nutzung des im Lizenzvertrag zugesicherten Rechts, die Open Source Komponenten gegen eigene Versionen auszuwechseln, zum Erlöschen der Zertifizierung bzw. Garantie führt. Der Betrieb des entsprechend geänderten Gerätes erfolgt auf eigene Verantwortung.

## Building Yocto image from source code

Install Yocto as described here: https://www.yoctoproject.org/docs/current/mega-manual/mega-manual.html
Unpack the archive in the yocto main folder. Setup your environment and download the missing code to build the image. Attention: Some of the code could not be downloaded as it has a proprietary license. Remove these components of the image.
If you have questions, please contact support@kontron-electronics.de.

## Using Qt in a Product

There are several licensing options for Qt. You should decide on one of them before starting to design your application, as switching from the open-source licence to the commercial licence is not allowed.

Here are some sources for further information:
Qt Licensing
Qt: Making the right licensing decision