[1/4] building gdb on musl

Message ID 001a113807e84e8bf10522c86ad7@google.com
State New, archived
Headers

Commit Message

Doug Evans Oct. 23, 2015, 4:50 p.m. UTC
  Hi.

musl is a replacement for glibc.
http://www.musl-libc.org/intro.html

This patch series lets gdb build.

This patch provides a set of casts for some printfs to avoid
format complaints.

There's also an issue that sometimes we're using %ld and sometimes
we're using 0x%lx - I prefer 0x%lx, but since that's a separate issue
it is left for a separate patch (I'm not intending to write one
soon though).

2015-10-23  Doug Evans  <dje@google.com>

	* gdbserver/thread-db.c (find_one_thread): Cast ti.ti_tid to
	unsigned long for debug_printf.
	(attach_thread, find_new_threads_callback): Ditto.
	* linux-thread-db.c (find_new_threads_callback): Ditto.
	(thread_db_pid_to_str): Ditto.


@@ -1816,7 +1817,7 @@ thread_db_pid_to_str (struct target_ops *ops, ptid_t  
ptid)

        tid = thread_info->priv->tid;
        snprintf (buf, sizeof (buf), "Thread 0x%lx (LWP %ld)",
-		tid, ptid_get_lwp (ptid));
+		(unsigned long) tid, ptid_get_lwp (ptid));

        return buf;
      }
  

Comments

Doug Evans Oct. 26, 2015, 8:33 p.m. UTC | #1
On Fri, Oct 23, 2015 at 9:50 AM, Doug Evans <dje@google.com> wrote:
> Hi.
>
> musl is a replacement for glibc.
> http://www.musl-libc.org/intro.html
>
> This patch series lets gdb build.

Hi. I have committed the three (not four) patches in this series.
  

Patch

diff --git a/gdb/gdbserver/thread-db.c b/gdb/gdbserver/thread-db.c
index ffe722d..3df10ff 100644
--- a/gdb/gdbserver/thread-db.c
+++ b/gdb/gdbserver/thread-db.c
@@ -278,7 +278,7 @@  find_one_thread (ptid_t ptid)

    if (debug_threads)
      debug_printf ("Found thread %ld (LWP %d)\n",
-		  ti.ti_tid, ti.ti_lid);
+		  (unsigned long) ti.ti_tid, ti.ti_lid);

    if (lwpid != ti.ti_lid)
      {
@@ -319,12 +319,12 @@  attach_thread (const td_thrhandle_t *th_p,  
td_thrinfo_t *ti_p)

    if (debug_threads)
      debug_printf ("Attaching to thread %ld (LWP %d)\n",
-		  ti_p->ti_tid, ti_p->ti_lid);
+		  (unsigned long) ti_p->ti_tid, ti_p->ti_lid);
    err = linux_attach_lwp (ptid);
    if (err != 0)
      {
        warning ("Could not attach to thread %ld (LWP %d): %s\n",
-	       ti_p->ti_tid, ti_p->ti_lid,
+	       (unsigned long) ti_p->ti_tid, ti_p->ti_lid,
  	       linux_ptrace_attach_fail_reason_string (ptid, err));
        return 0;
      }
@@ -392,7 +392,8 @@  find_new_threads_callback (const td_thrhandle_t *th_p,  
void *data)
  	 glibc PR17707.  */
        if (debug_threads)
  	debug_printf ("thread_db: skipping exited and "
-		      "joined thread (0x%lx)\n", ti.ti_tid);
+		      "joined thread (0x%lx)\n",
+		      (unsigned long) ti.ti_tid);
        return 0;
      }

diff --git a/gdb/linux-thread-db.c b/gdb/linux-thread-db.c
index 66e9595..41db29a 100644
--- a/gdb/linux-thread-db.c
+++ b/gdb/linux-thread-db.c
@@ -1585,7 +1585,8 @@  find_new_threads_callback (const td_thrhandle_t  
*th_p, void *data)
        if (libthread_db_debug)
  	fprintf_unfiltered (gdb_stdlog,
  			    "thread_db: skipping exited and "
-			    "joined thread (0x%lx)\n", ti.ti_tid);
+			    "joined thread (0x%lx)\n",
+			    (unsigned long) ti.ti_tid);
        return 0;
      }