gnu: libtree: fix building on non-x86 systems.

* gnu/packages/linux.scm (libtree): fix building on non-x86 systems.
[source]: add patch.
* gnu/packages/patches/libtree-fix-check-non-x86.patch: New file.
* gnu/local.mk (dist_path_DATA): Register it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
Z572 2023-05-26 18:23:45 +08:00 committed by Ludovic Courtès
parent e4259d4e9e
commit 6440b352c9
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5
3 changed files with 53 additions and 0 deletions

View file

@ -1508,6 +1508,7 @@ dist_patch_DATA = \
%D%/packages/patches/libtommath-integer-overflow.patch \
%D%/packages/patches/libtool-grep-compat.patch \
%D%/packages/patches/libtool-skip-tests2.patch \
%D%/packages/patches/libtree-fix-check-non-x86.patch \
%D%/packages/patches/libusb-0.1-disable-tests.patch \
%D%/packages/patches/libusb-for-axoloti.patch \
%D%/packages/patches/libutils-add-includes.patch \

View file

@ -73,6 +73,7 @@
;;; Copyright © 2022, 2023 Demis Balbach <db@minikn.xyz>
;;; Copyright © 2023 Bruno Victal <mirai@makinata.eu>
;;; Copyright © 2023 Yovan Naumovski <yovan@gorski.stream>
;;; Copyright © 2023 Zheng Junjie <873216071@qq.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -9822,6 +9823,7 @@ (define-public libtree
(url "https://github.com/haampie/libtree")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(patches (search-patches "libtree-fix-check-non-x86.patch"))
(sha256
(base32 "1jbc60cslzcfxk9jwva51ncr1zl1nz0fkgfjdckgv81is11nswmb"))))
(arguments

View file

@ -0,0 +1,50 @@
From 061d3ec62707a526a83482e57d202a66f9d776cd Mon Sep 17 00:00:00 2001
From: Ismael Luceno <ismael@iodev.co.uk>
Date: Tue, 23 Aug 2022 19:34:39 +0200
Subject: [PATCH] Test the -m32 and -m64 compiler flags before use
Fixes: https://github.com/haampie/libtree/issues/78
Signed-off-by: Ismael Luceno <ismael@iodev.co.uk>
---
tests/05_32_bits/Makefile | 20 +++++++++++++++-----
1 file changed, 15 insertions(+), 5 deletions(-)
diff --git a/tests/05_32_bits/Makefile b/tests/05_32_bits/Makefile
index 2c0bece..5628f42 100644
--- a/tests/05_32_bits/Makefile
+++ b/tests/05_32_bits/Makefile
@@ -3,7 +3,7 @@
LD_LIBRARY_PATH=
-.PHONY: clean
+.PHONY: clean check
all: check
@@ -21,11 +21,21 @@ exe64: lib64/libx.so
exe32: lib32/libx.so
echo 'extern int a(); int _start(){return a();}' | $(CC) -m32 "-Wl,-rpath,$(CURDIR)/lib64" "-Wl,-rpath,$(CURDIR)/lib32" -o $@ -nostdlib -x c - -Llib32 -lx
-check: exe32 exe64
- ../../libtree exe32
- ../../libtree exe64
-
clean:
rm -rf lib32 lib64 exe*
CURDIR ?= $(.CURDIR)
+
+test-flag = 2>/dev/null ${CC} -E /dev/null
+test-end = && echo y || echo n
+support-m32 != ${test-flag} -m32 ${test-end}
+support-m64 != ${test-flag} -m64 ${test-end}
+
+check${support-m32:y=}:: exe32
+ ../../libtree exe32
+
+check${support-m64:y=}:: exe64
+ ../../libtree exe64
+
+check${support-m32:n=} check${support-m64:n=}::
+ @echo WARNING: test skipped at ${CURDIR}