Go to file
Julien Olivain 500723f9fc package/openblas: fix some x86 32bit builds
OpenBLAS Makefile normally needs to explicitly define the CPU
architecture size (32 or 64bit) in the BINARY macro. See [1].

When an architecture supports both 64 and 32bit, the 32bit support
is sometimes implemented in OpenBLAS by overriding a fallback to an
anterior architecture. For example, if the build target architecture
is x86 Haswell 32bit, OpenBLAS build will override the arch to
Nehalem. See [2].

If the BINARY macro is undefined, the 32bit fallback will not happen,
sometimes leading to a link failure, with output:

    i686-buildroot-linux-gnu/bin/ar: strmm_kernel_LN.o: No such file or directory

This commit fixes those issues by explicitly defining the BINARY
macro. This issue has also been discussed upstream in [3] and [4].

Note: this issue was not introduced recently ([3] dates back from 2015),
and was also see in previous package version, for example in [5].

Fixes:
http://autobuild.buildroot.net/results/e1e/e1e2034a78799abe1bd28b036fa6f7d13322e42f

[1] https://github.com/xianyi/OpenBLAS/blob/v0.3.24/Makefile.rule#L50
[2] https://github.com/xianyi/OpenBLAS/blob/v0.3.24/Makefile.system#L113
[3] https://github.com/xianyi/OpenBLAS/issues/657
[4] https://github.com/xianyi/OpenBLAS/issues/1106
[5] http://autobuild.buildroot.net/results/5cd/5cdccd106b1de275ac75c39783e536107a31651f

Signed-off-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit eb4f5a2cbc)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2023-09-24 20:32:09 +02:00
arch
board configs/beaglev_defconfig: fix build with binutils >= 2.38 2023-09-02 09:40:27 +02:00
boot boot/grub2: backport fixes for numerous CVEs 2023-08-30 21:54:23 +02:00
configs configs/beaglev_defconfig: fix build with binutils >= 2.38 2023-09-02 09:40:27 +02:00
docs Update for 2023.08 2023-09-06 21:54:35 +02:00
fs
linux {linux, linux-headers}: bump 4.{14, 19}.x / 5.{4, 10, 15}.x / 6.{1, 4}.x series 2023-09-02 14:45:17 +02:00
package package/openblas: fix some x86 32bit builds 2023-09-24 20:32:09 +02:00
support support/download/git: fix shellcheck errors 2023-09-24 17:57:54 +02:00
system
toolchain toolchain/helpers.mk: strengthen uClibc locale check 2023-08-30 23:44:24 +02:00
utils utils/getdeveloperlib.py: handle file removal 2023-09-15 19:50:24 +02:00
.checkpackageignore support/download/git: fix shellcheck errors 2023-09-24 17:57:54 +02:00
.clang-format
.defconfig
.flake8
.gitignore
.gitlab-ci.yml
.shellcheckrc
CHANGES Update for 2023.08 2023-09-06 21:54:35 +02:00
Config.in
Config.in.legacy
COPYING
DEVELOPERS package/libdecor: new package 2023-09-02 19:09:25 +02:00
Makefile Update for 2023.08 2023-09-06 21:54:35 +02:00
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 OFTC IRC.

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