diff options
| author | Tom Zanussi <tom.zanussi@intel.com> | 2010-09-21 17:01:07 -0500 |
|---|---|---|
| committer | Richard Purdie <rpurdie@linux.intel.com> | 2010-09-21 23:36:05 +0100 |
| commit | 73049a3431dc7cdfe841c2b697090e236cd2c301 (patch) | |
| tree | 930e56f69e4edbc94d4238b6e2e181038a46b083 /handbook | |
| parent | c0317494aa8c338c4eb528a362e806c5da1210fd (diff) | |
| download | poky-73049a3431dc7cdfe841c2b697090e236cd2c301.tar.gz | |
handbook: add BSP click-through licensing section
Add a section to the BSB Developer's Guide outlining the motivation
and procedures for click-through BSP licensing support.
The corresponding build system support hasn't been implemented yet;
this is being added now mainly as a guideline wrt future intentions.
Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Diffstat (limited to 'handbook')
| -rw-r--r-- | handbook/bsp.xml | 134 |
1 files changed, 134 insertions, 0 deletions
diff --git a/handbook/bsp.xml b/handbook/bsp.xml index 7511a03b6b..e0ca31732b 100644 --- a/handbook/bsp.xml +++ b/handbook/bsp.xml | |||
| @@ -314,4 +314,138 @@ FILESPATH =. "${@base_set_filespath(["${THISDIR}/${PN}"], d)}:" | |||
| 314 | 314 | ||
| 315 | </section> | 315 | </section> |
| 316 | 316 | ||
| 317 | <section id='bsp-click-through-licensing'> | ||
| 318 | <title>BSP 'Click-through' Licensing Procedure</title> | ||
| 319 | |||
| 320 | <note><para> This section is here as a description of how | ||
| 321 | click-through licensing is expected to work, and is | ||
| 322 | not yet not impemented. | ||
| 323 | </para></note> | ||
| 324 | |||
| 325 | <para> | ||
| 326 | In some cases, a BSP may contain separately licensed IP | ||
| 327 | (Intellectual Property) for a component, which imposes | ||
| 328 | upon the user a requirement to accept the terms of a | ||
| 329 | 'click-through' license. Once the license is accepted | ||
| 330 | (in whatever form that may be, see details below) the | ||
| 331 | Poky build system can then build and include the | ||
| 332 | corresponding component in the final BSP image. Some | ||
| 333 | affected components may be essential to the normal | ||
| 334 | functioning of the system and have no 'free' replacement | ||
| 335 | i.e. the resulting system would be non-functional | ||
| 336 | without them. Other components may be simply | ||
| 337 | 'good-to-have' or purely elective, or if essential | ||
| 338 | nonetheless have a 'free' (possibly less-capable) | ||
| 339 | version which may substituted for in the BSP recipe. | ||
| 340 | </para> | ||
| 341 | |||
| 342 | <para> | ||
| 343 | For the latter cases, where it is possible to do so from | ||
| 344 | a functionality perspective, the Poky website will make | ||
| 345 | available a 'de-featured' BSP completely free of | ||
| 346 | encumbered IP, which can be used directly and without | ||
| 347 | any further licensing requirements. If present, this | ||
| 348 | fully 'de-featured' BSP will be named meta-bsp (i.e. the | ||
| 349 | normal default naming convention). This is the simplest | ||
| 350 | and therefore preferred option if available, assuming | ||
| 351 | the resulting functionality meets requirements. | ||
| 352 | </para> | ||
| 353 | |||
| 354 | <para> | ||
| 355 | If however, a non-encumbered version is unavailable or | ||
| 356 | the 'free' version would provide unsuitable | ||
| 357 | functionality or quality, an encumbered version can be | ||
| 358 | used. Encumbered versions of a BSP are given names of | ||
| 359 | the form meta-bsp-nonfree. There are several ways | ||
| 360 | within the Poky build system to satisfy the licensing | ||
| 361 | requirements for an encumbered BSP, in roughly the | ||
| 362 | following order of preference: | ||
| 363 | </para> | ||
| 364 | |||
| 365 | <itemizedlist> | ||
| 366 | <listitem> | ||
| 367 | |||
| 368 | <para> | ||
| 369 | Get a license key (or keys) for the encumbered BSP | ||
| 370 | by | ||
| 371 | visiting <ulink url='https://pokylinux.org/bsp-keys.html'>https://pokylinux.org/bsp-keys.html</ulink> | ||
| 372 | and give the web form there the name of the BSP | ||
| 373 | and your e-mail address. | ||
| 374 | </para> | ||
| 375 | |||
| 376 | <programlisting> | ||
| 377 | [screenshot of dialog box] | ||
| 378 | </programlisting> | ||
| 379 | |||
| 380 | <para> | ||
| 381 | After agreeing to any applicable license terms, the | ||
| 382 | BSP key(s) will be immediately sent to the address | ||
| 383 | given and can be used by specifying BSPKEY_<keydomain> | ||
| 384 | environment variables when building the image: | ||
| 385 | </para> | ||
| 386 | |||
| 387 | <programlisting> | ||
| 388 | $ BSPKEY_<keydomain>=<key> bitbake poky-image-sato | ||
| 389 | </programlisting> | ||
| 390 | |||
| 391 | <para> | ||
| 392 | This will allow the encumbered image to be built | ||
| 393 | with no change at all to the normal build process. | ||
| 394 | </para> | ||
| 395 | |||
| 396 | <para> | ||
| 397 | Equivalently and probably more conveniently, a line | ||
| 398 | for each key can instead be put into the user's | ||
| 399 | local.conf file. | ||
| 400 | </para> | ||
| 401 | |||
| 402 | <para> | ||
| 403 | The <keydomain> component of the | ||
| 404 | BSPKEY_<keydomain> is required because there | ||
| 405 | may be multiple licenses in effect for a give BSP; a | ||
| 406 | given <keydomain> in such cases corresponds to | ||
| 407 | a particular license. In order for an encumbered | ||
| 408 | BSP encompassing multiple key domains to be built | ||
| 409 | successfully, a <keydomain> entry for each | ||
| 410 | applicable license must be present in local.conf or | ||
| 411 | supplied on the command-line. | ||
| 412 | </para> | ||
| 413 | </listitem> | ||
| 414 | <listitem> | ||
| 415 | <para> | ||
| 416 | Do nothing - build as you normally would, and follow | ||
| 417 | any license prompts that originate from the | ||
| 418 | encumbered BSP (the build will cleanly stop at this | ||
| 419 | point). These usually take the form of instructions | ||
| 420 | needed to manually fetch the encumbered package(s) | ||
| 421 | and md5 sums into e.g. the poky/build/downloads | ||
| 422 | directory. Once the manual package fetch has been | ||
| 423 | completed, restarting the build will continue where | ||
| 424 | it left off, this time without the prompt since the | ||
| 425 | license requirements will have been satisfied. | ||
| 426 | </para> | ||
| 427 | </listitem> | ||
| 428 | <listitem> | ||
| 429 | <para> | ||
| 430 | Get a full-featured BSP recipe rather than a key, by | ||
| 431 | visiting | ||
| 432 | <ulink url='https://pokylinux.org/bsps.html'>https://pokylinux.org/bsps.html</ulink>. | ||
| 433 | Accepting the license agreement(s) presented will | ||
| 434 | subsequently allow you to download a tarball | ||
| 435 | containing a full-featured BSP legally cleared for | ||
| 436 | your use by the just-given license agreement(s). | ||
| 437 | This method will also allow the encumbered image to | ||
| 438 | be built with no change at all to the normal build | ||
| 439 | process. | ||
| 440 | </para> | ||
| 441 | </listitem> | ||
| 442 | </itemizedlist> | ||
| 443 | <para> | ||
| 444 | Note that method 3 is also the only option available | ||
| 445 | when downloading pre-compiled images generated from | ||
| 446 | non-free BSPs. Those images are likewise available at | ||
| 447 | <ulink url='https://pokylinux.org/bsps.html'>https://pokylinux.org/bsps.html</ulink>. | ||
| 448 | </para> | ||
| 449 | </section> | ||
| 450 | |||
| 317 | </chapter> | 451 | </chapter> |
