Patrick Williams | d8c66bc | 2016-06-20 12:57:21 -0500 | [diff] [blame] | 1 | # BBMASK contains regular expressions that can be used to tell BitBake to ignore |
| 2 | # certain recipes. |
| 3 | #BBMASK = "" |
| 4 | |
| 5 | # |
| 6 | # Parallelism Options |
| 7 | # |
| 8 | # These two options control how much parallelism BitBake should use. The first |
| 9 | # option determines how many tasks bitbake should run in parallel: |
| 10 | # |
| 11 | #BB_NUMBER_THREADS ?= "4" |
| 12 | # |
| 13 | # Default to setting automatically based on cpu count |
| 14 | #BB_NUMBER_THREADS ?= "${@oe.utils.cpu_count()}" |
| 15 | # |
| 16 | # The second option controls how many processes make should run in parallel when |
| 17 | # running compile tasks: |
| 18 | # |
| 19 | #PARALLEL_MAKE ?= "-j 4" |
| 20 | # |
| 21 | # Default to setting automatically based on cpu count |
| 22 | #PARALLEL_MAKE ?= "-j ${@oe.utils.cpu_count()}" |
| 23 | # |
| 24 | # For a quad-core machine, BB_NUMBER_THREADS = "4", PARALLEL_MAKE = "-j 4" would |
| 25 | # be appropriate for example. |
| 26 | |
| 27 | |
| 28 | # glibc configurability is used to reduce minimal image's size. |
| 29 | # the all supported glibc options are listed in DISTRO_FEATURES_LIBC |
| 30 | # and disabled by default. Uncomment and copy the DISTRO_FEATURES_LIBC |
| 31 | # and DISTRO_FEATURES definitions to local.conf to enable the options. |
| 32 | #DISTRO_FEATURES_LIBC = "ipv6 libc-backtrace libc-big-macros libc-bsd libc-cxx-tests libc-catgets libc-charsets libc-crypt \ |
| 33 | # libc-crypt-ufc libc-db-aliases libc-envz libc-fcvt libc-fmtmsg libc-fstab libc-ftraverse \ |
| 34 | # libc-getlogin libc-idn libc-inet libc-inet-anl libc-libm libc-locales libc-locale-code \ |
| 35 | # libc-memusage libc-nis libc-nsswitch libc-rcmd libc-rtld-debug libc-spawn libc-streams libc-sunrpc \ |
| 36 | # libc-utmp libc-utmpx libc-wordexp libc-posix-clang-wchar libc-posix-regexp libc-posix-regexp-glibc \ |
| 37 | # libc-posix-wchar-io" |
| 38 | |
| 39 | #DISTRO_FEATURES = "alsa bluetooth ext2 irda pcmcia usbgadget usbhost wifi nfs zeroconf pci ${DISTRO_FEATURES_LIBC}" |
| 40 | |
| 41 | # If you want to get an image based on directfb without x11, Please copy this variable to build/conf/local.conf |
| 42 | #DISTRO_FEATURES = "alsa argp bluetooth ext2 irda largefile pcmcia usbgadget usbhost wifi xattr nfs zeroconf pci 3g directfb ${DISTRO_FEATURES_LIBC}" |
| 43 | |
| 44 | # ENABLE_BINARY_LOCALE_GENERATION controls the generation of binary locale |
| 45 | # packages at build time using qemu-native. Disabling it (by setting it to 0) |
| 46 | # will save some build time at the expense of breaking i18n on devices with |
| 47 | # less than 128MB RAM. |
| 48 | #ENABLE_BINARY_LOCALE_GENERATION = "1" |
| 49 | |
Brad Bishop | 6e60e8b | 2018-02-01 10:27:11 -0500 | [diff] [blame] | 50 | # If GLIBC_SPLIT_LC_PACKAGES is set to a non-zero value, convert |
| 51 | # glibc-binary-localedata-XX-YY to be a meta package depending on |
| 52 | # glibc-binary-localedata-XX-YY-lc-address and so on. This enables |
| 53 | # saving quite some space if someone doesn't need LC_COLLATE for |
| 54 | # example. |
| 55 | #GLIBC_SPLIT_LC_PACKAGES = "1" |
| 56 | |
Patrick Williams | d8c66bc | 2016-06-20 12:57:21 -0500 | [diff] [blame] | 57 | # Set GLIBC_GENERATE_LOCALES to the locales you wish to generate should you not |
| 58 | # wish to perform the time-consuming step of generating all LIBC locales. |
| 59 | # NOTE: If removing en_US.UTF-8 you will also need to uncomment, and set |
| 60 | # appropriate value for IMAGE_LINGUAS. |
| 61 | # WARNING: this may break localisation! |
| 62 | #GLIBC_GENERATE_LOCALES = "en_GB.UTF-8 en_US.UTF-8" |
| 63 | #IMAGE_LINGUAS ?= "en-gb" |
| 64 | |
| 65 | # The following are used to control options related to debugging. |
| 66 | # |
| 67 | # Uncomment this to change the optimization to make debugging easer, at the |
| 68 | # possible cost of performance. |
| 69 | # DEBUG_BUILD = "1" |
| 70 | # |
| 71 | # Uncomment this to disable the stripping of the installed binaries |
| 72 | # INHIBIT_PACKAGE_STRIP = "1" |
| 73 | # |
| 74 | # Uncomment this to disable the split of the debug information into -dbg files |
| 75 | # INHIBIT_PACKAGE_DEBUG_SPLIT = "1" |
| 76 | # |
| 77 | # When splitting debug information, the following controls the results of the |
| 78 | # file splitting. |
| 79 | # |
| 80 | # .debug (default): |
| 81 | # When splitting the debug information will be placed into |
| 82 | # a .debug directory in the same dirname of the binary produced: |
| 83 | # /bin/foo -> /bin/.debug/foo |
| 84 | # |
| 85 | # debug-file-directory: |
| 86 | # When splitting the debug information will be placed into |
| 87 | # a central debug-file-directory, /usr/lib/debug: |
| 88 | # /bin/foo -> /usr/lib/debug/bin/foo.debug |
| 89 | # |
| 90 | # Any source code referenced in the debug symbols will be copied |
| 91 | # and made available within the /usr/src/debug directory |
| 92 | # |
| 93 | #PACKAGE_DEBUG_SPLIT_STYLE = '.debug' |
| 94 | # PACKAGE_DEBUG_SPLIT_STYLE = 'debug-file-directory' |
| 95 | |
| 96 | # Uncomment these to build a package such that you can use gprof to profile it. |
| 97 | # NOTE: This will only work with 'linux' targets, not |
| 98 | # 'linux-uclibc', as uClibc doesn't provide the necessary |
| 99 | # object files. Also, don't build glibc itself with these |
| 100 | # flags, or it'll fail to build. |
| 101 | # |
| 102 | # PROFILE_OPTIMIZATION = "-pg" |
| 103 | # SELECTED_OPTIMIZATION = "${PROFILE_OPTIMIZATION}" |
| 104 | # LDFLAGS =+ "-pg" |
| 105 | |
| 106 | # TCMODE controls the characteristics of the generated packages/images by |
| 107 | # telling poky which toolchain 'profile' to use. |
| 108 | # |
| 109 | # The default is "default" which uses the internal toolchain. With |
| 110 | # additional layers, it is possible to set this to use a precompiled |
| 111 | # external toolchain. One example is the Sourcery G++ Toolchain, support |
| 112 | # for which is now in the separate meta-sourcery layer: |
| 113 | # |
| 114 | # http://github.com/MentorEmbedded/meta-sourcery/ |
| 115 | # |
| 116 | # meta-sourcery can be used as a template for adding support for other |
| 117 | # external toolchains. See the link above for further details. |
| 118 | # |
| 119 | # TCMODE points the system to a file in conf/distro/include/tcmode-${TCMODE}.inc, |
| 120 | # so for meta-sourcery which has conf/distro/include/tcmode-external-sourcery.inc |
| 121 | # you would set it as follows: |
| 122 | # |
| 123 | # TCMODE ?= "external-sourcery" |
| 124 | |
| 125 | # mklibs library size optimization is more useful to smaller images, |
| 126 | # and less useful for bigger images. Also mklibs library optimization |
| 127 | # can break the ABI compatibility, so should not be applied to the |
| 128 | # images which are to be extended or upgraded later. |
| 129 | #This enabled mklibs library size optimization just for the specified image. |
| 130 | #MKLIBS_OPTIMIZED_IMAGES ?= "core-image-minimal" |
| 131 | #This enable mklibs library size optimization will be for all the images. |
| 132 | #MKLIBS_OPTIMIZED_IMAGES ?= "all" |
| 133 | |
| 134 | # Uncomment this if your host distribution provides the help2man tool. |
| 135 | #ASSUME_PROVIDED += "help2man-native" |
| 136 | |
| 137 | # This value is currently used by pseudo to determine if the recipe should |
| 138 | # build both the 32-bit and 64-bit wrapper libraries on a 64-bit build system. |
| 139 | # |
| 140 | # Pseudo will attempt to determine if a 32-bit wrapper is necessary, but |
| 141 | # it doesn't always guess properly. If you have 32-bit executables on |
| 142 | # your 64-bit build system, you likely want to set this to "0", |
| 143 | # otherwise you could end up with incorrect file attributes on the |
| 144 | # target filesystem. |
| 145 | # |
| 146 | # Default is to not build 32 bit libs on 64 bit systems, uncomment this |
| 147 | # if you need the 32 bits libs |
| 148 | #NO32LIBS = "0" |
| 149 | |
| 150 | # Uncomment the following lines to enable multilib builds |
| 151 | #require conf/multilib.conf |
| 152 | #MULTILIBS = "multilib:lib32" |
| 153 | #DEFAULTTUNE_virtclass-multilib-lib32 = "x86" |
| 154 | |
| 155 | # Set RPM_PREFER_ELF_ARCH to configure preferred ABI when using rpm packaging |
| 156 | # backend to generate a rootfs, choices are: |
| 157 | # 1: ELF32 wins |
| 158 | # 2: ELF64 wins |
| 159 | # 4: ELF64 N32 wins (for mips64 or mips64el only) |
| 160 | #RPM_PREFER_ELF_ARCH ?= "2" |
| 161 | |
| 162 | # The network based PR service host and port |
| 163 | # Uncomment the following lines to enable PRservice. |
| 164 | # Set PRSERV_HOST to 'localhost:0' to automatically |
| 165 | # start local PRService. |
| 166 | # Set to other values to use remote PRService. |
| 167 | #PRSERV_HOST = "localhost:0" |
| 168 | |
| 169 | # Additional image generation features |
| 170 | # |
| 171 | # The following is a list of classes to import to use in the generation of images |
| 172 | # currently an example class is image_types_uboot |
| 173 | # IMAGE_CLASSES = " image_types_uboot" |
| 174 | |
| 175 | # The following options will build a companion 'debug filesystem' in addition |
| 176 | # to the normal deployable filesystem. This companion system allows a |
| 177 | # debugger to know the symbols and related sources. It can be used to |
| 178 | # debug a remote 'production' system without having to add the debug symbols |
| 179 | # and sources to remote system. If IMAGE_FSTYPES_DEBUGFS is not defined, it |
| 180 | # defaults to IMAGE_FSTYPES. |
| 181 | #IMAGE_GEN_DEBUGFS = "1" |
| 182 | #IMAGE_FSTYPES_DEBUGFS = "tar.gz" |
| 183 | |
| 184 | # Incremental rpm image generation, the rootfs would be totally removed |
| 185 | # and re-created in the second generation by default, but with |
| 186 | # INC_RPM_IMAGE_GEN = "1", the rpm based rootfs would be kept, and will |
| 187 | # do update(remove/add some pkgs) on it. NOTE: This is not suggested |
| 188 | # when you want to create a productive rootfs |
| 189 | #INC_RPM_IMAGE_GEN = "1" |
| 190 | |
| 191 | # This is a list of packages that require a commercial license to ship |
| 192 | # product. If shipped as part of an image these packages may have |
| 193 | # implications so they are disabled by default. To enable them, |
| 194 | # un-comment the below as appropriate. |
| 195 | #LICENSE_FLAGS_WHITELIST = "commercial_gst-fluendo-mp3 \ |
| 196 | # commercial_gst-openmax \ |
| 197 | # commercial_gst-plugins-ugly \ |
| 198 | # commercial_lame \ |
| 199 | # commercial_libmad \ |
| 200 | # commercial_libomxil \ |
| 201 | # commercial_mpeg2dec" |
| 202 | |
| 203 | |
| 204 | # |
| 205 | # Disk space monitor, take action when the disk space or the amount of |
| 206 | # inode is running low, it is enabled when BB_DISKMON_DIRS is set. |
| 207 | # |
| 208 | # Set the directory for the monitor, the format is: |
| 209 | # "action,directory,minimum_space,minimum_free_inode" |
| 210 | # |
| 211 | # The "action" must be set and should be one of: |
| 212 | # ABORT: Immediately abort |
| 213 | # STOPTASKS: The new tasks can't be executed any more, will stop the build |
| 214 | # when the running tasks have been done. |
| 215 | # WARN: show warnings (see BB_DISKMON_WARNINTERVAL for more information) |
| 216 | # |
| 217 | # The "directory" must be set, any directory is OK. |
| 218 | # |
| 219 | # Either "minimum_space" or "minimum_free_inode" (or both of them) |
| 220 | # should be set, otherwise the monitor would not be enabled, |
| 221 | # the unit can be G, M, K or none, but do NOT use GB, MB or KB |
| 222 | # (B is not needed). |
| 223 | #BB_DISKMON_DIRS = "STOPTASKS,${TMPDIR},1G,100K WARN,${SSTATE_DIR},1G,100K" |
| 224 | # |
| 225 | # Set disk space and inode interval (only works when the action is "WARN", |
| 226 | # the unit can be G, M, or K, but do NOT use the GB, MB or KB |
| 227 | # (B is not needed), the format is: |
| 228 | # "disk_space_interval,disk_inode_interval", the default value is |
| 229 | # "50M,5K" which means that it would warn when the free space is |
| 230 | # lower than the minimum space(or inode), and would repeat the warning |
| 231 | # when the disk space reduces 50M (or the amount of inode reduces 5k). |
| 232 | #BB_DISKMON_WARNINTERVAL = "50M,5K" |
| 233 | |
| 234 | # Archive the source and put them to ${DEPLOY_DIR}/sources/. |
| 235 | # |
| 236 | #INHERIT += "archiver" |
| 237 | # |
| 238 | # The tarball for the patched source will be created by default, and you |
| 239 | # can configure the archiver as follow: |
| 240 | # |
| 241 | # Create archive for: |
| 242 | # 1) original (or unpacked) source: |
| 243 | #ARCHIVER_MODE[src] = "original" |
| 244 | # 2) patched source: (default) |
| 245 | #ARCHIVER_MODE[src] = "patched" |
| 246 | # 3) configured source: |
| 247 | #ARCHIVER_MODE[src] = "configured" |
| 248 | # |
| 249 | # 4) the patches between do_unpack and do_patch: |
| 250 | #ARCHIVER_MODE[diff] = "1" |
| 251 | # set the files that you'd like to exclude from the diff: |
| 252 | #ARCHIVER_MODE[diff-exclude] ?= ".pc autom4te.cache patches" |
| 253 | # |
| 254 | # 5) the environment data, similar to 'bitbake -e recipe': |
| 255 | #ARCHIVER_MODE[dumpdata] = "1" |
| 256 | # |
| 257 | # 6) the recipe (.bb and .inc): |
| 258 | #ARCHIVER_MODE[recipe] = "1" |
| 259 | # |
| 260 | # 7) Whether output the .src.rpm package: |
| 261 | #ARCHIVER_MODE[srpm] = "1" |
| 262 | # |
| 263 | # 8) Filter the license, the recipe whose license in |
| 264 | # COPYLEFT_LICENSE_INCLUDE will be included, and in |
| 265 | # COPYLEFT_LICENSE_EXCLUDE will be excluded. |
| 266 | #COPYLEFT_LICENSE_INCLUDE = 'GPL* LGPL*' |
| 267 | #COPYLEFT_LICENSE_EXCLUDE = 'CLOSED Proprietary' |
| 268 | # |
| 269 | # 9) Config the recipe type that will be archived, the type can be |
| 270 | # target, native, nativesdk, cross, crosssdk and cross-canadian, |
| 271 | # you can set one or more types. Archive all types by default. |
| 272 | #COPYLEFT_RECIPE_TYPES = 'target' |
| 273 | # |
| 274 | |
Patrick Williams | d8c66bc | 2016-06-20 12:57:21 -0500 | [diff] [blame] | 275 | # |
| 276 | # GCC/LD FLAGS to enable more secure code generation |
| 277 | # |
| 278 | # By including the security_flags include file you enable flags |
| 279 | # to the compiler and linker that cause them to generate more secure |
| 280 | # code, this is enabled by default in the poky-lsb distro. |
| 281 | # This does affect compile speed slightly. |
| 282 | # |
| 283 | # Use the following line to enable the security compiler and linker flags to your build |
| 284 | #require conf/distro/include/security_flags.inc |
| 285 | |
| 286 | # Image level user/group configuration. |
| 287 | # Inherit extrausers to make the setting of EXTRA_USERS_PARAMS effective. |
| 288 | #INHERIT += "extrausers" |
| 289 | # User / group settings |
| 290 | # The settings are sperated by the ; character. |
| 291 | # Each setting is actually a command. The supported commands are useradd, |
| 292 | # groupadd, userdel, groupdel, usermod and groupmod. |
| 293 | #EXTRA_USERS_PARAMS = "\ |
| 294 | #useradd -p '' tester; \ |
| 295 | #groupadd developers; \ |
| 296 | #userdel nobody; \ |
| 297 | #groupdel video; \ |
| 298 | #groupmod -g 1020 developers; \ |
| 299 | #usermod -s /bin/sh tester; \ |
| 300 | #" |
| 301 | |
| 302 | # Various packages dynamically add users and groups to the system at package |
| 303 | # install time. For programs that do not care what the uid/gid is of the |
| 304 | # resulting users/groups, the order of the install will determine the final |
| 305 | # uid/gid. This can lead to non-deterministic uid/gid values from one build |
| 306 | # to another. Use the following settings to specify that all user/group adds |
| 307 | # should be created based on a static passwd/group file. |
| 308 | # |
| 309 | # Note, if you enable or disable the useradd-staticids in a configured system, |
| 310 | # the TMPDIR may contain incorrect uid/gid values. Clearing the TMPDIR |
| 311 | # will correct this condition. |
| 312 | # |
| 313 | # By default the system looks in the BBPATH for files/passwd and files/group |
| 314 | # the default can be overriden by spefying USERADD_UID/GID_TABLES. |
| 315 | # |
| 316 | #USERADDEXTENSION = "useradd-staticids" |
| 317 | #USERADD_UID_TABLES = "files/passwd" |
| 318 | #USERADD_GID_TABLES = "files/group" |
| 319 | # |
| 320 | # In order to prevent generating a system where a dynamicly assigned uid/gid |
| 321 | # can exist, you should enable the following setting. This will force the |
| 322 | # system to error out if the user/group name is not defined in the |
| 323 | # files/passwd or files/group (or specified replacements.) |
| 324 | #USERADD_ERROR_DYNAMIC = "1" |
| 325 | |
| 326 | # Enabling FORTRAN |
| 327 | # Note this is not officially supported and is just illustrated here to |
| 328 | # show an example of how it can be done |
| 329 | # You'll also need your fortran recipe to depend on libgfortran |
| 330 | #FORTRAN_forcevariable = ",fortran" |
| 331 | #RUNTIMETARGET_append_pn-gcc-runtime = " libquadmath" |
| 332 | |
| 333 | # |
| 334 | # Kernel image features |
| 335 | # |
| 336 | # The INITRAMFS_IMAGE image variable will cause an additional recipe to |
| 337 | # be built as a dependency to the what ever rootfs recipe you might be |
| 338 | # using such as core-image-sato. The initramfs might be needed for |
| 339 | # the initial boot of of the target system such as to load kernel |
| 340 | # modules prior to mounting the root file system. |
| 341 | # |
| 342 | # INITRAMFS_IMAGE_BUNDLE variable controls if the image recipe |
| 343 | # specified by the INITRAMFS_IMAGE will be run through an extra pass |
| 344 | # through the kernel compilation in order to build a single binary |
| 345 | # which contains both the kernel image and the initramfs. The |
| 346 | # combined binary will be deposited into the tmp/deploy directory. |
| 347 | # NOTE: You can set INITRAMFS_IMAGE in an image recipe, but |
| 348 | # INITRAMFS_IMAGE_BUNDLE can only be set in a conf file. |
| 349 | # |
| 350 | #INITRAMFS_IMAGE = "core-image-minimal-initramfs" |
| 351 | #INITRAMFS_IMAGE_BUNDLE = "1" |
| 352 | |
| 353 | # |
| 354 | # IPK Hierarchical feed |
| 355 | # |
| 356 | # In some cases it may be desirable not to have all package files in the same |
| 357 | # directory. An example would be when package feeds are to be uploaded to a |
| 358 | # shared webhosting service or transferred to a Windows machine which may have |
| 359 | # problems with directories containing multiple thousands of files. |
| 360 | # |
| 361 | # If the IPK_HIERARCHICAL_FEED variable is set to "1", packages will be split |
| 362 | # between subdirectories in a similar way to how Debian package feeds are |
| 363 | # organised. In the hierarchical feed, package files are written to |
| 364 | # <outdir>/<arch>/<pkg_prefix>/<pkg_subdir>, where pkg_prefix is the first |
| 365 | # letter of the package file name for non-lib packages or "lib" plus the 4th |
| 366 | # letter of the package file name for lib packages (eg, 'l' for less, 'libc' for |
| 367 | # libc6). pkg_subdir is the root of the package file name, discarding the |
| 368 | # version and architecture parts and the common suffixes '-dbg', '-dev', '-doc', |
| 369 | # '-staticdev', '-locale' and '-locale-*' which are listed in |
| 370 | # meta/conf/bitbake.conf. |
| 371 | # |
| 372 | # If IPK_HIERARCHICAL_FEED is unset or set to any other value, the traditional |
| 373 | # feed layout is used where package files are placed in <outdir>/<arch>/. |
| 374 | # |
| 375 | #IPK_HIERARCHICAL_FEED = "1" |
| 376 | # |
| 377 | |
Patrick Williams | d8c66bc | 2016-06-20 12:57:21 -0500 | [diff] [blame] | 378 | # |
| 379 | # Use busybox/mdev for system initialization |
| 380 | # |
| 381 | #VIRTUAL-RUNTIME_dev_manager = "busybox-mdev" |
| 382 | #VIRTUAL-RUNTIME_login_manager = "busybox" |
| 383 | #VIRTUAL-RUNTIME_init_manager = "busybox" |
| 384 | #VIRTUAL-RUNTIME_initscripts = "initscripts" |
| 385 | #VIRTUAL-RUNTIME_keymaps = "keymaps" |
| 386 | #DISTRO_FEATURES_BACKFILL_CONSIDERED += "sysvinit" |
| 387 | |
| 388 | # |
| 389 | # Use systemd for system initialization |
| 390 | # |
| 391 | #DISTRO_FEATURES_append = " systemd" |
| 392 | #DISTRO_FEATURES_BACKFILL_CONSIDERED += "sysvinit" |
| 393 | #VIRTUAL-RUNTIME_init_manager = "systemd" |
| 394 | #VIRTUAL-RUNTIME_initscripts = "systemd-compat-units" |