Fix compilation of gdb/arm-linux-nat.c on Raspbian GNU/Linux 7

Message ID 201506151243.t5FChjwS012722@heapu.cam.lispworks.com
State New, archived
Headers

Commit Message

Martin Simmons June 15, 2015, 12:43 p.m. UTC
  Revision 1e5338b6e7405acdd1e1d0eab46682bd1af007d5 fails to compile on Raspbian
GNU/Linux 7 because PTRACE_GETREGSET and PTRACE_SETREGSET are not defined in
sys/ptrace.h.

gcc -g -O2   -I. -I. -I./common -I./config -DLOCALEDIR="\"/usr/local/share/locale\"" -DHAVE_CONFIG_H -I./../include/opcode -I./../opcodes/.. -I./../readline/.. -I./../zlib -I../bfd -I./../bfd -I./../include -I../libdecnumber -I./../libdecnumber  -I./gnulib/import -Ibuild-gnulib/import   -DTUI=1  -Wall -Wpointer-arith -Wno-unused -Wunused-value -Wunused-function -Wno-switch -Wno-char-subscripts -Wempty-body -Wpointer-sign -Wmissing-prototypes -Wdeclaration-after-statement -Wmissing-parameter-type -Wold-style-declaration -Wold-style-definition -Wformat-nonliteral -Werror -c -o arm-linux-nat.o -MT arm-linux-nat.o -MMD -MP -MF .deps/arm-linux-nat.Tpo arm-linux-nat.c
arm-linux-nat.c: In function ‘fetch_fpregister’:
arm-linux-nat.c:103:21: error: ‘PTRACE_GETREGSET’ undeclared (first use in this function)
arm-linux-nat.c:103:21: note: each undeclared identifier is reported only once for each function it appears in
arm-linux-nat.c: In function ‘fetch_fpregs’:
arm-linux-nat.c:144:21: error: ‘PTRACE_GETREGSET’ undeclared (first use in this function)
arm-linux-nat.c: In function ‘store_fpregister’:
arm-linux-nat.c:184:21: error: ‘PTRACE_GETREGSET’ undeclared (first use in this function)
arm-linux-nat.c:211:21: error: ‘PTRACE_SETREGSET’ undeclared (first use in this function)
...

This patch includes the gdb header file nat/linux-ptrace.h, which provides
fallback definitions.

gdb/ChangeLog

	* arm-linux-nat.c (nat/linux-ptrace.h): New include for
          PTRACE_GETREGSET et al in case of old system header files.
  

Comments

Yao Qi June 15, 2015, 1 p.m. UTC | #1
This patch is OK, except for the ChangeLog entry, it can be rewritten like

On 15/06/15 13:43, Martin Simmons wrote:
> gdb/ChangeLog
>
> 	* arm-linux-nat.c (nat/linux-ptrace.h): New include for
>            PTRACE_GETREGSET et al in case of old system header files.

	* arm-linux-nat.c: Include nat/linux-ptrace.h.

because we put what do we change in the changelog rather than "why".
Do you have the commit access to gdb git repository?
  
Martin Simmons June 15, 2015, 4:32 p.m. UTC | #2
>>>>> On Mon, 15 Jun 2015 14:00:22 +0100, Yao Qi said:
> 
> This patch is OK, except for the ChangeLog entry, it can be rewritten like
> 
> On 15/06/15 13:43, Martin Simmons wrote:
> > gdb/ChangeLog
> >
> > 	* arm-linux-nat.c (nat/linux-ptrace.h): New include for
> >            PTRACE_GETREGSET et al in case of old system header files.
> 
> 	* arm-linux-nat.c: Include nat/linux-ptrace.h.
> 
> because we put what do we change in the changelog rather than "why".

OK.

> Do you have the commit access to gdb git repository?

No.

__Martin
  

Patch

diff --git a/gdb/arm-linux-nat.c b/gdb/arm-linux-nat.c
index b18d443..10aea07 100644
--- a/gdb/arm-linux-nat.c
+++ b/gdb/arm-linux-nat.c
@@ -36,6 +36,8 @@ 
 #include <sys/utsname.h>
 #include <sys/procfs.h>
 
+#include "nat/linux-ptrace.h"
+
 /* Prototypes for supply_gregset etc.  */
 #include "gregset.h"