[PATCH] nat/fork-inferior: include linux-ptrace.h

Thomas Petazzoni
2018-06-25T08:05:58Z

To decide whether fork() or vfork() should be used, fork-inferior.c
uses the following test:

#if !(defined(__UCLIBC__) && defined(HAS_NOMMU))

However, HAS_NOMMU is never defined, because it gets defined in
linux-ptrace.h, which is not included by fork-inferior.c. Due to this,
gdbserver fails to build on noMMU architectures. This commit fixes
that by simply including linux-ptrace.h.

This bug was introduced by commit
2090129c36c7e582943b7d300968d19b46160d84 ("Share fork_inferior et al
with gdbserver"). Indeed, the same fork()/vfork() selection was done,
but in another file where linux-ptrace.h was included.

Fixes the following build issue:

../nat/fork-inferior.c: In function 'pid_t fork_inferior(const char*, const string&, char**, void (*)(), void (*)(int), void (*)(), const char*, void (*)(const char*, char* const*, char* const*))':
../nat/fork-inferior.c:376:11: error: 'fork' was not declared in this scope
pid = fork ();
^~~~
../nat/fork-inferior.c:376:11: note: suggested alternative: 'vfork'
pid = fork ();
^~~~
vfork

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
---
gdb/nat/fork-inferior.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/gdb/nat/fork-inferior.c b/gdb/nat/fork-inferior.c
index 8b59387fa5..05167628a6 100644
--- a/gdb/nat/fork-inferior.c
+++ b/gdb/nat/fork-inferior.c
@@ -26,6 +26,7 @@
#include "common-gdbthread.h"
#include "signals-state-save-restore.h"
#include "gdb_tilde_expand.h"
+#include "linux-ptrace.h"
#include <vector>

extern char **environ;
--
2.14.4