mirror of
https://gitlab.com/buildroot.org/buildroot.git
synced 2026-10-01 06:21:56 -09:00
package/libbpf: install in the correct lib directory
The libbpf build system currently uses the output of "uname -m" to
determine if the library should be installed in "lib" or
"lib64". However, uname -m returns the architecture of the build
machine, which often has nothing to do with the target CPU
architecture.
A patch has been submitted and accepted upstream to address this
issue, by using the $(CC) -dumpmachine output instead. This ensures
libbpf is installed in either "lib" or "lib64" depending on the
bitness of the target CPU architecture.
Signed-off-by: Tobias Waldekranz <tobias@waldekranz.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit c86b69a16d)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit is contained in:
committed by
Peter Korsgaard
parent
237fe13a0b
commit
f9d9c271ff
@@ -0,0 +1,38 @@
|
|||||||
|
From 68e6f83f223ebf3fbf0d94c0f4592e5e6773f0c1 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Tobias Waldekranz <tobias@waldekranz.com>
|
||||||
|
Date: Fri, 14 Oct 2022 21:14:14 +0200
|
||||||
|
Subject: [PATCH] Makefile: Fix cross-compilation for 32-bit targets
|
||||||
|
|
||||||
|
Determining the correct library installation path (lib vs. lib64)
|
||||||
|
using uname(1) breaks in cross compilation scenarios where word widths
|
||||||
|
differ between the host and target system.
|
||||||
|
|
||||||
|
Instead, source the information from the compilers '-dumpmachine'
|
||||||
|
option (supported by both GCC and Clang).
|
||||||
|
|
||||||
|
We call this the "host" architecture, using the same nomenclature as
|
||||||
|
Autotools (--host configure option).
|
||||||
|
|
||||||
|
Upstream: https://github.com/libbpf/libbpf/commit/68e6f83f223ebf3fbf0d94c0f4592e5e6773f0c1
|
||||||
|
Signed-off-by: Tobias Waldekranz <tobias@waldekranz.com>
|
||||||
|
---
|
||||||
|
src/Makefile | 3 ++-
|
||||||
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/src/Makefile b/src/Makefile
|
||||||
|
index 3cd0854..d535f81 100644
|
||||||
|
--- a/src/Makefile
|
||||||
|
+++ b/src/Makefile
|
||||||
|
@@ -77,7 +77,8 @@ INSTALL = install
|
||||||
|
|
||||||
|
DESTDIR ?=
|
||||||
|
|
||||||
|
-ifeq ($(filter-out %64 %64be %64eb %64le %64el s390x, $(shell uname -m)),)
|
||||||
|
+HOSTARCH = $(firstword $(subst -, ,$(shell $(CC) -dumpmachine)))
|
||||||
|
+ifeq ($(filter-out %64 %64be %64eb %64le %64el s390x, $(HOSTARCH)),)
|
||||||
|
LIBSUBDIR := lib64
|
||||||
|
else
|
||||||
|
LIBSUBDIR := lib
|
||||||
|
--
|
||||||
|
2.34.1
|
||||||
|
|
||||||
Reference in New Issue
Block a user