X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=bfd%2Fsysdep.h;h=d5a2faa5d35d257f89fbbe29360f029fd4f33954;hb=29298bf66f62f2f6c1efb0685623fbc29dfade90;hp=a9ea6b41c9433e42e71833b7e0af50396040637b;hpb=be5cacdb6dbaabfac70cb4e1bafca270ef2c1cda;p=deliverable%2Fbinutils-gdb.git diff --git a/bfd/sysdep.h b/bfd/sysdep.h index a9ea6b41c9..d5a2faa5d3 100644 --- a/bfd/sysdep.h +++ b/bfd/sysdep.h @@ -1,28 +1,30 @@ /* sysdep.h -- handle host dependencies for the BFD library - Copyright 1995, 1996, 1997, 1998, 1999, 2000, 2001 - Free Software Foundation, Inc. + Copyright (C) 1995-2019 Free Software Foundation, Inc. Written by Cygnus Support. -This file is part of BFD, the Binary File Descriptor library. + This file is part of BFD, the Binary File Descriptor library. -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 3 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., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, 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. */ #ifndef BFD_SYSDEP_H #define BFD_SYSDEP_H -#include "ansidecl.h" +#ifdef PACKAGE +#error sysdep.h must be included in lieu of config.h +#endif #include "config.h" @@ -32,13 +34,16 @@ Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. #include #include -#include #include #if !(defined(errno) || defined(_MSC_VER) && defined(_INC_ERRNO)) extern int errno; #endif +#ifdef STRING_WITH_STRINGS +#include +#include +#else #ifdef HAVE_STRING_H #include #else @@ -49,6 +54,7 @@ extern char *strchr (); extern char *strrchr (); #endif #endif +#endif #ifdef HAVE_STDLIB_H #include @@ -69,6 +75,10 @@ extern char *strrchr (); #include #endif +#ifdef HAVE_SYS_RESOURCE_H +#include +#endif /* HAVE_SYS_RESOURCE_H */ + #ifdef USE_BINARY_FOPEN #include "fopen-bin.h" #else @@ -95,6 +105,10 @@ extern char *strrchr (); #ifndef O_ACCMODE #define O_ACCMODE (O_RDONLY | O_WRONLY | O_RDWR) #endif +/* Systems that don't already define this, don't need it. */ +#ifndef O_BINARY +#define O_BINARY 0 +#endif #ifndef SEEK_SET #define SEEK_SET 0 @@ -157,6 +171,10 @@ extern int fseeko64 (FILE *stream, off64_t offset, int whence); #endif #endif +#if !HAVE_DECL_STRNLEN +size_t strnlen (const char *, size_t); +#endif + /* Define offsetof for those systems which lack it */ #ifndef offsetof @@ -164,31 +182,43 @@ extern int fseeko64 (FILE *stream, off64_t offset, int whence); #endif #ifdef ENABLE_NLS -#include -/* Note the use of dgetext() and PACKAGE here, rather than gettext(). - - This is because the code in this directory is used to build a library which - will be linked with code in other directories to form programs. We want to - maintain a seperate translation file for this directory however, rather - than being forced to merge it with that of any program linked to libbfd. - This is a library, so it cannot depend on the catalog currently loaded. - - In order to do this, we have to make sure that when we extract messages we - use the OPCODES domain rather than the domain of the program that included - the bfd library, (eg OBJDUMP). Hence we use dgettext (PACKAGE, String) - and define PACKAGE to be 'bfd'. (See the code in configure). */ -#define _(String) dgettext (PACKAGE, String) -#ifdef gettext_noop -#define N_(String) gettext_noop (String) -#else -#define N_(String) (String) -#endif +# include +/* Note the redefinition of gettext and ngettext here to use PACKAGE. + + This is because the code in this directory is used to build a + library which will be linked with code in other directories to form + programs. We want to maintain a seperate translation file for this + directory however, rather than being forced to merge it with that + of any program linked to libbfd. This is a library, so it cannot + depend on the catalog currently loaded. + + In order to do this, we have to make sure that when we extract + messages we use the BFD domain rather than the domain of the + program that included the bfd library, (eg OBJDUMP). Hence we use + dgettext (PACKAGE, String) and define PACKAGE to be 'bfd'. + (See the code in configure). */ +# undef gettext +# define gettext(Msgid) dgettext (PACKAGE, Msgid) +# undef ngettext +# define ngettext(Msgid1, Msgid2, n) dngettext (PACKAGE, Msgid1, Msgid2, n) +# define _(String) gettext (String) +# ifdef gettext_noop +# define N_(String) gettext_noop (String) +# else +# define N_(String) (String) +# endif #else # 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 ngettext(Msgid1, Msgid2, n) \ + (n == 1 ? Msgid1 : Msgid2) +# define dngettext(Domainname, Msgid1, Msgid2, n) \ + (n == 1 ? Msgid1 : Msgid2) +# define dcngettext(Domainname, Msgid1, Msgid2, n, Category) \ + (n == 1 ? Msgid1 : Msgid2) +# define textdomain(Domainname) do {} while (0) +# define bindtextdomain(Domainname, Dirname) do {} while (0) # define _(String) (String) # define N_(String) (String) #endif