Move linux-nat.c:status_to_str to nat/linux-waitpid.c.
authorPedro Alves <palves@redhat.com>
Thu, 27 Feb 2014 14:30:08 +0000 (14:30 +0000)
committerPedro Alves <palves@redhat.com>
Thu, 27 Feb 2014 14:30:08 +0000 (14:30 +0000)
So that gdbserver's Linux backend can use it too.

gdb/
2014-02-27  Pedro Alves  <palves@redhat.com>

PR 12702
* linux-nat.c (status_to_str): Moved to nat/linux-waitpid.c.
* nat/linux-waitpid.c: Include string.h.
(status_to_str): Moved here and made extern.
* nat/linux-waitpid.h (status_to_str): New declaration.

gdb/ChangeLog
gdb/linux-nat.c
gdb/nat/linux-waitpid.c
gdb/nat/linux-waitpid.h

index ad08c8e..bb5f5aa 100644 (file)
@@ -1,3 +1,11 @@
+2014-02-27  Pedro Alves  <palves@redhat.com>
+
+       PR 12702
+       * linux-nat.c (status_to_str): Moved to nat/linux-waitpid.c.
+       * nat/linux-waitpid.c: Include string.h.
+       (status_to_str): Moved here and made extern.
+       * nat/linux-waitpid.h (status_to_str): New declaration.
+
 2014-02-27  Hui Zhu  <hui@codesourcery.com>
 
        PR 12702
index 0066141..5535462 100644 (file)
@@ -848,31 +848,6 @@ static int linux_thread_alive (ptid_t ptid);
 static char *linux_child_pid_to_exec_file (struct target_ops *self, int pid);
 
 \f
-/* Convert wait status STATUS to a string.  Used for printing debug
-   messages only.  */
-
-static char *
-status_to_str (int status)
-{
-  static char buf[64];
-
-  if (WIFSTOPPED (status))
-    {
-      if (WSTOPSIG (status) == SYSCALL_SIGTRAP)
-       snprintf (buf, sizeof (buf), "%s (stopped at syscall)",
-                 strsignal (SIGTRAP));
-      else
-       snprintf (buf, sizeof (buf), "%s (stopped)",
-                 strsignal (WSTOPSIG (status)));
-    }
-  else if (WIFSIGNALED (status))
-    snprintf (buf, sizeof (buf), "%s (terminated)",
-             strsignal (WTERMSIG (status)));
-  else
-    snprintf (buf, sizeof (buf), "%d (exited)", WEXITSTATUS (status));
-
-  return buf;
-}
 
 /* Destroy and free LP.  */
 
index 433efe7..e9e69db 100644 (file)
@@ -28,6 +28,8 @@
 #include "nat/linux-waitpid.h"
 #include "gdb_wait.h"
 
+#include <string.h>
+
 /* Print debugging output based on the format string FORMAT and
    its parameters.  */
 
@@ -47,6 +49,32 @@ linux_debug (const char *format, ...)
 #endif
 }
 
+/* Convert wait status STATUS to a string.  Used for printing debug
+   messages only.  */
+
+char *
+status_to_str (int status)
+{
+  static char buf[64];
+
+  if (WIFSTOPPED (status))
+    {
+      if (WSTOPSIG (status) == SYSCALL_SIGTRAP)
+       snprintf (buf, sizeof (buf), "%s (stopped at syscall)",
+                 strsignal (SIGTRAP));
+      else
+       snprintf (buf, sizeof (buf), "%s (stopped)",
+                 strsignal (WSTOPSIG (status)));
+    }
+  else if (WIFSIGNALED (status))
+    snprintf (buf, sizeof (buf), "%s (terminated)",
+             strsignal (WTERMSIG (status)));
+  else
+    snprintf (buf, sizeof (buf), "%d (exited)", WEXITSTATUS (status));
+
+  return buf;
+}
+
 /* Wrapper function for waitpid which handles EINTR, and emulates
    __WALL for systems where that is not available.  */
 
index ae90e50..cac38db 100644 (file)
@@ -24,4 +24,8 @@
    __WALL for systems where that is not available.  */
 extern int my_waitpid (int pid, int *status, int flags);
 
+/* Convert wait status STATUS to a string.  Used for printing debug
+   messages only.  */
+extern char *status_to_str (int status);
+
 #endif /* LINUX_WAITPID_H */