/* bucomm.h -- binutils common include file.
- Copyright (C) 1992, 93, 94, 95, 96, 97, 98, 1999
- Free Software Foundation, Inc.
+ Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
+ 2001, 2002, 2003 Free Software Foundation, Inc.
-This file is part of GNU Binutils.
+ This file is part of GNU Binutils.
-This program is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2 of the License, or
-(at your option) any later version.
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
-You should have received a copy of the GNU General Public License
-along with this program; if not, write to the Free Software
-Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */
\f
#ifndef _BUCOMM_H
#define _BUCOMM_H
#include <sys/types.h>
#include "config.h"
+#include "bin-bugs.h"
+
+#include <stdarg.h>
#ifdef USE_BINARY_FOPEN
#include "fopen-bin.h"
#endif
#endif
-#ifdef NEED_DECLARATION_STRSTR
+#if !HAVE_DECL_STPCPY
+extern char *stpcpy (char *, const char *);
+#endif
+
+#if !HAVE_DECL_STRSTR
extern char *strstr ();
#endif
#ifdef HAVE_SBRK
-#ifdef NEED_DECLARATION_SBRK
+#if !HAVE_DECL_SBRK
extern char *sbrk ();
#endif
#endif
-#ifdef NEED_DECLARATION_GETENV
+#if !HAVE_DECL_GETENV
extern char *getenv ();
#endif
-#ifdef NEED_DECLARATION_ENVIRON
+#if !HAVE_DECL_ENVIRON
extern char **environ;
#endif
# define N_(String) (String)
# endif
#else
-/* Stubs that do something close enough. */
-# define textdomain(String) (String)
-# define gettext(String) (String)
-# define dgettext(Domain,Message) (Message)
-# define dcgettext(Domain,Message,Type) (Message)
-# define bindtextdomain(Domain,Directory) (Domain)
+# define gettext(Msgid) (Msgid)
+# define dgettext(Domainname, Msgid) (Msgid)
+# define dcgettext(Domainname, Msgid, Category) (Msgid)
+# define textdomain(Domainname) while (0) /* nothing */
+# define bindtextdomain(Domainname, Dirname) while (0) /* nothing */
# define _(String) (String)
# define N_(String) (String)
#endif
+/* Used by ar.c and objcopy.c. */
+#define BUFSIZE 8192
+
/* bucomm.c */
-void bfd_nonfatal PARAMS ((CONST char *));
-void bfd_fatal PARAMS ((CONST char *));
+/* Return the filename in a static buffer. */
+const char *bfd_get_archive_filename (bfd *);
+
+void bfd_nonfatal (const char *);
+
+void bfd_fatal (const char *) ATTRIBUTE_NORETURN;
+
+void report (const char *, va_list) ATTRIBUTE_PRINTF(1,0);
+
+void fatal (const char *, ...) ATTRIBUTE_PRINTF_1 ATTRIBUTE_NORETURN;
+
+void non_fatal (const char *, ...) ATTRIBUTE_PRINTF_1;
+
+void set_default_bfd_target (void);
-void fatal PARAMS ((CONST char *, ...));
+void list_matching_formats (char **);
-void non_fatal PARAMS ((CONST char *, ...));
+void list_supported_targets (const char *, FILE *);
-void set_default_bfd_target PARAMS ((void));
+void list_supported_architectures (const char *, FILE *);
-void list_matching_formats PARAMS ((char **p));
+int display_info (void);
-void list_supported_targets PARAMS ((const char *, FILE *));
+void print_arelt_descr (FILE *, bfd *, bfd_boolean);
-void print_arelt_descr PARAMS ((FILE *file, bfd *abfd, boolean verbose));
+char *make_tempname (char *);
-char *make_tempname PARAMS ((char *));
+bfd_vma parse_vma (const char *, const char *);
-bfd_vma parse_vma PARAMS ((const char *, const char *));
+off_t get_file_size (const char *);
extern char *program_name;
/* filemode.c */
-void mode_string PARAMS ((unsigned long mode, char *buf));
+void mode_string (unsigned long, char *);
/* version.c */
-extern void print_version PARAMS ((const char *));
+extern void print_version (const char *);
/* rename.c */
-extern void set_times PARAMS ((const char *, const struct stat *));
+extern void set_times (const char *, const struct stat *);
-extern int smart_rename PARAMS ((const char *, const char *, int));
+extern int smart_rename (const char *, const char *, int);
-/* libiberty */
-PTR xmalloc PARAMS ((size_t));
+/* libiberty. */
+void *xmalloc (size_t);
-PTR xrealloc PARAMS ((PTR, size_t));
+void *xrealloc (void *, size_t);
#endif /* _BUCOMM_H */