From 2ad64e97c05f613fc2dc11032bed41328d84d05e Mon Sep 17 00:00:00 2001
From: Jaco Kroon <jaco@uls.co.za>
Date: Mon, 16 Mar 2020 12:11:11 +0200
Subject: [PATCH] Update main/backtrace.c to deal with changes in binutils
 2.34.

binutils 2.34 merged this commit:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commitdiff;\
	h=fd3619828e94a24a92cddec42cbc0ab33352eeb4

Which effectively does things like:

-#define bfd_section_size(bfd, ptr) ((ptr)->size)
-#define bfd_get_section_size(ptr) ((ptr)->size)

+#define bfd_section_size(sec) ((sec)->size)

So in order to remain backwards compatible we need to detect this API
change, and adjust accordingly.  The simplest is to notice that the
bfd_get_section_size and bfd_get_section_vma MACROs are no longer
defined, and define then onto the new API.  The alternative is to litter
the code with a number of #ifdef #else #endif splatters right through
the code.

Change-Id: I3efe0f8e8f3e338d16fcbc2b26a505367b6e172f
---
 main/backtrace.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/main/backtrace.c b/main/backtrace.c
index 2623d7ff87..1bc9bea93c 100644
--- a/main/backtrace.c
+++ b/main/backtrace.c
@@ -59,6 +59,12 @@
 #if defined(HAVE_DLADDR) && defined(HAVE_BFD) && defined(BETTER_BACKTRACES)
 #include <dlfcn.h>
 #include <bfd.h>
+#ifndef bfd_get_section_size
+#define bfd_get_section_size(x) bfd_section_size(x)
+#endif
+#ifndef bfd_get_section_vma
+#define bfd_get_section_vma(x, y)	bfd_section_vma(y)
+#endif
 #endif
 
 #include <pthread.h>
-- 
GitLab