summaryrefslogtreecommitdiffstats
path: root/meta/conf/bitbake.conf
Commit message (Collapse)AuthorAgeFilesLines
* bitbake.conf: require lz4 instead of lz4cJustin Bronder3 days1-1/+1
| | | | | | | | | | | | | | | | | | With bitbake commit 'bb: compress: use lz4 instead of lz4c' we require lz4, not lz4c [1]. Going as far back as Ubuntu 16.04/Fedora 25, they are packaged together so it should be safe to simply adjust the requirement from lz4c to lz4. Note that the two are largely the same, but upstream has considered lz4c deprecated since at least 2018 [2]. 1. https://git.openembedded.org/bitbake/commit/?id=907472034b344e4eb73cfd43059a413469f52e1c 2. https://github.com/lz4/lz4/pull/553 (From OE-Core rev: fe167e082cbde1c6d186ecdda531abef610ac2ac) Signed-off-by: Justin Bronder <jsbronder@cold-front.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: Enable ipv6/acl/xattr for nativesdkRichard Purdie5 days1-1/+2
| | | | | | | | | | | | | I was surprised to realise our buildtools doesn't support IPv6 which breaks usage in our own autobuilder, let alone anywhere else. Enable ipv6 in our SDKs and enable acl/xattr as well before we have the same kind of issues with those, these features are now common on most linux systems and we should be defaulting to including them. (From OE-Core rev: e86686cbdbaf5368fae0a490d52a043f8ed4fa0f) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: Mark VOLATILE_TMP_DIR as obsoleteNiko Mauno2024-10-151-0/+1
| | | | | | | | | | | | | This variable was removed in https://git.yoctoproject.org/poky/commit/?id=2f46b6f27dfa3a9d5ad177900fcecfe64c3536f1 ("bitbake.conf: drop VOLATILE_TMP_DIR, use FILESYSTEM_PERMS_TABLES instead") so ensure that distributions become aware that it no longer has any effect. (From OE-Core rev: ec032dd13a19e4d4a332f06ace87f1f02143c3b2) Signed-off-by: Niko Mauno <niko.mauno@vaisala.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: Mark VOLATILE_LOG_DIR as obsoleteNiko Mauno2024-10-151-0/+1
| | | | | | | | | | | | | This variable was removed in https://git.yoctoproject.org/poky/commit/?id=2f8806deb7655b37d6f8d12ff54680d6acf7a298 ("bitbake.conf: drop VOLATILE_LOG_DIR, use FILESYSTEM_PERMS_TABLES instead") so ensure that distributions become aware that it no longer has any effect. (From OE-Core rev: a951a900ce459191a9796a7069a1d3b658dda88f) Signed-off-by: Niko Mauno <niko.mauno@vaisala.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: Add mingw32 SOLIBS and SOLIBSDEV definitionsRichard Purdie2024-09-201-0/+2
| | | | | | | | | | We may as well define the dll output for mingw alongside the darwin dylib definitions. There are some recipes which output .so files even on mingw but those can be handled specifically in mingw. (From OE-Core rev: bb3101fffceacfa4c021c33affb7c785da8d859f) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: mark TCLIBCAPPEND as deprecatedRoss Burton2024-09-171-0/+1
| | | | | | | | | | | In oe-core ebcd355 TCLIBCAPPEND (a string that is appended to TMPDIR) was removed entirely. Warn if this is being set by the distro as it will no longer have any effect. (From OE-Core rev: 992ba784c168710328749fd61a0e2869df519dea) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: DEBUG_PREFIX_MAP: add -fmacro-prefix-map for STAGING_DIR_NATIVEMartin Jansa2024-09-051-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * the default STAGING_DIR_NATIVE starts with STAGING_DIR_HOST and the only difference is '-native' suffix at the end * this can lead into replacing STAGING_DIR_NATIVE path with just "-native" in FILE macros * I've noticed this by accident in python3-matplotlib where buildpaths QA warning was triggered only for lib32-python3-matplotlib and it was because pybind11 path to STAGING_DIR_NATIVE was mapped to only '-native/<path>' in python3-matplotlib build (which doesn't trigger buildpaths QA and lib32-python3-matplotlib the macro path wasn't replaced at all, because of 'lib32-' prefix in: -fdebug-prefix-map=/OE/build/oe-core/tmp-glibc/work/i586-oemllib32-linux/lib32-python3-matplotlib/3.7.2/lib32-recipe-sysroot= \ -fmacro-prefix-map=/OE/build/oe-core/tmp-glibc/work/i586-oemllib32-linux/lib32-python3-matplotlib/3.7.2/lib32-recipe-sysroot= \ -fdebug-prefix-map=/OE/build/oe-core/tmp-glibc/work/i586-oemllib32-linux/lib32-python3-matplotlib/3.7.2/recipe-sysroot-native= \ * more details in meta-python fix for lib32-python3-matplotlib: https://lists.openembedded.org/g/openembedded-devel/message/112074 * the order of *-prefix-map options still seems to be that the last one matching wins and this works with gcc and clang, see: https://reviews.llvm.org/D148975?id=516863 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109591 * some components might sometimes be built with -coverage and could use -fcoverage-prefix-map: https://reviews.llvm.org/D148757 or -fprofile-prefix-map: https://gcc.gnu.org/onlinedocs/gcc/Instrumentation-Options.html#index-fprofile-prefix-map but will leave that to recipes which actually use -coverage for now (From OE-Core rev: 90dea34cb624af744a7d5deabdd5cbfb3c10db87) Signed-off-by: Martin Jansa <martin.jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: drop VOLATILE_TMP_DIR, use FILESYSTEM_PERMS_TABLES insteadChangqing Li2024-08-281-5/+2
| | | | | | | | | | | | | | | | * Drop VOLATILE_TMP_DIR, use FILESYSTEM_PERMS_TABLES instead. By default, FILESYSTEM_PERMS_TABLES ?= "files/fs-perms.txt \ files/fs-perms-volatile-log.txt \ files/fs-perms-volatile-tmp.txt" it contains 'files/fs-perms-volatile-tmp.txt', which means volatile tmp is enabled. User can disable volatile tmp by remove 'files/fs-perms-volatile-tmp.txt' from FILESYSTEM_PERMS_TABLES. * If volatile tmp is disabled, both /tmp and /var/tmp are persistent (From OE-Core rev: 8d1ae67b89c45f78162e070228086c7ef88c3264) Signed-off-by: Changqing Li <changqing.li@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: drop VOLATILE_LOG_DIR, use FILESYSTEM_PERMS_TABLES insteadChangqing Li2024-08-281-5/+2
| | | | | | | | | | | | Drop VOLATILE_LOG_DIR, use FILESYSTEM_PERMS_TABLES instead. By default, it contains 'files/fs-perms-volatile-log.txt', which means volatile log is enabled. User can disable volatile log by remove 'files/fs-perms-volatile-log.txt' from FILESYSTEM_PERMS_TABLES. (From OE-Core rev: 91128c6517066715f2afe6b46aa3206c7cf3653e) Signed-off-by: Changqing Li <changqing.li@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: Include cve-check-map earlier, before distroRichard Purdie2024-08-131-1/+1
| | | | | | | | | | It makes sense for the distro to be able to override "policy" from cve-check-map which is intented to provide defaults. Tweak the ordering to allow for this, ensuring it is included before the distro includes. (From OE-Core rev: fb22a7e7ee38a0e923e86a68d0e9b86d479f264d) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: Add truncate to HOSTTOOLSRichard Purdie2024-08-091-1/+1
| | | | | | | | | | | | Some wic images need this command. Since it is part of coreutils, it doesn't really cost anything to have in HOSTTOOLS and it avoids signifiant build dependencies on coreutils-native. [YOCTO #15571] (From OE-Core rev: 522000ce5c4f0201cbe42d7826b6a8489ed10117) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: Further cleanup compiler optimization flagsRichard Purdie2024-07-131-7/+8
| | | | | | | | | | | | | | Move the -pipe option out of the optimization flags and directly into the flags variables since we always use it now. Also move the debug prefix mapping there to match the nativesdk case which already does this. Fix the documentation and two recipe usages to match the change. (From OE-Core rev: 9badf68d78d995f7d5d4cf27e045f029fc6d4044) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: Drop obsolete debug compiler optionsRichard Purdie2024-07-131-3/+2
| | | | | | | | | | eliminate-unused-debug-types is a compiler default so we no longer need to specify this. Drop the option. Also drop an obsolete comment about another debug flag. (From OE-Core rev: 1d5162689fbfeddb10fa60e4150ca87f1fa2243e) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* base/bitbake.conf: Move S/B to PSEUDO_IGNORE_PATHS unconditionallyRichard Purdie2024-05-231-1/+1
| | | | | | | | | Now S and B can't be set to WORKDIR, add to PSEUDO_IGNORE_PATHS unconditionally and simplify the code. (From OE-Core rev: 26cd2d56261827ad8d07e2145e95f82422accac2) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* base: Switch UNPACKDIR to a subdir of WORKDIRRichard Purdie2024-05-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Change do_unpack to unpack files to a subdirectory of WORKDIR instead of WORKDIR itself. There are several good reasons for this but it is mainly about being able to isolate the output of the unpack task and tell the files apart from other things which are created in workdir (logs, sysroots, temp dirs and more). This means that when the do_unpack task reruns, we can clean UNPACKDIR and know we have a standard point to start builds from. It also makes code in tools like devtool and recipetool easier. To reduce the impact to users, if a subdirectory under UNPACKDIR matches the first subdirectory under WORKDIR of S, that directory is moved into position inside WORKDIR. This preserves the behaviour of S = "${WORKDIR}/git", S = "${WORKDIR}/${BPN}" and other commonly used source directory setups. The directory is moved since sadly many autotools based projects can't cope with symlinks in their paths. The patch also updates reproducible and SOURCE_DATE_EPOCH handling to match the new potential source locations. We can get rid of the horrible list of hardcoded directories in WORKDIR to ignore from that code. (From OE-Core rev: b84eec5c4cbf4b39d6712800dd0d2fe5337721cb) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* base/bitbake.conf: Introduce UNPACKDIRRichard Purdie2024-05-021-0/+1
| | | | | | | | | | | | | Having the unpack directory hardcoded to WORKDIR makes it really hard to make any changes to the unpack process to try and allow for cleanup for example. As a first step toward unraveling the intertwined location usages, add a variable, UNPACKDIR which is where the fetcher is asked to unpack fetched sources. It defaults to the existing value of WORKDIR at this point. (From OE-Core rev: e022d62ba917790af2121da57646271ef17c03fa) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: remove comment about oldincludedirPeter Marko2024-04-121-2/+1
| | | | | | | | | oldincludedir was removed by 506c91cbc6a604a84e37e53ccff430436369802e (From OE-Core rev: 0228ab43e9b659771f4f59944897aec6879f8209) Signed-off-by: Peter Marko <peter.marko@siemens.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* archiver.bbclass: Drop tarfile module to improve performanceRobert Yang2023-12-231-0/+3
| | | | | | | | | | | | | | | | | | | * The tarfile module doesn't support xz options or environment varible XZ_DEFAULTS, this makes do_ar_patched incrediblely slow when the file is large, for example, chromium-x11 is about 3GB: - "bitbake chromium-x11 -car_patched" hasn't been done after 3 hours on my host, I checked the partial tar.xz file is only 1.5GB, so maybe more than 6 hours is required to complete the task. - Now only less than 4 minutes is needed on the same host. * Need add xz to HOSTTOOLS when archiver.bbclass is enabled and compression is xz. (From OE-Core rev: 6548354f049b173e8d443bc547d35c9d9fc05259) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* nativesdk: don't unset MACHINE_FEATURES, let machine-sdk/ set itRoss Burton2023-12-231-0/+2
| | | | | | | | | | | | | | | | | | | There is actually a use for nativesdk MACHINE_FEATURES; for example qemu-usermode being supported, as this is needed to build profile-guided optimised code. We shouldn't use the target MACHINE_FEATURES for this because the target and the SDK can be entirely different, so instead set the MACHINE_FEATURES in nativesdk.bbclass to SDK_MACHINE_FEATURES (which defaults to "") and let the conf/machine-sdk/*.conf files set that as appropriate. (From OE-Core rev: 14571764b7e046507f81bbe589a9f42c5b16665a) Signed-off-by: Ross Burton <ross.burton@arm.com> Link: https://lore.kernel.org/r/20231221170159.1995650-2-ross.burton@arm.com Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* ipk: Switch to using zstd compressionJoshua Watt2023-12-231-0/+4
| | | | | | | | | | | | | | | | | | | | | Converts IPK package generation to use zstd instead of xz. zstd has a much larger compression/speed tradeoff range allowing users to choose what suits them best, and fast decompression speeds. It also continues to support parallel compression as xz did. A new variable called ZSTD_DEFAULTS is provided to set the defaults for places that want to use zstd for compression; the zst image conversion command is also modified to use this. Finally, in order for this to function properly, opkg must include zstd support, so it is enabled all the time with no PACKAGECONFIG to turn it off. (From OE-Core rev: 1bc3e9bbaa670b6128c74c76b4b5264e60ce3463) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: Add runtimedirJoshua Watt2023-12-201-0/+1
| | | | | | | | | | | | | | Adds the path to the runtime state directory (/run). In particular, systemd units need to have the correct path to the runtime directory because RequiresMountsFor doesn't follow symbolic links. This means that if a unit calls out a directory in /var/run (a symbolic link to /run), it may actually start before /run is mounted. The fix is to have the unit specify a directory in /run instead. (From OE-Core rev: 90bc18108230f6d41a50cebc8348444e119e95bf) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: Add gsutil as hosttool for gcp fetcher.Charlie Johnston2023-12-021-0/+3
| | | | | | | | | | | | | The gcp fetcher uses gsutil to check if the file exists before fetching. This change ensures the tool is included as a nonfatal hosttool so that it's included in the build environment when available. (From OE-Core rev: d5e481bbd96210e608fa0aa5f7b54c1398c7d273) Signed-off-by: Charlie Johnston <charlie.johnston@loftorbital.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: Log events by default using BB_DEFAULT_EVENTLOGRichard Purdie2023-11-231-0/+1
| | | | | | | | | | | | By setting this, event data from during the build is saved out. This can be used for analytic including toaster to allow builds to be examined later. This will use some disk space but it is worth it for the ability to look into what happened during the build. Users can set the value to something else in local.conf to override if they wish. (From OE-Core rev: 4719b68bb9e3cccb85aed55350e53a439360abcb) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: drop ${PE} and ${PR} from -f{file,macro,debug}-prefix-mapMartin Jansa2023-11-201-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * ${EXTENDPE} and ${PR} was already dropped from ${WORKDIR} in: https://lists.openembedded.org/g/openembedded-core/message/185818 adjust -fmacro-prefix-map and -fdebug-prefix-map similarly. As we don't depend on PR in WORKDIR maybe we don't need it in /usr/src/debug paths as well anymore. * add TARGET_DBGSRC_DIR variable with "/usr/src/debug/${PN}/${PV}" because there is quite a few places where this location is being used in various recipes * The interesting side-effect of this is that for DISTROs which still use PR (e.g. webOS OSE), the difference in -fdebug-prefix-map causes all binaries to be slightly different when rebuilt with different PR (due to this path, even when otherwise they are binary reproducible) and when the number of digits in PR changes (e.g. from r9 to r10) it also results in slightly bigger binaries (and more unnecessary changes in buildhistory diffs). For example this foo binary, the difference between "new" and "old" is extra patch applied in SRC_URI (which doesn't affect the foo binary, but was the reason for PR bump). And the binary is bigger with r10, identical with r6 and slightly different due to debug-prefix-map between r6 and r7: $ ls -la 1.0.0-175-*/image/usr/sbin/foo -rwxr-xr-x 1 bitbake bitbake 30182460 Nov 8 08:29 1.0.0-175-new-r10/image/usr/sbin/foo -rwxr-xr-x 1 bitbake bitbake 30182224 Nov 8 08:02 1.0.0-175-new-r6/image/usr/sbin/foo -rwxr-xr-x 1 bitbake bitbake 30182224 Nov 8 07:49 1.0.0-175-new-r7/image/usr/sbin/foo -rwxr-xr-x 1 bitbake bitbake 30182224 Nov 8 07:39 1.0.0-175-old-r6/image/usr/sbin/foo $ md5sum 1.0.0-175-*/image/usr/sbin/foo 8e3ab67d596f8cc2f9c6320dab10af01 1.0.0-175-new-r10/image/usr/sbin/foo f6ff1e64fe6affb9ba0d8f278cf7ed79 1.0.0-175-new-r6/image/usr/sbin/foo 6469a0b10aac233911e63c5ea97b03c0 1.0.0-175-new-r7/image/usr/sbin/foo f6ff1e64fe6affb9ba0d8f278cf7ed79 1.0.0-175-old-r6/image/usr/sbin/foo (From OE-Core rev: c84c8ba295eeaa0e0b7592364b0978f17a44c70b) Signed-off-by: Martin Jansa <martin.jansa@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: Drop oldincludedirRichard Purdie2023-11-201-1/+0
| | | | | | | | | | | | | | | | | | | Autoconf defines this as: "The directory for installing C header files for non-GCC compilers." Whilst this is something autoconf does allow changing, I find it hard to believe it has much use in the wild now and that headers don't get split like this in reality, it would probably only be useful on really old unixes.. The values are the same in our configuration anyway. Drop the value and just use includedir everywhere. (From OE-Core rev: 506c91cbc6a604a84e37e53ccff430436369802e) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: remove ${CCACHE} from FORTRAN compilerdavid d zuhn2023-10-301-2/+2
| | | | | | | | | ccache used to support FORTRAN (versions 3.3-3.6) but no longer does (From OE-Core rev: 0cc2c0a9ec16fceeb19e01cd47af8c0743168030) Signed-off-by: david d zuhn <david.zuhn@sonos.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: Drop DEPLOY_DIR_TARBELHADJ SALEM Talel2023-10-191-1/+0
| | | | | | | | | DEPLOY_DIR_TAR is never used since package_tar.bbclass is removed. (From OE-Core rev: 7f3963834c60e407f4252084b1f8e004c10b7c25) Signed-off-by: Talel BELHAJSALEM <bhstalel@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: include bblock.confJulien Stephan2023-10-091-0/+1
| | | | | | | | | | | | include conf/bblock.conf. This file is generated by the bblock tool. It locks some package tasks by fixing their signatures. See bblock -h for more details (From OE-Core rev: fb85282476f9dee2b0364c305ca75b096a76b1ae) Signed-off-by: Julien Stephan <jstephan@baylibre.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: add MACHINE to SDK_NAMEDenys Dmytriyenko2023-09-261-1/+1
| | | | | | | | | | | | | | | | | Do the same here as Poky has done 5 years ago, adding MACHINE to SDK_NAME: https://git.yoctoproject.org/meta-yocto/commit/?id=3614dd4aee9d19f1024edb6a36b2862c2d726c04 This avoids file conflicts in deploy/sdk/ when building multiple machines (either manually or via multiconfig), where sdk/toolchain installers, manifests and now SPDX archives will overlap otherwise. (From OE-Core rev: 5bbefd9602dd787866a80e4be6c1cb13d0ccdb0f) Signed-off-by: Denys Dmytriyenko <denys@konsulko.com> Signed-off-by: Denys Dmytriyenko <denis@denix.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* lib: Import packagedata oe module by defaultRichard Purdie2023-09-261-0/+1
| | | | | | | | | | | | | | Variable dependencies for functions in the oe.packagedata module were missing as it was not present in BBIMPORTS. Add it as the fact it was missing is likely just historical oversight from base.bbclass history and the dependencies are useful. Add an exclusion to bitbake.conf to ensure BB_NUMBER_THREADS doesn't change task checksums. (From OE-Core rev: 7df9178766ee7939d139648e04f5747b0ffe1e13) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: No longer support PR from filenameRichard Purdie2023-09-221-1/+1
| | | | | | | | | Nobody really sets PR from the recipe filename, we might as well drop the overhead of the python function call and simplify the variable. (From OE-Core rev: 5f2691a51a851e8337704aa00899eb27250f0f3f) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* lib/oe/utils: Refactor to make multiprocess_launch callable without dAdrian Freihofer2023-09-121-1/+1
| | | | | | | | | | | This is a preparation for making the strip_execs function callable from devtool without going via tinfoil and a bitbake server process. (From OE-Core rev: af8ee73cdef90b83556a7ac5e139a08108706486) Signed-off-by: Adrian Freihofer <adrian.freihofer@siemens.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: Add IMAGE_BASENAME to SDK_NAMERichard Purdie2023-09-121-1/+1
| | | | | | | | | | | | | When SPDX manifests are enabled for OE-Core, it hightlights that the SDK_NAME default isn't working well. Add IMAGE_BASENAME to it to help avoid conflicts between outut files. I suspect the defaults aren't working well and most distros are already overriding this. (From OE-Core rev: fba8fc22898f8455bd39f9a5f21ff056f2c0cd91) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: add bunzip2 in HOSTTOOLSAlberto Planas2023-08-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | rpm2cpio.sh can make calls to bunzip2 to uncompress the RPM payload that conform the cpio file. bzip2 is already part of HOSTTOOLS, as a link to the system installed bzip2. This patch add bunzip2 in HOSTOOLS list as a non-optional binary, so is available to rpm2cpio.sh when it is required. The currect rpm2cpio.sh has other calls to gunzip (present in HOSTOOLS), xzcat (missing), unlzma (missing) and unzstd (present in HOSTTOOLS since bff58d337890e804d33d7decbaa46065a4d3bba4) Adding the missing ones will not add any new host dependency as xz-utils is already listed as a requirement. (From OE-Core rev: fd376a11ed8d1b79633c2572ec0b4341d3ca2f1c) Signed-off-by: Alberto Planas <aplanas@suse.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* recipes/classes/scripts: Drop SRCPV usage in OE-CoreRichard Purdie2023-08-241-1/+1
| | | | | | | | Now that SRCPV isn't needed we can simplify things in a few places... (From OE-Core rev: 843f82a246a535c353e08072f252d1dc78217872) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* base/package: Move source revision information from PV to PKGVRichard Purdie2023-08-241-4/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Source control information being present in PV used to be a hard requirement for bitbake to operate correctly. Now that hashes are a required part of task stamps, this requirement no longer exists. This means we can defer the hash pieces to PKGV and simplify PV. Use new bitbake fetcher API to inject the source revisions directly into the hash allowing removal of some horrible code from base.bbclass and avoiding any hardcoding about how SRCREV may or may not be used. Use that API to object the string to append to PKGV and append that directly. The user visible effect of this change is that PV will no longer have revision information in it and this will now be appended to PV through PKGV when the packages are written. Since PV is used in STAMP and WORKDIR, users will see small directory naming and stamp naming changes. This will mean that sstate reuse through hash equivalence where the source revision changes but the output does not will become possible as the sstate naming will become less specific and no longer contain the revision. The SRCPV variable will no longer be needed in PV and is effectively now just a null operation. Usage can be removed over time. (From OE-Core rev: a8e7b0f932b9ea69b3a218fca18041676c65aba0) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: Drop PE and PR from WORKDIR and STAMPRichard Purdie2023-08-111-2/+2
| | | | | | | | | | | | | | | | | | Once, we relied upon stamps changing to rebuild. PE and PR are packaging variables and are reflected in the taskhashes when/where they're used so they do not need to be in STAMP. Similarly, once, multiple versions were something which was useful in WORKDIR but this is really just noise causing long pathnames now. Drop PR and PE from these variables to clean up the paths a bit. This may break some tool assumptions about paths but those are probably things we need to fix. (From OE-Core rev: cc83e45484656a6b577ff84817131735023daad4) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cve-check: add option to add additional patched CVEsAndrej Valek2023-07-191-0/+1
| | | | | | | | | | | | | | | | | | | | | | - Replace CVE_CHECK_IGNORE with CVE_STATUS to be more flexible. The CVE_STATUS should contain an information about status wich is decoded in 3 items: - generic status: "Ignored", "Patched" or "Unpatched" - more detailed status enum - description: free text describing reason for status Examples of usage: CVE_STATUS[CVE-1234-0001] = "not-applicable-platform: Issue only applies on Windows" CVE_STATUS[CVE-1234-0002] = "fixed-version: Fixed externally" CVE_CHECK_STATUSMAP[not-applicable-platform] = "Ignored" CVE_CHECK_STATUSMAP[fixed-version] = "Patched" (From OE-Core rev: 34f682a24b7075b12ec308154b937ad118d69fe5) Signed-off-by: Andrej Valek <andrej.valek@siemens.com> Signed-off-by: Peter Marko <peter.marko@siemens.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: Add acl distro native features supportPiotr Łobacz2023-07-191-1/+1
| | | | | | | | | Include support for ACLs for native builds by default. (From OE-Core rev: eeb3f8e893e351520f3b8e642027e0dd6ca7c08b) Signed-off-by: Piotr Łobacz <p.lobacz@welotec.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: Add layer-<layername> override supportRichard Purdie2023-06-201-1/+2
| | | | | | | | | | Add a new layer specific override based upon the FILE_LAYERNAME support now present in bitbake. In particular this allows layer specific QA warnings and errors to be made more easily. (From OE-Core rev: 144db9241b141c3380a2b292414d04bfc39a2e20) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: add unzstd in HOSTTOOLSAlberto Planas2023-06-191-1/+1
| | | | | | | | | | | | | | | | rpm2cpio.sh can make calls to unzstd to uncompress the RPM payload that conform the cpio file. zstd is already part of HOSTTOOLS, as a link to the system installed zstd. This patch add unzstd in HOSTOOLS list as a non-optional binary, so is available to rpm2cpio.sh when it is required. (From OE-Core rev: bff58d337890e804d33d7decbaa46065a4d3bba4) Signed-off-by: Alberto Planas <aplanas@suse.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: Add SRCPV to BB_HASH_CODEPARSER_VALSDenys Dmytriyenko2023-06-011-1/+1
| | | | | | | | | | | | | | | | Also add SRCPV to the list of BB_HASH_CODEPARSER_VALS for code parser cache handling. Otherwise an empty SRC_URI in the list triggers this exception: bb.data_smart.ExpansionError: Failure expanding variable SRCPV, expression was ${@bb.fetch2.get_srcrev(d)} which triggered exception FetchError: Fetcher failure: SRCREV was used yet no valid SCM was found in SRC_URI The variable dependency chain for the failure is: SRCPV -> UBOOT_LOCALVERSION -> do_compile (From OE-Core rev: d17f9da69f430337ee1ef9c09b731c27393eba83) Signed-off-by: Denys Dmytriyenko <denis@denix.org> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: Add -fcanon-prefix-map to DEBUG_PREFIX_MAPKhem Raj2023-05-261-1/+2
| | | | | | | | | | | | | | This should help canonicalize the relative paths and symlinks during cross compile, -fcanon-prefix-map is newly added in gcc-13+ [1] [1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108464#c8 (From OE-Core rev: ba778e43576aaab212751ccc13270fd4c504ba1f) (From OE-Core rev: abe97fa74b10c2c71d79bc3573d4edb509b111f5) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: Empty SRC_URI for code parser cache handlingRichard Purdie2023-05-251-1/+1
| | | | | | (From OE-Core rev: 93a09a05d6dde3542587735df0aa2371e79a3bb7) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* conf: add nice level to the hash config ignred variablesLorenzo Arena2023-05-221-1/+1
| | | | | | | | | | | This is needed as each user could be setting different nice levels while building, however this should not make the shared cache unusable. (From OE-Core rev: 42784f9360345da1c01d988070253e7ffd5ac4ac) Signed-off-by: Lorenzo Arena <arena.lor@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: set minimum required target kernel to 5.15Alexander Kanavin2023-05-051-6/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In particular this enables a number of useful features in glibc (which utilize newer kernel APIs), such as actually using 64 bit time_t versions of kernel syscalls: https://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/unix/sysv/linux/kernel-features.h;h=07b440f4eea364b05fa49bf71ceebf78f80efe13;hb=HEAD#l164 In general, OLDEST_KERNEL setting is used in these two places: - kernel.bbclass compares it with the target kernel version being built. If a vendor BSP still offers an older kernel, OLDEST_KERNEL should be set to match. - glibc recipe passes it as a parameter to the build so that additional features and optimized paths that kernels older than OLDEST_KERNEL are enabled. Note that there is a related setting, SDK_OLDEST_KERNEL, which remains as it was (at 3.2.0) to ensure maximum compatibility with kernels on SDK host machines; that setting is used to build nativesdk-glibc and verify the kernel version when the SDK is being installed. Build host kernel versions are not checked directly; compatible distros are listed instead. (From OE-Core rev: feb8e3fb71131a414a2a9271832b4e16860301ea) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* VOLATILE_TMP_DIR: addTrevor Woerner2023-02-281-0/+4
| | | | | | | | | | | | | Provide a mechanism to allow users to choose whether the /tmp directory is on persistent storage (non-volatile) or a RAM-based tmpfs (volatile). The default is volatile. Works for both sysvinit-based and systemd-based systems. (From OE-Core rev: 8b76c0637eaeaf5bd5e696680cd74b7a642f4157) Signed-off-by: Trevor Woerner <twoerner@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: Add mercurial to HOSTTOOLS_NONFATALPavel Zhukov2023-02-081-0/+3
| | | | | | | (From OE-Core rev: 8cf72a195961081d83ec049021c3a9bdf920fa57) Signed-off-by: Pavel Zhukov <pavel@zhukoff.net> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: Inject a dash into PN for BB_HASH_CODEPARSER_VALSRichard Purdie2023-01-291-1/+1
| | | | | | | | | | We've had a couple of reports of recipes expecting to be able to call split("-") on PN. There isn't any real harm in adding a dash to the dummy PN value to avoid these errors. (From OE-Core rev: 10e140d98790ce28b440b8e8697a4311658fe4df) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: Add METADATA_REVISION to BB_HASH_CODEPARSER_VALSRichard Purdie2023-01-261-1/+1
| | | | | | | | | This stops the codeparser cache changing ever time a new commit is added to the main repository. (From OE-Core rev: f77b9f983395c648fddc96f0d6c8ebd6d52056d4) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>