Date: Sun, 27 Feb 2005 22:24:39 GMT From: Olivier Houchard <cognet@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 72073 for review Message-ID: <200502272224.j1RMOdfo047793@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=72073 Change 72073 by cognet@cognet on 2005/02/27 22:24:28 Get more love from gdb, and teach him how to deal with shared libraries. Affected files ... .. //depot/projects/arm/contrib-arm.diff#2 edit .. //depot/projects/arm/gnu-arm.diff#2 edit Differences ... ==== //depot/projects/arm/contrib-arm.diff#2 (text+ko) ==== @@ -614,8 +614,8 @@ RCS file: contrib/gdb/gdb/armfbsd-tdep.c diff -N contrib/gdb/gdb/armfbsd-tdep.c --- /dev/null 1 Jan 1970 00:00:00 -0000 -+++ contrib/gdb/gdb/armfbsd-tdep.c 15 Aug 2004 00:51:46 -0000 -@@ -0,0 +1,59 @@ ++++ contrib/gdb/gdb/armfbsd-tdep.c 27 Feb 2005 20:44:28 -0000 +@@ -0,0 +1,67 @@ +/* Target-specific functions for ARM running under NetBSD. + Copyright 2002, 2003 Free Software Foundation, Inc. + @@ -639,7 +639,9 @@ +#include "defs.h" +#include "osabi.h" + ++#include "arch-utils.h" +#include "arm-tdep.h" ++#include "solib-svr4.h" + +/* Description of the longjmp buffer. */ +#define ARM_FBSD_JB_PC 24 @@ -665,6 +667,12 @@ + + arm_freebsd_init_abi_common (info, gdbarch); + ++ /* FreeBSD ELF uses SVR4-style shared libraries. */ ++ set_gdbarch_in_solib_call_trampoline ++ (gdbarch, generic_in_solib_call_trampoline); ++ set_solib_svr4_fetch_link_map_offsets ++ (gdbarch, svr4_ilp32_fetch_link_map_offsets); ++ + tdep->fp_model = ARM_FLOAT_SOFT_VFP; +} + ==== //depot/projects/arm/gnu-arm.diff#2 (text+ko) ==== @@ -1,10 +1,10 @@ Index: gnu/lib/libgcc/Makefile =================================================================== RCS file: /home/ncvs/src/gnu/lib/libgcc/Makefile,v -retrieving revision 1.53 -diff -u -p -r1.53 Makefile ---- gnu/lib/libgcc/Makefile 24 Oct 2004 15:32:24 -0000 1.53 -+++ gnu/lib/libgcc/Makefile 7 Nov 2004 17:22:29 -0000 +retrieving revision 1.54 +diff -u -p -r1.54 Makefile +--- gnu/lib/libgcc/Makefile 21 Dec 2004 09:33:45 -0000 1.54 ++++ gnu/lib/libgcc/Makefile 27 Feb 2005 21:18:24 -0000 @@ -97,8 +97,11 @@ LIB2FUNCS_EXTRA = qrnnd.asm # from config/arm/t-strongarm-elf CFLAGS+= -Dinhibit_libc -fno-inline @@ -31,11 +31,11 @@ Index: gnu/lib/libstdc++/Makefile =================================================================== RCS file: /home/ncvs/src/gnu/lib/libstdc++/Makefile,v -retrieving revision 1.52 -diff -u -p -r1.52 Makefile ---- gnu/lib/libstdc++/Makefile 1 Sep 2004 08:17:20 -0000 1.52 -+++ gnu/lib/libstdc++/Makefile 21 Oct 2004 21:30:12 -0000 -@@ -172,6 +172,10 @@ TARGETHDRSNAME_c_locale.h= c++locale.h +retrieving revision 1.54 +diff -u -p -r1.54 Makefile +--- gnu/lib/libstdc++/Makefile 26 Jan 2005 13:56:27 -0000 1.54 ++++ gnu/lib/libstdc++/Makefile 27 Feb 2005 21:18:25 -0000 +@@ -174,6 +174,10 @@ TARGETHDRSNAME_c_locale.h= c++locale.h TARGETHDRSNAME_new_allocator_base.h= c++allocator.h TARGETHDRSDIR= ${CXXINCLUDEDIR}/bits @@ -46,6 +46,22 @@ MARCHHDRS= atomic_word.h .for h in ${MARCHHDRS} .if exists(${SRCDIR}/config/cpu/${MARCHDIR}/${h}) +Index: gnu/usr.bin/Makefile +=================================================================== +RCS file: /home/ncvs/src/gnu/usr.bin/Makefile,v +retrieving revision 1.83 +diff -u -p -r1.83 Makefile +--- gnu/usr.bin/Makefile 24 Oct 2004 15:32:25 -0000 1.83 ++++ gnu/usr.bin/Makefile 27 Feb 2005 20:53:55 -0000 +@@ -23,7 +23,7 @@ SUBDIR= bc \ + tar \ + texinfo + +-.if ${MACHINE_ARCH} == "arm" || ${MACHINE_ARCH} == "powerpc" ++.if ${MACHINE_ARCH} == "powerpc" + NO_GDB= # not yet + .endif + Index: gnu/usr.bin/binutils/as/arm-freebsd/targ-cpu.h =================================================================== RCS file: gnu/usr.bin/binutils/as/arm-freebsd/targ-cpu.h @@ -80,8 +96,8 @@ RCS file: gnu/usr.bin/binutils/libbfd/Makefile.arm diff -N gnu/usr.bin/binutils/libbfd/Makefile.arm --- /dev/null 1 Jan 1970 00:00:00 -0000 -+++ gnu/usr.bin/binutils/libbfd/Makefile.arm 21 Oct 2004 21:30:12 -0000 -@@ -0,0 +1,19 @@ ++++ gnu/usr.bin/binutils/libbfd/Makefile.arm 18 Jan 2005 12:04:26 -0000 +@@ -0,0 +1,20 @@ +# $FreeBSD$ + +DEFAULT_VECTOR= bfd_elf32_littlearm_vec @@ -94,7 +110,8 @@ + elfarm-nabi.c \ + elfarm-oabi.c \ + elf32-target.h -+VECS+= ${DEFAULT_VECTOR} ++VECS+= ${DEFAULT_VECTOR} \ ++ bfd_elf32_bigarm_vec + +.if ${TARGET_ARCH} == "arm" +CFLAGS+= -DDEFAULT_VECTOR=${DEFAULT_VECTOR} @@ -182,8 +199,8 @@ RCS file: gnu/usr.bin/gdb/arch/arm/config.h diff -N gnu/usr.bin/gdb/arch/arm/config.h --- /dev/null 1 Jan 1970 00:00:00 -0000 -+++ gnu/usr.bin/gdb/arch/arm/config.h 28 Nov 2004 14:27:46 -0000 -@@ -0,0 +1,551 @@ ++++ gnu/usr.bin/gdb/arch/arm/config.h 15 Jan 2005 15:50:12 -0000 +@@ -0,0 +1,553 @@ +/* $FreeBSD$ */ + +/* config.h. Generated automatically by configure. */ @@ -266,13 +283,13 @@ +#endif + +/* Define if your struct reg has r_fs. */ -+#define HAVE_STRUCT_REG_R_FS 1 ++/* #define HAVE_STRUCT_REG_R_FS 1 */ + +/* Define if your struct stat has st_blocks. */ +#define HAVE_STRUCT_STAT_ST_BLOCKS 1 + +/* Define if your struct reg has r_gs. */ -+#define HAVE_STRUCT_REG_R_GS 1 ++/* #define HAVE_STRUCT_REG_R_GS 1 */ + +/* Define if <link.h> exists and defines struct link_map which has + members with an ``l_'' prefix. (For Solaris, SVR4, and @@ -360,7 +377,9 @@ +#define GDB_TM_FILE config/arm/tm-fbsd.h + +/* nativefile */ ++#ifndef CROSS_DEBUGGER +#define GDB_NM_FILE config/arm/nm-fbsd.h ++#endif + +/* Define to 1 so <sys/proc.h> gets a definition of anon_hdl. Works + around a <sys/proc.h> problem on IRIX 5. */
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200502272224.j1RMOdfo047793>