darling-gdb/gdb/energize-patches

1750 lines
47 KiB
Plaintext
Executable File
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Apply these patches to GDB to produce an Energize GDB.
# To apply these patches, first cd to gdb-XX/gdb, run "patch -p0 <thisfile",
# and then Sanitize.
===================================================================
*** 2.72 1992/09/27 06:48:41
--- .Sanitize 1992/09/28 21:34:08
***************
*** 74,79 ****
--- 74,82 ----
doc
dwarfread.c
elfread.c
+ energize
+ energize.c
+ energize.h
environ.c
environ.h
eval.c
===================================================================
*** 1.187 1992/09/26 08:06:30
--- Makefile.in 1992/09/28 21:34:08
***************
*** 123,128 ****
--- 123,135 ----
READLINE_DEP = $$(READLINE_DIR)
RL_LIB = ./../readline${subdir}/libreadline.a
+ # Energize libraries. Works slightly differently than other libraries
+ # because it is a gdb subdir and we try to build the energize library
+ # if it doesn't exist, unlike readline, bfd, mmalloc, etc. Note
+ # that SDIR and BDIR will be different if we configured with -srcdir.
+ ENERGIZE_DIR = energize
+ ENERGIZE_LIB = ${ENERGIZE_DIR}/libconn.a
+
# All the includes used for CFLAGS and for lint.
# -I. for config files.
# -I${srcdir} possibly for regex.h also.
***************
*** 157,166 ****
# Libraries and corresponding dependencies for compiling gdb.
# {X,T}M_CLIBS, defined in *config files, have host- and target-dependent libs.
# TERMCAP comes after readline, since readline depends on it.
! CLIBS = ${BFD_LIB} ${RL_LIB} ${TERMCAP} ${OPCODES} ${MMALLOC_LIB} ${LIBIBERTY} \
! ${XM_CLIBS} ${TM_CLIBS} ${NAT_CLIBS}
! CDEPS = ${XM_CDEPS} ${TM_CDEPS} ${NAT_CDEPS} \
! ${BFD_LIB} ${RL_LIB} ${OPCODES} ${MMALLOC_LIB} ${LIBIBERTY}
ADD_FILES = ${REGEX} ${ALLOCA} ${XM_ADD_FILES} ${TM_ADD_FILES} ${NAT_ADD_FILES}
ADD_DEPS = ${REGEX1} ${ALLOCA1} ${XM_ADD_FILES} ${TM_ADD_FILES} ${NAT_ADD_FILES}
--- 164,173 ----
# Libraries and corresponding dependencies for compiling gdb.
# {X,T}M_CLIBS, defined in *config files, have host- and target-dependent libs.
# TERMCAP comes after readline, since readline depends on it.
! CLIBS = ${BFD_LIB} ${RL_LIB} ${TERMCAP} ${OPCODES} ${MMALLOC_LIB} \
! ${LIBIBERTY} ${XM_CLIBS} ${TM_CLIBS} ${NAT_CLIBS} ${ENERGIZE_LIB}
! CDEPS = ${XM_CDEPS} ${TM_CDEPS} ${NAT_CDEPS} ${BFD_LIB} ${RL_LIB} ${OPCODES} \
! ${MMALLOC_LIB} ${LIBIBERTY} ${ENERGIZE_LIB}
ADD_FILES = ${REGEX} ${ALLOCA} ${XM_ADD_FILES} ${TM_ADD_FILES} ${NAT_ADD_FILES}
ADD_DEPS = ${REGEX1} ${ALLOCA1} ${XM_ADD_FILES} ${TM_ADD_FILES} ${NAT_ADD_FILES}
***************
*** 200,206 ****
mem-break.c target.c \
dbxread.c coffread.c elfread.c dwarfread.c xcoffread.c stabsread.c \
ieee-float.c language.c parse.c buildsym.c objfiles.c \
! minsyms.c mipsread.c maint.c
# Source files in subdirectories (which will be handled separately by
# 'make gdb.tar.Z').
--- 207,213 ----
mem-break.c target.c \
dbxread.c coffread.c elfread.c dwarfread.c xcoffread.c stabsread.c \
ieee-float.c language.c parse.c buildsym.c objfiles.c \
! minsyms.c mipsread.c maint.c energize.c
# Source files in subdirectories (which will be handled separately by
# 'make gdb.tar.Z').
***************
*** 289,295 ****
command.o utils.o expprint.o environ.o version.o gdbtypes.o \
copying.o $(DEPFILES) mem-break.o target.o \
ieee-float.o putenv.o parse.o language.o $(YYOBJ) \
! buildsym.o objfiles.o minsyms.o maint.o demangle.o \
dbxread.o coffread.o elfread.o dwarfread.o xcoffread.o mipsread.o \
stabsread.o core.o
--- 296,302 ----
command.o utils.o expprint.o environ.o version.o gdbtypes.o \
copying.o $(DEPFILES) mem-break.o target.o \
ieee-float.o putenv.o parse.o language.o $(YYOBJ) \
! buildsym.o objfiles.o minsyms.o maint.o demangle.o energize.o \
dbxread.o coffread.o elfread.o dwarfread.o xcoffread.o mipsread.o \
stabsread.o core.o
***************
*** 303,309 ****
NTSSTART = kdb-start.o
! SUBDIRS = doc
# For now, shortcut the "configure GDB for fewer languages" stuff.
YYFILES = c-exp.tab.c m2-exp.tab.c
--- 310,316 ----
NTSSTART = kdb-start.o
! SUBDIRS = doc ${ENERGIZE_DIR}
# For now, shortcut the "configure GDB for fewer languages" stuff.
YYFILES = c-exp.tab.c m2-exp.tab.c
***************
*** 365,370 ****
--- 372,391 ----
#load `echo " "$(DEPFILES) | sed -e 's/\.o/.c/g' -e 's, , ../,g'`
echo "Load .c corresponding to:" $(DEPFILES)
+ ${ENERGIZE_LIB} :
+ @(cd ${ENERGIZE_DIR}; \
+ $(MAKE) \
+ "against=$(against)" \
+ "AR=$(AR)" \
+ "AR_FLAGS=$(AR_FLAGS)" \
+ "CC=$(CC)" \
+ "CFLAGS=$(CFLAGS)" \
+ "RANLIB=$(RANLIB)" \
+ "MAKEINFO=$(MAKEINFO)" \
+ "INSTALL=$(INSTALL)" \
+ "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \
+ "INSTALL_DATA=$(INSTALL_DATA)" \
+ "BISON=$(BISON)")
# This is useful when debugging GDB, because some Unix's don't let you run GDB
# on itself without copying the executable. So "make gdb1" will make
===================================================================
*** 1.48 1992/09/29 05:07:04
--- breakpoint.c 1992/09/28 21:34:09
***************
*** 273,278 ****
--- 273,279 ----
b->cond_string = NULL;
if (from_tty)
printf_filtered ("Breakpoint %d now unconditional.\n", bnum);
+ energize_condition_breakpoint(b);
}
else
{
***************
*** 281,286 ****
--- 282,288 ----
typed in or the decompiled expression. */
b->cond_string = savestring (arg, strlen (arg));
b->cond = parse_exp_1 (&arg, block_for_pc (b->address), 0);
+ energize_condition_breakpoint(b);
if (*arg)
error ("Junk at end of expression");
}
***************
*** 322,327 ****
--- 324,330 ----
l = read_command_lines ();
free_command_lines (&b->commands);
b->commands = l;
+ energize_commands_breakpoint(b);
return;
}
error ("No breakpoint number %d.", bnum);
***************
*** 445,452 ****
b->enable = disabled;
if (!disabled_breaks)
{
! fprintf (stderr,
! "Cannot insert breakpoint %d:\n", b->number);
printf_filtered ("Disabling shared library breakpoints:\n");
}
disabled_breaks = 1;
--- 448,455 ----
b->enable = disabled;
if (!disabled_breaks)
{
! fprintf_filtered (stderr, "Cannot insert breakpoint %d:\n",
! b->number);
printf_filtered ("Disabling shared library breakpoints:\n");
}
disabled_breaks = 1;
***************
*** 455,464 ****
else
#endif
{
! fprintf (stderr, "Cannot insert breakpoint %d:\n", b->number);
#ifdef ONE_PROCESS_WRITETEXT
! fprintf (stderr,
! "The same program may be running in another process.\n");
#endif
memory_error (val, b->address); /* which bombs us out */
}
--- 458,468 ----
else
#endif
{
! fprintf_filtered (stderr, "Cannot insert breakpoint %d:\n",
! b->number);
#ifdef ONE_PROCESS_WRITETEXT
! fprintf_filtered (stderr,
! "The same program may be running in another process.\n");
#endif
memory_error (val, b->address); /* which bombs us out */
}
***************
*** 478,484 ****
int val;
#ifdef BREAKPOINT_DEBUG
! printf ("Removing breakpoints.\n");
#endif /* BREAKPOINT_DEBUG */
ALL_BREAKPOINTS (b)
--- 482,488 ----
int val;
#ifdef BREAKPOINT_DEBUG
! printf_filtered ("Removing breakpoints.\n");
#endif /* BREAKPOINT_DEBUG */
ALL_BREAKPOINTS (b)
***************
*** 489,500 ****
return val;
b->inserted = 0;
#ifdef BREAKPOINT_DEBUG
! printf ("Removed breakpoint at %s",
! local_hex_string(b->address));
! printf (", shadow %s",
! local_hex_string(b->shadow_contents[0]));
! printf (", %s.\n",
! local_hex_string(b->shadow_contents[1]));
#endif /* BREAKPOINT_DEBUG */
}
--- 493,504 ----
return val;
b->inserted = 0;
#ifdef BREAKPOINT_DEBUG
! printf_filtered ("Removed breakpoint at %s",
! local_hex_string(b->address));
! printf_filtered (", shadow %s",
! local_hex_string(b->shadow_contents[0]));
! printf_filtered (", %s.\n",
! local_hex_string(b->shadow_contents[1]));
#endif /* BREAKPOINT_DEBUG */
}
***************
*** 922,927 ****
--- 926,932 ----
{
b->ignore_count--;
this_bp_stop = 0;
+ energize_ignore_breakpoint(b);
}
else
{
***************
*** 1141,1157 ****
others++;
if (others > 0)
{
! printf ("Note: breakpoint%s ", (others > 1) ? "s" : "");
ALL_BREAKPOINTS (b)
if (b->address == pc)
{
others--;
! printf ("%d%s%s ",
! b->number,
! (b->enable == disabled) ? " (disabled)" : "",
! (others > 1) ? "," : ((others == 1) ? " and" : ""));
}
! printf ("also set at pc %s.\n", local_hex_string(pc));
}
}
--- 1146,1163 ----
others++;
if (others > 0)
{
! printf_filtered ("Note: breakpoint%s ", (others > 1) ? "s" : "");
ALL_BREAKPOINTS (b)
if (b->address == pc)
{
others--;
! printf_filtered ("%d%s%s ",
! b->number,
! (b->enable == disabled) ? " (disabled)" : "",
! (others > 1) ? "," :
! ((others == 1) ? " and" : ""));
}
! printf_filtered ("also set at pc %s.\n", local_hex_string(pc));
}
}
***************
*** 1373,1378 ****
--- 1379,1386 ----
mention (b)
struct breakpoint *b;
{
+ energize_create_breakpoint(b);
+
switch (b->type)
{
case bp_watchpoint:
***************
*** 1550,1557 ****
if (sals.nelts > 1)
{
! printf ("Multiple breakpoints were set.\n");
! printf ("Use the \"delete\" command to delete unwanted breakpoints.\n");
}
free ((PTR)sals.sals);
}
--- 1558,1565 ----
if (sals.nelts > 1)
{
! printf_filtered ("Multiple breakpoints were set.\n");
! printf_filtered ("Use the \"delete\" command to delete unwanted breakpoints.\n");
}
free ((PTR)sals.sals);
}
***************
*** 1769,1775 ****
goto win;
}
#endif
! printf ("No catch clause for exception %s.\n", p);
#if 0
win:
#endif
--- 1777,1783 ----
goto win;
}
#endif
! printf_filtered ("No catch clause for exception %s.\n", p);
#if 0
win:
#endif
***************
*** 1970,1985 ****
b->enable = enabled;
b->disposition = tempflag ? delete : donttouch;
! printf ("Breakpoint %d at %s", b->number, local_hex_string(b->address));
if (b->symtab)
! printf (": file %s, line %d.", b->symtab->filename, b->line_number);
! printf ("\n");
}
if (sals.nelts > 1)
{
! printf ("Multiple breakpoints were set.\n");
! printf ("Use the \"delete\" command to delete unwanted breakpoints.\n");
}
free ((PTR)sals.sals);
}
--- 1978,1995 ----
b->enable = enabled;
b->disposition = tempflag ? delete : donttouch;
! printf_filtered ("Breakpoint %d at %s", b->number,
! local_hex_string(b->address));
if (b->symtab)
! printf_filtered (": file %s, line %d.",
! b->symtab->filename, b->line_number);
! printf_filtered ("\n");
}
if (sals.nelts > 1)
{
! printf_filtered ("Multiple breakpoints were set.\n");
! printf_filtered ("Use the \"delete\" command to delete unwanted breakpoints.\n");
}
free ((PTR)sals.sals);
}
***************
*** 2086,2095 ****
}
if (found->next) from_tty = 1; /* Always report if deleted more than one */
! if (from_tty) printf ("Deleted breakpoint%s ", found->next ? "s" : "");
while (found)
{
! if (from_tty) printf ("%d ", found->number);
b1 = found->next;
delete_breakpoint (found);
found = b1;
--- 2096,2106 ----
}
if (found->next) from_tty = 1; /* Always report if deleted more than one */
! if (from_tty) printf_filtered ("Deleted breakpoint%s ",
! found->next ? "s" : "");
while (found)
{
! if (from_tty) printf_filtered ("%d ", found->number);
b1 = found->next;
delete_breakpoint (found);
found = b1;
***************
*** 2120,2125 ****
--- 2131,2138 ----
register struct breakpoint *b;
register bpstat bs;
+ energize_delete_breakpoint(bpt);
+
if (bpt->inserted)
target_remove_breakpoint(bpt->address, bpt->shadow_contents);
***************
*** 2144,2150 ****
free ((PTR)bpt->addr_string);
if (xgdb_verbose && bpt->type == bp_breakpoint)
! printf ("breakpoint #%d deleted\n", bpt->number);
/* Be sure no bpstat's are pointing at it after it's been freed. */
/* FIXME, how can we find all bpstat's? We just check stop_bpstat for now. */
--- 2157,2163 ----
free ((PTR)bpt->addr_string);
if (xgdb_verbose && bpt->type == bp_breakpoint)
! printf_filtered ("breakpoint #%d deleted\n", bpt->number);
/* Be sure no bpstat's are pointing at it after it's been freed. */
/* FIXME, how can we find all bpstat's? We just check stop_bpstat for now. */
***************
*** 2264,2270 ****
ALL_BREAKPOINTS_SAFE (b, temp)
{
! sprintf (message, message1, b->number); /* Format possible error msg */
catch_errors (breakpoint_re_set_one, (char *) b, message);
}
--- 2277,2283 ----
ALL_BREAKPOINTS_SAFE (b, temp)
{
! printf_filtered (message, message1, b->number); /* Format possible error msg */
catch_errors (breakpoint_re_set_one, (char *) b, message);
}
***************
*** 2298,2303 ****
--- 2311,2317 ----
if (b->number == bptnum)
{
b->ignore_count = count;
+ energize_ignore_breakpoint(b);
if (!from_tty)
return;
else if (count == 0)
***************
*** 2322,2328 ****
struct breakpoint *b;
ALL_BREAKPOINTS (b)
! b->ignore_count = 0;
}
/* Command to set ignore-count of breakpoint N to COUNT. */
--- 2336,2345 ----
struct breakpoint *b;
ALL_BREAKPOINTS (b)
! {
! b->ignore_count = 0;
! energize_ignore_breakpoint(b);
! }
}
/* Command to set ignore-count of breakpoint N to COUNT. */
***************
*** 2377,2383 ****
function (b);
goto win;
}
! printf ("No breakpoint number %d.\n", num);
win:
p = p1;
}
--- 2394,2400 ----
function (b);
goto win;
}
! printf_filtered ("No breakpoint number %d.\n", num);
win:
p = p1;
}
***************
*** 2389,2396 ****
{
bpt->enable = enabled;
if (xgdb_verbose && bpt->type == bp_breakpoint)
! printf ("breakpoint #%d enabled\n", bpt->number);
check_duplicates (bpt->address);
if (bpt->type == bp_watchpoint)
--- 2406,2415 ----
{
bpt->enable = enabled;
+ energize_enable_breakpoint(bpt);
+
if (xgdb_verbose && bpt->type == bp_breakpoint)
! printf_filtered ("breakpoint #%d enabled\n", bpt->number);
check_duplicates (bpt->address);
if (bpt->type == bp_watchpoint)
***************
*** 2436,2441 ****
--- 2455,2462 ----
disable_breakpoint (bpt)
struct breakpoint *bpt;
{
+ energize_disable_breakpoint(bpt);
+
bpt->enable = disabled;
if (xgdb_verbose && bpt->type == bp_breakpoint)
===================================================================
*** 1.18 1992/07/10 17:22:30
--- command.c 1992/09/28 21:34:09
***************
*** 1093,1098 ****
--- 1093,1100 ----
else
error ("gdb internal error: bad cmd_type in do_setshow_command");
(*c->function.sfunc) (NULL, from_tty, c);
+ if (energize)
+ print_prompt();
}
/* Show all the settings in a list of show commands. */
***************
*** 1148,1154 ****
}
if (pid != -1)
! while ((rc = wait (&status)) != pid && rc != -1)
;
else
error ("Fork failed");
--- 1150,1156 ----
}
if (pid != -1)
! while ((rc = energize_shell_wait (&status)) != pid && rc != -1)
;
else
error ("Fork failed");
===================================================================
*** 1.67 1992/09/21 20:01:00
--- configure.in 1992/09/28 21:34:10
***************
*** 1,4 ****
! configdirs="doc"
srcname="GDB"
srctrigger=main.c
--- 1,4 ----
! configdirs="energize doc"
srcname="GDB"
srctrigger=main.c
===================================================================
*** 1.48 1992/09/15 08:55:59
--- defs.h 1992/09/28 21:34:10
***************
*** 811,814 ****
--- 811,816 ----
#define MAINTENANCE_CMDS 1
#endif
+ #include "energize.h"
+
#endif /* !defined (DEFS_H) */
===================================================================
*** 2.5 1992/09/03 16:26:03
--- demangle.c 1992/09/28 21:34:10
***************
*** 37,43 ****
the appropriate target configuration file. */
#ifndef DEFAULT_DEMANGLING_STYLE
! # define DEFAULT_DEMANGLING_STYLE AUTO_DEMANGLING_STYLE_STRING
#endif
/* String name for the current demangling style. Set by the "set demangling"
--- 37,43 ----
the appropriate target configuration file. */
#ifndef DEFAULT_DEMANGLING_STYLE
! # define DEFAULT_DEMANGLING_STYLE LUCID_DEMANGLING_STYLE_STRING
#endif
/* String name for the current demangling style. Set by the "set demangling"
===================================================================
*** 1.34 1992/09/26 05:20:04
--- infcmd.c 1992/09/28 21:34:11
***************
*** 242,247 ****
--- 242,248 ----
target_create_inferior (exec_file, inferior_args,
environ_vector (inferior_environ));
+ energize_new_process();
}
static void
===================================================================
*** 1.29 1992/09/25 19:19:00
--- inflow.c 1992/09/28 21:34:11
***************
*** 87,93 ****
static short pgrp_inferior;
static short pgrp_ours;
# else /* not def SHORT_PGRP */
! static int pgrp_inferior;
static int pgrp_ours;
# endif /* not def SHORT_PGRP */
#else /* not def TIOCGPGRP */
--- 87,93 ----
static short pgrp_inferior;
static short pgrp_ours;
# else /* not def SHORT_PGRP */
! int pgrp_inferior;
static int pgrp_ours;
# endif /* not def SHORT_PGRP */
#else /* not def TIOCGPGRP */
===================================================================
*** 1.59 1992/09/26 01:49:01
--- infrun.c 1992/09/28 21:34:12
***************
*** 519,525 ****
flush_cached_frames ();
registers_changed ();
! target_wait (&w);
#ifdef SIGTRAP_STOP_AFTER_LOAD
--- 519,525 ----
flush_cached_frames ();
registers_changed ();
! energize_wait (&w);
#ifdef SIGTRAP_STOP_AFTER_LOAD
===================================================================
*** 1.17 1992/09/26 09:06:10
--- inftarg.c 1992/09/28 21:34:12
***************
*** 123,128 ****
--- 123,129 ----
attach (pid);
inferior_pid = pid;
+ energize_new_process();
push_target (&child_ops);
#endif /* ATTACH_DETACH */
}
===================================================================
*** 1.57 1992/09/29 05:07:14
--- main.c 1992/09/28 21:34:13
***************
*** 441,446 ****
--- 441,447 ----
char *corearg = NULL;
char *cdarg = NULL;
char *ttyarg = NULL;
+ char *energize_id = NULL;
/* Pointers to all arguments of +command option. */
char **cmdarg;
***************
*** 539,544 ****
--- 540,546 ----
{"tty", required_argument, 0, 't'},
{"baud", required_argument, 0, 'b'},
{"b", required_argument, 0, 'b'},
+ {"context", required_argument, 0, 12},
/* Allow machine descriptions to add more options... */
#ifdef ADDITIONAL_OPTIONS
ADDITIONAL_OPTIONS
***************
*** 571,576 ****
--- 573,581 ----
case 11:
cdarg = optarg;
break;
+ case 12:
+ energize_id = optarg;
+ break;
case 's':
symarg = optarg;
break;
***************
*** 611,617 ****
ADDITIONAL_OPTION_CASES
#endif
case '?':
! fprintf (stderr,
"Use `%s +help' for a complete list of options.\n",
argv[0]);
exit (1);
--- 616,622 ----
ADDITIONAL_OPTION_CASES
#endif
case '?':
! fprintf_filtered (stderr,
"Use `%s +help' for a complete list of options.\n",
argv[0]);
exit (1);
***************
*** 668,674 ****
corearg = argv[optind];
break;
case 3:
! fprintf (stderr,
"Excess command line arguments ignored. (%s%s)\n",
argv[optind], (optind == argc - 1) ? "" : " ...");
break;
--- 673,679 ----
corearg = argv[optind];
break;
case 3:
! fprintf_filtered (stderr,
"Excess command line arguments ignored. (%s%s)\n",
argv[optind], (optind == argc - 1) ? "" : " ...");
break;
***************
*** 679,684 ****
--- 684,692 ----
/* Run the init function of each source file */
+ /* Must call this first to setup tty */
+ energize_initialize (energize_id, execarg);
+
initialize_cmd_lists (); /* This needs to be done first */
initialize_all_files ();
initialize_main (); /* But that omits this file! Do it now */
***************
*** 853,859 ****
if (!setjmp (to_top_level))
{
do_cleanups (ALL_CLEANUPS); /* Do complete cleanup */
! command_loop ();
quit_command ((char *)0, instream == stdin);
}
}
--- 861,870 ----
if (!setjmp (to_top_level))
{
do_cleanups (ALL_CLEANUPS); /* Do complete cleanup */
! if (energize)
! energize_main_loop();
! else
! command_loop ();
quit_command ((char *)0, instream == stdin);
}
}
***************
*** 915,921 ****
else if (c->function.cfunc == NO_FUNCTION)
error ("That is not a command, just a help topic.");
else
! (*c->function.cfunc) (arg, from_tty & caution);
}
/* Tell the user if the language has changed (except first time). */
--- 926,932 ----
else if (c->function.cfunc == NO_FUNCTION)
error ("That is not a command, just a help topic.");
else
! energize_call_command (c, arg, from_tty & caution);
}
/* Tell the user if the language has changed (except first time). */
***************
*** 1317,1323 ****
#else
signal (STOP_SIGNAL, stop_sig);
#endif
! printf ("%s", prompt);
fflush (stdout);
/* Forget about any previous command -- null line now will do nothing. */
--- 1328,1334 ----
#else
signal (STOP_SIGNAL, stop_sig);
#endif
! printf_filtered ("%s", prompt);
fflush (stdout);
/* Forget about any previous command -- null line now will do nothing. */
***************
*** 1463,1469 ****
if (expanded)
{
/* Print the changes. */
! printf ("%s\n", history_value);
/* If there was an error, call this function again. */
if (expanded < 0)
--- 1474,1480 ----
if (expanded)
{
/* Print the changes. */
! printf_filtered ("%s\n", history_value);
/* If there was an error, call this function again. */
if (expanded < 0)
***************
*** 1570,1576 ****
while (1)
{
dont_repeat ();
! p = command_line_input ((char *) NULL, instream == stdin);
if (p == NULL)
/* Treat end of file like "end". */
break;
--- 1581,1587 ----
while (1)
{
dont_repeat ();
! p = energize_command_line_input ((char *) NULL, instream == stdin);
if (p == NULL)
/* Treat end of file like "end". */
break;
***************
*** 1661,1667 ****
char *arg;
int from_tty;
{
! printf ("\"info\" must be followed by the name of an info command.\n");
help_list (infolist, "info ", -1, stdout);
}
--- 1672,1678 ----
char *arg;
int from_tty;
{
! printf_filtered ("\"info\" must be followed by the name of an info command.\n");
help_list (infolist, "info ", -1, stdout);
}
***************
*** 1777,1783 ****
if (from_tty)
{
! printf ("Type commands for definition of \"%s\".\n\
End with a line saying just \"end\".\n", comname);
fflush (stdout);
}
--- 1788,1794 ----
if (from_tty)
{
! printf_filtered ("Type commands for definition of \"%s\".\n\
End with a line saying just \"end\".\n", comname);
fflush (stdout);
}
***************
*** 1810,1816 ****
error ("Command \"%s\" is built-in.", comname);
if (from_tty)
! printf ("Type documentation for \"%s\".\n\
End with a line saying just \"end\".\n", comname);
doclines = read_command_lines ();
--- 1821,1827 ----
error ("Command \"%s\" is built-in.", comname);
if (from_tty)
! printf_filtered ("Type documentation for \"%s\".\n\
End with a line saying just \"end\".\n", comname);
doclines = read_command_lines ();
***************
*** 1841,1847 ****
static void
print_gnu_advertisement()
{
! printf ("\
GDB is free software and you are welcome to distribute copies of it\n\
under certain conditions; type \"show copying\" to see the conditions.\n\
There is absolutely no warranty for GDB; type \"show warranty\" for details.\n\
--- 1852,1858 ----
static void
print_gnu_advertisement()
{
! printf_filtered ("\
GDB is free software and you are welcome to distribute copies of it\n\
under certain conditions; type \"show copying\" to see the conditions.\n\
There is absolutely no warranty for GDB; type \"show warranty\" for details.\n\
***************
*** 1874,1880 ****
void
print_prompt ()
{
! printf ("%s", prompt);
fflush (stdout);
}
--- 1885,1891 ----
void
print_prompt ()
{
! printf_filtered ("%s", prompt);
fflush (stdout);
}
***************
*** 1920,1929 ****
getcwd (dirbuf, sizeof (dirbuf));
if (strcmp (dirbuf, current_directory))
! printf ("Working directory %s\n (canonically %s).\n",
current_directory, dirbuf);
else
! printf ("Working directory %s.\n", current_directory);
}
static void
--- 1931,1940 ----
getcwd (dirbuf, sizeof (dirbuf));
if (strcmp (dirbuf, current_directory))
! printf_filtered ("Working directory %s\n (canonically %s).\n",
current_directory, dirbuf);
else
! printf_filtered ("Working directory %s.\n", current_directory);
}
static void
***************
*** 2160,2166 ****
char *args;
int from_tty;
{
! printf ("\"set history\" must be followed by the name of a history subcommand.\n");
help_list (sethistlist, "set history ", -1, stdout);
}
--- 2171,2177 ----
char *args;
int from_tty;
{
! printf_filtered ("\"set history\" must be followed by the name of a history subcommand.\n");
help_list (sethistlist, "set history ", -1, stdout);
}
===================================================================
*** 1.33 1992/09/29 05:07:19
--- printcmd.c 1992/09/28 21:34:13
***************
*** 778,792 ****
{
int histindex = record_latest_value (val);
if (inspect)
! printf ("\031(gdb-makebuffer \"%s\" %d '(\"", exp, histindex);
else
if (histindex >= 0) printf_filtered ("$%d = ", histindex);
print_formatted (val, format, fmt.size);
printf_filtered ("\n");
if (inspect)
! printf("\") )\030");
}
if (cleanup)
--- 778,802 ----
{
int histindex = record_latest_value (val);
+ if (energize)
+ {
+ char buf[20];
+
+ sprintf(buf, "$%d", histindex);
+ energize_start_variable_annotation(buf, NULL, VALUE_TYPE(val),
+ VALUE_ADDRESS(val), "");
+ }
+
if (inspect)
! printf_filtered ("\031(gdb-makebuffer \"%s\" %d '(\"", exp, histindex);
else
if (histindex >= 0) printf_filtered ("$%d = ", histindex);
print_formatted (val, format, fmt.size);
+ energize_end_variable_annotation();
printf_filtered ("\n");
if (inspect)
! printf_filtered("\") )\030");
}
if (cleanup)
***************
*** 890,896 ****
{
if (is_a_field_of_this)
{
! printf ("Symbol \"%s\" is a field of the local class variable `this'\n", exp);
return;
}
--- 900,906 ----
{
if (is_a_field_of_this)
{
! printf_filtered ("Symbol \"%s\" is a field of the local class variable `this'\n", exp);
return;
}
***************
*** 897,903 ****
msymbol = lookup_minimal_symbol (exp, (struct objfile *) NULL);
if (msymbol != NULL)
! printf ("Symbol \"%s\" is at %s in a file compiled without debugging.\n",
exp, local_hex_string(msymbol -> address));
else
error ("No symbol \"%s\" in current context.", exp);
--- 907,913 ----
msymbol = lookup_minimal_symbol (exp, (struct objfile *) NULL);
if (msymbol != NULL)
! printf_filtered ("Symbol \"%s\" is at %s in a file compiled without debugging.\n",
exp, local_hex_string(msymbol -> address));
else
error ("No symbol \"%s\" in current context.", exp);
***************
*** 904,910 ****
return;
}
! printf ("Symbol \"%s\" is ", SYMBOL_NAME (sym));
val = SYMBOL_VALUE (sym);
basereg = SYMBOL_BASEREG (sym);
--- 914,920 ----
return;
}
! printf_filtered ("Symbol \"%s\" is ", SYMBOL_NAME (sym));
val = SYMBOL_VALUE (sym);
basereg = SYMBOL_BASEREG (sym);
***************
*** 912,945 ****
{
case LOC_CONST:
case LOC_CONST_BYTES:
! printf ("constant");
break;
case LOC_LABEL:
! printf ("a label at address %s", local_hex_string(SYMBOL_VALUE_ADDRESS (sym)));
break;
case LOC_REGISTER:
! printf ("a variable in register %s", reg_names[val]);
break;
case LOC_STATIC:
! printf ("static storage at address %s", local_hex_string(SYMBOL_VALUE_ADDRESS (sym)));
break;
case LOC_REGPARM:
! printf ("an argument in register %s", reg_names[val]);
break;
case LOC_ARG:
if (SYMBOL_BASEREG_VALID (sym))
{
! printf ("an argument at offset %ld from register %s",
val, reg_names[basereg]);
}
else
{
! printf ("an argument at offset %ld", val);
}
break;
--- 922,955 ----
{
case LOC_CONST:
case LOC_CONST_BYTES:
! printf_filtered ("constant");
break;
case LOC_LABEL:
! printf_filtered ("a label at address %s", local_hex_string(SYMBOL_VALUE_ADDRESS (sym)));
break;
case LOC_REGISTER:
! printf_filtered ("a variable in register %s", reg_names[val]);
break;
case LOC_STATIC:
! printf_filtered ("static storage at address %s", local_hex_string(SYMBOL_VALUE_ADDRESS (sym)));
break;
case LOC_REGPARM:
! printf_filtered ("an argument in register %s", reg_names[val]);
break;
case LOC_ARG:
if (SYMBOL_BASEREG_VALID (sym))
{
! printf_filtered ("an argument at offset %ld from register %s",
val, reg_names[basereg]);
}
else
{
! printf_filtered ("an argument at offset %ld", val);
}
break;
***************
*** 946,957 ****
case LOC_LOCAL_ARG:
if (SYMBOL_BASEREG_VALID (sym))
{
! printf ("an argument at offset %ld from register %s",
val, reg_names[basereg]);
}
else
{
! printf ("an argument at frame offset %ld", val);
}
break;
--- 956,967 ----
case LOC_LOCAL_ARG:
if (SYMBOL_BASEREG_VALID (sym))
{
! printf_filtered ("an argument at offset %ld from register %s",
val, reg_names[basereg]);
}
else
{
! printf_filtered ("an argument at frame offset %ld", val);
}
break;
***************
*** 958,990 ****
case LOC_LOCAL:
if (SYMBOL_BASEREG_VALID (sym))
{
! printf ("a local variable at offset %ld from register %s",
val, reg_names[basereg]);
}
else
{
! printf ("a local variable at frame offset %ld", val);
}
break;
case LOC_REF_ARG:
! printf ("a reference argument at offset %ld", val);
break;
case LOC_TYPEDEF:
! printf ("a typedef");
break;
case LOC_BLOCK:
! printf ("a function at address %s",
local_hex_string(BLOCK_START (SYMBOL_BLOCK_VALUE (sym))));
break;
default:
! printf ("of unknown (botched) type");
break;
}
! printf (".\n");
}
static void
--- 968,1000 ----
case LOC_LOCAL:
if (SYMBOL_BASEREG_VALID (sym))
{
! printf_filtered ("a local variable at offset %ld from register %s",
val, reg_names[basereg]);
}
else
{
! printf_filtered ("a local variable at frame offset %ld", val);
}
break;
case LOC_REF_ARG:
! printf_filtered ("a reference argument at offset %ld", val);
break;
case LOC_TYPEDEF:
! printf_filtered ("a typedef");
break;
case LOC_BLOCK:
! printf_filtered ("a function at address %s",
local_hex_string(BLOCK_START (SYMBOL_BLOCK_VALUE (sym))));
break;
default:
! printf_filtered ("of unknown (botched) type");
break;
}
! printf_filtered (".\n");
}
static void
***************
*** 1419,1425 ****
d->status = disabled;
return;
}
! printf ("No display number %d.\n", num);
}
void
--- 1429,1435 ----
d->status = disabled;
return;
}
! printf_filtered ("No display number %d.\n", num);
}
void
***************
*** 1428,1434 ****
if (current_display_number >= 0)
{
disable_display (current_display_number);
! fprintf (stderr, "Disabling display %d to avoid infinite recursion.\n",
current_display_number);
}
current_display_number = -1;
--- 1438,1444 ----
if (current_display_number >= 0)
{
disable_display (current_display_number);
! fprintf_filtered (stderr, "Disabling display %d to avoid infinite recursion.\n",
current_display_number);
}
current_display_number = -1;
***************
*** 1442,1448 ****
register struct display *d;
if (!display_chain)
! printf ("There are no auto-display expressions now.\n");
else
printf_filtered ("Auto-display expressions now in effect:\n\
Num Enb Expression\n");
--- 1452,1458 ----
register struct display *d;
if (!display_chain)
! printf_filtered ("There are no auto-display expressions now.\n");
else
printf_filtered ("Auto-display expressions now in effect:\n\
Num Enb Expression\n");
***************
*** 1495,1501 ****
d->status = enabled;
goto win;
}
! printf ("No display number %d.\n", num);
win:
p = p1;
while (*p == ' ' || *p == '\t')
--- 1505,1511 ----
d->status = enabled;
goto win;
}
! printf_filtered ("No display number %d.\n", num);
win:
p = p1;
while (*p == ' ' || *p == '\t')
***************
*** 1652,1662 ****
--- 1662,1680 ----
standard indentation here is 4 spaces, and val_print indents
2 for each recurse. */
val = read_var_value (sym, FRAME_INFO_ID (fi));
+
+ energize_start_variable_annotation(SYMBOL_NAME(sym), sym,
+ VALUE_TYPE(val),
+ VALUE_ADDRESS(val), "");
+
if (val)
val_print (VALUE_TYPE (val), VALUE_CONTENTS (val), VALUE_ADDRESS (val),
stream, 0, 0, 2, Val_no_prettyprint);
else
fputs_filtered ("???", stream);
+
+ energize_end_variable_annotation();
+
first = 0;
}
===================================================================
*** 1.35 1992/09/18 09:20:00
--- stack.c 1992/09/28 21:34:14
***************
*** 159,165 ****
if (addressprint)
printf_filtered ("%s in ", local_hex_string(fi->pc));
! fputs_demangled (fname, stdout, 0);
fputs_filtered (" (...)\n", stdout);
return;
--- 159,168 ----
if (addressprint)
printf_filtered ("%s in ", local_hex_string(fi->pc));
! if (energize)
! energize_annotate_function(fname, 0, level);
! else
! fputs_demangled (fname, stdout, 0);
fputs_filtered (" (...)\n", stdout);
return;
***************
*** 218,224 ****
if (addressprint)
if (fi->pc != sal.pc || !sal.symtab)
printf_filtered ("%s in ", local_hex_string(fi->pc));
! fputs_demangled (funname ? funname : "??", stdout, 0);
wrap_here (" ");
fputs_filtered (" (", stdout);
if (args)
--- 221,230 ----
if (addressprint)
if (fi->pc != sal.pc || !sal.symtab)
printf_filtered ("%s in ", local_hex_string(fi->pc));
! if (energize)
! energize_annotate_function(funname ? funname : "??", 0, level);
! else
! fputs_demangled (funname ? funname : "??", stdout, 0);
wrap_here (" ");
fputs_filtered (" (", stdout);
if (args)
***************
*** 255,261 ****
{
if (addressprint && mid_statement)
printf_filtered ("%s\t", local_hex_string(fi->pc));
! print_source_lines (sal.symtab, sal.line, sal.line + 1, 0);
}
current_source_line = max (sal.line - lines_to_list/2, 1);
}
--- 261,268 ----
{
if (addressprint && mid_statement)
printf_filtered ("%s\t", local_hex_string(fi->pc));
! if (!energize)
! print_source_lines (sal.symtab, sal.line, sal.line + 1, 0);
}
current_source_line = max (sal.line - lines_to_list/2, 1);
}
***************
*** 429,435 ****
if (funname)
{
printf_filtered (" in ");
! fputs_demangled (funname, stdout, DMGL_ANSI | DMGL_PARAMS);
}
wrap_here (" ");
if (sal.symtab)
--- 436,446 ----
if (funname)
{
printf_filtered (" in ");
! if (energize)
! energize_annotate_function(funname, DMGL_ANSI | DMGL_PARAMS,
! selected_frame_level);
! else
! fputs_demangled (funname, stdout, DMGL_ANSI | DMGL_PARAMS);
}
wrap_here (" ");
if (sal.symtab)
===================================================================
*** 1.59 1992/09/29 05:07:26
--- symfile.c 1992/09/28 21:34:14
***************
*** 614,619 ****
--- 614,621 ----
fflush (stdout);
}
+ energize_symbol_file(objfile);
+
return (objfile);
}
***************
*** 646,652 ****
current_source_line = 0;
if (from_tty)
{
! printf ("No symbol file now.\n");
}
}
else
--- 648,654 ----
current_source_line = 0;
if (from_tty)
{
! printf_filtered ("No symbol file now.\n");
}
}
else
***************
*** 1164,1170 ****
return;
clear_symtab_users_done = clear_symtab_users_queued;
! printf ("Resetting debugger state after updating old symbol tables\n");
/* Someday, we should do better than this, by only blowing away
the things that really need to be blown. */
--- 1166,1172 ----
return;
clear_symtab_users_done = clear_symtab_users_queued;
! printf_filtered ("Resetting debugger state after updating old symbol tables\n");
/* Someday, we should do better than this, by only blowing away
the things that really need to be blown. */
===================================================================
*** 1.63 1992/09/26 05:34:06
--- utils.c 1992/09/28 21:34:15
***************
*** 700,720 ****
fflush (stdout);
va_start (args);
ctlstr = va_arg (args, char *);
vfprintf_filtered (stdout, ctlstr, args);
- va_end (args);
printf_filtered ("(y or n) ");
! fflush (stdout);
! answer = fgetc (stdin);
! clearerr (stdin); /* in case of C-d */
! if (answer == EOF) /* C-d */
! return 1;
! if (answer != '\n') /* Eat rest of input line, to EOF or newline */
! do
! {
! ans2 = fgetc (stdin);
! clearerr (stdin);
! }
! while (ans2 != EOF && ans2 != '\n');
if (answer >= 'a')
answer -= 040;
if (answer == 'Y')
--- 700,731 ----
fflush (stdout);
va_start (args);
ctlstr = va_arg (args, char *);
+ energize_query (ctlstr, args);
vfprintf_filtered (stdout, ctlstr, args);
printf_filtered ("(y or n) ");
! if (energize)
! {
! char *buf;
!
! buf = energize_command_line_input(0, 0);
! answer = buf ? *buf : 'Y';
! energize_acknowledge_query(buf);
! }
! else
! {
! fflush (stdout);
! answer = fgetc (stdin);
! clearerr (stdin); /* in case of C-d */
! if (answer == EOF) /* C-d */
! return 1;
! if (answer != '\n') /* Eat rest of input line, to EOF or newline */
! do
! {
! ans2 = fgetc (stdin);
! clearerr (stdin);
! }
! while (ans2 != EOF && ans2 != '\n');
! }
if (answer >= 'a')
answer -= 040;
if (answer == 'Y')
***************
*** 722,727 ****
--- 733,739 ----
if (answer == 'N')
return 0;
printf_filtered ("Please answer y or n.\n");
+ va_end (args);
}
}
***************
*** 1000,1005 ****
--- 1012,1023 ----
if (linebuffer == 0)
return;
+ if (energize)
+ {
+ energize_fputs(linebuffer);
+ return;
+ }
+
/* Don't do any filtering if it is disabled. */
if (stream != stdout
|| (lines_per_page == UINT_MAX && chars_per_line == UINT_MAX))
===================================================================
*** 1.55 1992/09/29 05:07:34
--- valprint.c 1992/09/28 21:34:15
***************
*** 384,390 ****
VALUE_CONTENTS (val) + typelen * i,
VALUE_ADDRESS (val) + typelen * i,
stream, format, 1, 0, pretty);
! fprintf (stream, " <repeats %u times>", reps);
i = rep1 - 1;
things_printed += REPEAT_COUNT_THRESHOLD;
}
--- 384,390 ----
VALUE_CONTENTS (val) + typelen * i,
VALUE_ADDRESS (val) + typelen * i,
stream, format, 1, 0, pretty);
! fprintf_filtered (stream, " <repeats %u times>", reps);
i = rep1 - 1;
things_printed += REPEAT_COUNT_THRESHOLD;
}
***************
*** 488,493 ****
--- 488,494 ----
struct type **dont_print;
{
int i, len, n_baseclasses;
+ char expr_tag[100]; /* Energize */
check_stub_type (type);
***************
*** 552,557 ****
--- 553,565 ----
fprint_symbol (stream, TYPE_FIELD_NAME (type, i));
fputs_filtered (" = ", stream);
}
+
+ sprintf(expr_tag, ".%s", TYPE_FIELD_NAME(type, i));
+
+ energize_start_variable_annotation(expr_tag, NULL,
+ TYPE_FIELD_TYPE(type, i),
+ (CORE_ADDR) (valaddr + TYPE_FIELD_BITPOS(type, i) / 8),
+ "");
if (TYPE_FIELD_PACKED (type, i))
{
value v;
***************
*** 570,575 ****
--- 578,584 ----
valaddr + TYPE_FIELD_BITPOS (type, i) / 8,
0, stream, format, 0, recurse + 1, pretty);
}
+ energize_end_variable_annotation();
}
if (pretty)
{
***************
*** 804,809 ****
--- 813,819 ----
unsigned int rep1;
/* Number of repetitions we have detected so far. */
unsigned int reps;
+ char expr_tag[100]; /* Energize */
if (i != 0)
if (arrayprint)
***************
*** 825,830 ****
--- 835,845 ----
++rep1;
}
+ sprintf(expr_tag, "[%d]", i);
+ energize_start_variable_annotation(expr_tag, NULL,
+ elttype,
+ (CORE_ADDR) (valaddr + i * eltlen),
+ "");
if (reps > REPEAT_COUNT_THRESHOLD)
{
val_print (elttype, valaddr + i * eltlen,
***************
*** 841,846 ****
--- 856,862 ----
recurse + 1, pretty);
things_printed++;
}
+ energize_end_variable_annotation();
}
if (i < len)
fprintf_filtered (stream, "...");
***************
*** 910,916 ****
{
fprintf_filtered (stream, "&");
type_print_varspec_prefix (TYPE_FN_FIELD_TYPE (f, j), stream, 0, 0);
! fprintf (stream, kind);
if (TYPE_FN_FIELD_PHYSNAME (f, j)[0] == '_'
&& TYPE_FN_FIELD_PHYSNAME (f, j)[1] == CPLUS_MARKER)
type_print_method_args
--- 926,932 ----
{
fprintf_filtered (stream, "&");
type_print_varspec_prefix (TYPE_FN_FIELD_TYPE (f, j), stream, 0, 0);
! fprintf_filtered (stream, kind);
if (TYPE_FN_FIELD_PHYSNAME (f, j)[0] == '_'
&& TYPE_FN_FIELD_PHYSNAME (f, j)[1] == CPLUS_MARKER)
type_print_method_args
***************
*** 1528,1534 ****
case TYPE_CODE_METHOD:
if (passed_a_ptr)
! fprintf (stream, "(");
type_print_varspec_prefix (TYPE_TARGET_TYPE (type), stream, 0,
0);
if (passed_a_ptr)
--- 1544,1550 ----
case TYPE_CODE_METHOD:
if (passed_a_ptr)
! fprintf_filtered (stream, "(");
type_print_varspec_prefix (TYPE_TARGET_TYPE (type), stream, 0,
0);
if (passed_a_ptr)
***************
*** 1907,1913 ****
if (TYPE_TARGET_TYPE (TYPE_FN_FIELD_TYPE (f, j)) == 0)
{
/* Keep GDB from crashing here. */
! fprintf (stream, "<undefined type> %s;\n",
TYPE_FN_FIELD_PHYSNAME (f, j));
break;
}
--- 1923,1929 ----
if (TYPE_TARGET_TYPE (TYPE_FN_FIELD_TYPE (f, j)) == 0)
{
/* Keep GDB from crashing here. */
! fprintf_filtered (stream, "<undefined type> %s;\n",
TYPE_FN_FIELD_PHYSNAME (f, j));
break;
}
***************
*** 2098,2104 ****
char *arg;
int from_tty;
{
! printf (
"\"set print\" must be followed by the name of a print subcommand.\n");
help_list (setprintlist, "set print ", -1, stdout);
}
--- 2114,2120 ----
char *arg;
int from_tty;
{
! printf_filtered (
"\"set print\" must be followed by the name of a print subcommand.\n");
help_list (setprintlist, "set print ", -1, stdout);
}
===================================================================
*** 1.5 1992/09/26 08:07:45
--- amix.mh 1992/09/28 21:34:15
***************
*** 22,24 ****
--- 22,38 ----
# SVR4 puts the BSD compatible install in /usr/ucb.
INSTALL = /usr/ucb/install -c
+
+ # These are the libs that are needed for the Energize version of gdb on
+ # SVR4. Note that we MUST include the standard C library before libucb.a,
+ # otherwise we get lots of broken stuff we don't want.
+ ENERGIZE_LIB = energize/libconn.a
+ ENERGIZE_LIBS = ${ENERGIZE_LIB} -L/usr/lib -lm -lnet -lresolv -lform \
+ -lsocket -lc /usr/ucblib/libucb.a -lnsl
+
+ # These are the libs that are needed for the Energize version of gdb on
+ # SVR4. Note that we MUST include the standard C library before libucb.a,
+ # otherwise we get lots of broken stuff we don't want.
+ ENERGIZE_LIB = energize/libconn.a
+ ENERGIZE_LIBS = ${ENERGIZE_LIB} -L/usr/lib -lm -lnet -lresolv -lform \
+ -lsocket -lc /usr/ucblib/libucb.a -lnsl
===================================================================
*** 1.5 1992/09/26 08:08:14
--- ncr3000.mh 1992/09/28 21:34:16
***************
*** 38,40 ****
--- 38,59 ----
# The /usr/ucb/install program is incompatible (complains about unknown
# group staff). Use good old cp...
INSTALL = cp
+
+ # These are the libs that are needed for the Energize version of gdb on
+ # SVR4. Note that we MUST include the standard C library before libucb.a,
+ # otherwise we get lots of broken stuff we don't want.
+ XM_CLIBS = -L/usr/lib -lm -lnet -lresolv -lform -lsocket -lnsl -lc
+
+ # These are the libs that are needed for the Energize version of gdb on
+ # SVR4. Note that we MUST include the standard C library before libucb.a,
+ # otherwise we get lots of broken stuff we don't want.
+ ENERGIZE_LIB = energize/libconn.a
+ ENERGIZE_LIBS = ${ENERGIZE_LIB} -L/usr/lib -lm -lnet -lresolv -lform \
+ -lsocket -lc /usr/ucblib/libucb.a -lnsl
+
+ # These are the libs that are needed for the Energize version of gdb on
+ # SVR4. Note that we MUST include the standard C library before libucb.a,
+ # otherwise we get lots of broken stuff we don't want.
+ ENERGIZE_LIB = energize/libconn.a
+ ENERGIZE_LIBS = ${ENERGIZE_LIB} -L/usr/lib -lm -lnet -lresolv -lform \
+ -lsocket -lc /usr/ucblib/libucb.a -lnsl