Go to file
Yann E. MORIN b9e7adc152 package/linux-headers: with headers from kernel, also override srcdir
When using the headers from the kernel to be built, with the kernel
set to a custom version, and overriding the kernel sources with
LINUX_OVERRIDE_SRCDIR, the linux-headers package is still trying to
download an archive, and fails to validate its hash.

What is going on under the hood is that, with _OVERRIDE_SRCDIR, the
_VERSION of a package is set to 'custom'. Furthermore, the variable
BR_NO_CHECK_HASH_FOR is recursively expanded, so its value is only
evaluated when it is needed.

For linux-headers, we inherit the values from the linux package, and
the LINUX_HEADERS_VERSION takes the value from the configuration.

Thus we end up with the following situation:

    LINUX_VERSION=custom
    LINUX_HEADERS_VERSION=5.10   # For example
    BR_NO_CHECK_HASH_FOR=... linux-custom.tar.gz ...

And thus the archive downloaded by linux-headers will not match any
exclusion, and since there will most probably not be a hash for it,
the download will fail, as was noticed and reported by Jarkko.

But in this case, what we really want is to really use the headers
from the kernel that we build, we do not even want to attempt a
download at all.

So, when using the headers from the kernel to be built, we also
propagate the LINUX_OVERRIDE_SRCDIR to linux-headers, so that we
also use the headers from the overridden sources.

Furthermore, in that configuration, we explicitly disallow
overriding the linux-headers specifically, as it does not make sense
(even though, if they were overridden to the same location, that'd
be OK, but to simplify the condition, we do not even check for that).

Reported-by: Jarkko Sakkinen <jjs@kapsi.fi>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Peter Korsgaard <peter@korsgaard.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2021-02-02 20:09:05 +01:00
arch
board configs/hifive_unleashed: use mainline Linux + U-Boot 2021-01-31 23:26:33 +01:00
boot boot/at91bootstrap3: add CPE variables 2021-01-23 21:34:38 +01:00
configs configs/hifive_unleashed: use mainline Linux + U-Boot 2021-01-31 23:26:33 +01:00
docs Replace LIBFOO_CPE_ID_VERSION_MINOR by LIBFOO_CPE_ID_UPDATE 2021-01-31 23:21:38 +01:00
fs fs/cpio: add zstd as compression option 2021-01-16 22:45:34 +01:00
linux {linux, linux-headers}: bump 4.19.x / 5.{4, 10}.x series 2021-01-30 11:31:09 +01:00
package package/linux-headers: with headers from kernel, also override srcdir 2021-02-02 20:09:05 +01:00
support support/scripts/pkg-stats: get_config_packages(): use dict.values() 2021-02-02 16:34:10 +01:00
system
toolchain
utils package/perl: bump to version 5.32.1 2021-01-25 22:29:32 +01:00
.defconfig
.flake8
.gitignore
.gitlab-ci.yml
CHANGES Update for 2020.02.10 2021-01-31 22:48:51 +01:00
Config.in
Config.in.legacy package/binutils: drop 2.33.x series 2021-02-01 18:27:03 +01:00
COPYING
DEVELOPERS DEVELOPERS: add Gilles Talis for opusfile 2021-01-31 11:27:49 +01:00
Makefile
Makefile.legacy
README

Buildroot is a simple, efficient and easy-to-use tool to generate embedded
Linux systems through cross-compilation.

The documentation can be found in docs/manual. You can generate a text
document with 'make manual-text' and read output/docs/manual/manual.text.
Online documentation can be found at http://buildroot.org/docs.html

To build and use the buildroot stuff, do the following:

1) run 'make menuconfig'
2) select the target architecture and the packages you wish to compile
3) run 'make'
4) wait while it compiles
5) find the kernel, bootloader, root filesystem, etc. in output/images

You do not need to be root to build or run buildroot.  Have fun!

Buildroot comes with a basic configuration for a number of boards. Run
'make list-defconfigs' to view the list of provided configurations.

Please feed suggestions, bug reports, insults, and bribes back to the
buildroot mailing list: buildroot@buildroot.org
You can also find us on #buildroot on Freenode IRC.

If you would like to contribute patches, please read
https://buildroot.org/manual.html#submitting-patches