diff options
Diffstat (limited to 'documentation/ref-manual/variables.rst')
-rw-r--r-- | documentation/ref-manual/variables.rst | 849 |
1 files changed, 283 insertions, 566 deletions
diff --git a/documentation/ref-manual/variables.rst b/documentation/ref-manual/variables.rst index 9435aec458..64521b89bb 100644 --- a/documentation/ref-manual/variables.rst +++ b/documentation/ref-manual/variables.rst | |||
@@ -24,8 +24,7 @@ system and gives an overview of their function and contents. | |||
24 | 24 | ||
25 | ABI extensions are set in the machine include files. For example, the | 25 | ABI extensions are set in the machine include files. For example, the |
26 | ``meta/conf/machine/include/arm/arch-arm.inc`` file sets the | 26 | ``meta/conf/machine/include/arm/arch-arm.inc`` file sets the |
27 | following extension: | 27 | following extension:: |
28 | :: | ||
29 | 28 | ||
30 | ABIEXTENSION = "eabi" | 29 | ABIEXTENSION = "eabi" |
31 | 30 | ||
@@ -37,8 +36,7 @@ system and gives an overview of their function and contents. | |||
37 | requirement on the existence of the package. | 36 | requirement on the existence of the package. |
38 | 37 | ||
39 | Like all package-controlling variables, you must always use them in | 38 | Like all package-controlling variables, you must always use them in |
40 | conjunction with a package name override, as in: | 39 | conjunction with a package name override, as in:: |
41 | :: | ||
42 | 40 | ||
43 | ALLOW_EMPTY_${PN} = "1" | 41 | ALLOW_EMPTY_${PN} = "1" |
44 | ALLOW_EMPTY_${PN}-dev = "1" | 42 | ALLOW_EMPTY_${PN}-dev = "1" |
@@ -54,8 +52,7 @@ system and gives an overview of their function and contents. | |||
54 | To use the variable, list out the package's commands that also exist | 52 | To use the variable, list out the package's commands that also exist |
55 | as part of another package. For example, if the ``busybox`` package | 53 | as part of another package. For example, if the ``busybox`` package |
56 | has four commands that also exist as part of another package, you | 54 | has four commands that also exist as part of another package, you |
57 | identify them as follows: | 55 | identify them as follows:: |
58 | :: | ||
59 | 56 | ||
60 | ALTERNATIVE_busybox = "sh sed test bracket" | 57 | ALTERNATIVE_busybox = "sh sed test bracket" |
61 | 58 | ||
@@ -68,8 +65,7 @@ system and gives an overview of their function and contents. | |||
68 | locations. For example, if the ``bracket`` command provided by the | 65 | locations. For example, if the ``bracket`` command provided by the |
69 | ``busybox`` package is duplicated through another package, you must | 66 | ``busybox`` package is duplicated through another package, you must |
70 | use the ``ALTERNATIVE_LINK_NAME`` variable to specify the actual | 67 | use the ``ALTERNATIVE_LINK_NAME`` variable to specify the actual |
71 | location: | 68 | location:: |
72 | :: | ||
73 | 69 | ||
74 | ALTERNATIVE_LINK_NAME[bracket] = "/usr/bin/[" | 70 | ALTERNATIVE_LINK_NAME[bracket] = "/usr/bin/[" |
75 | 71 | ||
@@ -90,8 +86,7 @@ system and gives an overview of their function and contents. | |||
90 | default regardless of the command name or package, a default for | 86 | default regardless of the command name or package, a default for |
91 | specific duplicated commands regardless of the package, or a default | 87 | specific duplicated commands regardless of the package, or a default |
92 | for specific commands tied to particular packages. Here are the | 88 | for specific commands tied to particular packages. Here are the |
93 | available syntax forms: | 89 | available syntax forms:: |
94 | :: | ||
95 | 90 | ||
96 | ALTERNATIVE_PRIORITY = "priority" | 91 | ALTERNATIVE_PRIORITY = "priority" |
97 | ALTERNATIVE_PRIORITY[name] = "priority" | 92 | ALTERNATIVE_PRIORITY[name] = "priority" |
@@ -107,8 +102,7 @@ system and gives an overview of their function and contents. | |||
107 | default location for all duplicated commands regardless of the | 102 | default location for all duplicated commands regardless of the |
108 | command name or package, a default for specific duplicated commands | 103 | command name or package, a default for specific duplicated commands |
109 | regardless of the package, or a default for specific commands tied to | 104 | regardless of the package, or a default for specific commands tied to |
110 | particular packages. Here are the available syntax forms: | 105 | particular packages. Here are the available syntax forms:: |
111 | :: | ||
112 | 106 | ||
113 | ALTERNATIVE_TARGET = "target" | 107 | ALTERNATIVE_TARGET = "target" |
114 | ALTERNATIVE_TARGET[name] = "target" | 108 | ALTERNATIVE_TARGET[name] = "target" |
@@ -159,8 +153,7 @@ system and gives an overview of their function and contents. | |||
159 | determines the type of information used to create a released archive. | 153 | determines the type of information used to create a released archive. |
160 | You can use this variable to create archives of patched source, | 154 | You can use this variable to create archives of patched source, |
161 | original source, configured source, and so forth by employing the | 155 | original source, configured source, and so forth by employing the |
162 | following variable flags (varflags): | 156 | following variable flags (varflags):: |
163 | :: | ||
164 | 157 | ||
165 | ARCHIVER_MODE[src] = "original" # Uses original (unpacked) source files. | 158 | ARCHIVER_MODE[src] = "original" # Uses original (unpacked) source files. |
166 | ARCHIVER_MODE[src] = "patched" # Uses patched source files. This is the default. | 159 | ARCHIVER_MODE[src] = "patched" # Uses patched source files. This is the default. |
@@ -193,14 +186,12 @@ system and gives an overview of their function and contents. | |||
193 | system. Separate multiple entries using spaces. | 186 | system. Separate multiple entries using spaces. |
194 | 187 | ||
195 | As an example, use the following form to add an ``shlib`` provider of | 188 | As an example, use the following form to add an ``shlib`` provider of |
196 | shlibname in packagename with the optional version: | 189 | shlibname in packagename with the optional version:: |
197 | :: | ||
198 | 190 | ||
199 | shlibname:packagename[_version] | 191 | shlibname:packagename[_version] |
200 | 192 | ||
201 | Here is an example that adds a shared library named ``libEGL.so.1`` | 193 | Here is an example that adds a shared library named ``libEGL.so.1`` |
202 | as being provided by the ``libegl-implementation`` package: | 194 | as being provided by the ``libegl-implementation`` package:: |
203 | :: | ||
204 | 195 | ||
205 | ASSUME_SHLIBS = "libEGL.so.1:libegl-implementation" | 196 | ASSUME_SHLIBS = "libEGL.so.1:libegl-implementation" |
206 | 197 | ||
@@ -224,8 +215,7 @@ system and gives an overview of their function and contents. | |||
224 | 215 | ||
225 | :term:`AUTOREV` | 216 | :term:`AUTOREV` |
226 | When ``SRCREV`` is set to the value of this variable, it specifies to | 217 | When ``SRCREV`` is set to the value of this variable, it specifies to |
227 | use the latest source revision in the repository. Here is an example: | 218 | use the latest source revision in the repository. Here is an example:: |
228 | :: | ||
229 | 219 | ||
230 | SRCREV = "${AUTOREV}" | 220 | SRCREV = "${AUTOREV}" |
231 | 221 | ||
@@ -286,8 +276,7 @@ system and gives an overview of their function and contents. | |||
286 | The directory within the :term:`Build Directory` in | 276 | The directory within the :term:`Build Directory` in |
287 | which the OpenEmbedded build system places generated objects during a | 277 | which the OpenEmbedded build system places generated objects during a |
288 | recipe's build process. By default, this directory is the same as the | 278 | recipe's build process. By default, this directory is the same as the |
289 | :term:`S` directory, which is defined as: | 279 | :term:`S` directory, which is defined as:: |
290 | :: | ||
291 | 280 | ||
292 | S = "${WORKDIR}/${BP}" | 281 | S = "${WORKDIR}/${BP}" |
293 | 282 | ||
@@ -301,15 +290,13 @@ system and gives an overview of their function and contents. | |||
301 | packages are packages installed only through the | 290 | packages are packages installed only through the |
302 | :term:`RRECOMMENDS` variable. You can prevent any | 291 | :term:`RRECOMMENDS` variable. You can prevent any |
303 | of these "recommended" packages from being installed by listing them | 292 | of these "recommended" packages from being installed by listing them |
304 | with the ``BAD_RECOMMENDATIONS`` variable: | 293 | with the ``BAD_RECOMMENDATIONS`` variable:: |
305 | :: | ||
306 | 294 | ||
307 | BAD_RECOMMENDATIONS = "package_name package_name package_name ..." | 295 | BAD_RECOMMENDATIONS = "package_name package_name package_name ..." |
308 | 296 | ||
309 | You can set this variable globally in your ``local.conf`` file or you | 297 | You can set this variable globally in your ``local.conf`` file or you |
310 | can attach it to a specific image recipe by using the recipe name | 298 | can attach it to a specific image recipe by using the recipe name |
311 | override: | 299 | override:: |
312 | :: | ||
313 | 300 | ||
314 | BAD_RECOMMENDATIONS_pn-target_image = "package_name" | 301 | BAD_RECOMMENDATIONS_pn-target_image = "package_name" |
315 | 302 | ||
@@ -394,8 +381,7 @@ system and gives an overview of their function and contents. | |||
394 | 381 | ||
395 | You can change the default behavior by setting this variable to "1", | 382 | You can change the default behavior by setting this variable to "1", |
396 | "yes", or "true" in your ``local.conf`` file, which is located in the | 383 | "yes", or "true" in your ``local.conf`` file, which is located in the |
397 | :term:`Build Directory`: Here is an example: | 384 | :term:`Build Directory`: Here is an example:: |
398 | :: | ||
399 | 385 | ||
400 | BB_DANGLINGAPPENDS_WARNONLY = "1" | 386 | BB_DANGLINGAPPENDS_WARNONLY = "1" |
401 | 387 | ||
@@ -444,8 +430,7 @@ system and gives an overview of their function and contents. | |||
444 | not specify G, M, or K, Kbytes is assumed by | 430 | not specify G, M, or K, Kbytes is assumed by |
445 | default. Do not use GB, MB, or KB. | 431 | default. Do not use GB, MB, or KB. |
446 | 432 | ||
447 | Here are some examples: | 433 | Here are some examples:: |
448 | :: | ||
449 | 434 | ||
450 | BB_DISKMON_DIRS = "ABORT,${TMPDIR},1G,100K WARN,${SSTATE_DIR},1G,100K" | 435 | BB_DISKMON_DIRS = "ABORT,${TMPDIR},1G,100K WARN,${SSTATE_DIR},1G,100K" |
451 | BB_DISKMON_DIRS = "STOPTASKS,${TMPDIR},1G" | 436 | BB_DISKMON_DIRS = "STOPTASKS,${TMPDIR},1G" |
@@ -485,8 +470,7 @@ system and gives an overview of their function and contents. | |||
485 | 470 | ||
486 | If you do not provide a ``BB_DISKMON_WARNINTERVAL`` variable and you | 471 | If you do not provide a ``BB_DISKMON_WARNINTERVAL`` variable and you |
487 | do use ``BB_DISKMON_DIRS`` with the "WARN" action, the disk | 472 | do use ``BB_DISKMON_DIRS`` with the "WARN" action, the disk |
488 | monitoring interval defaults to the following: | 473 | monitoring interval defaults to the following:: |
489 | :: | ||
490 | 474 | ||
491 | BB_DISKMON_WARNINTERVAL = "50M,5K" | 475 | BB_DISKMON_WARNINTERVAL = "50M,5K" |
492 | 476 | ||
@@ -509,8 +493,7 @@ system and gives an overview of their function and contents. | |||
509 | G, M, or K for Gbytes, Mbytes, or Kbytes, | 493 | G, M, or K for Gbytes, Mbytes, or Kbytes, |
510 | respectively. You cannot use GB, MB, or KB. | 494 | respectively. You cannot use GB, MB, or KB. |
511 | 495 | ||
512 | Here is an example: | 496 | Here is an example:: |
513 | :: | ||
514 | 497 | ||
515 | BB_DISKMON_DIRS = "WARN,${SSTATE_DIR},1G,100K" | 498 | BB_DISKMON_DIRS = "WARN,${SSTATE_DIR},1G,100K" |
516 | BB_DISKMON_WARNINTERVAL = "50M,5K" | 499 | BB_DISKMON_WARNINTERVAL = "50M,5K" |
@@ -566,8 +549,7 @@ system and gives an overview of their function and contents. | |||
566 | long the BitBake server stays resident between invocations. | 549 | long the BitBake server stays resident between invocations. |
567 | 550 | ||
568 | For example, the following statement in your ``local.conf`` file | 551 | For example, the following statement in your ``local.conf`` file |
569 | instructs the server to be unloaded after 20 seconds of inactivity: | 552 | instructs the server to be unloaded after 20 seconds of inactivity:: |
570 | :: | ||
571 | 553 | ||
572 | BB_SERVER_TIMEOUT = "20" | 554 | BB_SERVER_TIMEOUT = "20" |
573 | 555 | ||
@@ -585,8 +567,7 @@ system and gives an overview of their function and contents. | |||
585 | "``multilib:``\ multilib_name". | 567 | "``multilib:``\ multilib_name". |
586 | 568 | ||
587 | To build a different variant of the recipe with a minimal amount of | 569 | To build a different variant of the recipe with a minimal amount of |
588 | code, it usually is as simple as adding the following to your recipe: | 570 | code, it usually is as simple as adding the following to your recipe:: |
589 | :: | ||
590 | 571 | ||
591 | BBCLASSEXTEND =+ "native nativesdk" | 572 | BBCLASSEXTEND =+ "native nativesdk" |
592 | BBCLASSEXTEND =+ "multilib:multilib_name" | 573 | BBCLASSEXTEND =+ "multilib:multilib_name" |
@@ -662,8 +643,7 @@ system and gives an overview of their function and contents. | |||
662 | 643 | ||
663 | Use the following form for ``BBFILES_DYNAMIC``: | 644 | Use the following form for ``BBFILES_DYNAMIC``: |
664 | collection_name:filename_pattern The following example identifies two | 645 | collection_name:filename_pattern The following example identifies two |
665 | collection names and two filename patterns: | 646 | collection names and two filename patterns:: |
666 | :: | ||
667 | 647 | ||
668 | BBFILES_DYNAMIC += " \ | 648 | BBFILES_DYNAMIC += " \ |
669 | clang-layer:${LAYERDIR}/bbappends/meta-clang/*/*/*.bbappend \ | 649 | clang-layer:${LAYERDIR}/bbappends/meta-clang/*/*/*.bbappend \ |
@@ -691,8 +671,7 @@ system and gives an overview of their function and contents. | |||
691 | :term:`BBLAYERS` | 671 | :term:`BBLAYERS` |
692 | Lists the layers to enable during the build. This variable is defined | 672 | Lists the layers to enable during the build. This variable is defined |
693 | in the ``bblayers.conf`` configuration file in the :term:`Build Directory`. | 673 | in the ``bblayers.conf`` configuration file in the :term:`Build Directory`. |
694 | Here is an example: | 674 | Here is an example:: |
695 | :: | ||
696 | 675 | ||
697 | BBLAYERS = " \ | 676 | BBLAYERS = " \ |
698 | /home/scottrif/poky/meta \ | 677 | /home/scottrif/poky/meta \ |
@@ -721,8 +700,7 @@ system and gives an overview of their function and contents. | |||
721 | 700 | ||
722 | The following example uses a complete regular expression to tell | 701 | The following example uses a complete regular expression to tell |
723 | BitBake to ignore all recipe and recipe append files in the | 702 | BitBake to ignore all recipe and recipe append files in the |
724 | ``meta-ti/recipes-misc/`` directory: | 703 | ``meta-ti/recipes-misc/`` directory:: |
725 | :: | ||
726 | 704 | ||
727 | BBMASK = "meta-ti/recipes-misc/" | 705 | BBMASK = "meta-ti/recipes-misc/" |
728 | 706 | ||
@@ -746,8 +724,7 @@ system and gives an overview of their function and contents. | |||
746 | building targets with multiple configurations. Use this variable in | 724 | building targets with multiple configurations. Use this variable in |
747 | your ``conf/local.conf`` configuration file. Specify a | 725 | your ``conf/local.conf`` configuration file. Specify a |
748 | multiconfigname for each configuration file you are using. For | 726 | multiconfigname for each configuration file you are using. For |
749 | example, the following line specifies three configuration files: | 727 | example, the following line specifies three configuration files:: |
750 | :: | ||
751 | 728 | ||
752 | BBMULTICONFIG = "configA configB configC" | 729 | BBMULTICONFIG = "configA configB configC" |
753 | 730 | ||
@@ -770,8 +747,7 @@ system and gives an overview of their function and contents. | |||
770 | If you run BitBake from a directory outside of the | 747 | If you run BitBake from a directory outside of the |
771 | :term:`Build Directory`, you must be sure to set ``BBPATH`` | 748 | :term:`Build Directory`, you must be sure to set ``BBPATH`` |
772 | to point to the Build Directory. Set the variable as you would any | 749 | to point to the Build Directory. Set the variable as you would any |
773 | environment variable and then run BitBake: | 750 | environment variable and then run BitBake:: |
774 | :: | ||
775 | 751 | ||
776 | $ BBPATH = "build_directory" | 752 | $ BBPATH = "build_directory" |
777 | $ export BBPATH | 753 | $ export BBPATH |
@@ -783,8 +759,7 @@ system and gives an overview of their function and contents. | |||
783 | BitBake remote server. | 759 | BitBake remote server. |
784 | 760 | ||
785 | Use the following format to export the variable to the BitBake | 761 | Use the following format to export the variable to the BitBake |
786 | environment: | 762 | environment:: |
787 | :: | ||
788 | 763 | ||
789 | export BBSERVER=localhost:$port | 764 | export BBSERVER=localhost:$port |
790 | 765 | ||
@@ -803,8 +778,7 @@ system and gives an overview of their function and contents. | |||
803 | replaced. | 778 | replaced. |
804 | 779 | ||
805 | To add multiple scripts, separate them by spaces. Here is an example | 780 | To add multiple scripts, separate them by spaces. Here is an example |
806 | from the ``libpng`` recipe: | 781 | from the ``libpng`` recipe:: |
807 | :: | ||
808 | 782 | ||
809 | BINCONFIG = "${bindir}/libpng-config ${bindir}/libpng16-config" | 783 | BINCONFIG = "${bindir}/libpng-config ${bindir}/libpng16-config" |
810 | 784 | ||
@@ -834,8 +808,7 @@ system and gives an overview of their function and contents. | |||
834 | :term:`BP` | 808 | :term:`BP` |
835 | The base recipe name and version but without any special recipe name | 809 | The base recipe name and version but without any special recipe name |
836 | suffix (i.e. ``-native``, ``lib64-``, and so forth). ``BP`` is | 810 | suffix (i.e. ``-native``, ``lib64-``, and so forth). ``BP`` is |
837 | comprised of the following: | 811 | comprised of the following:: |
838 | :: | ||
839 | 812 | ||
840 | ${BPN}-${PV} | 813 | ${BPN}-${PV} |
841 | 814 | ||
@@ -975,8 +948,7 @@ system and gives an overview of their function and contents. | |||
975 | you should set this value to "1". | 948 | you should set this value to "1". |
976 | 949 | ||
977 | By default, the ``buildhistory`` class does not commit the build | 950 | By default, the ``buildhistory`` class does not commit the build |
978 | history output in a local Git repository: | 951 | history output in a local Git repository:: |
979 | :: | ||
980 | 952 | ||
981 | BUILDHISTORY_COMMIT ?= "0" | 953 | BUILDHISTORY_COMMIT ?= "0" |
982 | 954 | ||
@@ -992,8 +964,7 @@ system and gives an overview of their function and contents. | |||
992 | email@host". Providing an email address or host that is not valid | 964 | email@host". Providing an email address or host that is not valid |
993 | does not produce an error. | 965 | does not produce an error. |
994 | 966 | ||
995 | By default, the ``buildhistory`` class sets the variable as follows: | 967 | By default, the ``buildhistory`` class sets the variable as follows:: |
996 | :: | ||
997 | 968 | ||
998 | BUILDHISTORY_COMMIT_AUTHOR ?= "buildhistory <buildhistory@${DISTRO}>" | 969 | BUILDHISTORY_COMMIT_AUTHOR ?= "buildhistory <buildhistory@${DISTRO}>" |
999 | 970 | ||
@@ -1003,8 +974,7 @@ system and gives an overview of their function and contents. | |||
1003 | information is kept. For more information on how the variable works, | 974 | information is kept. For more information on how the variable works, |
1004 | see the ``buildhistory.class``. | 975 | see the ``buildhistory.class``. |
1005 | 976 | ||
1006 | By default, the ``buildhistory`` class sets the directory as follows: | 977 | By default, the ``buildhistory`` class sets the directory as follows:: |
1007 | :: | ||
1008 | 978 | ||
1009 | BUILDHISTORY_DIR ?= "${TOPDIR}/buildhistory" | 979 | BUILDHISTORY_DIR ?= "${TOPDIR}/buildhistory" |
1010 | 980 | ||
@@ -1032,8 +1002,7 @@ system and gives an overview of their function and contents. | |||
1032 | each file staged (i.e. the output of the task). | 1002 | each file staged (i.e. the output of the task). |
1033 | 1003 | ||
1034 | By default, the ``buildhistory`` class enables the following | 1004 | By default, the ``buildhistory`` class enables the following |
1035 | features: | 1005 | features:: |
1036 | :: | ||
1037 | 1006 | ||
1038 | BUILDHISTORY_FEATURES ?= "image package sdk" | 1007 | BUILDHISTORY_FEATURES ?= "image package sdk" |
1039 | 1008 | ||
@@ -1049,8 +1018,7 @@ system and gives an overview of their function and contents. | |||
1049 | Consequently, you can include files that might not always be present. | 1018 | Consequently, you can include files that might not always be present. |
1050 | 1019 | ||
1051 | By default, the ``buildhistory`` class provides paths to the | 1020 | By default, the ``buildhistory`` class provides paths to the |
1052 | following files: | 1021 | following files:: |
1053 | :: | ||
1054 | 1022 | ||
1055 | BUILDHISTORY_IMAGE_FILES ?= "/etc/passwd /etc/group" | 1023 | BUILDHISTORY_IMAGE_FILES ?= "/etc/passwd /etc/group" |
1056 | 1024 | ||
@@ -1067,8 +1035,7 @@ system and gives an overview of their function and contents. | |||
1067 | that you have set up manually using ``git remote`` within the local | 1035 | that you have set up manually using ``git remote`` within the local |
1068 | repository. | 1036 | repository. |
1069 | 1037 | ||
1070 | By default, the ``buildhistory`` class sets the variable as follows: | 1038 | By default, the ``buildhistory`` class sets the variable as follows:: |
1071 | :: | ||
1072 | 1039 | ||
1073 | BUILDHISTORY_PUSH_REPO ?= "" | 1040 | BUILDHISTORY_PUSH_REPO ?= "" |
1074 | 1041 | ||
@@ -1152,8 +1119,7 @@ system and gives an overview of their function and contents. | |||
1152 | ``bitbake.conf`` file. | 1119 | ``bitbake.conf`` file. |
1153 | 1120 | ||
1154 | As an example, the following override allows you to install extra | 1121 | As an example, the following override allows you to install extra |
1155 | files, but only when building for the target: | 1122 | files, but only when building for the target:: |
1156 | :: | ||
1157 | 1123 | ||
1158 | do_install_append_class-target() { | 1124 | do_install_append_class-target() { |
1159 | install my-extra-file ${D}${sysconfdir} | 1125 | install my-extra-file ${D}${sysconfdir} |
@@ -1161,8 +1127,7 @@ system and gives an overview of their function and contents. | |||
1161 | 1127 | ||
1162 | Here is an example where ``FOO`` is set to | 1128 | Here is an example where ``FOO`` is set to |
1163 | "native" when building for the build host, and to "other" when not | 1129 | "native" when building for the build host, and to "other" when not |
1164 | building for the build host: | 1130 | building for the build host:: |
1165 | :: | ||
1166 | 1131 | ||
1167 | FOO_class-native = "native" | 1132 | FOO_class-native = "native" |
1168 | FOO = "other" | 1133 | FOO = "other" |
@@ -1235,8 +1200,7 @@ system and gives an overview of their function and contents. | |||
1235 | 1200 | ||
1236 | To add a new feature item pointing to a wildcard, use a variable flag | 1201 | To add a new feature item pointing to a wildcard, use a variable flag |
1237 | to specify the feature item name and use the value to specify the | 1202 | to specify the feature item name and use the value to specify the |
1238 | wildcard. Here is an example: | 1203 | wildcard. Here is an example:: |
1239 | :: | ||
1240 | 1204 | ||
1241 | COMPLEMENTARY_GLOB[dev-pkgs] = '*-dev' | 1205 | COMPLEMENTARY_GLOB[dev-pkgs] = '*-dev' |
1242 | 1206 | ||
@@ -1268,8 +1232,7 @@ system and gives an overview of their function and contents. | |||
1268 | 1232 | ||
1269 | To use the ``CONFFILES`` variable, provide a package name override | 1233 | To use the ``CONFFILES`` variable, provide a package name override |
1270 | that identifies the resulting package. Then, provide a | 1234 | that identifies the resulting package. Then, provide a |
1271 | space-separated list of files. Here is an example: | 1235 | space-separated list of files. Here is an example:: |
1272 | :: | ||
1273 | 1236 | ||
1274 | CONFFILES_${PN} += "${sysconfdir}/file1 \ | 1237 | CONFFILES_${PN} += "${sysconfdir}/file1 \ |
1275 | ${sysconfdir}/file2 ${sysconfdir}/file3" | 1238 | ${sysconfdir}/file2 ${sysconfdir}/file3" |
@@ -1524,8 +1487,7 @@ system and gives an overview of their function and contents. | |||
1524 | The destination directory. The location in the :term:`Build Directory` | 1487 | The destination directory. The location in the :term:`Build Directory` |
1525 | where components are installed by the | 1488 | where components are installed by the |
1526 | :ref:`ref-tasks-install` task. This location defaults | 1489 | :ref:`ref-tasks-install` task. This location defaults |
1527 | to: | 1490 | to:: |
1528 | :: | ||
1529 | 1491 | ||
1530 | ${WORKDIR}/image | 1492 | ${WORKDIR}/image |
1531 | 1493 | ||
@@ -1547,8 +1509,7 @@ system and gives an overview of their function and contents. | |||
1547 | which is the default behavior, ``DEBIAN_NOAUTONAME`` specifies a | 1509 | which is the default behavior, ``DEBIAN_NOAUTONAME`` specifies a |
1548 | particular package should not be renamed according to Debian library | 1510 | particular package should not be renamed according to Debian library |
1549 | package naming. You must use the package name as an override when you | 1511 | package naming. You must use the package name as an override when you |
1550 | set this variable. Here is an example from the ``fontconfig`` recipe: | 1512 | set this variable. Here is an example from the ``fontconfig`` recipe:: |
1551 | :: | ||
1552 | 1513 | ||
1553 | DEBIAN_NOAUTONAME_fontconfig-utils = "1" | 1514 | DEBIAN_NOAUTONAME_fontconfig-utils = "1" |
1554 | 1515 | ||
@@ -1558,8 +1519,7 @@ system and gives an overview of their function and contents. | |||
1558 | the library name for an individual package. Overriding the library | 1519 | the library name for an individual package. Overriding the library |
1559 | name in these cases is rare. You must use the package name as an | 1520 | name in these cases is rare. You must use the package name as an |
1560 | override when you set this variable. Here is an example from the | 1521 | override when you set this variable. Here is an example from the |
1561 | ``dbus`` recipe: | 1522 | ``dbus`` recipe:: |
1562 | :: | ||
1563 | 1523 | ||
1564 | DEBIANNAME_${PN} = "dbus-1" | 1524 | DEBIANNAME_${PN} = "dbus-1" |
1565 | 1525 | ||
@@ -1610,8 +1570,7 @@ system and gives an overview of their function and contents. | |||
1610 | needed by the recipe at build time. | 1570 | needed by the recipe at build time. |
1611 | 1571 | ||
1612 | As an example, consider a recipe ``foo`` that contains the following | 1572 | As an example, consider a recipe ``foo`` that contains the following |
1613 | assignment: | 1573 | assignment:: |
1614 | :: | ||
1615 | 1574 | ||
1616 | DEPENDS = "bar" | 1575 | DEPENDS = "bar" |
1617 | 1576 | ||
@@ -1635,8 +1594,7 @@ system and gives an overview of their function and contents. | |||
1635 | As another example, ``DEPENDS`` can also be used to add utilities | 1594 | As another example, ``DEPENDS`` can also be used to add utilities |
1636 | that run on the build machine during the build. For example, a recipe | 1595 | that run on the build machine during the build. For example, a recipe |
1637 | that makes use of a code generator built by the recipe ``codegen`` | 1596 | that makes use of a code generator built by the recipe ``codegen`` |
1638 | might have the following: | 1597 | might have the following:: |
1639 | :: | ||
1640 | 1598 | ||
1641 | DEPENDS = "codegen-native" | 1599 | DEPENDS = "codegen-native" |
1642 | 1600 | ||
@@ -1702,8 +1660,7 @@ system and gives an overview of their function and contents. | |||
1702 | 1660 | ||
1703 | The BitBake configuration file initially defines the | 1661 | The BitBake configuration file initially defines the |
1704 | ``DEPLOY_DIR_DEB`` variable as a sub-folder of | 1662 | ``DEPLOY_DIR_DEB`` variable as a sub-folder of |
1705 | :term:`DEPLOY_DIR`: | 1663 | :term:`DEPLOY_DIR`:: |
1706 | :: | ||
1707 | 1664 | ||
1708 | DEPLOY_DIR_DEB = "${DEPLOY_DIR}/deb" | 1665 | DEPLOY_DIR_DEB = "${DEPLOY_DIR}/deb" |
1709 | 1666 | ||
@@ -1738,8 +1695,7 @@ system and gives an overview of their function and contents. | |||
1738 | "package_ipk". | 1695 | "package_ipk". |
1739 | 1696 | ||
1740 | The BitBake configuration file initially defines this variable as a | 1697 | The BitBake configuration file initially defines this variable as a |
1741 | sub-folder of :term:`DEPLOY_DIR`: | 1698 | sub-folder of :term:`DEPLOY_DIR`:: |
1742 | :: | ||
1743 | 1699 | ||
1744 | DEPLOY_DIR_IPK = "${DEPLOY_DIR}/ipk" | 1700 | DEPLOY_DIR_IPK = "${DEPLOY_DIR}/ipk" |
1745 | 1701 | ||
@@ -1759,8 +1715,7 @@ system and gives an overview of their function and contents. | |||
1759 | "package_rpm". | 1715 | "package_rpm". |
1760 | 1716 | ||
1761 | The BitBake configuration file initially defines this variable as a | 1717 | The BitBake configuration file initially defines this variable as a |
1762 | sub-folder of :term:`DEPLOY_DIR`: | 1718 | sub-folder of :term:`DEPLOY_DIR`:: |
1763 | :: | ||
1764 | 1719 | ||
1765 | DEPLOY_DIR_RPM = "${DEPLOY_DIR}/rpm" | 1720 | DEPLOY_DIR_RPM = "${DEPLOY_DIR}/rpm" |
1766 | 1721 | ||
@@ -1780,8 +1735,7 @@ system and gives an overview of their function and contents. | |||
1780 | "package_tar". | 1735 | "package_tar". |
1781 | 1736 | ||
1782 | The BitBake configuration file initially defines this variable as a | 1737 | The BitBake configuration file initially defines this variable as a |
1783 | sub-folder of :term:`DEPLOY_DIR`: | 1738 | sub-folder of :term:`DEPLOY_DIR`:: |
1784 | :: | ||
1785 | 1739 | ||
1786 | DEPLOY_DIR_TAR = "${DEPLOY_DIR}/tar" | 1740 | DEPLOY_DIR_TAR = "${DEPLOY_DIR}/tar" |
1787 | 1741 | ||
@@ -1796,8 +1750,7 @@ system and gives an overview of their function and contents. | |||
1796 | :term:`DEPLOYDIR` | 1750 | :term:`DEPLOYDIR` |
1797 | When inheriting the :ref:`deploy <ref-classes-deploy>` class, the | 1751 | When inheriting the :ref:`deploy <ref-classes-deploy>` class, the |
1798 | ``DEPLOYDIR`` points to a temporary work area for deployed files that | 1752 | ``DEPLOYDIR`` points to a temporary work area for deployed files that |
1799 | is set in the ``deploy`` class as follows: | 1753 | is set in the ``deploy`` class as follows:: |
1800 | :: | ||
1801 | 1754 | ||
1802 | DEPLOYDIR = "${WORKDIR}/deploy-${PN}" | 1755 | DEPLOYDIR = "${WORKDIR}/deploy-${PN}" |
1803 | 1756 | ||
@@ -1824,8 +1777,7 @@ system and gives an overview of their function and contents. | |||
1824 | :term:`Source Directory`. | 1777 | :term:`Source Directory`. |
1825 | 1778 | ||
1826 | Within that ``poky.conf`` file, the ``DISTRO`` variable is set as | 1779 | Within that ``poky.conf`` file, the ``DISTRO`` variable is set as |
1827 | follows: | 1780 | follows:: |
1828 | :: | ||
1829 | 1781 | ||
1830 | DISTRO = "poky" | 1782 | DISTRO = "poky" |
1831 | 1783 | ||
@@ -1899,8 +1851,7 @@ system and gives an overview of their function and contents. | |||
1899 | able to reuse the default | 1851 | able to reuse the default |
1900 | :term:`DISTRO_FEATURES` options without the | 1852 | :term:`DISTRO_FEATURES` options without the |
1901 | need to write out the full set. Here is an example that uses | 1853 | need to write out the full set. Here is an example that uses |
1902 | ``DISTRO_FEATURES_DEFAULT`` from a custom distro configuration file: | 1854 | ``DISTRO_FEATURES_DEFAULT`` from a custom distro configuration file:: |
1903 | :: | ||
1904 | 1855 | ||
1905 | DISTRO_FEATURES ?= "${DISTRO_FEATURES_DEFAULT} myfeature" | 1856 | DISTRO_FEATURES ?= "${DISTRO_FEATURES_DEFAULT} myfeature" |
1906 | 1857 | ||
@@ -1948,8 +1899,7 @@ system and gives an overview of their function and contents. | |||
1948 | of the :term:`Source Directory`. | 1899 | of the :term:`Source Directory`. |
1949 | 1900 | ||
1950 | Within that ``poky.conf`` file, the ``DISTRO_NAME`` variable is set | 1901 | Within that ``poky.conf`` file, the ``DISTRO_NAME`` variable is set |
1951 | as follows: | 1902 | as follows:: |
1952 | :: | ||
1953 | 1903 | ||
1954 | DISTRO_NAME = "Poky (Yocto Project Reference Distro)" | 1904 | DISTRO_NAME = "Poky (Yocto Project Reference Distro)" |
1955 | 1905 | ||
@@ -2065,8 +2015,7 @@ system and gives an overview of their function and contents. | |||
2065 | 2015 | ||
2066 | You can set ``ERR_REPORT_DIR`` to the path you want the error | 2016 | You can set ``ERR_REPORT_DIR`` to the path you want the error |
2067 | reporting tool to store the debug files as follows in your | 2017 | reporting tool to store the debug files as follows in your |
2068 | ``local.conf`` file: | 2018 | ``local.conf`` file:: |
2069 | :: | ||
2070 | 2019 | ||
2071 | ERR_REPORT_DIR = "path" | 2020 | ERR_REPORT_DIR = "path" |
2072 | 2021 | ||
@@ -2094,8 +2043,7 @@ system and gives an overview of their function and contents. | |||
2094 | package's particular libraries only and not the whole package. | 2043 | package's particular libraries only and not the whole package. |
2095 | 2044 | ||
2096 | Use the ``EXCLUDE_FROM_SHLIBS`` variable by setting it to "1" for a | 2045 | Use the ``EXCLUDE_FROM_SHLIBS`` variable by setting it to "1" for a |
2097 | particular package: | 2046 | particular package:: |
2098 | :: | ||
2099 | 2047 | ||
2100 | EXCLUDE_FROM_SHLIBS = "1" | 2048 | EXCLUDE_FROM_SHLIBS = "1" |
2101 | 2049 | ||
@@ -2129,8 +2077,7 @@ system and gives an overview of their function and contents. | |||
2129 | The full package version specification as it appears on the final | 2077 | The full package version specification as it appears on the final |
2130 | packages produced by a recipe. The variable's value is normally used | 2078 | packages produced by a recipe. The variable's value is normally used |
2131 | to fix a runtime dependency to the exact same version of another | 2079 | to fix a runtime dependency to the exact same version of another |
2132 | package in the same recipe: | 2080 | package in the same recipe:: |
2133 | :: | ||
2134 | 2081 | ||
2135 | RDEPENDS_${PN}-additional-module = "${PN} (= ${EXTENDPKGV})" | 2082 | RDEPENDS_${PN}-additional-module = "${PN} (= ${EXTENDPKGV})" |
2136 | 2083 | ||
@@ -2230,8 +2177,7 @@ system and gives an overview of their function and contents. | |||
2230 | Specifies additional options for the image creation command that has | 2177 | Specifies additional options for the image creation command that has |
2231 | been specified in :term:`IMAGE_CMD`. When setting | 2178 | been specified in :term:`IMAGE_CMD`. When setting |
2232 | this variable, use an override for the associated image type. Here is | 2179 | this variable, use an override for the associated image type. Here is |
2233 | an example: | 2180 | an example:: |
2234 | :: | ||
2235 | 2181 | ||
2236 | EXTRA_IMAGECMD_ext3 ?= "-i 4096" | 2182 | EXTRA_IMAGECMD_ext3 ?= "-i 4096" |
2237 | 2183 | ||
@@ -2255,8 +2201,7 @@ system and gives an overview of their function and contents. | |||
2255 | added to the beginning of the environment variable ``PATH``. As an | 2201 | added to the beginning of the environment variable ``PATH``. As an |
2256 | example, the following prepends | 2202 | example, the following prepends |
2257 | "${STAGING_BINDIR_NATIVE}/foo:${STAGING_BINDIR_NATIVE}/bar:" to | 2203 | "${STAGING_BINDIR_NATIVE}/foo:${STAGING_BINDIR_NATIVE}/bar:" to |
2258 | ``PATH``: | 2204 | ``PATH``:: |
2259 | :: | ||
2260 | 2205 | ||
2261 | EXTRANATIVEPATH = "foo bar" | 2206 | EXTRANATIVEPATH = "foo bar" |
2262 | 2207 | ||
@@ -2294,8 +2239,7 @@ system and gives an overview of their function and contents. | |||
2294 | 2239 | ||
2295 | The set list of commands you can configure using the | 2240 | The set list of commands you can configure using the |
2296 | ``EXTRA_USERS_PARAMS`` is shown in the ``extrausers`` class. These | 2241 | ``EXTRA_USERS_PARAMS`` is shown in the ``extrausers`` class. These |
2297 | commands map to the normal Unix commands of the same names: | 2242 | commands map to the normal Unix commands of the same names:: |
2298 | :: | ||
2299 | 2243 | ||
2300 | # EXTRA_USERS_PARAMS = "\ | 2244 | # EXTRA_USERS_PARAMS = "\ |
2301 | # useradd -p '' tester; \ | 2245 | # useradd -p '' tester; \ |
@@ -2321,8 +2265,7 @@ system and gives an overview of their function and contents. | |||
2321 | Defines one or more packages to include in an image when a specific | 2265 | Defines one or more packages to include in an image when a specific |
2322 | item is included in :term:`IMAGE_FEATURES`. | 2266 | item is included in :term:`IMAGE_FEATURES`. |
2323 | When setting the value, ``FEATURE_PACKAGES`` should have the name of | 2267 | When setting the value, ``FEATURE_PACKAGES`` should have the name of |
2324 | the feature item as an override. Here is an example: | 2268 | the feature item as an override. Here is an example:: |
2325 | :: | ||
2326 | 2269 | ||
2327 | FEATURE_PACKAGES_widget = "package1 package2" | 2270 | FEATURE_PACKAGES_widget = "package1 package2" |
2328 | 2271 | ||
@@ -2342,8 +2285,7 @@ system and gives an overview of their function and contents. | |||
2342 | OPKG to support runtime package management of IPK packages. You set | 2285 | OPKG to support runtime package management of IPK packages. You set |
2343 | this variable in your ``local.conf`` file. | 2286 | this variable in your ``local.conf`` file. |
2344 | 2287 | ||
2345 | Consider the following example: | 2288 | Consider the following example:: |
2346 | :: | ||
2347 | 2289 | ||
2348 | FEED_DEPLOYDIR_BASE_URI = "http://192.168.7.1/BOARD-dir" | 2290 | FEED_DEPLOYDIR_BASE_URI = "http://192.168.7.1/BOARD-dir" |
2349 | 2291 | ||
@@ -2362,8 +2304,7 @@ system and gives an overview of their function and contents. | |||
2362 | To use the ``FILES`` variable, provide a package name override that | 2304 | To use the ``FILES`` variable, provide a package name override that |
2363 | identifies the resulting package. Then, provide a space-separated | 2305 | identifies the resulting package. Then, provide a space-separated |
2364 | list of files or paths that identify the files you want included as | 2306 | list of files or paths that identify the files you want included as |
2365 | part of the resulting package. Here is an example: | 2307 | part of the resulting package. Here is an example:: |
2366 | :: | ||
2367 | 2308 | ||
2368 | FILES_${PN} += "${bindir}/mydir1 ${bindir}/mydir2/myfile" | 2309 | FILES_${PN} += "${bindir}/mydir1 ${bindir}/mydir2/myfile" |
2369 | 2310 | ||
@@ -2398,8 +2339,7 @@ system and gives an overview of their function and contents. | |||
2398 | symbolic link (symlink) for shared libraries on the target platform. | 2339 | symbolic link (symlink) for shared libraries on the target platform. |
2399 | 2340 | ||
2400 | The following statement from the ``bitbake.conf`` shows how it is | 2341 | The following statement from the ``bitbake.conf`` shows how it is |
2401 | set: | 2342 | set:: |
2402 | :: | ||
2403 | 2343 | ||
2404 | FILES_SOLIBSDEV ?= "${base_libdir}/lib*${SOLIBSDEV} ${libdir}/lib*${SOLIBSDEV}" | 2344 | FILES_SOLIBSDEV ?= "${base_libdir}/lib*${SOLIBSDEV} ${libdir}/lib*${SOLIBSDEV}" |
2405 | 2345 | ||
@@ -2413,8 +2353,7 @@ system and gives an overview of their function and contents. | |||
2413 | 2353 | ||
2414 | Best practices dictate that you accomplish this by using | 2354 | Best practices dictate that you accomplish this by using |
2415 | ``FILESEXTRAPATHS`` from within a ``.bbappend`` file and that you | 2355 | ``FILESEXTRAPATHS`` from within a ``.bbappend`` file and that you |
2416 | prepend paths as follows: | 2356 | prepend paths as follows:: |
2417 | :: | ||
2418 | 2357 | ||
2419 | FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" | 2358 | FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" |
2420 | 2359 | ||
@@ -2436,8 +2375,7 @@ system and gives an overview of their function and contents. | |||
2436 | are directing BitBake to extend the path by prepending directories | 2375 | are directing BitBake to extend the path by prepending directories |
2437 | to the search path. | 2376 | to the search path. |
2438 | 2377 | ||
2439 | Here is another common use: | 2378 | Here is another common use:: |
2440 | :: | ||
2441 | 2379 | ||
2442 | FILESEXTRAPATHS_prepend := "${THISDIR}/files:" | 2380 | FILESEXTRAPATHS_prepend := "${THISDIR}/files:" |
2443 | 2381 | ||
@@ -2445,15 +2383,13 @@ system and gives an overview of their function and contents. | |||
2445 | ``FILESPATH`` variable to include a directory named ``files`` that is | 2383 | ``FILESPATH`` variable to include a directory named ``files`` that is |
2446 | in the same directory as the corresponding append file. | 2384 | in the same directory as the corresponding append file. |
2447 | 2385 | ||
2448 | This next example specifically adds three paths: | 2386 | This next example specifically adds three paths:: |
2449 | :: | ||
2450 | 2387 | ||
2451 | FILESEXTRAPATHS_prepend := "path_1:path_2:path_3:" | 2388 | FILESEXTRAPATHS_prepend := "path_1:path_2:path_3:" |
2452 | 2389 | ||
2453 | A final example shows how you can extend the search path and include | 2390 | A final example shows how you can extend the search path and include |
2454 | a :term:`MACHINE`-specific override, which is useful | 2391 | a :term:`MACHINE`-specific override, which is useful |
2455 | in a BSP layer: | 2392 | in a BSP layer:: |
2456 | :: | ||
2457 | 2393 | ||
2458 | FILESEXTRAPATHS_prepend_intel-x86-common := "${THISDIR}/${PN}:" | 2394 | FILESEXTRAPATHS_prepend_intel-x86-common := "${THISDIR}/${PN}:" |
2459 | 2395 | ||
@@ -2485,8 +2421,7 @@ system and gives an overview of their function and contents. | |||
2485 | ":ref:`bitbake:bitbake-user-manual/bitbake-user-manual-metadata:conditional syntax (overrides)`" | 2421 | ":ref:`bitbake:bitbake-user-manual/bitbake-user-manual-metadata:conditional syntax (overrides)`" |
2486 | section of the BitBake User Manual. | 2422 | section of the BitBake User Manual. |
2487 | 2423 | ||
2488 | By default, the ``FILESOVERRIDES`` variable is defined as: | 2424 | By default, the ``FILESOVERRIDES`` variable is defined as:: |
2489 | :: | ||
2490 | 2425 | ||
2491 | FILESOVERRIDES = "${TRANSLATED_TARGET_ARCH}:${MACHINEOVERRIDES}:${DISTROOVERRIDES}" | 2426 | FILESOVERRIDES = "${TRANSLATED_TARGET_ARCH}:${MACHINEOVERRIDES}:${DISTROOVERRIDES}" |
2492 | 2427 | ||
@@ -2507,8 +2442,7 @@ system and gives an overview of their function and contents. | |||
2507 | 2442 | ||
2508 | The default value for the ``FILESPATH`` variable is defined in the | 2443 | The default value for the ``FILESPATH`` variable is defined in the |
2509 | ``base.bbclass`` class found in ``meta/classes`` in the | 2444 | ``base.bbclass`` class found in ``meta/classes`` in the |
2510 | :term:`Source Directory`: | 2445 | :term:`Source Directory`:: |
2511 | :: | ||
2512 | 2446 | ||
2513 | FILESPATH = "${@base_set_filespath(["${FILE_DIRNAME}/${BP}", \ | 2447 | FILESPATH = "${@base_set_filespath(["${FILE_DIRNAME}/${BP}", \ |
2514 | "${FILE_DIRNAME}/${BPN}", "${FILE_DIRNAME}/files"], d)}" | 2448 | "${FILE_DIRNAME}/${BPN}", "${FILE_DIRNAME}/files"], d)}" |
@@ -2533,8 +2467,7 @@ system and gives an overview of their function and contents. | |||
2533 | 2467 | ||
2534 | You can take advantage of this searching behavior in useful ways. For | 2468 | You can take advantage of this searching behavior in useful ways. For |
2535 | example, consider a case where the following directory structure | 2469 | example, consider a case where the following directory structure |
2536 | exists for general and machine-specific configurations: | 2470 | exists for general and machine-specific configurations:: |
2537 | :: | ||
2538 | 2471 | ||
2539 | files/defconfig | 2472 | files/defconfig |
2540 | files/MACHINEA/defconfig | 2473 | files/MACHINEA/defconfig |
@@ -2662,16 +2595,14 @@ system and gives an overview of their function and contents. | |||
2662 | Programming (ROP) attacks much more difficult to execute. | 2595 | Programming (ROP) attacks much more difficult to execute. |
2663 | 2596 | ||
2664 | By default the ``security_flags.inc`` file enables PIE by setting the | 2597 | By default the ``security_flags.inc`` file enables PIE by setting the |
2665 | variable as follows: | 2598 | variable as follows:: |
2666 | :: | ||
2667 | 2599 | ||
2668 | GCCPIE ?= "--enable-default-pie" | 2600 | GCCPIE ?= "--enable-default-pie" |
2669 | 2601 | ||
2670 | :term:`GCCVERSION` | 2602 | :term:`GCCVERSION` |
2671 | Specifies the default version of the GNU C Compiler (GCC) used for | 2603 | Specifies the default version of the GNU C Compiler (GCC) used for |
2672 | compilation. By default, ``GCCVERSION`` is set to "8.x" in the | 2604 | compilation. By default, ``GCCVERSION`` is set to "8.x" in the |
2673 | ``meta/conf/distro/include/tcmode-default.inc`` include file: | 2605 | ``meta/conf/distro/include/tcmode-default.inc`` include file:: |
2674 | :: | ||
2675 | 2606 | ||
2676 | GCCVERSION ?= "8.%" | 2607 | GCCVERSION ?= "8.%" |
2677 | 2608 | ||
@@ -2706,8 +2637,7 @@ system and gives an overview of their function and contents. | |||
2706 | passed to the ``groupadd`` command if you wish to add a group to the | 2637 | passed to the ``groupadd`` command if you wish to add a group to the |
2707 | system when the package is installed. | 2638 | system when the package is installed. |
2708 | 2639 | ||
2709 | Here is an example from the ``dbus`` recipe: | 2640 | Here is an example from the ``dbus`` recipe:: |
2710 | :: | ||
2711 | 2641 | ||
2712 | GROUPADD_PARAM_${PN} = "-r netdev" | 2642 | GROUPADD_PARAM_${PN} = "-r netdev" |
2713 | 2643 | ||
@@ -2855,13 +2785,11 @@ system and gives an overview of their function and contents. | |||
2855 | section. | 2785 | section. |
2856 | 2786 | ||
2857 | Setting this variable to "1" in your ``local.conf`` disables the | 2787 | Setting this variable to "1" in your ``local.conf`` disables the |
2858 | function: | 2788 | function:: |
2859 | :: | ||
2860 | 2789 | ||
2861 | ICECC_DISABLED ??= "1" | 2790 | ICECC_DISABLED ??= "1" |
2862 | 2791 | ||
2863 | To enable the function, set the variable as follows: | 2792 | To enable the function, set the variable as follows:: |
2864 | :: | ||
2865 | 2793 | ||
2866 | ICECC_DISABLED = "" | 2794 | ICECC_DISABLED = "" |
2867 | 2795 | ||
@@ -2946,8 +2874,7 @@ system and gives an overview of their function and contents. | |||
2946 | installed name, separate it from the original name with a semi-colon | 2874 | installed name, separate it from the original name with a semi-colon |
2947 | (;). Source files need to be located in | 2875 | (;). Source files need to be located in |
2948 | :term:`DEPLOY_DIR_IMAGE`. Here are two | 2876 | :term:`DEPLOY_DIR_IMAGE`. Here are two |
2949 | examples: | 2877 | examples:: |
2950 | :: | ||
2951 | 2878 | ||
2952 | IMAGE_EFI_BOOT_FILES = "${KERNEL_IMAGETYPE};bz2" | 2879 | IMAGE_EFI_BOOT_FILES = "${KERNEL_IMAGETYPE};bz2" |
2953 | IMAGE_EFI_BOOT_FILES = "${KERNEL_IMAGETYPE} microcode.cpio" | 2880 | IMAGE_EFI_BOOT_FILES = "${KERNEL_IMAGETYPE} microcode.cpio" |
@@ -2956,8 +2883,7 @@ system and gives an overview of their function and contents. | |||
2956 | this case, the destination file must have the same name as the base | 2883 | this case, the destination file must have the same name as the base |
2957 | name of the source file path. To install files into a directory | 2884 | name of the source file path. To install files into a directory |
2958 | within the target location, pass its name after a semi-colon (;). | 2885 | within the target location, pass its name after a semi-colon (;). |
2959 | Here are two examples: | 2886 | Here are two examples:: |
2960 | :: | ||
2961 | 2887 | ||
2962 | IMAGE_EFI_BOOT_FILES = "boot/loader/*" | 2888 | IMAGE_EFI_BOOT_FILES = "boot/loader/*" |
2963 | IMAGE_EFI_BOOT_FILES = "boot/loader/*;boot/" | 2889 | IMAGE_EFI_BOOT_FILES = "boot/loader/*;boot/" |
@@ -2982,8 +2908,7 @@ system and gives an overview of their function and contents. | |||
2982 | installed name, separate it from the original name with a semi-colon | 2908 | installed name, separate it from the original name with a semi-colon |
2983 | (;). Source files need to be located in | 2909 | (;). Source files need to be located in |
2984 | :term:`DEPLOY_DIR_IMAGE`. Here are two | 2910 | :term:`DEPLOY_DIR_IMAGE`. Here are two |
2985 | examples: | 2911 | examples:: |
2986 | :: | ||
2987 | 2912 | ||
2988 | IMAGE_BOOT_FILES = "u-boot.img uImage;kernel" | 2913 | IMAGE_BOOT_FILES = "u-boot.img uImage;kernel" |
2989 | IMAGE_BOOT_FILES = "u-boot.${UBOOT_SUFFIX} ${KERNEL_IMAGETYPE}" | 2914 | IMAGE_BOOT_FILES = "u-boot.${UBOOT_SUFFIX} ${KERNEL_IMAGETYPE}" |
@@ -2992,8 +2917,7 @@ system and gives an overview of their function and contents. | |||
2992 | this case, the destination file must have the same name as the base | 2917 | this case, the destination file must have the same name as the base |
2993 | name of the source file path. To install files into a directory | 2918 | name of the source file path. To install files into a directory |
2994 | within the target location, pass its name after a semi-colon (;). | 2919 | within the target location, pass its name after a semi-colon (;). |
2995 | Here are two examples: | 2920 | Here are two examples:: |
2996 | :: | ||
2997 | 2921 | ||
2998 | IMAGE_BOOT_FILES = "bcm2835-bootfiles/*" | 2922 | IMAGE_BOOT_FILES = "bcm2835-bootfiles/*" |
2999 | IMAGE_BOOT_FILES = "bcm2835-bootfiles/*;boot/" | 2923 | IMAGE_BOOT_FILES = "bcm2835-bootfiles/*;boot/" |
@@ -3026,8 +2950,7 @@ system and gives an overview of their function and contents. | |||
3026 | type, which corresponds to the value set in | 2950 | type, which corresponds to the value set in |
3027 | :term:`IMAGE_FSTYPES`, (e.g. ``ext3``, | 2951 | :term:`IMAGE_FSTYPES`, (e.g. ``ext3``, |
3028 | ``btrfs``, and so forth). When setting this variable, you should use | 2952 | ``btrfs``, and so forth). When setting this variable, you should use |
3029 | an override for the associated type. Here is an example: | 2953 | an override for the associated type. Here is an example:: |
3030 | :: | ||
3031 | 2954 | ||
3032 | IMAGE_CMD_jffs2 = "mkfs.jffs2 --root=${IMAGE_ROOTFS} \ | 2955 | IMAGE_CMD_jffs2 = "mkfs.jffs2 --root=${IMAGE_ROOTFS} \ |
3033 | --faketime --output=${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.jffs2 \ | 2956 | --faketime --output=${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.jffs2 \ |
@@ -3071,8 +2994,7 @@ system and gives an overview of their function and contents. | |||
3071 | Specifies the formats the OpenEmbedded build system uses during the | 2994 | Specifies the formats the OpenEmbedded build system uses during the |
3072 | build when creating the root filesystem. For example, setting | 2995 | build when creating the root filesystem. For example, setting |
3073 | ``IMAGE_FSTYPES`` as follows causes the build system to create root | 2996 | ``IMAGE_FSTYPES`` as follows causes the build system to create root |
3074 | filesystems using two formats: ``.ext3`` and ``.tar.bz2``: | 2997 | filesystems using two formats: ``.ext3`` and ``.tar.bz2``:: |
3075 | :: | ||
3076 | 2998 | ||
3077 | IMAGE_FSTYPES = "ext3 tar.bz2" | 2999 | IMAGE_FSTYPES = "ext3 tar.bz2" |
3078 | 3000 | ||
@@ -3103,8 +3025,7 @@ system and gives an overview of their function and contents. | |||
3103 | auto-generated entries in ``IMAGE_INSTALL`` in addition to its | 3025 | auto-generated entries in ``IMAGE_INSTALL`` in addition to its |
3104 | default contents. | 3026 | default contents. |
3105 | 3027 | ||
3106 | When you use this variable, it is best to use it as follows: | 3028 | When you use this variable, it is best to use it as follows:: |
3107 | :: | ||
3108 | 3029 | ||
3109 | IMAGE_INSTALL_append = " package-name" | 3030 | IMAGE_INSTALL_append = " package-name" |
3110 | 3031 | ||
@@ -3147,8 +3068,7 @@ system and gives an overview of their function and contents. | |||
3147 | into separate packages. Setting the ``IMAGE_LINGUAS`` variable | 3068 | into separate packages. Setting the ``IMAGE_LINGUAS`` variable |
3148 | ensures that any locale packages that correspond to packages already | 3069 | ensures that any locale packages that correspond to packages already |
3149 | selected for installation into the image are also installed. Here is | 3070 | selected for installation into the image are also installed. Here is |
3150 | an example: | 3071 | an example:: |
3151 | :: | ||
3152 | 3072 | ||
3153 | IMAGE_LINGUAS = "pt-br de-de" | 3073 | IMAGE_LINGUAS = "pt-br de-de" |
3154 | 3074 | ||
@@ -3167,8 +3087,7 @@ system and gives an overview of their function and contents. | |||
3167 | The name of the output image symlink (which does not include | 3087 | The name of the output image symlink (which does not include |
3168 | the version part as :term:`IMAGE_NAME` does). The default value | 3088 | the version part as :term:`IMAGE_NAME` does). The default value |
3169 | is derived using the :term:`IMAGE_BASENAME` and :term:`MACHINE` | 3089 | is derived using the :term:`IMAGE_BASENAME` and :term:`MACHINE` |
3170 | variables: | 3090 | variables:: |
3171 | :: | ||
3172 | 3091 | ||
3173 | IMAGE_LINK_NAME ?= "${IMAGE_BASENAME}-${MACHINE}" | 3092 | IMAGE_LINK_NAME ?= "${IMAGE_BASENAME}-${MACHINE}" |
3174 | 3093 | ||
@@ -3176,14 +3095,12 @@ system and gives an overview of their function and contents. | |||
3176 | :term:`IMAGE_MANIFEST` | 3095 | :term:`IMAGE_MANIFEST` |
3177 | The manifest file for the image. This file lists all the installed | 3096 | The manifest file for the image. This file lists all the installed |
3178 | packages that make up the image. The file contains package | 3097 | packages that make up the image. The file contains package |
3179 | information on a line-per-package basis as follows: | 3098 | information on a line-per-package basis as follows:: |
3180 | :: | ||
3181 | 3099 | ||
3182 | packagename packagearch version | 3100 | packagename packagearch version |
3183 | 3101 | ||
3184 | The :ref:`image <ref-classes-image>` class defines the manifest | 3102 | The :ref:`image <ref-classes-image>` class defines the manifest |
3185 | file as follows: | 3103 | file as follows:: |
3186 | :: | ||
3187 | 3104 | ||
3188 | IMAGE_MANIFEST ="${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.manifest" | 3105 | IMAGE_MANIFEST ="${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.manifest" |
3189 | 3106 | ||
@@ -3197,8 +3114,7 @@ system and gives an overview of their function and contents. | |||
3197 | The name of the output image files minus the extension. This variable | 3114 | The name of the output image files minus the extension. This variable |
3198 | is derived using the :term:`IMAGE_BASENAME`, | 3115 | is derived using the :term:`IMAGE_BASENAME`, |
3199 | :term:`MACHINE`, and :term:`IMAGE_VERSION_SUFFIX` | 3116 | :term:`MACHINE`, and :term:`IMAGE_VERSION_SUFFIX` |
3200 | variables: | 3117 | variables:: |
3201 | :: | ||
3202 | 3118 | ||
3203 | IMAGE_NAME ?= "${IMAGE_BASENAME}-${MACHINE}${IMAGE_VERSION_SUFFIX}" | 3119 | IMAGE_NAME ?= "${IMAGE_BASENAME}-${MACHINE}${IMAGE_VERSION_SUFFIX}" |
3204 | 3120 | ||
@@ -3229,8 +3145,7 @@ system and gives an overview of their function and contents. | |||
3229 | to boot and allows for basic post installs while still leaving a | 3145 | to boot and allows for basic post installs while still leaving a |
3230 | small amount of free disk space. If 30% free space is inadequate, you | 3146 | small amount of free disk space. If 30% free space is inadequate, you |
3231 | can increase the default value. For example, the following setting | 3147 | can increase the default value. For example, the following setting |
3232 | gives you 50% free space added to the image: | 3148 | gives you 50% free space added to the image:: |
3233 | :: | ||
3234 | 3149 | ||
3235 | IMAGE_OVERHEAD_FACTOR = "1.5" | 3150 | IMAGE_OVERHEAD_FACTOR = "1.5" |
3236 | 3151 | ||
@@ -3271,8 +3186,7 @@ system and gives an overview of their function and contents. | |||
3271 | :term:`IMAGE_POSTPROCESS_COMMAND` | 3186 | :term:`IMAGE_POSTPROCESS_COMMAND` |
3272 | Specifies a list of functions to call once the OpenEmbedded build | 3187 | Specifies a list of functions to call once the OpenEmbedded build |
3273 | system creates the final image output files. You can specify | 3188 | system creates the final image output files. You can specify |
3274 | functions separated by semicolons: | 3189 | functions separated by semicolons:: |
3275 | :: | ||
3276 | 3190 | ||
3277 | IMAGE_POSTPROCESS_COMMAND += "function; ... " | 3191 | IMAGE_POSTPROCESS_COMMAND += "function; ... " |
3278 | 3192 | ||
@@ -3285,8 +3199,7 @@ system and gives an overview of their function and contents. | |||
3285 | :term:`IMAGE_PREPROCESS_COMMAND` | 3199 | :term:`IMAGE_PREPROCESS_COMMAND` |
3286 | Specifies a list of functions to call before the OpenEmbedded build | 3200 | Specifies a list of functions to call before the OpenEmbedded build |
3287 | system creates the final image output files. You can specify | 3201 | system creates the final image output files. You can specify |
3288 | functions separated by semicolons: | 3202 | functions separated by semicolons:: |
3289 | :: | ||
3290 | 3203 | ||
3291 | IMAGE_PREPROCESS_COMMAND += "function; ... " | 3204 | IMAGE_PREPROCESS_COMMAND += "function; ... " |
3292 | 3205 | ||
@@ -3317,14 +3230,12 @@ system and gives an overview of their function and contents. | |||
3317 | This variable is particularly useful when you want to ensure that a | 3230 | This variable is particularly useful when you want to ensure that a |
3318 | specific amount of free disk space is available on a device after an | 3231 | specific amount of free disk space is available on a device after an |
3319 | image is installed and running. For example, to be sure 5 Gbytes of | 3232 | image is installed and running. For example, to be sure 5 Gbytes of |
3320 | free disk space is available, set the variable as follows: | 3233 | free disk space is available, set the variable as follows:: |
3321 | :: | ||
3322 | 3234 | ||
3323 | IMAGE_ROOTFS_EXTRA_SPACE = "5242880" | 3235 | IMAGE_ROOTFS_EXTRA_SPACE = "5242880" |
3324 | 3236 | ||
3325 | For example, the Yocto Project Build Appliance specifically requests | 3237 | For example, the Yocto Project Build Appliance specifically requests |
3326 | 40 Gbytes of extra space with the line: | 3238 | 40 Gbytes of extra space with the line:: |
3327 | :: | ||
3328 | 3239 | ||
3329 | IMAGE_ROOTFS_EXTRA_SPACE = "41943040" | 3240 | IMAGE_ROOTFS_EXTRA_SPACE = "41943040" |
3330 | 3241 | ||
@@ -3335,8 +3246,7 @@ system and gives an overview of their function and contents. | |||
3335 | the generated image, a requested size for the image, and requested | 3246 | the generated image, a requested size for the image, and requested |
3336 | additional free disk space to be added to the image. Programatically, | 3247 | additional free disk space to be added to the image. Programatically, |
3337 | the build system determines the final size of the generated image as | 3248 | the build system determines the final size of the generated image as |
3338 | follows: | 3249 | follows:: |
3339 | :: | ||
3340 | 3250 | ||
3341 | if (image-du * overhead) < rootfs-size: | 3251 | if (image-du * overhead) < rootfs-size: |
3342 | internal-rootfs-size = rootfs-size + xspace | 3252 | internal-rootfs-size = rootfs-size + xspace |
@@ -3355,8 +3265,7 @@ system and gives an overview of their function and contents. | |||
3355 | 3265 | ||
3356 | :term:`IMAGE_TYPEDEP` | 3266 | :term:`IMAGE_TYPEDEP` |
3357 | Specifies a dependency from one image type on another. Here is an | 3267 | Specifies a dependency from one image type on another. Here is an |
3358 | example from the :ref:`image-live <ref-classes-image-live>` class: | 3268 | example from the :ref:`image-live <ref-classes-image-live>` class:: |
3359 | :: | ||
3360 | 3269 | ||
3361 | IMAGE_TYPEDEP_live = "ext3" | 3270 | IMAGE_TYPEDEP_live = "ext3" |
3362 | 3271 | ||
@@ -3443,8 +3352,7 @@ system and gives an overview of their function and contents. | |||
3443 | variable. Once the variable is defined in the ``include`` file, you | 3352 | variable. Once the variable is defined in the ``include`` file, you |
3444 | can use the variable to set the ``PR`` values in each recipe. You | 3353 | can use the variable to set the ``PR`` values in each recipe. You |
3445 | will notice that when you set a recipe's ``PR`` you can provide more | 3354 | will notice that when you set a recipe's ``PR`` you can provide more |
3446 | granular revisioning by appending values to the ``INC_PR`` variable: | 3355 | granular revisioning by appending values to the ``INC_PR`` variable:: |
3447 | :: | ||
3448 | 3356 | ||
3449 | recipes-graphics/xorg-font/xorg-font-common.inc:INC_PR = "r2" | 3357 | recipes-graphics/xorg-font/xorg-font-common.inc:INC_PR = "r2" |
3450 | recipes-graphics/xorg-font/encodings_1.0.4.bb:PR = "${INC_PR}.1" | 3358 | recipes-graphics/xorg-font/encodings_1.0.4.bb:PR = "${INC_PR}.1" |
@@ -3467,8 +3375,7 @@ system and gives an overview of their function and contents. | |||
3467 | .. note:: | 3375 | .. note:: |
3468 | 3376 | ||
3469 | This functionality is only regularly tested using the following | 3377 | This functionality is only regularly tested using the following |
3470 | setting: | 3378 | setting:: |
3471 | :: | ||
3472 | 3379 | ||
3473 | INCOMPATIBLE_LICENSE = "GPL-3.0 LGPL-3.0 AGPL-3.0" | 3380 | INCOMPATIBLE_LICENSE = "GPL-3.0 LGPL-3.0 AGPL-3.0" |
3474 | 3381 | ||
@@ -3482,8 +3389,7 @@ system and gives an overview of their function and contents. | |||
3482 | It is possible to define a list of licenses that are allowed to be | 3389 | It is possible to define a list of licenses that are allowed to be |
3483 | used instead of the licenses that are excluded. To do this, define | 3390 | used instead of the licenses that are excluded. To do this, define |
3484 | a variable ``COMPATIBLE_LICENSES`` with the names of the licenses | 3391 | a variable ``COMPATIBLE_LICENSES`` with the names of the licenses |
3485 | that are allowed. Then define ``INCOMPATIBLE_LICENSE`` as: | 3392 | that are allowed. Then define ``INCOMPATIBLE_LICENSE`` as:: |
3486 | :: | ||
3487 | 3393 | ||
3488 | INCOMPATIBLE_LICENSE = "${@' '.join(sorted(set(d.getVar('AVAILABLE_LICENSES').split()) - set(d.getVar('COMPATIBLE_LICENSES').split())))}" | 3394 | INCOMPATIBLE_LICENSE = "${@' '.join(sorted(set(d.getVar('AVAILABLE_LICENSES').split()) - set(d.getVar('COMPATIBLE_LICENSES').split())))}" |
3489 | 3395 | ||
@@ -3508,8 +3414,7 @@ system and gives an overview of their function and contents. | |||
3508 | unlikely that you want to edit this variable. | 3414 | unlikely that you want to edit this variable. |
3509 | 3415 | ||
3510 | The default value of the variable is set as follows in the | 3416 | The default value of the variable is set as follows in the |
3511 | ``meta/conf/distro/defaultsetup.conf`` file: | 3417 | ``meta/conf/distro/defaultsetup.conf`` file:: |
3512 | :: | ||
3513 | 3418 | ||
3514 | INHERIT_DISTRO ?= "debian devshell sstate license" | 3419 | INHERIT_DISTRO ?= "debian devshell sstate license" |
3515 | 3420 | ||
@@ -3533,8 +3438,7 @@ system and gives an overview of their function and contents. | |||
3533 | 3438 | ||
3534 | To prevent the build system from splitting out debug information | 3439 | To prevent the build system from splitting out debug information |
3535 | during packaging, set the ``INHIBIT_PACKAGE_DEBUG_SPLIT`` variable as | 3440 | during packaging, set the ``INHIBIT_PACKAGE_DEBUG_SPLIT`` variable as |
3536 | follows: | 3441 | follows:: |
3537 | :: | ||
3538 | 3442 | ||
3539 | INHIBIT_PACKAGE_DEBUG_SPLIT = "1" | 3443 | INHIBIT_PACKAGE_DEBUG_SPLIT = "1" |
3540 | 3444 | ||
@@ -3646,15 +3550,13 @@ system and gives an overview of their function and contents. | |||
3646 | 3550 | ||
3647 | Setting the variable to "1" in a configuration file causes the | 3551 | Setting the variable to "1" in a configuration file causes the |
3648 | OpenEmbedded build system to generate a kernel image with the | 3552 | OpenEmbedded build system to generate a kernel image with the |
3649 | initramfs specified in ``INITRAMFS_IMAGE`` bundled within: | 3553 | initramfs specified in ``INITRAMFS_IMAGE`` bundled within:: |
3650 | :: | ||
3651 | 3554 | ||
3652 | INITRAMFS_IMAGE_BUNDLE = "1" | 3555 | INITRAMFS_IMAGE_BUNDLE = "1" |
3653 | 3556 | ||
3654 | By default, the | 3557 | By default, the |
3655 | :ref:`kernel <ref-classes-kernel>` class sets this variable to a | 3558 | :ref:`kernel <ref-classes-kernel>` class sets this variable to a |
3656 | null string as follows: | 3559 | null string as follows:: |
3657 | :: | ||
3658 | 3560 | ||
3659 | INITRAMFS_IMAGE_BUNDLE ?= "" | 3561 | INITRAMFS_IMAGE_BUNDLE ?= "" |
3660 | 3562 | ||
@@ -3672,15 +3574,13 @@ system and gives an overview of their function and contents. | |||
3672 | :term:`INITRAMFS_LINK_NAME` | 3574 | :term:`INITRAMFS_LINK_NAME` |
3673 | The link name of the initial RAM filesystem image. This variable is | 3575 | The link name of the initial RAM filesystem image. This variable is |
3674 | set in the ``meta/classes/kernel-artifact-names.bbclass`` file as | 3576 | set in the ``meta/classes/kernel-artifact-names.bbclass`` file as |
3675 | follows: | 3577 | follows:: |
3676 | :: | ||
3677 | 3578 | ||
3678 | INITRAMFS_LINK_NAME ?= "initramfs-${KERNEL_ARTIFACT_LINK_NAME}" | 3579 | INITRAMFS_LINK_NAME ?= "initramfs-${KERNEL_ARTIFACT_LINK_NAME}" |
3679 | 3580 | ||
3680 | The value of the | 3581 | The value of the |
3681 | ``KERNEL_ARTIFACT_LINK_NAME`` variable, which is set in the same | 3582 | ``KERNEL_ARTIFACT_LINK_NAME`` variable, which is set in the same |
3682 | file, has the following value: | 3583 | file, has the following value:: |
3683 | :: | ||
3684 | 3584 | ||
3685 | KERNEL_ARTIFACT_LINK_NAME ?= "${MACHINE}" | 3585 | KERNEL_ARTIFACT_LINK_NAME ?= "${MACHINE}" |
3686 | 3586 | ||
@@ -3690,14 +3590,12 @@ system and gives an overview of their function and contents. | |||
3690 | :term:`INITRAMFS_NAME` | 3590 | :term:`INITRAMFS_NAME` |
3691 | The base name of the initial RAM filesystem image. This variable is | 3591 | The base name of the initial RAM filesystem image. This variable is |
3692 | set in the ``meta/classes/kernel-artifact-names.bbclass`` file as | 3592 | set in the ``meta/classes/kernel-artifact-names.bbclass`` file as |
3693 | follows: | 3593 | follows:: |
3694 | :: | ||
3695 | 3594 | ||
3696 | INITRAMFS_NAME ?= "initramfs-${KERNEL_ARTIFACT_NAME}" | 3595 | INITRAMFS_NAME ?= "initramfs-${KERNEL_ARTIFACT_NAME}" |
3697 | 3596 | ||
3698 | The value of the :term:`KERNEL_ARTIFACT_NAME` | 3597 | The value of the :term:`KERNEL_ARTIFACT_NAME` |
3699 | variable, which is set in the same file, has the following value: | 3598 | variable, which is set in the same file, has the following value:: |
3700 | :: | ||
3701 | 3599 | ||
3702 | KERNEL_ARTIFACT_NAME ?= "${PKGE}-${PKGV}-${PKGR}-${MACHINE}${IMAGE_VERSION_SUFFIX}" | 3600 | KERNEL_ARTIFACT_NAME ?= "${PKGE}-${PKGV}-${PKGR}-${MACHINE}${IMAGE_VERSION_SUFFIX}" |
3703 | 3601 | ||
@@ -3735,8 +3633,7 @@ system and gives an overview of their function and contents. | |||
3735 | variable. | 3633 | variable. |
3736 | 3634 | ||
3737 | :term:`INITSCRIPT_PARAMS` | 3635 | :term:`INITSCRIPT_PARAMS` |
3738 | Specifies the options to pass to ``update-rc.d``. Here is an example: | 3636 | Specifies the options to pass to ``update-rc.d``. Here is an example:: |
3739 | :: | ||
3740 | 3637 | ||
3741 | INITSCRIPT_PARAMS = "start 99 5 2 . stop 20 0 1 6 ." | 3638 | INITSCRIPT_PARAMS = "start 99 5 2 . stop 20 0 1 6 ." |
3742 | 3639 | ||
@@ -3756,8 +3653,7 @@ system and gives an overview of their function and contents. | |||
3756 | recipe. For example, to skip the check for symbolic link ``.so`` | 3653 | recipe. For example, to skip the check for symbolic link ``.so`` |
3757 | files in the main package of a recipe, add the following to the | 3654 | files in the main package of a recipe, add the following to the |
3758 | recipe. The package name override must be used, which in this example | 3655 | recipe. The package name override must be used, which in this example |
3759 | is ``${PN}``: | 3656 | is ``${PN}``:: |
3760 | :: | ||
3761 | 3657 | ||
3762 | INSANE_SKIP_${PN} += "dev-so" | 3658 | INSANE_SKIP_${PN} += "dev-so" |
3763 | 3659 | ||
@@ -3799,8 +3695,7 @@ system and gives an overview of their function and contents. | |||
3799 | kernel's append file. For example, if you are using the | 3695 | kernel's append file. For example, if you are using the |
3800 | ``linux-yocto_4.12`` kernel, the kernel recipe file is the | 3696 | ``linux-yocto_4.12`` kernel, the kernel recipe file is the |
3801 | ``meta/recipes-kernel/linux/linux-yocto_4.12.bb`` file. ``KBRANCH`` | 3697 | ``meta/recipes-kernel/linux/linux-yocto_4.12.bb`` file. ``KBRANCH`` |
3802 | is set as follows in that kernel recipe file: | 3698 | is set as follows in that kernel recipe file:: |
3803 | :: | ||
3804 | 3699 | ||
3805 | KBRANCH ?= "standard/base" | 3700 | KBRANCH ?= "standard/base" |
3806 | 3701 | ||
@@ -3812,8 +3707,7 @@ system and gives an overview of their function and contents. | |||
3812 | Beaglebone, EdgeRouter, and generic versions of both 32 and 64-bit IA | 3707 | Beaglebone, EdgeRouter, and generic versions of both 32 and 64-bit IA |
3813 | machines (``meta-yocto-bsp``) is named | 3708 | machines (``meta-yocto-bsp``) is named |
3814 | ``meta-yocto-bsp/recipes-kernel/linux/linux-yocto_4.12.bbappend``. | 3709 | ``meta-yocto-bsp/recipes-kernel/linux/linux-yocto_4.12.bbappend``. |
3815 | Here are the related statements from that append file: | 3710 | Here are the related statements from that append file:: |
3816 | :: | ||
3817 | 3711 | ||
3818 | KBRANCH_genericx86 = "standard/base" | 3712 | KBRANCH_genericx86 = "standard/base" |
3819 | KBRANCH_genericx86-64 = "standard/base" | 3713 | KBRANCH_genericx86-64 = "standard/base" |
@@ -3839,19 +3733,16 @@ system and gives an overview of their function and contents. | |||
3839 | ``defconfig`` file. | 3733 | ``defconfig`` file. |
3840 | 3734 | ||
3841 | To use the variable, set it in the append file for your kernel recipe | 3735 | To use the variable, set it in the append file for your kernel recipe |
3842 | using the following form: | 3736 | using the following form:: |
3843 | :: | ||
3844 | 3737 | ||
3845 | KBUILD_DEFCONFIG_KMACHINE ?= defconfig_file | 3738 | KBUILD_DEFCONFIG_KMACHINE ?= defconfig_file |
3846 | 3739 | ||
3847 | Here is an example from a "raspberrypi2" ``KMACHINE`` build that uses | 3740 | Here is an example from a "raspberrypi2" ``KMACHINE`` build that uses |
3848 | a ``defconfig`` file named "bcm2709_defconfig": | 3741 | a ``defconfig`` file named "bcm2709_defconfig":: |
3849 | :: | ||
3850 | 3742 | ||
3851 | KBUILD_DEFCONFIG_raspberrypi2 = "bcm2709_defconfig" | 3743 | KBUILD_DEFCONFIG_raspberrypi2 = "bcm2709_defconfig" |
3852 | 3744 | ||
3853 | As an alternative, you can use the following within your append file: | 3745 | As an alternative, you can use the following within your append file:: |
3854 | :: | ||
3855 | 3746 | ||
3856 | KBUILD_DEFCONFIG_pn-linux-yocto ?= defconfig_file | 3747 | KBUILD_DEFCONFIG_pn-linux-yocto ?= defconfig_file |
3857 | 3748 | ||
@@ -3872,8 +3763,7 @@ system and gives an overview of their function and contents. | |||
3872 | 3763 | ||
3873 | The value of ``KERNEL_ARTIFACT_NAME``, which is set in the | 3764 | The value of ``KERNEL_ARTIFACT_NAME``, which is set in the |
3874 | ``meta/classes/kernel-artifact-names.bbclass`` file, has the | 3765 | ``meta/classes/kernel-artifact-names.bbclass`` file, has the |
3875 | following default value: | 3766 | following default value:: |
3876 | :: | ||
3877 | 3767 | ||
3878 | KERNEL_ARTIFACT_NAME ?= "${PKGE}-${PKGV}-${PKGR}-${MACHINE}${IMAGE_VERSION_SUFFIX}" | 3768 | KERNEL_ARTIFACT_NAME ?= "${PKGE}-${PKGV}-${PKGR}-${MACHINE}${IMAGE_VERSION_SUFFIX}" |
3879 | 3769 | ||
@@ -3905,15 +3795,13 @@ system and gives an overview of their function and contents. | |||
3905 | :term:`KERNEL_DTB_LINK_NAME` | 3795 | :term:`KERNEL_DTB_LINK_NAME` |
3906 | The link name of the kernel device tree binary (DTB). This variable | 3796 | The link name of the kernel device tree binary (DTB). This variable |
3907 | is set in the ``meta/classes/kernel-artifact-names.bbclass`` file as | 3797 | is set in the ``meta/classes/kernel-artifact-names.bbclass`` file as |
3908 | follows: | 3798 | follows:: |
3909 | :: | ||
3910 | 3799 | ||
3911 | KERNEL_DTB_LINK_NAME ?= "${KERNEL_ARTIFACT_LINK_NAME}" | 3800 | KERNEL_DTB_LINK_NAME ?= "${KERNEL_ARTIFACT_LINK_NAME}" |
3912 | 3801 | ||
3913 | The | 3802 | The |
3914 | value of the ``KERNEL_ARTIFACT_LINK_NAME`` variable, which is set in | 3803 | value of the ``KERNEL_ARTIFACT_LINK_NAME`` variable, which is set in |
3915 | the same file, has the following value: | 3804 | the same file, has the following value:: |
3916 | :: | ||
3917 | 3805 | ||
3918 | KERNEL_ARTIFACT_LINK_NAME ?= "${MACHINE}" | 3806 | KERNEL_ARTIFACT_LINK_NAME ?= "${MACHINE}" |
3919 | 3807 | ||
@@ -3923,14 +3811,12 @@ system and gives an overview of their function and contents. | |||
3923 | :term:`KERNEL_DTB_NAME` | 3811 | :term:`KERNEL_DTB_NAME` |
3924 | The base name of the kernel device tree binary (DTB). This variable | 3812 | The base name of the kernel device tree binary (DTB). This variable |
3925 | is set in the ``meta/classes/kernel-artifact-names.bbclass`` file as | 3813 | is set in the ``meta/classes/kernel-artifact-names.bbclass`` file as |
3926 | follows: | 3814 | follows:: |
3927 | :: | ||
3928 | 3815 | ||
3929 | KERNEL_DTB_NAME ?= "${KERNEL_ARTIFACT_NAME}" | 3816 | KERNEL_DTB_NAME ?= "${KERNEL_ARTIFACT_NAME}" |
3930 | 3817 | ||
3931 | The value of the :term:`KERNEL_ARTIFACT_NAME` | 3818 | The value of the :term:`KERNEL_ARTIFACT_NAME` |
3932 | variable, which is set in the same file, has the following value: | 3819 | variable, which is set in the same file, has the following value:: |
3933 | :: | ||
3934 | 3820 | ||
3935 | KERNEL_ARTIFACT_NAME ?= "${PKGE}-${PKGV}-${PKGR}-${MACHINE}${IMAGE_VERSION_SUFFIX}" | 3821 | KERNEL_ARTIFACT_NAME ?= "${PKGE}-${PKGV}-${PKGR}-${MACHINE}${IMAGE_VERSION_SUFFIX}" |
3936 | 3822 | ||
@@ -3965,8 +3851,7 @@ system and gives an overview of their function and contents. | |||
3965 | For example, the following example from the ``linux-yocto-rt_4.12`` | 3851 | For example, the following example from the ``linux-yocto-rt_4.12`` |
3966 | kernel recipe adds "netfilter" and "taskstats" features to all BSPs | 3852 | kernel recipe adds "netfilter" and "taskstats" features to all BSPs |
3967 | as well as "virtio" configurations to all QEMU machines. The last two | 3853 | as well as "virtio" configurations to all QEMU machines. The last two |
3968 | statements add specific configurations to targeted machine types: | 3854 | statements add specific configurations to targeted machine types:: |
3969 | :: | ||
3970 | 3855 | ||
3971 | KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc features/taskstats/taskstats.scc" | 3856 | KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc features/taskstats/taskstats.scc" |
3972 | KERNEL_FEATURES_append = "${KERNEL_EXTRA_FEATURES}" | 3857 | KERNEL_FEATURES_append = "${KERNEL_EXTRA_FEATURES}" |
@@ -3977,15 +3862,13 @@ system and gives an overview of their function and contents. | |||
3977 | :term:`KERNEL_FIT_LINK_NAME` | 3862 | :term:`KERNEL_FIT_LINK_NAME` |
3978 | The link name of the kernel flattened image tree (FIT) image. This | 3863 | The link name of the kernel flattened image tree (FIT) image. This |
3979 | variable is set in the ``meta/classes/kernel-artifact-names.bbclass`` | 3864 | variable is set in the ``meta/classes/kernel-artifact-names.bbclass`` |
3980 | file as follows: | 3865 | file as follows:: |
3981 | :: | ||
3982 | 3866 | ||
3983 | KERNEL_FIT_LINK_NAME ?= "${KERNEL_ARTIFACT_LINK_NAME}" | 3867 | KERNEL_FIT_LINK_NAME ?= "${KERNEL_ARTIFACT_LINK_NAME}" |
3984 | 3868 | ||
3985 | The value of the | 3869 | The value of the |
3986 | ``KERNEL_ARTIFACT_LINK_NAME`` variable, which is set in the same | 3870 | ``KERNEL_ARTIFACT_LINK_NAME`` variable, which is set in the same |
3987 | file, has the following value: | 3871 | file, has the following value:: |
3988 | :: | ||
3989 | 3872 | ||
3990 | KERNEL_ARTIFACT_LINK_NAME ?= "${MACHINE}" | 3873 | KERNEL_ARTIFACT_LINK_NAME ?= "${MACHINE}" |
3991 | 3874 | ||
@@ -3995,28 +3878,24 @@ system and gives an overview of their function and contents. | |||
3995 | :term:`KERNEL_FIT_NAME` | 3878 | :term:`KERNEL_FIT_NAME` |
3996 | The base name of the kernel flattened image tree (FIT) image. This | 3879 | The base name of the kernel flattened image tree (FIT) image. This |
3997 | variable is set in the ``meta/classes/kernel-artifact-names.bbclass`` | 3880 | variable is set in the ``meta/classes/kernel-artifact-names.bbclass`` |
3998 | file as follows: | 3881 | file as follows:: |
3999 | :: | ||
4000 | 3882 | ||
4001 | KERNEL_FIT_NAME ?= "${KERNEL_ARTIFACT_NAME}" | 3883 | KERNEL_FIT_NAME ?= "${KERNEL_ARTIFACT_NAME}" |
4002 | 3884 | ||
4003 | The value of the :term:`KERNEL_ARTIFACT_NAME` | 3885 | The value of the :term:`KERNEL_ARTIFACT_NAME` |
4004 | variable, which is set in the same file, has the following value: | 3886 | variable, which is set in the same file, has the following value:: |
4005 | :: | ||
4006 | 3887 | ||
4007 | KERNEL_ARTIFACT_NAME ?= "${PKGE}-${PKGV}-${PKGR}-${MACHINE}${IMAGE_VERSION_SUFFIX}" | 3888 | KERNEL_ARTIFACT_NAME ?= "${PKGE}-${PKGV}-${PKGR}-${MACHINE}${IMAGE_VERSION_SUFFIX}" |
4008 | 3889 | ||
4009 | :term:`KERNEL_IMAGE_LINK_NAME` | 3890 | :term:`KERNEL_IMAGE_LINK_NAME` |
4010 | The link name for the kernel image. This variable is set in the | 3891 | The link name for the kernel image. This variable is set in the |
4011 | ``meta/classes/kernel-artifact-names.bbclass`` file as follows: | 3892 | ``meta/classes/kernel-artifact-names.bbclass`` file as follows:: |
4012 | :: | ||
4013 | 3893 | ||
4014 | KERNEL_IMAGE_LINK_NAME ?= "${KERNEL_ARTIFACT_LINK_NAME}" | 3894 | KERNEL_IMAGE_LINK_NAME ?= "${KERNEL_ARTIFACT_LINK_NAME}" |
4015 | 3895 | ||
4016 | The value of | 3896 | The value of |
4017 | the ``KERNEL_ARTIFACT_LINK_NAME`` variable, which is set in the same | 3897 | the ``KERNEL_ARTIFACT_LINK_NAME`` variable, which is set in the same |
4018 | file, has the following value: | 3898 | file, has the following value:: |
4019 | :: | ||
4020 | 3899 | ||
4021 | KERNEL_ARTIFACT_LINK_NAME ?= "${MACHINE}" | 3900 | KERNEL_ARTIFACT_LINK_NAME ?= "${MACHINE}" |
4022 | 3901 | ||
@@ -4038,15 +3917,13 @@ system and gives an overview of their function and contents. | |||
4038 | 3917 | ||
4039 | :term:`KERNEL_IMAGE_NAME` | 3918 | :term:`KERNEL_IMAGE_NAME` |
4040 | The base name of the kernel image. This variable is set in the | 3919 | The base name of the kernel image. This variable is set in the |
4041 | ``meta/classes/kernel-artifact-names.bbclass`` file as follows: | 3920 | ``meta/classes/kernel-artifact-names.bbclass`` file as follows:: |
4042 | :: | ||
4043 | 3921 | ||
4044 | KERNEL_IMAGE_NAME ?= "${KERNEL_ARTIFACT_NAME}" | 3922 | KERNEL_IMAGE_NAME ?= "${KERNEL_ARTIFACT_NAME}" |
4045 | 3923 | ||
4046 | The value of the | 3924 | The value of the |
4047 | :term:`KERNEL_ARTIFACT_NAME` variable, | 3925 | :term:`KERNEL_ARTIFACT_NAME` variable, |
4048 | which is set in the same file, has the following value: | 3926 | which is set in the same file, has the following value:: |
4049 | :: | ||
4050 | 3927 | ||
4051 | KERNEL_ARTIFACT_NAME ?= "${PKGE}-${PKGV}-${PKGR}-${MACHINE}${IMAGE_VERSION_SUFFIX}" | 3928 | KERNEL_ARTIFACT_NAME ?= "${PKGE}-${PKGV}-${PKGR}-${MACHINE}${IMAGE_VERSION_SUFFIX}" |
4052 | 3929 | ||
@@ -4074,8 +3951,7 @@ system and gives an overview of their function and contents. | |||
4074 | configuration file, an append file for the recipe, or the recipe | 3951 | configuration file, an append file for the recipe, or the recipe |
4075 | itself). | 3952 | itself). |
4076 | 3953 | ||
4077 | Specify it as follows: | 3954 | Specify it as follows:: |
4078 | :: | ||
4079 | 3955 | ||
4080 | KERNEL_MODULE_AUTOLOAD += "module_name1 module_name2 module_name3" | 3956 | KERNEL_MODULE_AUTOLOAD += "module_name1 module_name2 module_name3" |
4081 | 3957 | ||
@@ -4083,8 +3959,7 @@ system and gives an overview of their function and contents. | |||
4083 | system to populate the ``/etc/modules-load.d/modname.conf`` file with | 3959 | system to populate the ``/etc/modules-load.d/modname.conf`` file with |
4084 | the list of modules to be auto-loaded on boot. The modules appear | 3960 | the list of modules to be auto-loaded on boot. The modules appear |
4085 | one-per-line in the file. Here is an example of the most common use | 3961 | one-per-line in the file. Here is an example of the most common use |
4086 | case: | 3962 | case:: |
4087 | :: | ||
4088 | 3963 | ||
4089 | KERNEL_MODULE_AUTOLOAD += "module_name" | 3964 | KERNEL_MODULE_AUTOLOAD += "module_name" |
4090 | 3965 | ||
@@ -4146,8 +4021,7 @@ system and gives an overview of their function and contents. | |||
4146 | Provides a short description of a configuration fragment. You use | 4021 | Provides a short description of a configuration fragment. You use |
4147 | this variable in the ``.scc`` file that describes a configuration | 4022 | this variable in the ``.scc`` file that describes a configuration |
4148 | fragment file. Here is the variable used in a file named ``smp.scc`` | 4023 | fragment file. Here is the variable used in a file named ``smp.scc`` |
4149 | to describe SMP being enabled: | 4024 | to describe SMP being enabled:: |
4150 | :: | ||
4151 | 4025 | ||
4152 | define KFEATURE_DESCRIPTION "Enable SMP" | 4026 | define KFEATURE_DESCRIPTION "Enable SMP" |
4153 | 4027 | ||
@@ -4163,8 +4037,7 @@ system and gives an overview of their function and contents. | |||
4163 | 4037 | ||
4164 | These mappings between different names occur in the Yocto Linux | 4038 | These mappings between different names occur in the Yocto Linux |
4165 | Kernel's ``meta`` branch. As an example take a look in the | 4039 | Kernel's ``meta`` branch. As an example take a look in the |
4166 | ``common/recipes-kernel/linux/linux-yocto_3.19.bbappend`` file: | 4040 | ``common/recipes-kernel/linux/linux-yocto_3.19.bbappend`` file:: |
4167 | :: | ||
4168 | 4041 | ||
4169 | LINUX_VERSION_core2-32-intel-common = "3.19.0" | 4042 | LINUX_VERSION_core2-32-intel-common = "3.19.0" |
4170 | COMPATIBLE_MACHINE_core2-32-intel-common = "${MACHINE}" | 4043 | COMPATIBLE_MACHINE_core2-32-intel-common = "${MACHINE}" |
@@ -4202,8 +4075,7 @@ system and gives an overview of their function and contents. | |||
4202 | :term:`LAYERDEPENDS` | 4075 | :term:`LAYERDEPENDS` |
4203 | Lists the layers, separated by spaces, on which this recipe depends. | 4076 | Lists the layers, separated by spaces, on which this recipe depends. |
4204 | Optionally, you can specify a specific layer version for a dependency | 4077 | Optionally, you can specify a specific layer version for a dependency |
4205 | by adding it to the end of the layer name. Here is an example: | 4078 | by adding it to the end of the layer name. Here is an example:: |
4206 | :: | ||
4207 | 4079 | ||
4208 | LAYERDEPENDS_mylayer = "anotherlayer (=3)" | 4080 | LAYERDEPENDS_mylayer = "anotherlayer (=3)" |
4209 | 4081 | ||
@@ -4228,8 +4100,7 @@ system and gives an overview of their function and contents. | |||
4228 | 4100 | ||
4229 | Optionally, you can specify a specific layer version for a | 4101 | Optionally, you can specify a specific layer version for a |
4230 | recommendation by adding the version to the end of the layer name. | 4102 | recommendation by adding the version to the end of the layer name. |
4231 | Here is an example: | 4103 | Here is an example:: |
4232 | :: | ||
4233 | 4104 | ||
4234 | LAYERRECOMMENDS_mylayer = "anotherlayer (=3)" | 4105 | LAYERRECOMMENDS_mylayer = "anotherlayer (=3)" |
4235 | 4106 | ||
@@ -4253,8 +4124,7 @@ system and gives an overview of their function and contents. | |||
4253 | For the list, use the Yocto Project | 4124 | For the list, use the Yocto Project |
4254 | :yocto_wiki:`Release Name </Releases>` (e.g. | 4125 | :yocto_wiki:`Release Name </Releases>` (e.g. |
4255 | &DISTRO_NAME_NO_CAP;). To specify multiple OE-Core versions for the | 4126 | &DISTRO_NAME_NO_CAP;). To specify multiple OE-Core versions for the |
4256 | layer, use a space-separated list: | 4127 | layer, use a space-separated list:: |
4257 | :: | ||
4258 | 4128 | ||
4259 | LAYERSERIES_COMPAT_layer_root_name = "&DISTRO_NAME_NO_CAP; &DISTRO_NAME_NO_CAP_MINUS_ONE;" | 4129 | LAYERSERIES_COMPAT_layer_root_name = "&DISTRO_NAME_NO_CAP; &DISTRO_NAME_NO_CAP_MINUS_ONE;" |
4260 | 4130 | ||
@@ -4335,8 +4205,7 @@ system and gives an overview of their function and contents. | |||
4335 | :term:`SPDXLICENSEMAP` flag names defined in | 4205 | :term:`SPDXLICENSEMAP` flag names defined in |
4336 | ``meta/conf/licenses.conf``. | 4206 | ``meta/conf/licenses.conf``. |
4337 | 4207 | ||
4338 | Here are some examples: | 4208 | Here are some examples:: |
4339 | :: | ||
4340 | 4209 | ||
4341 | LICENSE = "LGPLv2.1 | GPLv3" | 4210 | LICENSE = "LGPLv2.1 | GPLv3" |
4342 | LICENSE = "MPL-1 & LGPLv2.1" | 4211 | LICENSE = "MPL-1 & LGPLv2.1" |
@@ -4353,8 +4222,7 @@ system and gives an overview of their function and contents. | |||
4353 | situations where components of the output have different licenses. | 4222 | situations where components of the output have different licenses. |
4354 | For example, a piece of software whose code is licensed under GPLv2 | 4223 | For example, a piece of software whose code is licensed under GPLv2 |
4355 | but has accompanying documentation licensed under the GNU Free | 4224 | but has accompanying documentation licensed under the GNU Free |
4356 | Documentation License 1.2 could be specified as follows: | 4225 | Documentation License 1.2 could be specified as follows:: |
4357 | :: | ||
4358 | 4226 | ||
4359 | LICENSE = "GFDL-1.2 & GPLv2" | 4227 | LICENSE = "GFDL-1.2 & GPLv2" |
4360 | LICENSE_${PN} = "GPLv2" | 4228 | LICENSE_${PN} = "GPLv2" |
@@ -4409,8 +4277,7 @@ system and gives an overview of their function and contents. | |||
4409 | OpenEmbedded build system uses ``COMMON_LICENSE_DIR`` to define the | 4277 | OpenEmbedded build system uses ``COMMON_LICENSE_DIR`` to define the |
4410 | directory that holds common license text used during the build. The | 4278 | directory that holds common license text used during the build. The |
4411 | ``LICENSE_PATH`` variable allows you to extend that location to other | 4279 | ``LICENSE_PATH`` variable allows you to extend that location to other |
4412 | areas that have additional licenses: | 4280 | areas that have additional licenses:: |
4413 | :: | ||
4414 | 4281 | ||
4415 | LICENSE_PATH += "path-to-additional-common-licenses" | 4282 | LICENSE_PATH += "path-to-additional-common-licenses" |
4416 | 4283 | ||
@@ -4434,14 +4301,12 @@ system and gives an overview of their function and contents. | |||
4434 | being built using the OpenEmbedded build system is based. You define | 4301 | being built using the OpenEmbedded build system is based. You define |
4435 | this variable in the kernel recipe. For example, the | 4302 | this variable in the kernel recipe. For example, the |
4436 | ``linux-yocto-3.4.bb`` kernel recipe found in | 4303 | ``linux-yocto-3.4.bb`` kernel recipe found in |
4437 | ``meta/recipes-kernel/linux`` defines the variables as follows: | 4304 | ``meta/recipes-kernel/linux`` defines the variables as follows:: |
4438 | :: | ||
4439 | 4305 | ||
4440 | LINUX_VERSION ?= "3.4.24" | 4306 | LINUX_VERSION ?= "3.4.24" |
4441 | 4307 | ||
4442 | The ``LINUX_VERSION`` variable is used to define :term:`PV` | 4308 | The ``LINUX_VERSION`` variable is used to define :term:`PV` |
4443 | for the recipe: | 4309 | for the recipe:: |
4444 | :: | ||
4445 | 4310 | ||
4446 | PV = "${LINUX_VERSION}+git${SRCPV}" | 4311 | PV = "${LINUX_VERSION}+git${SRCPV}" |
4447 | 4312 | ||
@@ -4449,16 +4314,14 @@ system and gives an overview of their function and contents. | |||
4449 | A string extension compiled into the version string of the Linux | 4314 | A string extension compiled into the version string of the Linux |
4450 | kernel built with the OpenEmbedded build system. You define this | 4315 | kernel built with the OpenEmbedded build system. You define this |
4451 | variable in the kernel recipe. For example, the linux-yocto kernel | 4316 | variable in the kernel recipe. For example, the linux-yocto kernel |
4452 | recipes all define the variable as follows: | 4317 | recipes all define the variable as follows:: |
4453 | :: | ||
4454 | 4318 | ||
4455 | LINUX_VERSION_EXTENSION ?= "-yocto-${LINUX_KERNEL_TYPE}" | 4319 | LINUX_VERSION_EXTENSION ?= "-yocto-${LINUX_KERNEL_TYPE}" |
4456 | 4320 | ||
4457 | Defining this variable essentially sets the Linux kernel | 4321 | Defining this variable essentially sets the Linux kernel |
4458 | configuration item ``CONFIG_LOCALVERSION``, which is visible through | 4322 | configuration item ``CONFIG_LOCALVERSION``, which is visible through |
4459 | the ``uname`` command. Here is an example that shows the extension | 4323 | the ``uname`` command. Here is an example that shows the extension |
4460 | assuming it was set as previously shown: | 4324 | assuming it was set as previously shown:: |
4461 | :: | ||
4462 | 4325 | ||
4463 | $ uname -r | 4326 | $ uname -r |
4464 | 3.7.0-rc8-custom | 4327 | 3.7.0-rc8-custom |
@@ -4475,8 +4338,7 @@ system and gives an overview of their function and contents. | |||
4475 | ``MACHINE`` in the ``local.conf`` file found in the | 4338 | ``MACHINE`` in the ``local.conf`` file found in the |
4476 | :term:`Build Directory`. By default, ``MACHINE`` is set to | 4339 | :term:`Build Directory`. By default, ``MACHINE`` is set to |
4477 | "qemux86", which is an x86-based architecture machine to be emulated | 4340 | "qemux86", which is an x86-based architecture machine to be emulated |
4478 | using QEMU: | 4341 | using QEMU:: |
4479 | :: | ||
4480 | 4342 | ||
4481 | MACHINE ?= "qemux86" | 4343 | MACHINE ?= "qemux86" |
4482 | 4344 | ||
@@ -4488,8 +4350,7 @@ system and gives an overview of their function and contents. | |||
4488 | ``meta/conf/machine``. | 4350 | ``meta/conf/machine``. |
4489 | 4351 | ||
4490 | The list of machines supported by the Yocto Project as shipped | 4352 | The list of machines supported by the Yocto Project as shipped |
4491 | include the following: | 4353 | include the following:: |
4492 | :: | ||
4493 | 4354 | ||
4494 | MACHINE ?= "qemuarm" | 4355 | MACHINE ?= "qemuarm" |
4495 | MACHINE ?= "qemuarm64" | 4356 | MACHINE ?= "qemuarm64" |
@@ -4535,8 +4396,7 @@ system and gives an overview of their function and contents. | |||
4535 | As an example, suppose the machine for which you are building | 4396 | As an example, suppose the machine for which you are building |
4536 | requires ``example-init`` to be run during boot to initialize the | 4397 | requires ``example-init`` to be run during boot to initialize the |
4537 | hardware. In this case, you would use the following in the machine's | 4398 | hardware. In this case, you would use the following in the machine's |
4538 | ``.conf`` configuration file: | 4399 | ``.conf`` configuration file:: |
4539 | :: | ||
4540 | 4400 | ||
4541 | MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "example-init" | 4401 | MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "example-init" |
4542 | 4402 | ||
@@ -4567,8 +4427,7 @@ system and gives an overview of their function and contents. | |||
4567 | "recommends" relationship so that in the latter case, the build will | 4427 | "recommends" relationship so that in the latter case, the build will |
4568 | not fail due to the missing package. To accomplish this, assuming the | 4428 | not fail due to the missing package. To accomplish this, assuming the |
4569 | package for the module was called ``kernel-module-ab123``, you would | 4429 | package for the module was called ``kernel-module-ab123``, you would |
4570 | use the following in the machine's ``.conf`` configuration file: | 4430 | use the following in the machine's ``.conf`` configuration file:: |
4571 | :: | ||
4572 | 4431 | ||
4573 | MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "kernel-module-ab123" | 4432 | MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "kernel-module-ab123" |
4574 | 4433 | ||
@@ -4604,8 +4463,7 @@ system and gives an overview of their function and contents. | |||
4604 | exist, so it is acceptable for the build process to depend upon | 4463 | exist, so it is acceptable for the build process to depend upon |
4605 | finding the package. In this case, assuming the package for the | 4464 | finding the package. In this case, assuming the package for the |
4606 | firmware was called ``wifidriver-firmware``, you would use the | 4465 | firmware was called ``wifidriver-firmware``, you would use the |
4607 | following in the ``.conf`` file for the machine: | 4466 | following in the ``.conf`` file for the machine:: |
4608 | :: | ||
4609 | 4467 | ||
4610 | MACHINE_EXTRA_RDEPENDS += "wifidriver-firmware" | 4468 | MACHINE_EXTRA_RDEPENDS += "wifidriver-firmware" |
4611 | 4469 | ||
@@ -4631,8 +4489,7 @@ system and gives an overview of their function and contents. | |||
4631 | the build to succeed instead of failing as a result of the package | 4489 | the build to succeed instead of failing as a result of the package |
4632 | not being found. To accomplish this, assuming the package for the | 4490 | not being found. To accomplish this, assuming the package for the |
4633 | module was called ``kernel-module-examplewifi``, you would use the | 4491 | module was called ``kernel-module-examplewifi``, you would use the |
4634 | following in the ``.conf`` file for the machine: | 4492 | following in the ``.conf`` file for the machine:: |
4635 | :: | ||
4636 | 4493 | ||
4637 | MACHINE_EXTRA_RRECOMMENDS += "kernel-module-examplewifi" | 4494 | MACHINE_EXTRA_RRECOMMENDS += "kernel-module-examplewifi" |
4638 | 4495 | ||
@@ -4671,16 +4528,14 @@ system and gives an overview of their function and contents. | |||
4671 | should apply to a machine. For example, all machines emulated in QEMU | 4528 | should apply to a machine. For example, all machines emulated in QEMU |
4672 | (e.g. ``qemuarm``, ``qemux86``, and so forth) include a file named | 4529 | (e.g. ``qemuarm``, ``qemux86``, and so forth) include a file named |
4673 | ``meta/conf/machine/include/qemu.inc`` that prepends the following | 4530 | ``meta/conf/machine/include/qemu.inc`` that prepends the following |
4674 | override to ``MACHINEOVERRIDES``: | 4531 | override to ``MACHINEOVERRIDES``:: |
4675 | :: | ||
4676 | 4532 | ||
4677 | MACHINEOVERRIDES =. "qemuall:" | 4533 | MACHINEOVERRIDES =. "qemuall:" |
4678 | 4534 | ||
4679 | This | 4535 | This |
4680 | override allows variables to be overridden for all machines emulated | 4536 | override allows variables to be overridden for all machines emulated |
4681 | in QEMU, like in the following example from the ``connman-conf`` | 4537 | in QEMU, like in the following example from the ``connman-conf`` |
4682 | recipe: | 4538 | recipe:: |
4683 | :: | ||
4684 | 4539 | ||
4685 | SRC_URI_append_qemuall = " file://wired.config \ | 4540 | SRC_URI_append_qemuall = " file://wired.config \ |
4686 | file://wired-setup \ | 4541 | file://wired-setup \ |
@@ -4734,27 +4589,23 @@ system and gives an overview of their function and contents. | |||
4734 | recipes by using :term:`DEPENDS`, then a dependency on | 4589 | recipes by using :term:`DEPENDS`, then a dependency on |
4735 | "foo" will automatically get rewritten to a dependency on | 4590 | "foo" will automatically get rewritten to a dependency on |
4736 | "nativesdk-foo". However, dependencies like the following will not | 4591 | "nativesdk-foo". However, dependencies like the following will not |
4737 | get rewritten automatically: | 4592 | get rewritten automatically:: |
4738 | :: | ||
4739 | 4593 | ||
4740 | do_foo[depends] += "recipe:do_foo" | 4594 | do_foo[depends] += "recipe:do_foo" |
4741 | 4595 | ||
4742 | If you want such a dependency to also get transformed, you can do the | 4596 | If you want such a dependency to also get transformed, you can do the |
4743 | following: | 4597 | following:: |
4744 | :: | ||
4745 | 4598 | ||
4746 | do_foo[depends] += "${MLPREFIX}recipe:do_foo" | 4599 | do_foo[depends] += "${MLPREFIX}recipe:do_foo" |
4747 | 4600 | ||
4748 | module_autoload | 4601 | module_autoload |
4749 | This variable has been replaced by the ``KERNEL_MODULE_AUTOLOAD`` | 4602 | This variable has been replaced by the ``KERNEL_MODULE_AUTOLOAD`` |
4750 | variable. You should replace all occurrences of ``module_autoload`` | 4603 | variable. You should replace all occurrences of ``module_autoload`` |
4751 | with additions to ``KERNEL_MODULE_AUTOLOAD``, for example: | 4604 | with additions to ``KERNEL_MODULE_AUTOLOAD``, for example:: |
4752 | :: | ||
4753 | 4605 | ||
4754 | module_autoload_rfcomm = "rfcomm" | 4606 | module_autoload_rfcomm = "rfcomm" |
4755 | 4607 | ||
4756 | should now be replaced with: | 4608 | should now be replaced with:: |
4757 | :: | ||
4758 | 4609 | ||
4759 | KERNEL_MODULE_AUTOLOAD += "rfcomm" | 4610 | KERNEL_MODULE_AUTOLOAD += "rfcomm" |
4760 | 4611 | ||
@@ -4773,8 +4624,7 @@ system and gives an overview of their function and contents. | |||
4773 | :term:`KERNEL_MODULE_AUTOLOAD` | 4624 | :term:`KERNEL_MODULE_AUTOLOAD` |
4774 | variable. | 4625 | variable. |
4775 | 4626 | ||
4776 | Here is the general syntax: | 4627 | Here is the general syntax:: |
4777 | :: | ||
4778 | 4628 | ||
4779 | module_conf_module_name = "modprobe.d-syntax" | 4629 | module_conf_module_name = "modprobe.d-syntax" |
4780 | 4630 | ||
@@ -4786,8 +4636,7 @@ system and gives an overview of their function and contents. | |||
4786 | Including ``module_conf`` causes the OpenEmbedded build system to | 4636 | Including ``module_conf`` causes the OpenEmbedded build system to |
4787 | populate the ``/etc/modprobe.d/modname.conf`` file with | 4637 | populate the ``/etc/modprobe.d/modname.conf`` file with |
4788 | ``modprobe.d`` syntax lines. Here is an example that adds the options | 4638 | ``modprobe.d`` syntax lines. Here is an example that adds the options |
4789 | ``arg1`` and ``arg2`` to a module named ``mymodule``: | 4639 | ``arg1`` and ``arg2`` to a module named ``mymodule``:: |
4790 | :: | ||
4791 | 4640 | ||
4792 | module_conf_mymodule = "options mymodule arg1=val1 arg2=val2" | 4641 | module_conf_mymodule = "options mymodule arg1=val1 arg2=val2" |
4793 | 4642 | ||
@@ -4801,15 +4650,13 @@ system and gives an overview of their function and contents. | |||
4801 | 4650 | ||
4802 | :term:`MODULE_TARBALL_LINK_NAME` | 4651 | :term:`MODULE_TARBALL_LINK_NAME` |
4803 | The link name of the kernel module tarball. This variable is set in | 4652 | The link name of the kernel module tarball. This variable is set in |
4804 | the ``meta/classes/kernel-artifact-names.bbclass`` file as follows: | 4653 | the ``meta/classes/kernel-artifact-names.bbclass`` file as follows:: |
4805 | :: | ||
4806 | 4654 | ||
4807 | MODULE_TARBALL_LINK_NAME ?= "${KERNEL_ARTIFACT_LINK_NAME}" | 4655 | MODULE_TARBALL_LINK_NAME ?= "${KERNEL_ARTIFACT_LINK_NAME}" |
4808 | 4656 | ||
4809 | The value | 4657 | The value |
4810 | of the ``KERNEL_ARTIFACT_LINK_NAME`` variable, which is set in the | 4658 | of the ``KERNEL_ARTIFACT_LINK_NAME`` variable, which is set in the |
4811 | same file, has the following value: | 4659 | same file, has the following value:: |
4812 | :: | ||
4813 | 4660 | ||
4814 | KERNEL_ARTIFACT_LINK_NAME ?= "${MACHINE}" | 4661 | KERNEL_ARTIFACT_LINK_NAME ?= "${MACHINE}" |
4815 | 4662 | ||
@@ -4817,14 +4664,12 @@ system and gives an overview of their function and contents. | |||
4817 | 4664 | ||
4818 | :term:`MODULE_TARBALL_NAME` | 4665 | :term:`MODULE_TARBALL_NAME` |
4819 | The base name of the kernel module tarball. This variable is set in | 4666 | The base name of the kernel module tarball. This variable is set in |
4820 | the ``meta/classes/kernel-artifact-names.bbclass`` file as follows: | 4667 | the ``meta/classes/kernel-artifact-names.bbclass`` file as follows:: |
4821 | :: | ||
4822 | 4668 | ||
4823 | MODULE_TARBALL_NAME ?= "${KERNEL_ARTIFACT_NAME}" | 4669 | MODULE_TARBALL_NAME ?= "${KERNEL_ARTIFACT_NAME}" |
4824 | 4670 | ||
4825 | The value of the :term:`KERNEL_ARTIFACT_NAME` variable, | 4671 | The value of the :term:`KERNEL_ARTIFACT_NAME` variable, |
4826 | which is set in the same file, has the following value: | 4672 | which is set in the same file, has the following value:: |
4827 | :: | ||
4828 | 4673 | ||
4829 | KERNEL_ARTIFACT_NAME ?= "${PKGE}-${PKGV}-${PKGR}-${MACHINE}${IMAGE_VERSION_SUFFIX}" | 4674 | KERNEL_ARTIFACT_NAME ?= "${PKGE}-${PKGV}-${PKGR}-${MACHINE}${IMAGE_VERSION_SUFFIX}" |
4830 | 4675 | ||
@@ -4834,8 +4679,7 @@ system and gives an overview of their function and contents. | |||
4834 | target systems to be put into different subdirectories of the same | 4679 | target systems to be put into different subdirectories of the same |
4835 | output directory. | 4680 | output directory. |
4836 | 4681 | ||
4837 | The default value of this variable is: | 4682 | The default value of this variable is:: |
4838 | :: | ||
4839 | 4683 | ||
4840 | ${PACKAGE_ARCH}${TARGET_VENDOR}-${TARGET_OS} | 4684 | ${PACKAGE_ARCH}${TARGET_VENDOR}-${TARGET_OS} |
4841 | 4685 | ||
@@ -4874,15 +4718,13 @@ system and gives an overview of their function and contents. | |||
4874 | not exist in common licenses. | 4718 | not exist in common licenses. |
4875 | 4719 | ||
4876 | The following example shows how to add ``NO_GENERIC_LICENSE`` to a | 4720 | The following example shows how to add ``NO_GENERIC_LICENSE`` to a |
4877 | recipe: | 4721 | recipe:: |
4878 | :: | ||
4879 | 4722 | ||
4880 | NO_GENERIC_LICENSE[license_name] = "license_file_in_fetched_source" | 4723 | NO_GENERIC_LICENSE[license_name] = "license_file_in_fetched_source" |
4881 | 4724 | ||
4882 | The following is an example that | 4725 | The following is an example that |
4883 | uses the ``LICENSE.Abilis.txt`` file as the license from the fetched | 4726 | uses the ``LICENSE.Abilis.txt`` file as the license from the fetched |
4884 | source: | 4727 | source:: |
4885 | :: | ||
4886 | 4728 | ||
4887 | NO_GENERIC_LICENSE[Firmware-Abilis] = "LICENSE.Abilis.txt" | 4729 | NO_GENERIC_LICENSE[Firmware-Abilis] = "LICENSE.Abilis.txt" |
4888 | 4730 | ||
@@ -4923,8 +4765,7 @@ system and gives an overview of their function and contents. | |||
4923 | Disables auto package from splitting ``.debug`` files. If a recipe | 4765 | Disables auto package from splitting ``.debug`` files. If a recipe |
4924 | requires ``FILES_${PN}-dbg`` to be set manually, the | 4766 | requires ``FILES_${PN}-dbg`` to be set manually, the |
4925 | ``NOAUTOPACKAGEDEBUG`` can be defined allowing you to define the | 4767 | ``NOAUTOPACKAGEDEBUG`` can be defined allowing you to define the |
4926 | content of the debug package. For example: | 4768 | content of the debug package. For example:: |
4927 | :: | ||
4928 | 4769 | ||
4929 | NOAUTOPACKAGEDEBUG = "1" | 4770 | NOAUTOPACKAGEDEBUG = "1" |
4930 | FILES_${PN}-dev = "${includedir}/${QT_DIR_NAME}/Qt/*" | 4771 | FILES_${PN}-dev = "${includedir}/${QT_DIR_NAME}/Qt/*" |
@@ -5016,8 +4857,7 @@ system and gives an overview of their function and contents. | |||
5016 | As an example, if the string "an-override" appears as an element in | 4857 | As an example, if the string "an-override" appears as an element in |
5017 | the colon-separated list in ``OVERRIDES``, then the following | 4858 | the colon-separated list in ``OVERRIDES``, then the following |
5018 | assignment will override ``FOO`` with the value "overridden" at the | 4859 | assignment will override ``FOO`` with the value "overridden" at the |
5019 | end of parsing: | 4860 | end of parsing:: |
5020 | :: | ||
5021 | 4861 | ||
5022 | FOO_an-override = "overridden" | 4862 | FOO_an-override = "overridden" |
5023 | 4863 | ||
@@ -5032,8 +4872,7 @@ system and gives an overview of their function and contents. | |||
5032 | :term:`DISTROOVERRIDES` variables. Another | 4872 | :term:`DISTROOVERRIDES` variables. Another |
5033 | important override included by default is ``pn-${PN}``. This override | 4873 | important override included by default is ``pn-${PN}``. This override |
5034 | allows variables to be set for a single recipe within configuration | 4874 | allows variables to be set for a single recipe within configuration |
5035 | (``.conf``) files. Here is an example: | 4875 | (``.conf``) files. Here is an example:: |
5036 | :: | ||
5037 | 4876 | ||
5038 | FOO_pn-myrecipe = "myrecipe-specific value" | 4877 | FOO_pn-myrecipe = "myrecipe-specific value" |
5039 | 4878 | ||
@@ -5045,8 +4884,7 @@ system and gives an overview of their function and contents. | |||
5045 | Project Development Tasks Manual for more information. | 4884 | Project Development Tasks Manual for more information. |
5046 | 4885 | ||
5047 | :term:`P` | 4886 | :term:`P` |
5048 | The recipe name and version. ``P`` is comprised of the following: | 4887 | The recipe name and version. ``P`` is comprised of the following:: |
5049 | :: | ||
5050 | 4888 | ||
5051 | ${PN}-${PV} | 4889 | ${PN}-${PV} |
5052 | 4890 | ||
@@ -5082,8 +4920,7 @@ system and gives an overview of their function and contents. | |||
5082 | However, if your recipe's output packages are built specific to the | 4920 | However, if your recipe's output packages are built specific to the |
5083 | target machine rather than generally for the architecture of the | 4921 | target machine rather than generally for the architecture of the |
5084 | machine, you should set ``PACKAGE_ARCH`` to the value of | 4922 | machine, you should set ``PACKAGE_ARCH`` to the value of |
5085 | :term:`MACHINE_ARCH` in the recipe as follows: | 4923 | :term:`MACHINE_ARCH` in the recipe as follows:: |
5086 | :: | ||
5087 | 4924 | ||
5088 | PACKAGE_ARCH = "${MACHINE_ARCH}" | 4925 | PACKAGE_ARCH = "${MACHINE_ARCH}" |
5089 | 4926 | ||
@@ -5119,8 +4956,7 @@ system and gives an overview of their function and contents. | |||
5119 | The build system uses only the first argument in the list as the | 4956 | The build system uses only the first argument in the list as the |
5120 | package manager when creating your image or SDK. However, packages | 4957 | package manager when creating your image or SDK. However, packages |
5121 | will be created using any additional packaging classes you specify. | 4958 | will be created using any additional packaging classes you specify. |
5122 | For example, if you use the following in your ``local.conf`` file: | 4959 | For example, if you use the following in your ``local.conf`` file:: |
5123 | :: | ||
5124 | 4960 | ||
5125 | PACKAGE_CLASSES ?= "package_ipk" | 4961 | PACKAGE_CLASSES ?= "package_ipk" |
5126 | 4962 | ||
@@ -5178,15 +5014,13 @@ system and gives an overview of their function and contents. | |||
5178 | 5014 | ||
5179 | :term:`PACKAGE_EXCLUDE` | 5015 | :term:`PACKAGE_EXCLUDE` |
5180 | Lists packages that should not be installed into an image. For | 5016 | Lists packages that should not be installed into an image. For |
5181 | example: | 5017 | example:: |
5182 | :: | ||
5183 | 5018 | ||
5184 | PACKAGE_EXCLUDE = "package_name package_name package_name ..." | 5019 | PACKAGE_EXCLUDE = "package_name package_name package_name ..." |
5185 | 5020 | ||
5186 | You can set this variable globally in your ``local.conf`` file or you | 5021 | You can set this variable globally in your ``local.conf`` file or you |
5187 | can attach it to a specific image recipe by using the recipe name | 5022 | can attach it to a specific image recipe by using the recipe name |
5188 | override: | 5023 | override:: |
5189 | :: | ||
5190 | 5024 | ||
5191 | PACKAGE_EXCLUDE_pn-target_image = "package_name" | 5025 | PACKAGE_EXCLUDE_pn-target_image = "package_name" |
5192 | 5026 | ||
@@ -5230,8 +5064,7 @@ system and gives an overview of their function and contents. | |||
5230 | 5064 | ||
5231 | Consider the following example where the ``PACKAGE_FEED_URIS``, | 5065 | Consider the following example where the ``PACKAGE_FEED_URIS``, |
5232 | ``PACKAGE_FEED_BASE_PATHS``, and ``PACKAGE_FEED_ARCHS`` variables are | 5066 | ``PACKAGE_FEED_BASE_PATHS``, and ``PACKAGE_FEED_ARCHS`` variables are |
5233 | defined in your ``local.conf`` file: | 5067 | defined in your ``local.conf`` file:: |
5234 | :: | ||
5235 | 5068 | ||
5236 | PACKAGE_FEED_URIS = "https://example.com/packagerepos/release \ | 5069 | PACKAGE_FEED_URIS = "https://example.com/packagerepos/release \ |
5237 | https://example.com/packagerepos/updates" | 5070 | https://example.com/packagerepos/updates" |
@@ -5260,8 +5093,7 @@ system and gives an overview of their function and contents. | |||
5260 | 5093 | ||
5261 | Consider the following example where the ``PACKAGE_FEED_URIS``, | 5094 | Consider the following example where the ``PACKAGE_FEED_URIS``, |
5262 | ``PACKAGE_FEED_BASE_PATHS``, and ``PACKAGE_FEED_ARCHS`` variables are | 5095 | ``PACKAGE_FEED_BASE_PATHS``, and ``PACKAGE_FEED_ARCHS`` variables are |
5263 | defined in your ``local.conf`` file: | 5096 | defined in your ``local.conf`` file:: |
5264 | :: | ||
5265 | 5097 | ||
5266 | PACKAGE_FEED_URIS = "https://example.com/packagerepos/release \ | 5098 | PACKAGE_FEED_URIS = "https://example.com/packagerepos/release \ |
5267 | https://example.com/packagerepos/updates" | 5099 | https://example.com/packagerepos/updates" |
@@ -5290,8 +5122,7 @@ system and gives an overview of their function and contents. | |||
5290 | 5122 | ||
5291 | Consider the following example where the ``PACKAGE_FEED_URIS``, | 5123 | Consider the following example where the ``PACKAGE_FEED_URIS``, |
5292 | ``PACKAGE_FEED_BASE_PATHS``, and ``PACKAGE_FEED_ARCHS`` variables are | 5124 | ``PACKAGE_FEED_BASE_PATHS``, and ``PACKAGE_FEED_ARCHS`` variables are |
5293 | defined in your ``local.conf`` file: | 5125 | defined in your ``local.conf`` file:: |
5294 | :: | ||
5295 | 5126 | ||
5296 | PACKAGE_FEED_URIS = "https://example.com/packagerepos/release \ | 5127 | PACKAGE_FEED_URIS = "https://example.com/packagerepos/release \ |
5297 | https://example.com/packagerepos/updates" | 5128 | https://example.com/packagerepos/updates" |
@@ -5356,8 +5187,7 @@ system and gives an overview of their function and contents. | |||
5356 | recipe on a per-recipe basis. ``PACKAGECONFIG`` blocks are defined in | 5187 | recipe on a per-recipe basis. ``PACKAGECONFIG`` blocks are defined in |
5357 | recipes when you specify features and then arguments that define | 5188 | recipes when you specify features and then arguments that define |
5358 | feature behaviors. Here is the basic block structure (broken over | 5189 | feature behaviors. Here is the basic block structure (broken over |
5359 | multiple lines for readability): | 5190 | multiple lines for readability):: |
5360 | :: | ||
5361 | 5191 | ||
5362 | PACKAGECONFIG ??= "f1 f2 f3 ..." | 5192 | PACKAGECONFIG ??= "f1 f2 f3 ..." |
5363 | PACKAGECONFIG[f1] = "\ | 5193 | PACKAGECONFIG[f1] = "\ |
@@ -5423,26 +5253,22 @@ system and gives an overview of their function and contents. | |||
5423 | - *Append file:* Create an append file named | 5253 | - *Append file:* Create an append file named |
5424 | recipename\ ``.bbappend`` in your layer and override the value of | 5254 | recipename\ ``.bbappend`` in your layer and override the value of |
5425 | ``PACKAGECONFIG``. You can either completely override the | 5255 | ``PACKAGECONFIG``. You can either completely override the |
5426 | variable: | 5256 | variable:: |
5427 | :: | ||
5428 | 5257 | ||
5429 | PACKAGECONFIG = "f4 f5" | 5258 | PACKAGECONFIG = "f4 f5" |
5430 | 5259 | ||
5431 | Or, you can just append the variable: | 5260 | Or, you can just append the variable:: |
5432 | :: | ||
5433 | 5261 | ||
5434 | PACKAGECONFIG_append = " f4" | 5262 | PACKAGECONFIG_append = " f4" |
5435 | 5263 | ||
5436 | - *Configuration file:* This method is identical to changing the | 5264 | - *Configuration file:* This method is identical to changing the |
5437 | block through an append file except you edit your ``local.conf`` | 5265 | block through an append file except you edit your ``local.conf`` |
5438 | or ``mydistro.conf`` file. As with append files previously | 5266 | or ``mydistro.conf`` file. As with append files previously |
5439 | described, you can either completely override the variable: | 5267 | described, you can either completely override the variable:: |
5440 | :: | ||
5441 | 5268 | ||
5442 | PACKAGECONFIG_pn-recipename = "f4 f5" | 5269 | PACKAGECONFIG_pn-recipename = "f4 f5" |
5443 | 5270 | ||
5444 | Or, you can just amend the variable: | 5271 | Or, you can just amend the variable:: |
5445 | :: | ||
5446 | 5272 | ||
5447 | PACKAGECONFIG_append_pn-recipename = " f4" | 5273 | PACKAGECONFIG_append_pn-recipename = " f4" |
5448 | 5274 | ||
@@ -5467,8 +5293,7 @@ system and gives an overview of their function and contents. | |||
5467 | 5293 | ||
5468 | :term:`PACKAGES` | 5294 | :term:`PACKAGES` |
5469 | The list of packages the recipe creates. The default value is the | 5295 | The list of packages the recipe creates. The default value is the |
5470 | following: | 5296 | following:: |
5471 | :: | ||
5472 | 5297 | ||
5473 | ${PN}-dbg ${PN}-staticdev ${PN}-dev ${PN}-doc ${PN}-locale ${PACKAGE_BEFORE_PN} ${PN} | 5298 | ${PN}-dbg ${PN}-staticdev ${PN}-dev ${PN}-doc ${PN}-locale ${PACKAGE_BEFORE_PN} ${PN} |
5474 | 5299 | ||
@@ -5594,8 +5419,7 @@ system and gives an overview of their function and contents. | |||
5594 | patched, it uses "patch". | 5419 | patched, it uses "patch". |
5595 | 5420 | ||
5596 | If you wish to use an alternative patching tool, set the variable in | 5421 | If you wish to use an alternative patching tool, set the variable in |
5597 | the recipe using one of the following: | 5422 | the recipe using one of the following:: |
5598 | :: | ||
5599 | 5423 | ||
5600 | PATCHTOOL = "patch" | 5424 | PATCHTOOL = "patch" |
5601 | PATCHTOOL = "quilt" | 5425 | PATCHTOOL = "quilt" |
@@ -5641,8 +5465,7 @@ system and gives an overview of their function and contents. | |||
5641 | :term:`PKGD` | 5465 | :term:`PKGD` |
5642 | Points to the destination directory for files to be packaged before | 5466 | Points to the destination directory for files to be packaged before |
5643 | they are split into individual packages. This directory defaults to | 5467 | they are split into individual packages. This directory defaults to |
5644 | the following: | 5468 | the following:: |
5645 | :: | ||
5646 | 5469 | ||
5647 | ${WORKDIR}/package | 5470 | ${WORKDIR}/package |
5648 | 5471 | ||
@@ -5654,8 +5477,7 @@ system and gives an overview of their function and contents. | |||
5654 | :ref:`ref-tasks-packagedata` task packages data | 5477 | :ref:`ref-tasks-packagedata` task packages data |
5655 | for each recipe and installs it into this temporary, shared area. | 5478 | for each recipe and installs it into this temporary, shared area. |
5656 | This directory defaults to the following, which you should not | 5479 | This directory defaults to the following, which you should not |
5657 | change: | 5480 | change:: |
5658 | :: | ||
5659 | 5481 | ||
5660 | ${STAGING_DIR_HOST}/pkgdata | 5482 | ${STAGING_DIR_HOST}/pkgdata |
5661 | 5483 | ||
@@ -5670,8 +5492,7 @@ system and gives an overview of their function and contents. | |||
5670 | :term:`PKGDEST` | 5492 | :term:`PKGDEST` |
5671 | Points to the parent directory for files to be packaged after they | 5493 | Points to the parent directory for files to be packaged after they |
5672 | have been split into individual packages. This directory defaults to | 5494 | have been split into individual packages. This directory defaults to |
5673 | the following: | 5495 | the following:: |
5674 | :: | ||
5675 | 5496 | ||
5676 | ${WORKDIR}/packages-split | 5497 | ${WORKDIR}/packages-split |
5677 | 5498 | ||
@@ -5682,8 +5503,7 @@ system and gives an overview of their function and contents. | |||
5682 | :term:`PKGDESTWORK` | 5503 | :term:`PKGDESTWORK` |
5683 | Points to a temporary work area where the | 5504 | Points to a temporary work area where the |
5684 | :ref:`ref-tasks-package` task saves package metadata. | 5505 | :ref:`ref-tasks-package` task saves package metadata. |
5685 | The ``PKGDESTWORK`` location defaults to the following: | 5506 | The ``PKGDESTWORK`` location defaults to the following:: |
5686 | :: | ||
5687 | 5507 | ||
5688 | ${WORKDIR}/pkgdata | 5508 | ${WORKDIR}/pkgdata |
5689 | 5509 | ||
@@ -5732,16 +5552,14 @@ system and gives an overview of their function and contents. | |||
5732 | 5552 | ||
5733 | To prevent a recipe from being built, use the ``PNBLACKLIST`` | 5553 | To prevent a recipe from being built, use the ``PNBLACKLIST`` |
5734 | variable in your ``local.conf`` file. Here is an example that | 5554 | variable in your ``local.conf`` file. Here is an example that |
5735 | prevents ``myrecipe`` from being built: | 5555 | prevents ``myrecipe`` from being built:: |
5736 | :: | ||
5737 | 5556 | ||
5738 | PNBLACKLIST[myrecipe] = "Not supported by our organization." | 5557 | PNBLACKLIST[myrecipe] = "Not supported by our organization." |
5739 | 5558 | ||
5740 | :term:`POPULATE_SDK_POST_HOST_COMMAND` | 5559 | :term:`POPULATE_SDK_POST_HOST_COMMAND` |
5741 | Specifies a list of functions to call once the OpenEmbedded build | 5560 | Specifies a list of functions to call once the OpenEmbedded build |
5742 | system has created the host part of the SDK. You can specify | 5561 | system has created the host part of the SDK. You can specify |
5743 | functions separated by semicolons: | 5562 | functions separated by semicolons:: |
5744 | :: | ||
5745 | 5563 | ||
5746 | POPULATE_SDK_POST_HOST_COMMAND += "function; ... " | 5564 | POPULATE_SDK_POST_HOST_COMMAND += "function; ... " |
5747 | 5565 | ||
@@ -5753,8 +5571,7 @@ system and gives an overview of their function and contents. | |||
5753 | :term:`POPULATE_SDK_POST_TARGET_COMMAND` | 5571 | :term:`POPULATE_SDK_POST_TARGET_COMMAND` |
5754 | Specifies a list of functions to call once the OpenEmbedded build | 5572 | Specifies a list of functions to call once the OpenEmbedded build |
5755 | system has created the target part of the SDK. You can specify | 5573 | system has created the target part of the SDK. You can specify |
5756 | functions separated by semicolons: | 5574 | functions separated by semicolons:: |
5757 | :: | ||
5758 | 5575 | ||
5759 | POPULATE_SDK_POST_TARGET_COMMAND += "function; ... " | 5576 | POPULATE_SDK_POST_TARGET_COMMAND += "function; ... " |
5760 | 5577 | ||
@@ -5804,8 +5621,7 @@ system and gives an overview of their function and contents. | |||
5804 | preferred provider). You should always suffix this variable with the | 5621 | preferred provider). You should always suffix this variable with the |
5805 | name of the provided item. And, you should define the variable using | 5622 | name of the provided item. And, you should define the variable using |
5806 | the preferred recipe's name (:term:`PN`). Here is a common | 5623 | the preferred recipe's name (:term:`PN`). Here is a common |
5807 | example: | 5624 | example:: |
5808 | :: | ||
5809 | 5625 | ||
5810 | PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto" | 5626 | PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto" |
5811 | 5627 | ||
@@ -5813,8 +5629,7 @@ system and gives an overview of their function and contents. | |||
5813 | The ``PREFERRED_PROVIDER`` variable is set with the name (``PN``) of | 5629 | The ``PREFERRED_PROVIDER`` variable is set with the name (``PN``) of |
5814 | the recipe you prefer to provide "virtual/kernel". | 5630 | the recipe you prefer to provide "virtual/kernel". |
5815 | 5631 | ||
5816 | Following are more examples: | 5632 | Following are more examples:: |
5817 | :: | ||
5818 | 5633 | ||
5819 | PREFERRED_PROVIDER_virtual/xserver = "xserver-xf86" | 5634 | PREFERRED_PROVIDER_virtual/xserver = "xserver-xf86" |
5820 | PREFERRED_PROVIDER_virtual/libgl ?= "mesa" | 5635 | PREFERRED_PROVIDER_virtual/libgl ?= "mesa" |
@@ -5842,8 +5657,7 @@ system and gives an overview of their function and contents. | |||
5842 | through the "``%``" character. You can use the character to match any | 5657 | through the "``%``" character. You can use the character to match any |
5843 | number of characters, which can be useful when specifying versions | 5658 | number of characters, which can be useful when specifying versions |
5844 | that contain long revision numbers that potentially change. Here are | 5659 | that contain long revision numbers that potentially change. Here are |
5845 | two examples: | 5660 | two examples:: |
5846 | :: | ||
5847 | 5661 | ||
5848 | PREFERRED_VERSION_python = "3.4.0" | 5662 | PREFERRED_VERSION_python = "3.4.0" |
5849 | PREFERRED_VERSION_linux-yocto = "5.0%" | 5663 | PREFERRED_VERSION_linux-yocto = "5.0%" |
@@ -5857,35 +5671,30 @@ system and gives an overview of their function and contents. | |||
5857 | The specified version is matched against :term:`PV`, which | 5671 | The specified version is matched against :term:`PV`, which |
5858 | does not necessarily match the version part of the recipe's filename. | 5672 | does not necessarily match the version part of the recipe's filename. |
5859 | For example, consider two recipes ``foo_1.2.bb`` and ``foo_git.bb`` | 5673 | For example, consider two recipes ``foo_1.2.bb`` and ``foo_git.bb`` |
5860 | where ``foo_git.bb`` contains the following assignment: | 5674 | where ``foo_git.bb`` contains the following assignment:: |
5861 | :: | ||
5862 | 5675 | ||
5863 | PV = "1.1+git${SRCPV}" | 5676 | PV = "1.1+git${SRCPV}" |
5864 | 5677 | ||
5865 | In this case, the correct way to select | 5678 | In this case, the correct way to select |
5866 | ``foo_git.bb`` is by using an assignment such as the following: | 5679 | ``foo_git.bb`` is by using an assignment such as the following:: |
5867 | :: | ||
5868 | 5680 | ||
5869 | PREFERRED_VERSION_foo = "1.1+git%" | 5681 | PREFERRED_VERSION_foo = "1.1+git%" |
5870 | 5682 | ||
5871 | Compare that previous example | 5683 | Compare that previous example |
5872 | against the following incorrect example, which does not work: | 5684 | against the following incorrect example, which does not work:: |
5873 | :: | ||
5874 | 5685 | ||
5875 | PREFERRED_VERSION_foo = "git" | 5686 | PREFERRED_VERSION_foo = "git" |
5876 | 5687 | ||
5877 | Sometimes the ``PREFERRED_VERSION`` variable can be set by | 5688 | Sometimes the ``PREFERRED_VERSION`` variable can be set by |
5878 | configuration files in a way that is hard to change. You can use | 5689 | configuration files in a way that is hard to change. You can use |
5879 | :term:`OVERRIDES` to set a machine-specific | 5690 | :term:`OVERRIDES` to set a machine-specific |
5880 | override. Here is an example: | 5691 | override. Here is an example:: |
5881 | :: | ||
5882 | 5692 | ||
5883 | PREFERRED_VERSION_linux-yocto_qemux86 = "5.0%" | 5693 | PREFERRED_VERSION_linux-yocto_qemux86 = "5.0%" |
5884 | 5694 | ||
5885 | Although not recommended, worst case, you can also use the | 5695 | Although not recommended, worst case, you can also use the |
5886 | "forcevariable" override, which is the strongest override possible. | 5696 | "forcevariable" override, which is the strongest override possible. |
5887 | Here is an example: | 5697 | Here is an example:: |
5888 | :: | ||
5889 | 5698 | ||
5890 | PREFERRED_VERSION_linux-yocto_forcevariable = "5.0%" | 5699 | PREFERRED_VERSION_linux-yocto_forcevariable = "5.0%" |
5891 | 5700 | ||
@@ -5913,8 +5722,7 @@ system and gives an overview of their function and contents. | |||
5913 | Typically, you could add a specific server for the build system to | 5722 | Typically, you could add a specific server for the build system to |
5914 | attempt before any others by adding something like the following to | 5723 | attempt before any others by adding something like the following to |
5915 | the ``local.conf`` configuration file in the | 5724 | the ``local.conf`` configuration file in the |
5916 | :term:`Build Directory`: | 5725 | :term:`Build Directory`:: |
5917 | :: | ||
5918 | 5726 | ||
5919 | PREMIRRORS_prepend = "\ | 5727 | PREMIRRORS_prepend = "\ |
5920 | git://.*/.* http://www.yoctoproject.org/sources/ \n \ | 5728 | git://.*/.* http://www.yoctoproject.org/sources/ \n \ |
@@ -5950,8 +5758,7 @@ system and gives an overview of their function and contents. | |||
5950 | standard version of the library. | 5758 | standard version of the library. |
5951 | 5759 | ||
5952 | Libraries specified in this variable should be specified by their | 5760 | Libraries specified in this variable should be specified by their |
5953 | file name. For example, from the Firefox recipe in meta-browser: | 5761 | file name. For example, from the Firefox recipe in meta-browser:: |
5954 | :: | ||
5955 | 5762 | ||
5956 | PRIVATE_LIBS = "libmozjs.so \ | 5763 | PRIVATE_LIBS = "libmozjs.so \ |
5957 | libxpcom.so \ | 5764 | libxpcom.so \ |
@@ -5975,8 +5782,7 @@ system and gives an overview of their function and contents. | |||
5975 | ``DEPENDS``. | 5782 | ``DEPENDS``. |
5976 | 5783 | ||
5977 | Consider the following example ``PROVIDES`` statement from the recipe | 5784 | Consider the following example ``PROVIDES`` statement from the recipe |
5978 | file ``eudev_3.2.9.bb``: | 5785 | file ``eudev_3.2.9.bb``:: |
5979 | :: | ||
5980 | 5786 | ||
5981 | PROVIDES += "udev" | 5787 | PROVIDES += "udev" |
5982 | 5788 | ||
@@ -6013,8 +5819,7 @@ system and gives an overview of their function and contents. | |||
6013 | the component that manages the ``/dev`` directory. | 5819 | the component that manages the ``/dev`` directory. |
6014 | 5820 | ||
6015 | Setting the "preferred provider" for runtime dependencies is as | 5821 | Setting the "preferred provider" for runtime dependencies is as |
6016 | simple as using the following assignment in a configuration file: | 5822 | simple as using the following assignment in a configuration file:: |
6017 | :: | ||
6018 | 5823 | ||
6019 | VIRTUAL-RUNTIME_dev_manager = "udev" | 5824 | VIRTUAL-RUNTIME_dev_manager = "udev" |
6020 | 5825 | ||
@@ -6024,8 +5829,7 @@ system and gives an overview of their function and contents. | |||
6024 | 5829 | ||
6025 | The ``conf/local.conf.sample.extended`` configuration file in the | 5830 | The ``conf/local.conf.sample.extended`` configuration file in the |
6026 | :term:`Source Directory` shows how the | 5831 | :term:`Source Directory` shows how the |
6027 | ``PRSERV_HOST`` variable is set: | 5832 | ``PRSERV_HOST`` variable is set:: |
6028 | :: | ||
6029 | 5833 | ||
6030 | PRSERV_HOST = "localhost:0" | 5834 | PRSERV_HOST = "localhost:0" |
6031 | 5835 | ||
@@ -6086,8 +5890,7 @@ system and gives an overview of their function and contents. | |||
6086 | OpenEmbedded build system automatically sets it for you. | 5890 | OpenEmbedded build system automatically sets it for you. |
6087 | 5891 | ||
6088 | The variable allows recipes to use common infrastructure such as the | 5892 | The variable allows recipes to use common infrastructure such as the |
6089 | following: | 5893 | following:: |
6090 | :: | ||
6091 | 5894 | ||
6092 | DEPENDS += "${PYTHON_PN}-native" | 5895 | DEPENDS += "${PYTHON_PN}-native" |
6093 | 5896 | ||
@@ -6102,8 +5905,7 @@ system and gives an overview of their function and contents. | |||
6102 | will not be installed if conflicting packages are not first removed. | 5905 | will not be installed if conflicting packages are not first removed. |
6103 | 5906 | ||
6104 | Like all package-controlling variables, you must always use them in | 5907 | Like all package-controlling variables, you must always use them in |
6105 | conjunction with a package name override. Here is an example: | 5908 | conjunction with a package name override. Here is an example:: |
6106 | :: | ||
6107 | 5909 | ||
6108 | RCONFLICTS_${PN} = "another_conflicting_package_name" | 5910 | RCONFLICTS_${PN} = "another_conflicting_package_name" |
6109 | 5911 | ||
@@ -6111,8 +5913,7 @@ system and gives an overview of their function and contents. | |||
6111 | specifying versioned dependencies. Although the syntax varies | 5913 | specifying versioned dependencies. Although the syntax varies |
6112 | depending on the packaging format, BitBake hides these differences | 5914 | depending on the packaging format, BitBake hides these differences |
6113 | from you. Here is the general syntax to specify versions with the | 5915 | from you. Here is the general syntax to specify versions with the |
6114 | ``RCONFLICTS`` variable: | 5916 | ``RCONFLICTS`` variable:: |
6115 | :: | ||
6116 | 5917 | ||
6117 | RCONFLICTS_${PN} = "package (operator version)" | 5918 | RCONFLICTS_${PN} = "package (operator version)" |
6118 | 5919 | ||
@@ -6125,8 +5926,7 @@ system and gives an overview of their function and contents. | |||
6125 | - >= | 5926 | - >= |
6126 | 5927 | ||
6127 | For example, the following sets up a dependency on version 1.2 or | 5928 | For example, the following sets up a dependency on version 1.2 or |
6128 | greater of the package ``foo``: | 5929 | greater of the package ``foo``:: |
6129 | :: | ||
6130 | 5930 | ||
6131 | RCONFLICTS_${PN} = "foo (>= 1.2)" | 5931 | RCONFLICTS_${PN} = "foo (>= 1.2)" |
6132 | 5932 | ||
@@ -6135,8 +5935,7 @@ system and gives an overview of their function and contents. | |||
6135 | packages that must be installed in order for the package to function | 5935 | packages that must be installed in order for the package to function |
6136 | correctly. As an example, the following assignment declares that the | 5936 | correctly. As an example, the following assignment declares that the |
6137 | package ``foo`` needs the packages ``bar`` and ``baz`` to be | 5937 | package ``foo`` needs the packages ``bar`` and ``baz`` to be |
6138 | installed: | 5938 | installed:: |
6139 | :: | ||
6140 | 5939 | ||
6141 | RDEPENDS_foo = "bar baz" | 5940 | RDEPENDS_foo = "bar baz" |
6142 | 5941 | ||
@@ -6177,8 +5976,7 @@ system and gives an overview of their function and contents. | |||
6177 | name (remember that a single recipe can build multiple packages). For | 5976 | name (remember that a single recipe can build multiple packages). For |
6178 | example, suppose you are building a development package that depends | 5977 | example, suppose you are building a development package that depends |
6179 | on the ``perl`` package. In this case, you would use the following | 5978 | on the ``perl`` package. In this case, you would use the following |
6180 | ``RDEPENDS`` statement: | 5979 | ``RDEPENDS`` statement:: |
6181 | :: | ||
6182 | 5980 | ||
6183 | RDEPENDS_${PN}-dev += "perl" | 5981 | RDEPENDS_${PN}-dev += "perl" |
6184 | 5982 | ||
@@ -6207,8 +6005,7 @@ system and gives an overview of their function and contents. | |||
6207 | specifying versioned dependencies. Although the syntax varies | 6005 | specifying versioned dependencies. Although the syntax varies |
6208 | depending on the packaging format, BitBake hides these differences | 6006 | depending on the packaging format, BitBake hides these differences |
6209 | from you. Here is the general syntax to specify versions with the | 6007 | from you. Here is the general syntax to specify versions with the |
6210 | ``RDEPENDS`` variable: | 6008 | ``RDEPENDS`` variable:: |
6211 | :: | ||
6212 | 6009 | ||
6213 | RDEPENDS_${PN} = "package (operator version)" | 6010 | RDEPENDS_${PN} = "package (operator version)" |
6214 | 6011 | ||
@@ -6228,8 +6025,7 @@ system and gives an overview of their function and contents. | |||
6228 | specification. | 6025 | specification. |
6229 | 6026 | ||
6230 | For example, the following sets up a dependency on version 1.2 or | 6027 | For example, the following sets up a dependency on version 1.2 or |
6231 | greater of the package ``foo``: | 6028 | greater of the package ``foo``:: |
6232 | :: | ||
6233 | 6029 | ||
6234 | RDEPENDS_${PN} = "foo (>= 1.2)" | 6030 | RDEPENDS_${PN} = "foo (>= 1.2)" |
6235 | 6031 | ||
@@ -6270,8 +6066,7 @@ system and gives an overview of their function and contents. | |||
6270 | 6066 | ||
6271 | :term:`ROOT_HOME` | 6067 | :term:`ROOT_HOME` |
6272 | Defines the root home directory. By default, this directory is set as | 6068 | Defines the root home directory. By default, this directory is set as |
6273 | follows in the BitBake configuration file: | 6069 | follows in the BitBake configuration file:: |
6274 | :: | ||
6275 | 6070 | ||
6276 | ROOT_HOME ??= "/home/root" | 6071 | ROOT_HOME ??= "/home/root" |
6277 | 6072 | ||
@@ -6284,8 +6079,7 @@ system and gives an overview of their function and contents. | |||
6284 | You can override the default by setting the variable in any layer or | 6079 | You can override the default by setting the variable in any layer or |
6285 | in the ``local.conf`` file. Because the default is set using a "weak" | 6080 | in the ``local.conf`` file. Because the default is set using a "weak" |
6286 | assignment (i.e. "??="), you can use either of the following forms to | 6081 | assignment (i.e. "??="), you can use either of the following forms to |
6287 | define your override: | 6082 | define your override:: |
6288 | :: | ||
6289 | 6083 | ||
6290 | ROOT_HOME = "/root" | 6084 | ROOT_HOME = "/root" |
6291 | ROOT_HOME ?= "/root" | 6085 | ROOT_HOME ?= "/root" |
@@ -6303,8 +6097,7 @@ system and gives an overview of their function and contents. | |||
6303 | :term:`ROOTFS_POSTINSTALL_COMMAND` | 6097 | :term:`ROOTFS_POSTINSTALL_COMMAND` |
6304 | Specifies a list of functions to call after the OpenEmbedded build | 6098 | Specifies a list of functions to call after the OpenEmbedded build |
6305 | system has installed packages. You can specify functions separated by | 6099 | system has installed packages. You can specify functions separated by |
6306 | semicolons: | 6100 | semicolons:: |
6307 | :: | ||
6308 | 6101 | ||
6309 | ROOTFS_POSTINSTALL_COMMAND += "function; ... " | 6102 | ROOTFS_POSTINSTALL_COMMAND += "function; ... " |
6310 | 6103 | ||
@@ -6317,8 +6110,7 @@ system and gives an overview of their function and contents. | |||
6317 | :term:`ROOTFS_POSTPROCESS_COMMAND` | 6110 | :term:`ROOTFS_POSTPROCESS_COMMAND` |
6318 | Specifies a list of functions to call once the OpenEmbedded build | 6111 | Specifies a list of functions to call once the OpenEmbedded build |
6319 | system has created the root filesystem. You can specify functions | 6112 | system has created the root filesystem. You can specify functions |
6320 | separated by semicolons: | 6113 | separated by semicolons:: |
6321 | :: | ||
6322 | 6114 | ||
6323 | ROOTFS_POSTPROCESS_COMMAND += "function; ... " | 6115 | ROOTFS_POSTPROCESS_COMMAND += "function; ... " |
6324 | 6116 | ||
@@ -6333,8 +6125,7 @@ system and gives an overview of their function and contents. | |||
6333 | system has removed unnecessary packages. When runtime package | 6125 | system has removed unnecessary packages. When runtime package |
6334 | management is disabled in the image, several packages are removed | 6126 | management is disabled in the image, several packages are removed |
6335 | including ``base-passwd``, ``shadow``, and ``update-alternatives``. | 6127 | including ``base-passwd``, ``shadow``, and ``update-alternatives``. |
6336 | You can specify functions separated by semicolons: | 6128 | You can specify functions separated by semicolons:: |
6337 | :: | ||
6338 | 6129 | ||
6339 | ROOTFS_POSTUNINSTALL_COMMAND += "function; ... " | 6130 | ROOTFS_POSTUNINSTALL_COMMAND += "function; ... " |
6340 | 6131 | ||
@@ -6347,8 +6138,7 @@ system and gives an overview of their function and contents. | |||
6347 | :term:`ROOTFS_PREPROCESS_COMMAND` | 6138 | :term:`ROOTFS_PREPROCESS_COMMAND` |
6348 | Specifies a list of functions to call before the OpenEmbedded build | 6139 | Specifies a list of functions to call before the OpenEmbedded build |
6349 | system has created the root filesystem. You can specify functions | 6140 | system has created the root filesystem. You can specify functions |
6350 | separated by semicolons: | 6141 | separated by semicolons:: |
6351 | :: | ||
6352 | 6142 | ||
6353 | ROOTFS_PREPROCESS_COMMAND += "function; ... " | 6143 | ROOTFS_PREPROCESS_COMMAND += "function; ... " |
6354 | 6144 | ||
@@ -6370,8 +6160,7 @@ system and gives an overview of their function and contents. | |||
6370 | 6160 | ||
6371 | As with all package-controlling variables, you must always use the | 6161 | As with all package-controlling variables, you must always use the |
6372 | variable in conjunction with a package name override. Here is an | 6162 | variable in conjunction with a package name override. Here is an |
6373 | example: | 6163 | example:: |
6374 | :: | ||
6375 | 6164 | ||
6376 | RPROVIDES_${PN} = "widget-abi-2" | 6165 | RPROVIDES_${PN} = "widget-abi-2" |
6377 | 6166 | ||
@@ -6402,8 +6191,7 @@ system and gives an overview of their function and contents. | |||
6402 | particular package whose usability is being extended. For example, | 6191 | particular package whose usability is being extended. For example, |
6403 | suppose you are building a development package that is extended to | 6192 | suppose you are building a development package that is extended to |
6404 | support wireless functionality. In this case, you would use the | 6193 | support wireless functionality. In this case, you would use the |
6405 | following: | 6194 | following:: |
6406 | :: | ||
6407 | 6195 | ||
6408 | RRECOMMENDS_${PN}-dev += "wireless_package_name" | 6196 | RRECOMMENDS_${PN}-dev += "wireless_package_name" |
6409 | 6197 | ||
@@ -6416,8 +6204,7 @@ system and gives an overview of their function and contents. | |||
6416 | specifying versioned recommends. Although the syntax varies depending | 6204 | specifying versioned recommends. Although the syntax varies depending |
6417 | on the packaging format, BitBake hides these differences from you. | 6205 | on the packaging format, BitBake hides these differences from you. |
6418 | Here is the general syntax to specify versions with the | 6206 | Here is the general syntax to specify versions with the |
6419 | ``RRECOMMENDS`` variable: | 6207 | ``RRECOMMENDS`` variable:: |
6420 | :: | ||
6421 | 6208 | ||
6422 | RRECOMMENDS_${PN} = "package (operator version)" | 6209 | RRECOMMENDS_${PN} = "package (operator version)" |
6423 | 6210 | ||
@@ -6430,8 +6217,7 @@ system and gives an overview of their function and contents. | |||
6430 | - >= | 6217 | - >= |
6431 | 6218 | ||
6432 | For example, the following sets up a recommend on version 1.2 or | 6219 | For example, the following sets up a recommend on version 1.2 or |
6433 | greater of the package ``foo``: | 6220 | greater of the package ``foo``:: |
6434 | :: | ||
6435 | 6221 | ||
6436 | RRECOMMENDS_${PN} = "foo (>= 1.2)" | 6222 | RRECOMMENDS_${PN} = "foo (>= 1.2)" |
6437 | 6223 | ||
@@ -6443,8 +6229,7 @@ system and gives an overview of their function and contents. | |||
6443 | the other package to the ``RCONFLICTS`` variable. | 6229 | the other package to the ``RCONFLICTS`` variable. |
6444 | 6230 | ||
6445 | As with all package-controlling variables, you must use this variable | 6231 | As with all package-controlling variables, you must use this variable |
6446 | in conjunction with a package name override. Here is an example: | 6232 | in conjunction with a package name override. Here is an example:: |
6447 | :: | ||
6448 | 6233 | ||
6449 | RREPLACES_${PN} = "other_package_being_replaced" | 6234 | RREPLACES_${PN} = "other_package_being_replaced" |
6450 | 6235 | ||
@@ -6452,8 +6237,7 @@ system and gives an overview of their function and contents. | |||
6452 | specifying versioned replacements. Although the syntax varies | 6237 | specifying versioned replacements. Although the syntax varies |
6453 | depending on the packaging format, BitBake hides these differences | 6238 | depending on the packaging format, BitBake hides these differences |
6454 | from you. Here is the general syntax to specify versions with the | 6239 | from you. Here is the general syntax to specify versions with the |
6455 | ``RREPLACES`` variable: | 6240 | ``RREPLACES`` variable:: |
6456 | :: | ||
6457 | 6241 | ||
6458 | RREPLACES_${PN} = "package (operator version)" | 6242 | RREPLACES_${PN} = "package (operator version)" |
6459 | 6243 | ||
@@ -6466,8 +6250,7 @@ system and gives an overview of their function and contents. | |||
6466 | - >= | 6250 | - >= |
6467 | 6251 | ||
6468 | For example, the following sets up a replacement using version 1.2 | 6252 | For example, the following sets up a replacement using version 1.2 |
6469 | or greater of the package ``foo``: | 6253 | or greater of the package ``foo``:: |
6470 | :: | ||
6471 | 6254 | ||
6472 | RREPLACES_${PN} = "foo (>= 1.2)" | 6255 | RREPLACES_${PN} = "foo (>= 1.2)" |
6473 | 6256 | ||
@@ -6478,8 +6261,7 @@ system and gives an overview of their function and contents. | |||
6478 | 6261 | ||
6479 | As with all package-controlling variables, you must always use this | 6262 | As with all package-controlling variables, you must always use this |
6480 | variable in conjunction with a package name override. Here is an | 6263 | variable in conjunction with a package name override. Here is an |
6481 | example: | 6264 | example:: |
6482 | :: | ||
6483 | 6265 | ||
6484 | RSUGGESTS_${PN} = "useful_package another_package" | 6266 | RSUGGESTS_${PN} = "useful_package another_package" |
6485 | 6267 | ||
@@ -6497,8 +6279,7 @@ system and gives an overview of their function and contents. | |||
6497 | As an example, assume a :term:`Source Directory` | 6279 | As an example, assume a :term:`Source Directory` |
6498 | top-level folder named ``poky`` and a default Build Directory at | 6280 | top-level folder named ``poky`` and a default Build Directory at |
6499 | ``poky/build``. In this case, the work directory the build system | 6281 | ``poky/build``. In this case, the work directory the build system |
6500 | uses to keep the unpacked recipe for ``db`` is the following: | 6282 | uses to keep the unpacked recipe for ``db`` is the following:: |
6501 | :: | ||
6502 | 6283 | ||
6503 | poky/build/tmp/work/qemux86-poky-linux/db/5.1.19-r3/db-5.1.19 | 6284 | poky/build/tmp/work/qemux86-poky-linux/db/5.1.19-r3/db-5.1.19 |
6504 | 6285 | ||
@@ -6508,8 +6289,7 @@ system and gives an overview of their function and contents. | |||
6508 | repositories are cloned to ``${WORKDIR}/git`` during | 6289 | repositories are cloned to ``${WORKDIR}/git`` during |
6509 | :ref:`ref-tasks-fetch`. Since this path is different | 6290 | :ref:`ref-tasks-fetch`. Since this path is different |
6510 | from the default value of ``S``, you must set it specifically so the | 6291 | from the default value of ``S``, you must set it specifically so the |
6511 | source can be located: | 6292 | source can be located:: |
6512 | :: | ||
6513 | 6293 | ||
6514 | SRC_URI = "git://path/to/repo.git" | 6294 | SRC_URI = "git://path/to/repo.git" |
6515 | S = "${WORKDIR}/git" | 6295 | S = "${WORKDIR}/git" |
@@ -6544,8 +6324,7 @@ system and gives an overview of their function and contents. | |||
6544 | The directory set up and used by the | 6324 | The directory set up and used by the |
6545 | :ref:`populate_sdk_base <ref-classes-populate-sdk>` class to which | 6325 | :ref:`populate_sdk_base <ref-classes-populate-sdk>` class to which |
6546 | the SDK is deployed. The ``populate_sdk_base`` class defines | 6326 | the SDK is deployed. The ``populate_sdk_base`` class defines |
6547 | ``SDK_DEPLOY`` as follows: | 6327 | ``SDK_DEPLOY`` as follows:: |
6548 | :: | ||
6549 | 6328 | ||
6550 | SDK_DEPLOY = "${TMPDIR}/deploy/sdk" | 6329 | SDK_DEPLOY = "${TMPDIR}/deploy/sdk" |
6551 | 6330 | ||
@@ -6553,8 +6332,7 @@ system and gives an overview of their function and contents. | |||
6553 | The parent directory used by the OpenEmbedded build system when | 6332 | The parent directory used by the OpenEmbedded build system when |
6554 | creating SDK output. The | 6333 | creating SDK output. The |
6555 | :ref:`populate_sdk_base <ref-classes-populate-sdk-*>` class defines | 6334 | :ref:`populate_sdk_base <ref-classes-populate-sdk-*>` class defines |
6556 | the variable as follows: | 6335 | the variable as follows:: |
6557 | :: | ||
6558 | 6336 | ||
6559 | SDK_DIR = "${WORKDIR}/sdk" | 6337 | SDK_DIR = "${WORKDIR}/sdk" |
6560 | 6338 | ||
@@ -6579,14 +6357,12 @@ system and gives an overview of their function and contents. | |||
6579 | The manifest file for the host part of the SDK. This file lists all | 6357 | The manifest file for the host part of the SDK. This file lists all |
6580 | the installed packages that make up the host part of the SDK. The | 6358 | the installed packages that make up the host part of the SDK. The |
6581 | file contains package information on a line-per-package basis as | 6359 | file contains package information on a line-per-package basis as |
6582 | follows: | 6360 | follows:: |
6583 | :: | ||
6584 | 6361 | ||
6585 | packagename packagearch version | 6362 | packagename packagearch version |
6586 | 6363 | ||
6587 | The :ref:`populate_sdk_base <ref-classes-populate-sdk-*>` class | 6364 | The :ref:`populate_sdk_base <ref-classes-populate-sdk-*>` class |
6588 | defines the manifest file as follows: | 6365 | defines the manifest file as follows:: |
6589 | :: | ||
6590 | 6366 | ||
6591 | SDK_HOST_MANIFEST = "${SDK_DEPLOY}/${TOOLCHAIN_OUTPUTNAME}.host.manifest" | 6367 | SDK_HOST_MANIFEST = "${SDK_DEPLOY}/${TOOLCHAIN_OUTPUTNAME}.host.manifest" |
6592 | 6368 | ||
@@ -6624,8 +6400,7 @@ system and gives an overview of their function and contents. | |||
6624 | A list of classes to remove from the :term:`INHERIT` | 6400 | A list of classes to remove from the :term:`INHERIT` |
6625 | value globally within the extensible SDK configuration. The | 6401 | value globally within the extensible SDK configuration. The |
6626 | :ref:`populate-sdk-ext <ref-classes-populate-sdk-*>` class sets the | 6402 | :ref:`populate-sdk-ext <ref-classes-populate-sdk-*>` class sets the |
6627 | default value: | 6403 | default value:: |
6628 | :: | ||
6629 | 6404 | ||
6630 | SDK_INHERIT_BLACKLIST ?= "buildhistory icecc" | 6405 | SDK_INHERIT_BLACKLIST ?= "buildhistory icecc" |
6631 | 6406 | ||
@@ -6688,8 +6463,7 @@ system and gives an overview of their function and contents. | |||
6688 | :term:`DISTRO`, :term:`TCLIBC`, | 6463 | :term:`DISTRO`, :term:`TCLIBC`, |
6689 | :term:`SDK_ARCH`, | 6464 | :term:`SDK_ARCH`, |
6690 | :term:`IMAGE_BASENAME`, and | 6465 | :term:`IMAGE_BASENAME`, and |
6691 | :term:`TUNE_PKGARCH` variables: | 6466 | :term:`TUNE_PKGARCH` variables:: |
6692 | :: | ||
6693 | 6467 | ||
6694 | SDK_NAME = "${DISTRO}-${TCLIBC}-${SDK_ARCH}-${IMAGE_BASENAME}-${TUNE_PKGARCH}" | 6468 | SDK_NAME = "${DISTRO}-${TCLIBC}-${SDK_ARCH}-${IMAGE_BASENAME}-${TUNE_PKGARCH}" |
6695 | 6469 | ||
@@ -6700,8 +6474,7 @@ system and gives an overview of their function and contents. | |||
6700 | :term:`SDK_OUTPUT` | 6474 | :term:`SDK_OUTPUT` |
6701 | The location used by the OpenEmbedded build system when creating SDK | 6475 | The location used by the OpenEmbedded build system when creating SDK |
6702 | output. The :ref:`populate_sdk_base <ref-classes-populate-sdk-*>` | 6476 | output. The :ref:`populate_sdk_base <ref-classes-populate-sdk-*>` |
6703 | class defines the variable as follows: | 6477 | class defines the variable as follows:: |
6704 | :: | ||
6705 | 6478 | ||
6706 | SDK_DIR = "${WORKDIR}/sdk" | 6479 | SDK_DIR = "${WORKDIR}/sdk" |
6707 | SDK_OUTPUT = "${SDK_DIR}/image" | 6480 | SDK_OUTPUT = "${SDK_DIR}/image" |
@@ -6766,14 +6539,12 @@ system and gives an overview of their function and contents. | |||
6766 | The manifest file for the target part of the SDK. This file lists all | 6539 | The manifest file for the target part of the SDK. This file lists all |
6767 | the installed packages that make up the target part of the SDK. The | 6540 | the installed packages that make up the target part of the SDK. The |
6768 | file contains package information on a line-per-package basis as | 6541 | file contains package information on a line-per-package basis as |
6769 | follows: | 6542 | follows:: |
6770 | :: | ||
6771 | 6543 | ||
6772 | packagename packagearch version | 6544 | packagename packagearch version |
6773 | 6545 | ||
6774 | The :ref:`populate_sdk_base <ref-classes-populate-sdk-*>` class | 6546 | The :ref:`populate_sdk_base <ref-classes-populate-sdk-*>` class |
6775 | defines the manifest file as follows: | 6547 | defines the manifest file as follows:: |
6776 | :: | ||
6777 | 6548 | ||
6778 | SDK_TARGET_MANIFEST = "${SDK_DEPLOY}/${TOOLCHAIN_OUTPUTNAME}.target.manifest" | 6549 | SDK_TARGET_MANIFEST = "${SDK_DEPLOY}/${TOOLCHAIN_OUTPUTNAME}.target.manifest" |
6779 | 6550 | ||
@@ -6793,8 +6564,7 @@ system and gives an overview of their function and contents. | |||
6793 | this title is based on the :term:`DISTRO_NAME` or | 6564 | this title is based on the :term:`DISTRO_NAME` or |
6794 | :term:`DISTRO` variable and is set in the | 6565 | :term:`DISTRO` variable and is set in the |
6795 | :ref:`populate_sdk_base <ref-classes-populate-sdk-*>` class as | 6566 | :ref:`populate_sdk_base <ref-classes-populate-sdk-*>` class as |
6796 | follows: | 6567 | follows:: |
6797 | :: | ||
6798 | 6568 | ||
6799 | SDK_TITLE ??= "${@d.getVar('DISTRO_NAME') or d.getVar('DISTRO')} SDK" | 6569 | SDK_TITLE ??= "${@d.getVar('DISTRO_NAME') or d.getVar('DISTRO')} SDK" |
6800 | 6570 | ||
@@ -6817,8 +6587,7 @@ system and gives an overview of their function and contents. | |||
6817 | :term:`SDK_VERSION` | 6587 | :term:`SDK_VERSION` |
6818 | Specifies the version of the SDK. The Poky distribution configuration file | 6588 | Specifies the version of the SDK. The Poky distribution configuration file |
6819 | (``/meta-poky/conf/distro/poky.conf``) sets the default | 6589 | (``/meta-poky/conf/distro/poky.conf``) sets the default |
6820 | ``SDK_VERSION`` as follows: | 6590 | ``SDK_VERSION`` as follows:: |
6821 | :: | ||
6822 | 6591 | ||
6823 | SDK_VERSION = "${@d.getVar('DISTRO_VERSION').replace('snapshot-${METADATA_REVISION}', 'snapshot')}" | 6592 | SDK_VERSION = "${@d.getVar('DISTRO_VERSION').replace('snapshot-${METADATA_REVISION}', 'snapshot')}" |
6824 | 6593 | ||
@@ -6831,8 +6600,7 @@ system and gives an overview of their function and contents. | |||
6831 | default, this directory is based on the :term:`DISTRO` | 6600 | default, this directory is based on the :term:`DISTRO` |
6832 | variable and is set in the | 6601 | variable and is set in the |
6833 | :ref:`populate_sdk_base <ref-classes-populate-sdk-*>` class as | 6602 | :ref:`populate_sdk_base <ref-classes-populate-sdk-*>` class as |
6834 | follows: | 6603 | follows:: |
6835 | :: | ||
6836 | 6604 | ||
6837 | SDKEXTPATH ??= "~/${@d.getVar('DISTRO')}_sdk" | 6605 | SDKEXTPATH ??= "~/${@d.getVar('DISTRO')}_sdk" |
6838 | 6606 | ||
@@ -6846,8 +6614,7 @@ system and gives an overview of their function and contents. | |||
6846 | 6614 | ||
6847 | :term:`SDKIMAGE_FEATURES` | 6615 | :term:`SDKIMAGE_FEATURES` |
6848 | Equivalent to ``IMAGE_FEATURES``. However, this variable applies to | 6616 | Equivalent to ``IMAGE_FEATURES``. However, this variable applies to |
6849 | the SDK generated from an image using the following command: | 6617 | the SDK generated from an image using the following command:: |
6850 | :: | ||
6851 | 6618 | ||
6852 | $ bitbake -c populate_sdk imagename | 6619 | $ bitbake -c populate_sdk imagename |
6853 | 6620 | ||
@@ -6899,8 +6666,7 @@ system and gives an overview of their function and contents. | |||
6899 | Defines a serial console (TTY) to enable using | 6666 | Defines a serial console (TTY) to enable using |
6900 | `getty <https://en.wikipedia.org/wiki/Getty_(Unix)>`__. Provide a | 6667 | `getty <https://en.wikipedia.org/wiki/Getty_(Unix)>`__. Provide a |
6901 | value that specifies the baud rate followed by the TTY device name | 6668 | value that specifies the baud rate followed by the TTY device name |
6902 | separated by a space. You cannot specify more than one TTY device: | 6669 | separated by a space. You cannot specify more than one TTY device:: |
6903 | :: | ||
6904 | 6670 | ||
6905 | SERIAL_CONSOLE = "115200 ttyS0" | 6671 | SERIAL_CONSOLE = "115200 ttyS0" |
6906 | 6672 | ||
@@ -6913,8 +6679,7 @@ system and gives an overview of their function and contents. | |||
6913 | Defines a serial console (TTY) to enable using | 6679 | Defines a serial console (TTY) to enable using |
6914 | `getty <https://en.wikipedia.org/wiki/Getty_(Unix)>`__. Provide a | 6680 | `getty <https://en.wikipedia.org/wiki/Getty_(Unix)>`__. Provide a |
6915 | value that specifies the baud rate followed by the TTY device name | 6681 | value that specifies the baud rate followed by the TTY device name |
6916 | separated by a semicolon. Use spaces to separate multiple devices: | 6682 | separated by a semicolon. Use spaces to separate multiple devices:: |
6917 | :: | ||
6918 | 6683 | ||
6919 | SERIAL_CONSOLES = "115200;ttyS0 115200;ttyS1" | 6684 | SERIAL_CONSOLES = "115200;ttyS0 115200;ttyS1" |
6920 | 6685 | ||
@@ -7044,8 +6809,7 @@ system and gives an overview of their function and contents. | |||
7044 | 6809 | ||
7045 | To use this variable, you must globally inherit the | 6810 | To use this variable, you must globally inherit the |
7046 | :ref:`own-mirrors <ref-classes-own-mirrors>` class and then provide | 6811 | :ref:`own-mirrors <ref-classes-own-mirrors>` class and then provide |
7047 | the URL to your mirrors. Here is the general syntax: | 6812 | the URL to your mirrors. Here is the general syntax:: |
7048 | :: | ||
7049 | 6813 | ||
7050 | INHERIT += "own-mirrors" | 6814 | INHERIT += "own-mirrors" |
7051 | SOURCE_MIRROR_URL = "http://example.com/my_source_mirror" | 6815 | SOURCE_MIRROR_URL = "http://example.com/my_source_mirror" |
@@ -7076,8 +6840,7 @@ system and gives an overview of their function and contents. | |||
7076 | U-Boot recipe. | 6840 | U-Boot recipe. |
7077 | 6841 | ||
7078 | The SPL file type is set to "null" by default in the ``u-boot.inc`` | 6842 | The SPL file type is set to "null" by default in the ``u-boot.inc`` |
7079 | file as follows: | 6843 | file as follows:: |
7080 | :: | ||
7081 | 6844 | ||
7082 | # Some versions of u-boot build an SPL (Second Program Loader) image that | 6845 | # Some versions of u-boot build an SPL (Second Program Loader) image that |
7083 | # should be packaged along with the u-boot binary as well as placed in the | 6846 | # should be packaged along with the u-boot binary as well as placed in the |
@@ -7236,8 +6999,7 @@ system and gives an overview of their function and contents. | |||
7236 | 6999 | ||
7237 | - ``name`` - Specifies a name to be used for association with | 7000 | - ``name`` - Specifies a name to be used for association with |
7238 | ``SRC_URI`` checksums or :term:`SRCREV` when you have more than one | 7001 | ``SRC_URI`` checksums or :term:`SRCREV` when you have more than one |
7239 | file or git repository specified in ``SRC_URI``. For example: | 7002 | file or git repository specified in ``SRC_URI``. For example:: |
7240 | :: | ||
7241 | 7003 | ||
7242 | SRC_URI = "git://example.com/foo.git;name=first \ | 7004 | SRC_URI = "git://example.com/foo.git;name=first \ |
7243 | git://example.com/bar.git;name=second \ | 7005 | git://example.com/bar.git;name=second \ |
@@ -7268,16 +7030,14 @@ system and gives an overview of their function and contents. | |||
7268 | 7030 | ||
7269 | The ``SRCPV`` variable is defined in the ``meta/conf/bitbake.conf`` | 7031 | The ``SRCPV`` variable is defined in the ``meta/conf/bitbake.conf`` |
7270 | configuration file in the :term:`Source Directory` as | 7032 | configuration file in the :term:`Source Directory` as |
7271 | follows: | 7033 | follows:: |
7272 | :: | ||
7273 | 7034 | ||
7274 | SRCPV = "${@bb.fetch2.get_srcrev(d)}" | 7035 | SRCPV = "${@bb.fetch2.get_srcrev(d)}" |
7275 | 7036 | ||
7276 | Recipes that need to define ``PV`` do so with the help of the | 7037 | Recipes that need to define ``PV`` do so with the help of the |
7277 | ``SRCPV``. For example, the ``ofono`` recipe (``ofono_git.bb``) | 7038 | ``SRCPV``. For example, the ``ofono`` recipe (``ofono_git.bb``) |
7278 | located in ``meta/recipes-connectivity`` in the Source Directory | 7039 | located in ``meta/recipes-connectivity`` in the Source Directory |
7279 | defines ``PV`` as follows: | 7040 | defines ``PV`` as follows:: |
7280 | :: | ||
7281 | 7041 | ||
7282 | PV = "0.12-git${SRCPV}" | 7042 | PV = "0.12-git${SRCPV}" |
7283 | 7043 | ||
@@ -7328,8 +7088,7 @@ system and gives an overview of their function and contents. | |||
7328 | :term:`NATIVELSBSTRING` set by the | 7088 | :term:`NATIVELSBSTRING` set by the |
7329 | :ref:`uninative <ref-classes-uninative>` class. For example, the | 7089 | :ref:`uninative <ref-classes-uninative>` class. For example, the |
7330 | following maps the local search path ``universal-4.9`` to the | 7090 | following maps the local search path ``universal-4.9`` to the |
7331 | server-provided path server_url_sstate_path: | 7091 | server-provided path server_url_sstate_path:: |
7332 | :: | ||
7333 | 7092 | ||
7334 | SSTATE_MIRRORS ?= "file://universal-4.9/(.*) http://server_url_sstate_path/universal-4.8/\1 \n" | 7093 | SSTATE_MIRRORS ?= "file://universal-4.9/(.*) http://server_url_sstate_path/universal-4.8/\1 \n" |
7335 | 7094 | ||
@@ -7524,8 +7283,7 @@ system and gives an overview of their function and contents. | |||
7524 | to an actual stamp file is constructed by evaluating this string and | 7283 | to an actual stamp file is constructed by evaluating this string and |
7525 | then appending additional information. Currently, the default | 7284 | then appending additional information. Currently, the default |
7526 | assignment for ``STAMP`` as set in the ``meta/conf/bitbake.conf`` | 7285 | assignment for ``STAMP`` as set in the ``meta/conf/bitbake.conf`` |
7527 | file is: | 7286 | file is:: |
7528 | :: | ||
7529 | 7287 | ||
7530 | STAMP = "${STAMPS_DIR}/${MULTIMACH_TARGET_SYS}/${PN}/${EXTENDPE}${PV}-${PR}" | 7288 | STAMP = "${STAMPS_DIR}/${MULTIMACH_TARGET_SYS}/${PN}/${EXTENDPE}${PV}-${PR}" |
7531 | 7289 | ||
@@ -7562,8 +7320,7 @@ system and gives an overview of their function and contents. | |||
7562 | :term:`SYSLINUX_DEFAULT_CONSOLE` | 7320 | :term:`SYSLINUX_DEFAULT_CONSOLE` |
7563 | Specifies the kernel boot default console. If you want to use a | 7321 | Specifies the kernel boot default console. If you want to use a |
7564 | console other than the default, set this variable in your recipe as | 7322 | console other than the default, set this variable in your recipe as |
7565 | follows where "X" is the console number you want to use: | 7323 | follows where "X" is the console number you want to use:: |
7566 | :: | ||
7567 | 7324 | ||
7568 | SYSLINUX_DEFAULT_CONSOLE = "console=ttyX" | 7325 | SYSLINUX_DEFAULT_CONSOLE = "console=ttyX" |
7569 | 7326 | ||
@@ -7582,8 +7339,7 @@ system and gives an overview of their function and contents. | |||
7582 | Specifies the alternate serial port or turns it off. To turn off | 7339 | Specifies the alternate serial port or turns it off. To turn off |
7583 | serial, set this variable to an empty string in your recipe. The | 7340 | serial, set this variable to an empty string in your recipe. The |
7584 | variable's default value is set in the | 7341 | variable's default value is set in the |
7585 | :ref:`syslinux <ref-classes-syslinux>` class as follows: | 7342 | :ref:`syslinux <ref-classes-syslinux>` class as follows:: |
7586 | :: | ||
7587 | 7343 | ||
7588 | SYSLINUX_SERIAL ?= "0 115200" | 7344 | SYSLINUX_SERIAL ?= "0 115200" |
7589 | 7345 | ||
@@ -7592,8 +7348,7 @@ system and gives an overview of their function and contents. | |||
7592 | :term:`SYSLINUX_SERIAL_TTY` | 7348 | :term:`SYSLINUX_SERIAL_TTY` |
7593 | Specifies the alternate console=tty... kernel boot argument. The | 7349 | Specifies the alternate console=tty... kernel boot argument. The |
7594 | variable's default value is set in the | 7350 | variable's default value is set in the |
7595 | :ref:`syslinux <ref-classes-syslinux>` class as follows: | 7351 | :ref:`syslinux <ref-classes-syslinux>` class as follows:: |
7596 | :: | ||
7597 | 7352 | ||
7598 | SYSLINUX_SERIAL_TTY ?= "console=ttyS0,115200" | 7353 | SYSLINUX_SERIAL_TTY ?= "console=ttyS0,115200" |
7599 | 7354 | ||
@@ -7616,8 +7371,7 @@ system and gives an overview of their function and contents. | |||
7616 | :term:`SYSROOT_DIRS` | 7371 | :term:`SYSROOT_DIRS` |
7617 | Directories that are staged into the sysroot by the | 7372 | Directories that are staged into the sysroot by the |
7618 | :ref:`ref-tasks-populate_sysroot` task. By | 7373 | :ref:`ref-tasks-populate_sysroot` task. By |
7619 | default, the following directories are staged: | 7374 | default, the following directories are staged:: |
7620 | :: | ||
7621 | 7375 | ||
7622 | SYSROOT_DIRS = " \ | 7376 | SYSROOT_DIRS = " \ |
7623 | ${includedir} \ | 7377 | ${includedir} \ |
@@ -7632,8 +7386,7 @@ system and gives an overview of their function and contents. | |||
7632 | :ref:`ref-tasks-populate_sysroot` task. You | 7386 | :ref:`ref-tasks-populate_sysroot` task. You |
7633 | can use this variable to exclude certain subdirectories of | 7387 | can use this variable to exclude certain subdirectories of |
7634 | directories listed in :term:`SYSROOT_DIRS` from | 7388 | directories listed in :term:`SYSROOT_DIRS` from |
7635 | staging. By default, the following directories are not staged: | 7389 | staging. By default, the following directories are not staged:: |
7636 | :: | ||
7637 | 7390 | ||
7638 | SYSROOT_DIRS_BLACKLIST = " \ | 7391 | SYSROOT_DIRS_BLACKLIST = " \ |
7639 | ${mandir} \ | 7392 | ${mandir} \ |
@@ -7650,8 +7403,7 @@ system and gives an overview of their function and contents. | |||
7650 | :ref:`ref-tasks-populate_sysroot` task for | 7403 | :ref:`ref-tasks-populate_sysroot` task for |
7651 | ``-native`` recipes, in addition to those specified in | 7404 | ``-native`` recipes, in addition to those specified in |
7652 | :term:`SYSROOT_DIRS`. By default, the following | 7405 | :term:`SYSROOT_DIRS`. By default, the following |
7653 | extra directories are staged: | 7406 | extra directories are staged:: |
7654 | :: | ||
7655 | 7407 | ||
7656 | SYSROOT_DIRS_NATIVE = " \ | 7408 | SYSROOT_DIRS_NATIVE = " \ |
7657 | ${bindir} \ | 7409 | ${bindir} \ |
@@ -7680,8 +7432,7 @@ system and gives an overview of their function and contents. | |||
7680 | :term:`SYSTEMD_SERVICE` should start | 7432 | :term:`SYSTEMD_SERVICE` should start |
7681 | automatically or not. By default, the service is enabled to | 7433 | automatically or not. By default, the service is enabled to |
7682 | automatically start at boot time. The default setting is in the | 7434 | automatically start at boot time. The default setting is in the |
7683 | :ref:`systemd <ref-classes-systemd>` class as follows: | 7435 | :ref:`systemd <ref-classes-systemd>` class as follows:: |
7684 | :: | ||
7685 | 7436 | ||
7686 | SYSTEMD_AUTO_ENABLE ??= "enable" | 7437 | SYSTEMD_AUTO_ENABLE ??= "enable" |
7687 | 7438 | ||
@@ -7692,8 +7443,7 @@ system and gives an overview of their function and contents. | |||
7692 | "systemd-boot", the ``SYSTEMD_BOOT_CFG`` variable specifies the | 7443 | "systemd-boot", the ``SYSTEMD_BOOT_CFG`` variable specifies the |
7693 | configuration file that should be used. By default, the | 7444 | configuration file that should be used. By default, the |
7694 | :ref:`systemd-boot <ref-classes-systemd-boot>` class sets the | 7445 | :ref:`systemd-boot <ref-classes-systemd-boot>` class sets the |
7695 | ``SYSTEMD_BOOT_CFG`` as follows: | 7446 | ``SYSTEMD_BOOT_CFG`` as follows:: |
7696 | :: | ||
7697 | 7447 | ||
7698 | SYSTEMD_BOOT_CFG ?= "${:term:`S`}/loader.conf" | 7448 | SYSTEMD_BOOT_CFG ?= "${:term:`S`}/loader.conf" |
7699 | 7449 | ||
@@ -7706,8 +7456,7 @@ system and gives an overview of their function and contents. | |||
7706 | list of entry files (``*.conf``) to install that contain one boot | 7456 | list of entry files (``*.conf``) to install that contain one boot |
7707 | entry per file. By default, the | 7457 | entry per file. By default, the |
7708 | :ref:`systemd-boot <ref-classes-systemd-boot>` class sets the | 7458 | :ref:`systemd-boot <ref-classes-systemd-boot>` class sets the |
7709 | ``SYSTEMD_BOOT_ENTRIES`` as follows: | 7459 | ``SYSTEMD_BOOT_ENTRIES`` as follows:: |
7710 | :: | ||
7711 | 7460 | ||
7712 | SYSTEMD_BOOT_ENTRIES ?= "" | 7461 | SYSTEMD_BOOT_ENTRIES ?= "" |
7713 | 7462 | ||
@@ -7719,8 +7468,7 @@ system and gives an overview of their function and contents. | |||
7719 | "systemd-boot", the ``SYSTEMD_BOOT_TIMEOUT`` variable specifies the | 7468 | "systemd-boot", the ``SYSTEMD_BOOT_TIMEOUT`` variable specifies the |
7720 | boot menu timeout in seconds. By default, the | 7469 | boot menu timeout in seconds. By default, the |
7721 | :ref:`systemd-boot <ref-classes-systemd-boot>` class sets the | 7470 | :ref:`systemd-boot <ref-classes-systemd-boot>` class sets the |
7722 | ``SYSTEMD_BOOT_TIMEOUT`` as follows: | 7471 | ``SYSTEMD_BOOT_TIMEOUT`` as follows:: |
7723 | :: | ||
7724 | 7472 | ||
7725 | SYSTEMD_BOOT_TIMEOUT ?= "10" | 7473 | SYSTEMD_BOOT_TIMEOUT ?= "10" |
7726 | 7474 | ||
@@ -7732,8 +7480,7 @@ system and gives an overview of their function and contents. | |||
7732 | this variable locates the systemd unit files when they are not found | 7480 | this variable locates the systemd unit files when they are not found |
7733 | in the main recipe's package. By default, the ``SYSTEMD_PACKAGES`` | 7481 | in the main recipe's package. By default, the ``SYSTEMD_PACKAGES`` |
7734 | variable is set such that the systemd unit files are assumed to | 7482 | variable is set such that the systemd unit files are assumed to |
7735 | reside in the recipes main package: | 7483 | reside in the recipes main package:: |
7736 | :: | ||
7737 | 7484 | ||
7738 | SYSTEMD_PACKAGES ?= "${PN}" | 7485 | SYSTEMD_PACKAGES ?= "${PN}" |
7739 | 7486 | ||
@@ -7747,8 +7494,7 @@ system and gives an overview of their function and contents. | |||
7747 | 7494 | ||
7748 | When you specify this file in your recipe, use a package name | 7495 | When you specify this file in your recipe, use a package name |
7749 | override to indicate the package to which the value applies. Here is | 7496 | override to indicate the package to which the value applies. Here is |
7750 | an example from the connman recipe: | 7497 | an example from the connman recipe:: |
7751 | :: | ||
7752 | 7498 | ||
7753 | SYSTEMD_SERVICE_${PN} = "connman.service" | 7499 | SYSTEMD_SERVICE_${PN} = "connman.service" |
7754 | 7500 | ||
@@ -7766,8 +7512,7 @@ system and gives an overview of their function and contents. | |||
7766 | :term:`T` | 7512 | :term:`T` |
7767 | This variable points to a directory were BitBake places temporary | 7513 | This variable points to a directory were BitBake places temporary |
7768 | files, which consist mostly of task logs and scripts, when building a | 7514 | files, which consist mostly of task logs and scripts, when building a |
7769 | particular recipe. The variable is typically set as follows: | 7515 | particular recipe. The variable is typically set as follows:: |
7770 | :: | ||
7771 | 7516 | ||
7772 | T = "${WORKDIR}/temp" | 7517 | T = "${WORKDIR}/temp" |
7773 | 7518 | ||
@@ -7801,8 +7546,7 @@ system and gives an overview of their function and contents. | |||
7801 | Specifies architecture-specific assembler flags for the target | 7546 | Specifies architecture-specific assembler flags for the target |
7802 | system. ``TARGET_AS_ARCH`` is initialized from | 7547 | system. ``TARGET_AS_ARCH`` is initialized from |
7803 | :term:`TUNE_ASARGS` by default in the BitBake | 7548 | :term:`TUNE_ASARGS` by default in the BitBake |
7804 | configuration file (``meta/conf/bitbake.conf``): | 7549 | configuration file (``meta/conf/bitbake.conf``):: |
7805 | :: | ||
7806 | 7550 | ||
7807 | TARGET_AS_ARCH = "${TUNE_ASARGS}" | 7551 | TARGET_AS_ARCH = "${TUNE_ASARGS}" |
7808 | 7552 | ||
@@ -7869,8 +7613,7 @@ system and gives an overview of their function and contents. | |||
7869 | Specifies architecture-specific linker flags for the target system. | 7613 | Specifies architecture-specific linker flags for the target system. |
7870 | ``TARGET_LD_ARCH`` is initialized from | 7614 | ``TARGET_LD_ARCH`` is initialized from |
7871 | :term:`TUNE_LDARGS` by default in the BitBake | 7615 | :term:`TUNE_LDARGS` by default in the BitBake |
7872 | configuration file (``meta/conf/bitbake.conf``): | 7616 | configuration file (``meta/conf/bitbake.conf``):: |
7873 | :: | ||
7874 | 7617 | ||
7875 | TARGET_LD_ARCH = "${TUNE_LDARGS}" | 7618 | TARGET_LD_ARCH = "${TUNE_LDARGS}" |
7876 | 7619 | ||
@@ -8051,8 +7794,7 @@ system and gives an overview of their function and contents. | |||
8051 | program does. | 7794 | program does. |
8052 | 7795 | ||
8053 | For example, to use the Picocom terminal program on serial device | 7796 | For example, to use the Picocom terminal program on serial device |
8054 | ``/dev/ttyUSB0`` at 115200bps, you would set the variable as follows: | 7797 | ``/dev/ttyUSB0`` at 115200bps, you would set the variable as follows:: |
8055 | :: | ||
8056 | 7798 | ||
8057 | TEST_SERIALCONTROL_CMD = "picocom /dev/ttyUSB0 -b 115200" | 7799 | TEST_SERIALCONTROL_CMD = "picocom /dev/ttyUSB0 -b 115200" |
8058 | 7800 | ||
@@ -8090,8 +7832,7 @@ system and gives an overview of their function and contents. | |||
8090 | 7832 | ||
8091 | Tests include ``ping``, ``ssh``, ``df`` among others. You can add | 7833 | Tests include ``ping``, ``ssh``, ``df`` among others. You can add |
8092 | your own tests to the list of tests by appending ``TEST_SUITES`` as | 7834 | your own tests to the list of tests by appending ``TEST_SUITES`` as |
8093 | follows: | 7835 | follows:: |
8094 | :: | ||
8095 | 7836 | ||
8096 | TEST_SUITES_append = " mytest" | 7837 | TEST_SUITES_append = " mytest" |
8097 | 7838 | ||
@@ -8110,8 +7851,7 @@ system and gives an overview of their function and contents. | |||
8110 | another test must appear later in the list than the test on which | 7851 | another test must appear later in the list than the test on which |
8111 | they depend. For example, if you append the list of tests with two | 7852 | they depend. For example, if you append the list of tests with two |
8112 | tests (``test_A`` and ``test_B``) where ``test_B`` is dependent on | 7853 | tests (``test_A`` and ``test_B``) where ``test_B`` is dependent on |
8113 | ``test_A``, then you must order the tests as follows: | 7854 | ``test_A``, then you must order the tests as follows:: |
8114 | :: | ||
8115 | 7855 | ||
8116 | TEST_SUITES = "test_A test_B" | 7856 | TEST_SUITES = "test_A test_B" |
8117 | 7857 | ||
@@ -8121,8 +7861,7 @@ system and gives an overview of their function and contents. | |||
8121 | 7861 | ||
8122 | :term:`TEST_TARGET` | 7862 | :term:`TEST_TARGET` |
8123 | Specifies the target controller to use when running tests against a | 7863 | Specifies the target controller to use when running tests against a |
8124 | test image. The default controller to use is "qemu": | 7864 | test image. The default controller to use is "qemu":: |
8125 | :: | ||
8126 | 7865 | ||
8127 | TEST_TARGET = "qemu" | 7866 | TEST_TARGET = "qemu" |
8128 | 7867 | ||
@@ -8161,8 +7900,7 @@ system and gives an overview of their function and contents. | |||
8161 | set to "qemu". | 7900 | set to "qemu". |
8162 | 7901 | ||
8163 | When you specify the IP address, you can also include a port. Here is | 7902 | When you specify the IP address, you can also include a port. Here is |
8164 | an example: | 7903 | an example:: |
8165 | :: | ||
8166 | 7904 | ||
8167 | TEST_TARGET_IP = "192.168.1.4:2201" | 7905 | TEST_TARGET_IP = "192.168.1.4:2201" |
8168 | 7906 | ||
@@ -8211,8 +7949,7 @@ system and gives an overview of their function and contents. | |||
8211 | 7949 | ||
8212 | If you want to establish this directory in a location other than the | 7950 | If you want to establish this directory in a location other than the |
8213 | default, you can uncomment and edit the following statement in the | 7951 | default, you can uncomment and edit the following statement in the |
8214 | ``conf/local.conf`` file in the :term:`Source Directory`: | 7952 | ``conf/local.conf`` file in the :term:`Source Directory`:: |
8215 | :: | ||
8216 | 7953 | ||
8217 | #TMPDIR = "${TOPDIR}/tmp" | 7954 | #TMPDIR = "${TOPDIR}/tmp" |
8218 | 7955 | ||
@@ -8231,8 +7968,7 @@ system and gives an overview of their function and contents. | |||
8231 | packages specified by this variable are part of the toolchain set | 7968 | packages specified by this variable are part of the toolchain set |
8232 | that runs on the :term:`SDKMACHINE`, and each | 7969 | that runs on the :term:`SDKMACHINE`, and each |
8233 | package should usually have the prefix ``nativesdk-``. For example, | 7970 | package should usually have the prefix ``nativesdk-``. For example, |
8234 | consider the following command when building an SDK: | 7971 | consider the following command when building an SDK:: |
8235 | :: | ||
8236 | 7972 | ||
8237 | $ bitbake -c populate_sdk imagename | 7973 | $ bitbake -c populate_sdk imagename |
8238 | 7974 | ||
@@ -8253,8 +7989,7 @@ system and gives an overview of their function and contents. | |||
8253 | :term:`TOOLCHAIN_OUTPUTNAME` | 7989 | :term:`TOOLCHAIN_OUTPUTNAME` |
8254 | This variable defines the name used for the toolchain output. The | 7990 | This variable defines the name used for the toolchain output. The |
8255 | :ref:`populate_sdk_base <ref-classes-populate-sdk-*>` class sets | 7991 | :ref:`populate_sdk_base <ref-classes-populate-sdk-*>` class sets |
8256 | the ``TOOLCHAIN_OUTPUTNAME`` variable as follows: | 7992 | the ``TOOLCHAIN_OUTPUTNAME`` variable as follows:: |
8257 | :: | ||
8258 | 7993 | ||
8259 | TOOLCHAIN_OUTPUTNAME ?= "${SDK_NAME}-toolchain-${SDK_VERSION}" | 7994 | TOOLCHAIN_OUTPUTNAME ?= "${SDK_NAME}-toolchain-${SDK_VERSION}" |
8260 | 7995 | ||
@@ -8310,8 +8045,7 @@ system and gives an overview of their function and contents. | |||
8310 | ``TUNE_ARCH`` is tied closely to | 8045 | ``TUNE_ARCH`` is tied closely to |
8311 | :term:`TARGET_ARCH`, which defines the target | 8046 | :term:`TARGET_ARCH`, which defines the target |
8312 | machine's architecture. The BitBake configuration file | 8047 | machine's architecture. The BitBake configuration file |
8313 | (``meta/conf/bitbake.conf``) sets ``TARGET_ARCH`` as follows: | 8048 | (``meta/conf/bitbake.conf``) sets ``TARGET_ARCH`` as follows:: |
8314 | :: | ||
8315 | 8049 | ||
8316 | TARGET_ARCH = "${TUNE_ARCH}" | 8050 | TARGET_ARCH = "${TUNE_ARCH}" |
8317 | 8051 | ||
@@ -8333,8 +8067,7 @@ system and gives an overview of their function and contents. | |||
8333 | typically under ``meta/conf/machine/include/`` and are influenced | 8067 | typically under ``meta/conf/machine/include/`` and are influenced |
8334 | through :term:`TUNE_FEATURES`. For example, the | 8068 | through :term:`TUNE_FEATURES`. For example, the |
8335 | ``meta/conf/machine/include/x86/arch-x86.inc`` file defines the flags | 8069 | ``meta/conf/machine/include/x86/arch-x86.inc`` file defines the flags |
8336 | for the x86 architecture as follows: | 8070 | for the x86 architecture as follows:: |
8337 | :: | ||
8338 | 8071 | ||
8339 | TUNE_ASARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-x32", "", d)}" | 8072 | TUNE_ASARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-x32", "", d)}" |
8340 | 8073 | ||
@@ -8367,8 +8100,7 @@ system and gives an overview of their function and contents. | |||
8367 | are not conflicting and that they are supported. | 8100 | are not conflicting and that they are supported. |
8368 | 8101 | ||
8369 | The BitBake configuration file (``meta/conf/bitbake.conf``) defines | 8102 | The BitBake configuration file (``meta/conf/bitbake.conf``) defines |
8370 | ``TUNE_FEATURES`` as follows: | 8103 | ``TUNE_FEATURES`` as follows:: |
8371 | :: | ||
8372 | 8104 | ||
8373 | TUNE_FEATURES ??= "${TUNE_FEATURES_tune-${DEFAULTTUNE}}" | 8105 | TUNE_FEATURES ??= "${TUNE_FEATURES_tune-${DEFAULTTUNE}}" |
8374 | 8106 | ||
@@ -8381,8 +8113,7 @@ system and gives an overview of their function and contents. | |||
8381 | typically under ``meta/conf/machine/include/`` and are influenced | 8113 | typically under ``meta/conf/machine/include/`` and are influenced |
8382 | through :term:`TUNE_FEATURES`. For example, the | 8114 | through :term:`TUNE_FEATURES`. For example, the |
8383 | ``meta/conf/machine/include/x86/arch-x86.inc`` file defines the flags | 8115 | ``meta/conf/machine/include/x86/arch-x86.inc`` file defines the flags |
8384 | for the x86 architecture as follows: | 8116 | for the x86 architecture as follows:: |
8385 | :: | ||
8386 | 8117 | ||
8387 | TUNE_LDARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-m elf32_x86_64", "", d)}" | 8118 | TUNE_LDARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-m elf32_x86_64", "", d)}" |
8388 | 8119 | ||
@@ -8395,15 +8126,13 @@ system and gives an overview of their function and contents. | |||
8395 | :term:`TUNE_PKGARCH` | 8126 | :term:`TUNE_PKGARCH` |
8396 | The package architecture understood by the packaging system to define | 8127 | The package architecture understood by the packaging system to define |
8397 | the architecture, ABI, and tuning of output packages. The specific | 8128 | the architecture, ABI, and tuning of output packages. The specific |
8398 | tune is defined using the "_tune" override as follows: | 8129 | tune is defined using the "_tune" override as follows:: |
8399 | :: | ||
8400 | 8130 | ||
8401 | TUNE_PKGARCH_tune-tune = "tune" | 8131 | TUNE_PKGARCH_tune-tune = "tune" |
8402 | 8132 | ||
8403 | These tune-specific package architectures are defined in the machine | 8133 | These tune-specific package architectures are defined in the machine |
8404 | include files. Here is an example of the "core2-32" tuning as used in | 8134 | include files. Here is an example of the "core2-32" tuning as used in |
8405 | the ``meta/conf/machine/include/tune-core2.inc`` file: | 8135 | the ``meta/conf/machine/include/tune-core2.inc`` file:: |
8406 | :: | ||
8407 | 8136 | ||
8408 | TUNE_PKGARCH_tune-core2-32 = "core2-32" | 8137 | TUNE_PKGARCH_tune-core2-32 = "core2-32" |
8409 | 8138 | ||
@@ -8449,8 +8178,7 @@ system and gives an overview of their function and contents. | |||
8449 | the :term:`Source Directory`. Here is an example from | 8178 | the :term:`Source Directory`. Here is an example from |
8450 | the ``meta/conf/machine/include/mips/arch-mips.inc`` include file | 8179 | the ``meta/conf/machine/include/mips/arch-mips.inc`` include file |
8451 | that lists the "o32" and "n64" features as conflicting with the "n32" | 8180 | that lists the "o32" and "n64" features as conflicting with the "n32" |
8452 | feature: | 8181 | feature:: |
8453 | :: | ||
8454 | 8182 | ||
8455 | TUNECONFLICTS[n32] = "o32 n64" | 8183 | TUNECONFLICTS[n32] = "o32 n64" |
8456 | 8184 | ||
@@ -8459,8 +8187,7 @@ system and gives an overview of their function and contents. | |||
8459 | feature. The specified feature is stored as a flag. Valid features | 8187 | feature. The specified feature is stored as a flag. Valid features |
8460 | are specified in the machine include files (e.g. | 8188 | are specified in the machine include files (e.g. |
8461 | ``meta/conf/machine/include/arm/arch-arm.inc``). Here is an example | 8189 | ``meta/conf/machine/include/arm/arch-arm.inc``). Here is an example |
8462 | from that file: | 8190 | from that file:: |
8463 | :: | ||
8464 | 8191 | ||
8465 | TUNEVALID[bigendian] = "Enable big-endian mode." | 8192 | TUNEVALID[bigendian] = "Enable big-endian mode." |
8466 | 8193 | ||
@@ -8516,8 +8243,7 @@ system and gives an overview of their function and contents. | |||
8516 | Appends a string to the name of the local version of the U-Boot | 8243 | Appends a string to the name of the local version of the U-Boot |
8517 | image. For example, assuming the version of the U-Boot image built | 8244 | image. For example, assuming the version of the U-Boot image built |
8518 | was "2013.10", the full version string reported by U-Boot would be | 8245 | was "2013.10", the full version string reported by U-Boot would be |
8519 | "2013.10-yocto" given the following statement: | 8246 | "2013.10-yocto" given the following statement:: |
8520 | :: | ||
8521 | 8247 | ||
8522 | UBOOT_LOCALVERSION = "-yocto" | 8248 | UBOOT_LOCALVERSION = "-yocto" |
8523 | 8249 | ||
@@ -8691,8 +8417,7 @@ system and gives an overview of their function and contents. | |||
8691 | OpenEmbedded build system to enable extra features (e.g. | 8417 | OpenEmbedded build system to enable extra features (e.g. |
8692 | ``buildstats``, ``image-mklibs``, and so forth). | 8418 | ``buildstats``, ``image-mklibs``, and so forth). |
8693 | 8419 | ||
8694 | The default list is set in your ``local.conf`` file: | 8420 | The default list is set in your ``local.conf`` file:: |
8695 | :: | ||
8696 | 8421 | ||
8697 | USER_CLASSES ?= "buildstats image-mklibs image-prelink" | 8422 | USER_CLASSES ?= "buildstats image-mklibs image-prelink" |
8698 | 8423 | ||
@@ -8712,8 +8437,7 @@ system and gives an overview of their function and contents. | |||
8712 | ``USERADD_ERROR_DYNAMIC`` variable is by default not set. If you plan | 8437 | ``USERADD_ERROR_DYNAMIC`` variable is by default not set. If you plan |
8713 | on using statically assigned ``gid`` and ``uid`` values, you should | 8438 | on using statically assigned ``gid`` and ``uid`` values, you should |
8714 | set the ``USERADD_ERROR_DYNAMIC`` variable in your ``local.conf`` | 8439 | set the ``USERADD_ERROR_DYNAMIC`` variable in your ``local.conf`` |
8715 | file as follows: | 8440 | file as follows:: |
8716 | :: | ||
8717 | 8441 | ||
8718 | USERADD_ERROR_DYNAMIC = "error" | 8442 | USERADD_ERROR_DYNAMIC = "error" |
8719 | 8443 | ||
@@ -8743,8 +8467,7 @@ system and gives an overview of their function and contents. | |||
8743 | When applying static group identification (``gid``) values, the | 8467 | When applying static group identification (``gid``) values, the |
8744 | OpenEmbedded build system looks in :term:`BBPATH` for a | 8468 | OpenEmbedded build system looks in :term:`BBPATH` for a |
8745 | ``files/group`` file and then applies those ``uid`` values. Set the | 8469 | ``files/group`` file and then applies those ``uid`` values. Set the |
8746 | variable as follows in your ``local.conf`` file: | 8470 | variable as follows in your ``local.conf`` file:: |
8747 | :: | ||
8748 | 8471 | ||
8749 | 8472 | ||
8750 | USERADD_GID_TABLES = "files/group" | 8473 | USERADD_GID_TABLES = "files/group" |
@@ -8761,8 +8484,7 @@ system and gives an overview of their function and contents. | |||
8761 | 8484 | ||
8762 | You must set this variable if the recipe inherits the class. For | 8485 | You must set this variable if the recipe inherits the class. For |
8763 | example, the following enables adding a user for the main package in | 8486 | example, the following enables adding a user for the main package in |
8764 | a recipe: | 8487 | a recipe:: |
8765 | :: | ||
8766 | 8488 | ||
8767 | USERADD_PACKAGES = "${PN}" | 8489 | USERADD_PACKAGES = "${PN}" |
8768 | 8490 | ||
@@ -8778,8 +8500,7 @@ system and gives an overview of their function and contents. | |||
8778 | the ``useradd`` command if you add a user to the system when the | 8500 | the ``useradd`` command if you add a user to the system when the |
8779 | package is installed. | 8501 | package is installed. |
8780 | 8502 | ||
8781 | Here is an example from the ``dbus`` recipe: | 8503 | Here is an example from the ``dbus`` recipe:: |
8782 | :: | ||
8783 | 8504 | ||
8784 | USERADD_PARAM_${PN} = "--system --home ${localstatedir}/lib/dbus \ | 8505 | USERADD_PARAM_${PN} = "--system --home ${localstatedir}/lib/dbus \ |
8785 | --no-create-home --shell /bin/false \ | 8506 | --no-create-home --shell /bin/false \ |
@@ -8797,8 +8518,7 @@ system and gives an overview of their function and contents. | |||
8797 | When applying static user identification (``uid``) values, the | 8518 | When applying static user identification (``uid``) values, the |
8798 | OpenEmbedded build system looks in :term:`BBPATH` for a | 8519 | OpenEmbedded build system looks in :term:`BBPATH` for a |
8799 | ``files/passwd`` file and then applies those ``uid`` values. Set the | 8520 | ``files/passwd`` file and then applies those ``uid`` values. Set the |
8800 | variable as follows in your ``local.conf`` file: | 8521 | variable as follows in your ``local.conf`` file:: |
8801 | :: | ||
8802 | 8522 | ||
8803 | USERADD_UID_TABLES = "files/passwd" | 8523 | USERADD_UID_TABLES = "files/passwd" |
8804 | 8524 | ||
@@ -8869,8 +8589,7 @@ system and gives an overview of their function and contents. | |||
8869 | With the ``WKS_FILE_DEPENDS`` variable, you have the possibility to | 8589 | With the ``WKS_FILE_DEPENDS`` variable, you have the possibility to |
8870 | specify a list of additional dependencies (e.g. native tools, | 8590 | specify a list of additional dependencies (e.g. native tools, |
8871 | bootloaders, and so forth), that are required to build Wic images. | 8591 | bootloaders, and so forth), that are required to build Wic images. |
8872 | Following is an example: | 8592 | Following is an example:: |
8873 | :: | ||
8874 | 8593 | ||
8875 | WKS_FILE_DEPENDS = "some-native-tool" | 8594 | WKS_FILE_DEPENDS = "some-native-tool" |
8876 | 8595 | ||
@@ -8884,8 +8603,7 @@ system and gives an overview of their function and contents. | |||
8884 | :term:`TMPDIR` directory structure and is specific to | 8603 | :term:`TMPDIR` directory structure and is specific to |
8885 | the recipe being built and the system for which it is being built. | 8604 | the recipe being built and the system for which it is being built. |
8886 | 8605 | ||
8887 | The ``WORKDIR`` directory is defined as follows: | 8606 | The ``WORKDIR`` directory is defined as follows:: |
8888 | :: | ||
8889 | 8607 | ||
8890 | ${TMPDIR}/work/${MULTIMACH_TARGET_SYS}/${PN}/${EXTENDPE}${PV}-${PR} | 8608 | ${TMPDIR}/work/${MULTIMACH_TARGET_SYS}/${PN}/${EXTENDPE}${PV}-${PR} |
8891 | 8609 | ||
@@ -8904,8 +8622,7 @@ system and gives an overview of their function and contents. | |||
8904 | ``qemux86-poky-linux`` machine target system. Furthermore, suppose | 8622 | ``qemux86-poky-linux`` machine target system. Furthermore, suppose |
8905 | your recipe is named ``foo_1.3.0-r0.bb``. In this case, the work | 8623 | your recipe is named ``foo_1.3.0-r0.bb``. In this case, the work |
8906 | directory the build system uses to build the package would be as | 8624 | directory the build system uses to build the package would be as |
8907 | follows: | 8625 | follows:: |
8908 | :: | ||
8909 | 8626 | ||
8910 | poky/build/tmp/work/qemux86-poky-linux/foo/1.3.0-r0 | 8627 | poky/build/tmp/work/qemux86-poky-linux/foo/1.3.0-r0 |
8911 | 8628 | ||