mirror of
https://codeberg.org/guix/guix.git
synced 2025-10-02 02:15:12 +00:00
gnu: dtc: Fix tests.
* gnu/packages/patches/dtc-fix-test.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. * gnu/packages/bootloaders.scm (dtc)[source]: Use it. Change-Id: I70d593ff55c677df9aae46ba289a0888bab73f12
This commit is contained in:
parent
7d3fd78e84
commit
f51070cb70
3 changed files with 41 additions and 1 deletions
|
@ -1218,6 +1218,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/dovecot-trees-support-dovecot-2.3.patch \
|
||||
%D%/packages/patches/dstat-fix-crash-when-specifying-delay.patch \
|
||||
%D%/packages/patches/dstat-skip-devices-without-io.patch \
|
||||
%D%/packages/patches/dtc-fix-test.patch \
|
||||
%D%/packages/patches/duc-fix-test-sh.patch \
|
||||
%D%/packages/patches/dune-common-skip-failing-tests.patch \
|
||||
%D%/packages/patches/durden-shadow-arcan.patch \
|
||||
|
|
|
@ -754,7 +754,8 @@ The SUBDIR argument defaults to \"efi/Guix\", as it is also the case for
|
|||
"dtc-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1x609axqpkw5d47pz3ag34ycy3w7y1d0i8q4715hvlmgszmya07j"))))
|
||||
"1x609axqpkw5d47pz3ag34ycy3w7y1d0i8q4715hvlmgszmya07j"))
|
||||
(patches (search-patches "dtc-fix-test.patch"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list
|
||||
|
|
38
gnu/packages/patches/dtc-fix-test.patch
Normal file
38
gnu/packages/patches/dtc-fix-test.patch
Normal file
|
@ -0,0 +1,38 @@
|
|||
from https://git.kernel.org/pub/scm/utils/dtc/dtc.git/patch/?id=ce1d8588880aecd7af264e422a16a8b33617cef7
|
||||
|
||||
From ce1d8588880aecd7af264e422a16a8b33617cef7 Mon Sep 17 00:00:00 2001
|
||||
From: David Gibson <david@gibson.dropbear.id.au>
|
||||
Date: Wed, 5 Feb 2025 13:39:43 +1100
|
||||
Subject: [PATCH] tests: When building .so from -O asm output mark as
|
||||
non-executable stack
|
||||
|
||||
For certain tests, we take the output from dtc -O asm and build it into
|
||||
a .so shared library which we then dlopen() for further tests. Because we
|
||||
don't mark it otherwise, it's treated as requiring an executable stack,
|
||||
which dlopen() refuses to open as of glibc-2.41.
|
||||
|
||||
Of course, the library is pure data, no code, so it certainly doesn't need
|
||||
an executable stack. Add the -znoexecstack linker option to avoid the
|
||||
error.
|
||||
|
||||
Fixes: https://github.com/dgibson/dtc/issues/163
|
||||
|
||||
Reported-by: Xi Ruoyao <xry111@xry111.site>
|
||||
Signed-off-by: David Gibson <david@gibson.dropbear.id.a>
|
||||
---
|
||||
tests/run_tests.sh | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/tests/run_tests.sh b/tests/run_tests.sh
|
||||
index 937b1288..f0b51c04 100755
|
||||
--- a/tests/run_tests.sh
|
||||
+++ b/tests/run_tests.sh
|
||||
@@ -201,7 +201,7 @@ run_dtc_test () {
|
||||
}
|
||||
|
||||
asm_to_so () {
|
||||
- $CC -shared -o $1.test.so "$SRCDIR/data.S" $1.test.s
|
||||
+ $CC -shared -Wl,-znoexecstack -o $1.test.so "$SRCDIR/data.S" $1.test.s
|
||||
}
|
||||
|
||||
asm_to_so_test () {
|
Loading…
Add table
Add a link
Reference in a new issue