* strings.c: Include "bfd.h" before other headers. Include

"sysdep.h".
	* bucomm.c (print_arelt_descr): Cast st_uid and st_gid to long,
	and print them with %ld.
This commit is contained in:
Ian Lance Taylor
1995-03-24 16:49:14 +00:00
parent fe58e49642
commit fb3f84c773
2 changed files with 73 additions and 23 deletions

View File

@ -1,3 +1,30 @@
Fri Mar 24 11:47:42 1995 Ian Lance Taylor <ian@cygnus.com>
* strings.c: Include "bfd.h" before other headers. Include
"sysdep.h".
* bucomm.c (print_arelt_descr): Cast st_uid and st_gid to long,
and print them with %ld.
Fri Mar 10 13:09:42 1995 Ian Lance Taylor <ian@cygnus.com>
* objcopy.c (strip_options): Add --keep-symbol.
(copy_options): Likewise.
(copy_usage): Mention --keep-symbol and -K.
(strip_usage): Likewise.
(keep_symbols): New static variable.
(is_strip_symbol): Adjust the return value according to
keep_symbols.
(strip_main): Handle -K. For -N, check that -K was not given.
(copy_main): Likewise.
* binutils.texi, objcopy.1, strip.1: Document -K.
Mon Mar 6 13:33:47 1995 Stan Shebs <shebs@andros.cygnus.com>
* objcopy.c (copy_archive): Check result of mkdir.
(copy_main): Cast an xmalloc result.
* objdump.c (usage): Break long format string into shorter ones.
Mon Mar 6 13:46:12 1995 Ian Lance Taylor <ian@cygnus.com> Mon Mar 6 13:46:12 1995 Ian Lance Taylor <ian@cygnus.com>
* bucomm.c (list_supported_targets): New function. * bucomm.c (list_supported_targets): New function.

View File

@ -1,5 +1,5 @@
/* bucomm.c -- Bin Utils COMmon code. /* bucomm.c -- Bin Utils COMmon code.
Copyright (C) 1991 Free Software Foundation, Inc. Copyright (C) 1991, 92, 93, 94 Free Software Foundation, Inc.
This file is part of GNU Binutils. This file is part of GNU Binutils.
@ -22,21 +22,17 @@
#include "bfd.h" #include "bfd.h"
#include "sysdep.h" #include "sysdep.h"
#include "libiberty.h"
#include "bucomm.h" #include "bucomm.h"
#ifdef __STDC__ #ifdef ANSI_PROTOTYPES
#include <stdarg.h> #include <stdarg.h>
#else #else
#include <varargs.h> #include <varargs.h>
#endif #endif
char *target = NULL; /* default as late as possible */ char *target = NULL; /* default as late as possible */
/* Yes, this is what atexit is for, but that isn't guaranteed yet.
And yes, I know this isn't as good, but it does what is needed just fine. */
void (*exit_handler) ();
/* Error reporting */ /* Error reporting */
char *program_name; char *program_name;
@ -45,7 +41,7 @@ void
bfd_nonfatal (string) bfd_nonfatal (string)
CONST char *string; CONST char *string;
{ {
CONST char *errmsg = bfd_errmsg (bfd_error); CONST char *errmsg = bfd_errmsg (bfd_get_error ());
if (string) if (string)
fprintf (stderr, "%s: %s: %s\n", program_name, string, errmsg); fprintf (stderr, "%s: %s: %s\n", program_name, string, errmsg);
@ -58,13 +54,10 @@ bfd_fatal (string)
CONST char *string; CONST char *string;
{ {
bfd_nonfatal (string); bfd_nonfatal (string);
xexit (1);
if (NULL != exit_handler)
(*exit_handler) ();
exit (1);
} }
#ifdef __STDC__ #ifdef ANSI_PROTOTYPES
void void
fatal (const char *format, ...) fatal (const char *format, ...)
{ {
@ -75,9 +68,7 @@ fatal (const char *format, ...)
vfprintf (stderr, format, args); vfprintf (stderr, format, args);
va_end (args); va_end (args);
putc ('\n', stderr); putc ('\n', stderr);
if (NULL != exit_handler) xexit (1);
(*exit_handler) ();
exit (1);
} }
#else #else
void void
@ -93,11 +84,42 @@ fatal (va_alist)
vfprintf (stderr, Format, args); vfprintf (stderr, Format, args);
va_end (args); va_end (args);
putc ('\n', stderr); putc ('\n', stderr);
if (NULL != exit_handler) xexit (1);
(*exit_handler) ();
exit (1);
} }
#endif #endif
/* After a false return from bfd_check_format_matches with
bfd_get_error () == bfd_error_file_ambiguously_recognized, print the possible
matching targets. */
void
list_matching_formats (p)
char **p;
{
fprintf(stderr, "%s: Matching formats:", program_name);
while (*p)
fprintf(stderr, " %s", *p++);
fprintf(stderr, "\n");
}
/* List the supported targets. */
void
list_supported_targets (name, f)
const char *name;
FILE *f;
{
extern bfd_target *bfd_target_vector[];
int t;
if (name == NULL)
fprintf (f, "Supported targets:");
else
fprintf (f, "%s: supported targets:", name);
for (t = 0; bfd_target_vector[t] != NULL; t++)
fprintf (f, " %s", bfd_target_vector[t]->name);
fprintf (f, "\n");
}
/* Display the archive header for an element as if it were an ls -l listing: /* Display the archive header for an element as if it were an ls -l listing:
@ -126,10 +148,11 @@ print_arelt_descr (file, abfd, verbose)
mode_string (buf.st_mode, modebuf); mode_string (buf.st_mode, modebuf);
modebuf[10] = '\0'; modebuf[10] = '\0';
/* POSIX 1003.2/D11 says to skip first character (entry type). */ /* POSIX 1003.2/D11 says to skip first character (entry type). */
fprintf (file, "%s %d/%d %6ld %s ", modebuf + 1, fprintf (file, "%s %ld/%ld %6ld %s ", modebuf + 1,
buf.st_uid, buf.st_gid, buf.st_size, timebuf); (long) buf.st_uid, (long) buf.st_gid,
(long) buf.st_size, timebuf);
} }
} }
fprintf (file, "%s\n", abfd->filename); fprintf (file, "%s\n", bfd_get_filename (abfd));
} }