diff mbox series

[bug#54152] gnu: dovecot: Fix backtrace test on aarch64.

Message ID 874k4ng9b5.fsf@gmx.com
State Accepted
Headers show
Series [bug#54152] gnu: dovecot: Fix backtrace test on aarch64. | expand

Checks

Context Check Description
cbaines/comparison success View comparision
cbaines/git branch success View Git branch
cbaines/applying patch fail View Laminar job
cbaines/issue success View issue

Commit Message

Pierre Langlois Feb. 24, 2022, 10:53 p.m. UTC
Hi Guix!

Since the GCC update, dovecot doesn't build on aarch64 because the
test_backtrace() tests fail :-/.  What happens is the backtrace()
function works but only contains addresses and no real symbol names,
which the tests expect.

I was going to propose disabling them, but doing some searching I found
that debian fixed this by using the -rdynamic linker flag [0], and
indeed, looking at GCC's documentation, they suggest using this flag for
symbols to work [1].

I'm not sure why it works OK on other platforms, this flag might be on
by default there. 

OK to push?

[0]: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=962630
[1]: https://www.gnu.org/software/libc/manual/html_node/Backtraces.html

Comments

Ludovic Courtès March 3, 2022, 10:33 p.m. UTC | #1
Hi,

Pierre Langlois <pierre.langlois@gmx.com> skribis:

> From 4a282547821196ba6d5ec494334144b528c6c9cd Mon Sep 17 00:00:00 2001
> From: Pierre Langlois <pierre.langlois@gmx.com>
> Date: Thu, 24 Feb 2022 22:09:45 +0000
> Subject: [PATCH] gnu: dovecot: Fix backtrace test on aarch64.
>
> * gnu/packages/mail.scm (dovecot)[arguments]: Add LDFLAGS=-rdynamic to
> make-flags.

LGTM, thanks!

Ludo’.
Pierre Langlois March 3, 2022, 11:07 p.m. UTC | #2
Hi,

Ludovic Courtès <ludo@gnu.org> writes:

> Hi,
>
> Pierre Langlois <pierre.langlois@gmx.com> skribis:
>
>> From 4a282547821196ba6d5ec494334144b528c6c9cd Mon Sep 17 00:00:00 2001
>> From: Pierre Langlois <pierre.langlois@gmx.com>
>> Date: Thu, 24 Feb 2022 22:09:45 +0000
>> Subject: [PATCH] gnu: dovecot: Fix backtrace test on aarch64.
>>
>> * gnu/packages/mail.scm (dovecot)[arguments]: Add LDFLAGS=-rdynamic to
>> make-flags.
>
> LGTM, thanks!

Thanks Ludo'! Pushed with 74130e73c019d7f2bc0700eca04d797d2645ffa4.

Pierre
diff mbox series

Patch

From 4a282547821196ba6d5ec494334144b528c6c9cd Mon Sep 17 00:00:00 2001
From: Pierre Langlois <pierre.langlois@gmx.com>
Date: Thu, 24 Feb 2022 22:09:45 +0000
Subject: [PATCH] gnu: dovecot: Fix backtrace test on aarch64.

* gnu/packages/mail.scm (dovecot)[arguments]: Add LDFLAGS=-rdynamic to
make-flags.
---
 gnu/packages/mail.scm | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index 7a146a8603..8dce9d55b5 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -1900,6 +1900,10 @@  (define-public dovecot
                            "--localstatedir=/var"
                            "--with-sqlite"  ; not auto-detected
                            "--with-lucene") ; not auto-detected
+       ;; The -rdynamic linker flag is needed for the backtrace() function to
+       ;; have symbol names rather than just addresses.  Dovecot's tests rely
+       ;; on this, see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=962630.
+       #:make-flags (list "LDFLAGS=-rdynamic")
        #:phases
        (modify-phases %standard-phases
          (add-after 'unpack 'patch-file-names
--
2.34.0