summaryrefslogtreecommitdiffstats
path: root/meta/conf/bitbake.conf
AgeCommit message (Collapse)Author
2022-03-02base/license: Rework INCOMPATIBLE_LICENSE variable handlingSaul Wold
This re-writes the INCOMPATIBLE_LICENSE checking code to replace the WHITELIST_<lic> with INCOMPATIBLE_LICENSE_EXCEPTIONS = '<pkg>:<lic> <pkg>:<lic> ...' This initial change leaves most of the code structure in place, but the code in base.bbclass needs to be re-written to make the check more consistent around packages (PKGS) and not recipe names (PN). This also is taking into account the changes for SPDX licenses. The aim is to provide a mode consistent variable where the variable name is known and can easily be queried. Signed-off-by: Saul Wold <saul.wold@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-21meta: Rename LICENSE_FLAGS variableSaul Wold
Signed-off-by: Saul Wold <saul.wold@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-21bitbake.conf: Add entries to warn on usage of removed variablesRichard Purdie
Add entries for the removed variables TUNEABI_WHITELIST and INHERIT_BLACKLIST. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-21icecc: Improve variables/terminologyRichard Purdie
The SYSTEM and USER seperation between variables seems odd and not necessary, drop it. Avoid the use of whitelist/blacklist and also change "packages" to "recipes" since that misuse causes confusion. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-21bitbake.conf: Add entries for renamed variablesRichard Purdie
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-21blacklist: Replace class with SKIP_RECIPE variableSaul Wold
Remove the old class and rename VarFlag to SKIP_RECIPE, handling this in base.bbclass for efficiency. This means a separate inherit is no longer needed. This change better describes what the VarFlag is doing since it is implemeted with the SkipRecipe() function. By moving this into base.bbclass we simplify the distro inherit. Signed-off-by: Saul Wold <saul.wold@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-21meta/scripts: Handle bitbake variable renamingRichard Purdie
After other variables were renamed in bitbake, update OE-Core to match. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-21meta/scripts: Change BB_ENV_EXTRA_WHITE -> BB_ENV_PASSTHROUGH_ADDITIONSRichard Purdie
After the change to bitbake, update the references in OE-Core to match the updates. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-11-24bitbake.conf: Pass -D option to ranlib for determisimRichard Purdie
Add the -D option to BUILD_RANLIB so that deterministic archives are built for native/cross output. This improves the changes of hash equivalence matches and hence build artefact reuse. We don't need this in the target case since we compile binutils-cross with an option making this the default. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-11-08bitbake.conf: Use wayland distro feature for native buildsTom Hochstein
The wayland-scanner is missing from SDKs with weston, but the weston build requires wayland-scanner. Allow the distro feature in order to include the wayland-scanner packages via nativesdk-packagegroup-sdk-host.bb. Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-11-03bitbake.conf: Fix corruption of GNOME mirror urlRichard Purdie
The url changes from the script accidentally corrupted this mirror url, fix it. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-10-30meta: Add explict branch to git SRC_URIsRichard Purdie
There is uncertainty about the default branch name in git going forward. To try and cover the different possible outcomes, add branch names to all git:// and gitsm:// SRC_URI entries. This update was made with the script added to contrib in this patch which aims to help others convert other layers. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-10-16reproducible: Drop BUILD_REPRODUCIBLE_BINARIES variableRichard Purdie
We want things to be reproduicble and the variable doesn't really change much any more. Drop the remaining uses and make those code paths always active. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-10-16reproducible: Move variable definitions to bitbake.confRichard Purdie
The reproducibility code was originally developed as separate standalone class but development is no longer experimental and the code is widely tested and used by default for poky. Reproducible builds are the direction we need to take as a project. Transition the core variable definitions to bitbake.conf as part of a move to make these part of the default workflow. This also helps reduce test matrix complexity as there is now one code path. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-10-14bitbake.conf: Add gpg-agent as a host toolDaniel McGregor
If gpg is used, it will find the first gpg agent in the path, this may lead to issues where gpg comes from the host, and the agent comes from a gnupg-native due to package signing. The versions being out of sync causes gpg to fail. Signed-off-by: Daniel McGregor <daniel.mcgregor@vecima.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-10-14bitbake.conf: Add BB_CURRENTTASK to BB_HASHEXCLUDERichard Purdie
Tasks shouldn't vary dependning on the value of BB_CURRENTTASK. They happen not to due to when bitbake sets this but to fix other issues, bitbake needs to set it earlier. Therefore exclude from hashes globally. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-10-14buildhistory: Fix package output files for SDKsAndres Beltran
Currently, installed packages are listed for images in image-info.txt, but not for SDKs in sdk-info.txt. Add TOOLCHAIN_HOST_TASK and TOOLCHAIN_TARGET_TASK to the output variables in sdk-info.txt. Moreover, package output files for the SDK host are empty because PKGDATA_DIR defaults to the target directory. Fix this bug and create a new variable called PKGDATA_DIR_SDK which stores the correct path for the SDK host package data. Signed-off-by: Andres Beltran <abeltran@linux.microsoft.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2021-10-11package_rpm: use zstd instead of xzAlexander Kanavin
zstd has similar time and space performance in compression but is vastly faster in decompression, which benefits rootfs creation (especially when installing very large packages) and on-target package installation. Also, ensure ZSTD_THREADS doesn't change sstate checksums. The detailed explanation is in the commit making similar change for XZ_THREADS. Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2021-10-04bitbake.conf: Set vardepvalue for PARALLEL_MAKEINSTRichard Purdie
If you leave PARALLEL_MAKEINST at its default from PARALLEL_MAKE, sstate checksums are fine and don't change as the number of cores do. If you override it to a specific value, this does the cause the sstate checksums to change. We don't want the checksums to change if the value of this variable differs. Therefore set a vardepvalue so a specific value is used for checksum purposes. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-09-11bitbake.conf: Ensure XZ_THREADS doesn't change sstate checksumsRichard Purdie
rpm output packages currently depend on the value of XZ_THREADS which is ok if left to the default value but problematic if system limits are set such as on the autobuilder. Force the value to a specific one in the hashes for better sstate reuse and consistent rpm task checksums. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-08-26bitbake.conf: Use the new variable override syntax in a commentPeter Kjellerstedt
It is probably a good idea if the comment that describes how variable overrides work use the new override syntax... Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-08-17bitbake.conf: Add lz4c, pzstd and zstdJoshua Watt
Adds the command line compression tools which are needed by bitbake Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2021-08-12meta: use new override syntax in commentsChen Qi
Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-08-12bitbake.conf: add DEBUG_PREFIX_MAP to TARGET_LDFLAGSTony Battersby
-f*-prefix-map flags are required when linking with LTO enabled to make the output binary reproducible. See discussion here: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101473 [YOCTO #14481] Signed-off-by: Tony Battersby <tonyb@cybernetics.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-08-01sdk: Decouple default install path from built in pathRichard Purdie
Add SDKPATHINSTALL which is used as the default install location of the SDK instead of SDKPATH. This means the default install path isn't encoded into every SDK binary, meaning if a date is used there the entire SDK doesn't have to rebuild. Most distros can switch to only customise SDKPATHINSTALL meaning more sstate reuse too. [YOCTO #14100] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-07-30Convert to new override syntaxRichard Purdie
This is the result of automated script conversion: scripts/contrib/convert-overrides.py <oe-core directory> converting the metadata to use ":" as the override character instead of "_". Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-07-24bitbake.conf: change GNOME_MIRROR to new oneOleksandr Kravchuk
URI has been permanently moved and returns HTTP 301. Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-06-17bitbake.conf: enable debuginfod in native/nativesdkAlexander Kanavin
This was an oversight when the distro feature was introduced. Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-05-18bitbake.conf: alphabetize contents of ASSUME_PROVIDEDRobert P. J. Day
Alphabetical order is always good. Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-05-06bitbake.conf: sort MIRROR list, add missing SAMBA_MIRRORRobert P. J. Day
As is the pattern with all lists, put the list of MIRRORs in alphabetical order, and add an entry for SAMBA_MIRROR as it appears in the samba recipe from the meta-networking layer. Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-04-27bitbake.conf: Use gcc-nm as default NMKhem Raj
This ensures linker LTO plugin is loaded correctly Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-04-05bitbake.conf: Limit the number of OpenMP threadsJoshua Watt
Limits the number of OpenMP threads to match BB_NUMBER_THREADS. This prevents OpenMP (libgomp in particular) from falling back to using all the available CPUs, which behaves poorly when attempting to limit build usage, especially when attempting to build in a container. Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-03-28bitbake.conf: ensure BUILD_* tools match target toolsRoss Burton
Add a few more tools to the BUILD_* list, to match the target tool list. Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-03-28bitbake.conf: correct description of HOSTTOOLS_DIRRobert P. J. Day
HOSTTOOLS_DIR contains symlinks to host tools, not copies Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-26bitbake.conf: Split PSEUDO_IGNORE_PATHS to be more readableRichard Purdie
We've had a lot of concern about the readability of diffs of this path setting, refactor to avoid long line length. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-24bitbake.conf: Introduce FAKEROOTLOGS variable used by bitbake to print ↵Tomasz Dziendzielski
pseudo.log Bitbake depends on this variable while looking for pseudo.log file in case of fakeroot task failure. Signed-off-by: Tomasz Dziendzielski <tomasz.dziendzielski@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-23bitbake.conf: Do not use lib64 for baselib on musl/ppc64Khem Raj
musl is configured to use /lib and /usr/lib for ppc64 unlike glibc where it is expected to have libs in /lib64 and /usr/lib64 Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-16bitbake.conf: Set as default task umask of 022Richard Purdie
Rather than trying to set the umask of every task to the correct value for determinism, set one value globally. This uses a new bitbake variable so bump the minimum version to match. This fixes strange determinism issues in at least quilt-ptest, valgrind-ptest and kernel-devsrc. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-29bitbake.conf/python: Drop setting RDEPENDS/RPROVIDES defaultRichard Purdie
We never recommend setting RDEPENDS or RPROVIDES without a package name against them. The default in bitbake.conf is legacy only, drop it. The python recipe was trying to add to the empty variable in the native case fix that too. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20Revert "ccache.bbclass: use ccache from host distribution"Robert Yang
This reverts commit f5b29367af4d8e5daea5771264774aa49519f9a8. Will use ccache-native which is more reliable. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-08bitbake.conf: Add /run/ to PSEUDO_IGNORE_PATHSRichard Purdie
Builds were failing on WSL2 which turns out to be due to accesses to /run/ on those systems. Add this to PSEUDO_IGNORE_PATHS to fix builds on WSL2. [YOCTO #14175] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-05bitbake.conf: Add mkfifo to HOSTTOOLSRichard Purdie
This is about to be needed by the psplash recipe and is a standard part of coreutils so usually present on hosts. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-12-31ccache.bbclass: use ccache from host distributionAlexander Kanavin
ccache 4.x has hard dependencies on cmake-native (used as build system) and zstd, which means inserting ccache-native as DEPENDS into everything creates circular dependencies which are impossible to break. ccache 3.x did not have this problem as it used plain makefiles and an in-tree copy of zlib. Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-12-24bitbake.conf: default SDKMACHINE to the build host architectureRoss Burton
Currently there's a limitation that Extensible SDKs can only be build on a machine with the same architecture as the SDK. However, SDKMACHINE defaults to x86-64, which means eSDKs cannot be built out of the box on arm64 systems. By defaulting SDKMACHINE to ${BUILD_ARCH} we generate SDKs for the build host, so they'll always work out of the box. Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-12-20bitbake.conf: Prevent pyc file generation in pseudo contextPaul Barker
This also effectively reverts commit b6d30c21b0: bitbake.conf: Extend PSEUDO_IGNORE_PATHS to ${COREBASE}/meta The contents of ${COREBASE}/meta were ignored as pyc files could be generated for the contents of the lib subdirectory if python modules were imported within a pseudo context. However this doesn't protect us from pyc files being generated in the lib directories for other layers. It's far better to tell python not to produce pyc files when running under pseudo (by setting the PYTHONDONTWRITEBYTECODE variable) as this will cover any location where pyc files could possibly be created. This variable is set in FAKEROOTBASEENV so that it applies to the bitbake-worker instance for fakeroot tasks, preventing pyc files from being generated for imports in python tasks themselves. Also add a test case to ensure that pyc files are not created in tasks which are executed under pseudo. Signed-off-by: Paul Barker <pbarker@konsulko.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-12-20bitbake.conf: Canonicalize paths in PSEUDO_IGNORE_PATHSPeter Kjellerstedt
Use oe.path.canonicalize() to canonicalize the paths in PSEUDO_IGNORE_PATHS before passing them to pseudo. This is needed since pseudo will compare them to paths that are canonicalized. Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-12-09Revert "bitbake.conf: Add all layers (from BBLAYERS) to PSEUDO_IGNORE_PATHS"Richard Purdie
This reverts commit cc30537bb4d0815c4d69f0b1a1a8a200085902d5. There are issues with this change where the build directory may be included within the paths included in BBLAYERS, which is particularly problematic where people are using kas. An alternative to this to handle the pyc file issue is being worked on but revert this for now whilst that fix is developed.
2020-12-03bitbake.conf: Add all layers (from BBLAYERS) to PSEUDO_IGNORE_PATHSPeter Kjellerstedt
Instead of ignoring ${COREBASE}/meta in PSEUDO_IGNORE_PATHS (which may or may not ignore all layers depending on how they are named and placed under ${COREBASE}), ignore all layers. Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-10-30bitbake.conf: Exclude ${CCACHE_DIR} from pseudo databaseMingli Yu
When ccache enabled as below: INHERIT += "ccache" CCACHE_DIR = "/path/build/ccache" There comes do_install failure for some recipes randomly, take linux-libc-headerswhen as example. $ cat /path/build/tmp/work/corei7-64-wrs-linux/linux-libc-headers/5.8-r0/pseudo/pseudo.log [snip] path mismatch [1 link]: ino 243004209 db '/path/build/ccache/6/stats' req '/path/build/ccache/7/stats.lock'. [snip] Exclude ${CCACHE_DIR} from pseudo database to fix the potential do_install failure. Signed-off-by: Mingli Yu <mingli.yu@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-10-08bitbake.conf: Extend PSEUDO_IGNORE_PATHS to ${COREBASE}/metaRichard Purdie
Unfortunately, .pyc files can be generated in meta/lib/oe which corrupt the pseudo database so we need to extend the ignore list to cover this as well. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>