be4d133316
Implement a "generate-core-file" command in gdb, save target state. * gcore.c: New file. Implement new command 'generate-core-file'. Save a corefile image of the current state of the inferior. * linux-proc.c: Add linux-specific code for saving corefiles. * target.h (struct target_ops): Add new target vectors for saving corefiles; to_find_memory_regions and to_make_corefile_notes. (target_find_memory_regions): New macro. (target_make_corefile_notes): New macro. * target.c (update_current_target): Inherit new target methods. (dummy_find_memory_regions): New place-holder method. (dummy_make_corefile_notes): New place-holder method. (init_dummy_target): Initialize new dummy target vectors. * exec.c (exec_set_find_memory_regions): New function. Allow the exec_ops vector for memory regions to be taken over. (exec_make_note_section): New function, target vector method. * defs.h (exec_set_find_memory_regions): Export prototype. * procfs.c (proc_find_memory_regions): New function, corefile method. (procfs_make_note_section): New function, corefile method. (init_procfs_ops): Set new target vector pointers. (find_memory_regions_callback): New function. (procfs_do_thread_registers): New function. (procfs_corefile_thread_callback): New function. * sol-thread.c (sol_find_memory_regions): New function. (sol_make_note_section): New function. (init_sol_thread_ops): Initialize new target vectors. * inftarg.c (inftarg_set_find_memory_regions): New function. Allow to_find_memory_regions vector to be taken over. (inftarg_set_make_corefile_notes): New function. Allow to_make_corefile_notes vector to be taken over. * thread-db.c (thread_db_new_objfile): Don't activate thread-db interface layer if not target_has_execution (may be a corefile). * config/i386/linux.mh: Add gcore.o to NATDEPFILES. * config/sparc/sun4sol2.mh: Ditto. * config/alpha/alpha-linux.mh: Ditto. * config/arm/linux.mh: Ditto. * config/i386/x86-64linux.mh: Ditto. * config/ia64/linux.mh: Ditto. * config/m68k/linux.mh: Ditto. * config/mips/linux.mh: Ditto. * config/powerpc/linux.mh: Ditto. * config/sparc/linux.mh: Ditto.
23 lines
892 B
Text
23 lines
892 B
Text
# Host: Sun 4 or Sparcstation, running Solaris 2
|
|
|
|
XM_FILE= xm-sun4sol2.h
|
|
XDEPFILES=
|
|
XM_CLIBS= -lsocket -lnsl
|
|
|
|
NAT_FILE= nm-sun4sol2.h
|
|
NATDEPFILES= corelow.o core-sol2.o solib.o solib-svr4.o solib-legacy.o \
|
|
fork-child.o procfs.o gcore.o \
|
|
proc-api.o proc-events.o proc-flags.o proc-why.o
|
|
|
|
# /usr/include/v9 is needed only by core-sol2.c when including
|
|
# v9/sys/privregs.h, or rather the headers it in turn includes.
|
|
MH_CFLAGS=-I/usr/include/v9
|
|
# If you are compiling with Sun's compiler, add the -xs option to CC
|
|
# (e.g. `make CC="cc -xs"').
|
|
# Sun's compilers require the -xs option to produce debug information
|
|
# in the final linked executable. Otherwise they leave it in the .o
|
|
# files only, with undocumented pointers to it in the linked executable.
|
|
# This is commented out because we don't assume that the Sun compiler
|
|
# is in use.
|
|
#MH_CFLAGS=-xs -I/usr/include/v9
|
|
HOST_IPC=-DBSD_IPC
|