<pre style='margin:0'>
Ken (kencu) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/b0b74a665326c483af32d40a09a27ec580bcf430">https://github.com/macports/macports-ports/commit/b0b74a665326c483af32d40a09a27ec580bcf430</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new b0b74a66532 gdb-apple: Support for 10.4, 10.5, and PowerPC (#11690)
</span>b0b74a66532 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit b0b74a665326c483af32d40a09a27ec580bcf430
</span>Author: Evan Miller <emmiller@gmail.com>
AuthorDate: Tue Sep 14 02:55:41 2021 -0400

<span style='display:block; white-space:pre;color:#404040;'>    gdb-apple: Support for 10.4, 10.5, and PowerPC (#11690)
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    PPC64 debugging is not supported.
</span>---
 devel/gdb-apple/Portfile                           |  26 ++-
 devel/gdb-apple/files/patch-gdb-availability.diff  | 207 +++++++++++++++++++++
 .../gdb-apple/files/patch-include-libiberty.h.diff |  16 ++
 devel/gdb-apple/files/patch-macosx-nat-info.c.diff |  40 ++++
 .../files/patch-macosx-nat-threads.c.diff          |  15 ++
 devel/gdb-apple/files/patch-macosx-tdep.c.diff     |  16 ++
 6 files changed, 315 insertions(+), 5 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/gdb-apple/Portfile b/devel/gdb-apple/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 4ef2115e572..4607be0b2f4 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/gdb-apple/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/gdb-apple/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -28,7 +28,7 @@ can run on most popular UNIX and Microsoft Windows variants.
</span> 
 homepage        http://opensource.apple.com/source/gdb
 platforms       darwin
<span style='display:block; white-space:pre;background:#ffe0e0;'>-supported_archs x86_64 i386
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+supported_archs x86_64 i386 ppc
</span> 
 # xm.h can be created out of order
 use_parallel_build no
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -43,7 +43,21 @@ depends_build   port:gettext port:zlib port:flex port:texinfo
</span> 
 depends_lib     port:libiconv port:ncurses port:sqlite3
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-patchfiles      patch-macosx-nat.c.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles      patch-macosx-nat.c.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} < 10} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    patchfiles-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                patch-macosx-tdep.c.diff \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                patch-macosx-nat-threads.c.diff \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                patch-gdb-availability.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${os.major} == 8} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        depends_build-append port:libmacho-headers
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        patchfiles-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                patch-macosx-nat-info.c.diff \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                patch-include-libiberty.h.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span> 
 worksrcdir     ${worksrcdir}/src
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -55,7 +69,7 @@ post-patch {
</span>         ${worksrcpath}/bfd/configure.host
 
     # https://trac.macports.org/ticket/63153
<span style='display:block; white-space:pre;background:#ffe0e0;'>-     reinplace "s|\$(SDKROOT)/usr/bin/mig|/usr/bin/mig|" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    reinplace "s|\$(SDKROOT)/usr/bin/mig|/usr/bin/mig|" \
</span>         ${worksrcpath}/gdb/config/i386/macosx.mh \
         ${worksrcpath}/gdb/config/powerpc/macosx.mh
 }
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -76,8 +90,10 @@ destroot.args \
</span>     LEXLIB="${prefix}/lib/libfl.a"
 
 post-destroot {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    system "chgrp procmod ${destroot}${prefix}/bin/*-apple"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    system "chmod g+s ${destroot}${prefix}/bin/*-apple"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if { ${os.arch} ne "powerpc" } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        system "chgrp procmod ${destroot}${prefix}/bin/*-apple"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        system "chmod g+s ${destroot}${prefix}/bin/*-apple"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span> 
     foreach info [glob -tails -directory ${destroot}${prefix}/share/info g*] {
         move ${destroot}${prefix}/share/info/${info} ${destroot}${prefix}/share/info/apple-${info}
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/gdb-apple/files/patch-gdb-availability.diff b/devel/gdb-apple/files/patch-gdb-availability.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..22333269883
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/gdb-apple/files/patch-gdb-availability.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,207 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Check for spawn.h, execinfo.h, and libproc.h and block out sections of code
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+where related system functions are not available. This enables compilation
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+on 10.4 and 10.5.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- gdb/config.in.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ gdb/config.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -124,6 +124,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Define to 1 if you have the <dlfcn.h> header file. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #undef HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Define to 1 if you have the <execinfo.h> header file. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef HAVE_EXECINFO_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Define to 1 if you have the `fork' function. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #undef HAVE_FORK
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -169,6 +172,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Define to 1 if you have the `m' library (-lm). */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #undef HAVE_LIBM
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Define to 1 if you have the <libproc.h> header file. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef HAVE_LIBPROC_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Define if libunwind library is being used. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #undef HAVE_LIBUNWIND
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -337,6 +343,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Define to 1 if the system has the type `socklen_t'. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #undef HAVE_SOCKLEN_T
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Define to 1 if you have the <spawn.h> header file. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef HAVE_SPAWN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Define to 1 if you have the <stddef.h> header file. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #undef HAVE_STDDEF_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- gdb/configure.ac.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ gdb/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -524,7 +524,7 @@ AC_CHECK_HEADERS(sys/user.h, [], [],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_CHECK_HEADERS(sys/wait.h wait.h)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_CHECK_HEADERS(termios.h termio.h sgtty.h)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-AC_CHECK_HEADERS(unistd.h)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AC_CHECK_HEADERS(unistd.h spawn.h execinfo.h libproc.h)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # On Solaris 2.[789], we need to define _MSE_INT_H to avoid a clash
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # between <widec.h> and <wchar.h> that would cause AC_CHECK_HEADERS to
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- gdb/configure.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ gdb/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -27720,7 +27720,7 @@ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ done
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-for ac_header in unistd.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++for ac_header in unistd.h spawn.h execinfo.h libproc.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ do
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- gdb/macosx/macosx-nat-dyld.c.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ gdb/macosx/macosx-nat-dyld.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -791,7 +791,7 @@ macosx_locate_dyld_via_taskinfo (macosx_dyld_thread_status *s)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if defined (NM_NEXTSTEP)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if defined (NM_NEXTSTEP) && (MAC_OS_X_VERSION_MIN_REQUIRED >= 1050)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           if (macosx_status->task == TASK_NULL)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             return 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- gdb/macosx/macosx-nat-inferior.c.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ gdb/macosx/macosx-nat-inferior.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -60,13 +60,18 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <sys/sysctl.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <sys/proc.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <mach/mach_error.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef HAVE_SPAWN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <spawn.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <semaphore.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <dlfcn.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef HAVE_LIBPROC_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <libproc.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <sys/proc_info.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <AvailabilityMacros.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "macosx-nat-dyld.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "macosx-nat-inferior.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2701,6 +2706,7 @@ macosx_get_thread_name (ptid_t ptid)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (tp->private == NULL || tp->private->app_thread_port == 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return NULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1050
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   thread_identifier_info_data_t tident;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   unsigned int info_count;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   kern_return_t kret;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2728,6 +2734,7 @@ macosx_get_thread_name (ptid_t ptid)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif /* MAC_OS_X_VERSION_MIN_REQUIRED >= 1050 */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return buf;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- gdb/macosx/macosx-nat-infthread.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ gdb/macosx/macosx-nat-infthread.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -36,8 +36,11 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <sys/dir.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <inttypes.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef HAVE_LIBPROC_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <libproc.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <sys/proc_info.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <AvailabilityMacros.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "macosx-nat-inferior.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "macosx-nat-inferior-util.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -810,6 +813,7 @@ print_thread_info (thread_t tid, int *gdb_thread_id)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     print_stack_frame (get_selected_frame (NULL), 0, LOCATION);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     switch_to_thread (current_ptid);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1050
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   thread_identifier_info_data_t tident;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   info_count = THREAD_IDENTIFIER_INFO_COUNT;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   kret = thread_info (tid, THREAD_IDENTIFIER_INFO, (thread_info_t) &tident, 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -879,6 +883,7 @@ print_thread_info (thread_t tid, int *gdb_thread_id)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       printf_filtered ("\tcurrent priority: %d\n", pth.pth_priority);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       printf_filtered ("\tmax priority: %d\n", pth.pth_maxpriority);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif /* MAC_OS_X_VERSION_MIN_REQUIRED >= 1050 */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   printf_filtered ("\tsuspend count: %d", info.suspend_count);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1176,6 +1181,7 @@ macosx_print_thread_details (struct ui_out *uiout, ptid_t ptid)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ui_out_field_fmt (uiout, "mach-port-number", "0x%s", 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     paddr_nz (app_thread_name));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1050
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   thread_identifier_info_data_t tident;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   info_count = THREAD_IDENTIFIER_INFO_COUNT;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   kret = thread_info (tid, THREAD_IDENTIFIER_INFO, (thread_info_t) &tident, 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1208,6 +1214,7 @@ macosx_print_thread_details (struct ui_out *uiout, ptid_t ptid)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                               paddr_nz (struct_addr));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif /* MAC_OS_X_VERSION_MIN_REQUIRED >= 1050 */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- gdb/remote.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ gdb/remote.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -64,7 +64,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "macosx-nat-dyld.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "macosx-nat-dyld-process.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef HAVE_EXECINFO_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <execinfo.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <AvailabilityMacros.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Prototypes for local functions.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static void cleanup_sigint_signal_handler (void *dummy);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -478,11 +481,13 @@ struct memory_packet_config
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ remote_backtrace_self (const char *message)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if (MAC_OS_X_VERSION_MIN_REQUIRED >= 1050)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   void *bt_buffer[100];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   int count = backtrace (bt_buffer, 100);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (message && message[0])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     fprintf_filtered (gdb_stderr, "%s", message);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   backtrace_symbols_fd (bt_buffer, count, STDERR_FILENO);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- gdb/utils.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ gdb/utils.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -28,7 +28,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "event-top.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "exceptions.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "bfd.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef HAVE_EXECINFO_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <execinfo.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <AvailabilityMacros.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <sys/resource.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <uuid/uuid.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <regex.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -882,12 +885,14 @@ internal_vproblem (struct internal_problem *problem,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* APPLE LOCAL: Do a stack crawl of how we got here so we're more likely
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      to get useful bug reports.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if (MAC_OS_X_VERSION_MIN_REQUIRED >= 1050)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     void *bt_buffer[15];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     int count = backtrace (bt_buffer, 15);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     fprintf (stderr, "gdb stack crawl at point of internal error:\n");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     backtrace_symbols_fd (bt_buffer, count, STDERR_FILENO);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* Create a string containing the full error/warning message.  Need
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      to call query with this full string, as otherwize the reason
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/gdb-apple/files/patch-include-libiberty.h.diff b/devel/gdb-apple/files/patch-include-libiberty.h.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..b98580c8ad9
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/gdb-apple/files/patch-include-libiberty.h.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,16 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+There's a bug in the configure script that thinks basename is not declared.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Normally this isn't a problem, but on Tiger the argument is "const char *"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+which conflicts with the manually provided definition below. So this patch is
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+needed on Tiger only.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- include/libiberty.h.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ include/libiberty.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -96,7 +96,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if !HAVE_DECL_BASENAME
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* APPLE LOCAL basename */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if defined (__GNU_LIBRARY__ ) || defined (__linux__) || defined (__FreeBSD__) || defined (__OpenBSD__) || defined(__NetBSD__) || defined (__APPLE__) || defined (__CYGWIN__) || defined (__CYGWIN32__) || defined (__MINGW32__) || defined (HAVE_DECL_BASENAME)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-extern char *basename (char *);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++extern char *basename (const char *);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Do not allow basename to be used if there is no prototype seen.  We
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    either need to use the above prototype or have one from
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/gdb-apple/files/patch-macosx-nat-info.c.diff b/devel/gdb-apple/files/patch-macosx-nat-info.c.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..b0d19733fb7
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/gdb-apple/files/patch-macosx-nat-info.c.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,40 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Use the old underscore-free struct field names - patch should be applied only
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+on Tiger.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- gdb/macosx/macosx-nat-info.c.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ gdb/macosx/macosx-nat-info.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -268,8 +268,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     union
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      struct __darwin_ppc_thread_state thread;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      struct __darwin_ppc_exception_state exception;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ppc_thread_state_t thread;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ppc_exception_state_t exception;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     } thread_state;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     int register_count, i;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     unsigned int *register_data;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -282,7 +282,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     MACH_CHECK_ERROR (result);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     printf_unfiltered ("\nPPC_THREAD_STATE \n");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    register_data = &thread_state.thread.__r0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    register_data = &thread_state.thread.r0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     register_count = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     for (i = 0; i < 8; ++i)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -297,11 +297,11 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     printf_unfiltered ("srr0: 0x%08x    srr1: 0x%08x\n",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                       thread_state.thread.__srr0, thread_state.thread.__srr1);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                       thread_state.thread.srr0, thread_state.thread.srr1);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     printf_unfiltered ("cr:   0x%08x    xer:  0x%08x\n",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                       thread_state.thread.__cr, thread_state.thread.__xer);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                       thread_state.thread.cr, thread_state.thread.xer);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     printf_unfiltered ("lr:   0x%08x    ctr:  0x%08x\n",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                       thread_state.thread.__lr, thread_state.thread.__ctr);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                       thread_state.thread.lr, thread_state.thread.ctr);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/gdb-apple/files/patch-macosx-nat-threads.c.diff b/devel/gdb-apple/files/patch-macosx-nat-threads.c.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..b4c98f6c4d5
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/gdb-apple/files/patch-macosx-nat-threads.c.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,15 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Fix a hang observed on a Tiger/PPC system when attempting to end a debugging
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+session. pthread_detach is essentially an asynchronous pthread_join, so this
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+shouldn't have any side effects, but apply at your own discretion.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- gdb/macosx/macosx-nat-threads.c.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ gdb/macosx/macosx-nat-threads.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -46,7 +46,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ret = pthread_cancel (pthread);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  ret = pthread_join (pthread, NULL);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ret = pthread_detach (pthread);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (ret != 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       warning ("Unable to join to canceled thread: %s (%d)", strerror (errno),
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/gdb-apple/files/patch-macosx-tdep.c.diff b/devel/gdb-apple/files/patch-macosx-tdep.c.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..dc8c7369752
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/gdb-apple/files/patch-macosx-tdep.c.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,16 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Fixes compilation targeting 10.4 and 10.5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- gdb/macosx/macosx-tdep.c.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ gdb/macosx/macosx-tdep.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1558,7 +1558,11 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (plist_data == NULL)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return NULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if MAC_OS_X_VERSION_MIN_REQUIRED < 1060
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  CFPropertyListRef plist = CFPropertyListCreateFromXMLData (kCFAllocatorDefault, plist_data, kCFPropertyListImmutable, NULL);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   CFPropertyListRef plist = CFPropertyListCreateWithData (kCFAllocatorDefault, plist_data, kCFPropertyListImmutable, NULL, NULL);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (plist == NULL || CFGetTypeID (plist) != CFDictionaryGetTypeID())
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {
</span></pre><pre style='margin:0'>

</pre>