Subject: [PATCH] gnu: dovecot: Fix backtrace test on aarch64.
From: Pierre Langlois <[email-masked]>
To: [email-masked]
Date: Thu, 24 Feb 2022 22:53:31 +0000
List-Id: <debbugs-submit.debbugs.gnu.org>

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

From 4a282547821196ba6d5ec494334144b528c6c9cd Mon Sep 17 00:00:00 2001
From: Pierre Langlois <[email-masked]>
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