diff options
Diffstat (limited to 'bfd')
-rw-r--r-- | bfd/ChangeLog | 19 | ||||
-rw-r--r-- | bfd/bfd-in.h | 4 | ||||
-rw-r--r-- | bfd/bfd-in2.h | 4 | ||||
-rw-r--r-- | bfd/compress.c | 3 | ||||
-rw-r--r-- | bfd/config.in | 7 | ||||
-rwxr-xr-x | bfd/configure | 3 | ||||
-rw-r--r-- | bfd/configure.in | 9 | ||||
-rw-r--r-- | bfd/elf32-m68hc1x.c | 2 | ||||
-rw-r--r-- | bfd/elf64-hppa.c | 2 | ||||
-rw-r--r-- | bfd/plugin.c | 1 | ||||
-rw-r--r-- | bfd/som.c | 6 | ||||
-rw-r--r-- | bfd/sysdep.h | 4 | ||||
-rw-r--r-- | bfd/xsym.c | 4 |
13 files changed, 58 insertions, 10 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 46979ce..08ce86d 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,22 @@ +2012-05-17 Daniel Richard G. <skunk@iskunk.org> + Nick Clifton <nickc@redhat.com> + + PR 14072 + * configure.in: Add check that sysdep.h has been included before + any system header files. + * configure: Regenerate. + * config.in: Regenerate. + * aclocal.m4: Regenerate. + * bfd-in.h: Generate an error if included before config.h. + * sysdep.h: Likewise. + * bfd-in2.h: Regenerate. + * compress.c: Remove #include "config.h". + * plugin.c: Likewise. + * elf32-m68hc1x.c: Include sysdep.h before alloca-conf.h. + * elf64-hppa.c: Likewise. + * som.c: Likewise. + * xsymc.c: Likewise. + 2012-05-17 Maciej W. Rozycki <macro@linux-mips.org> Alan Modra <amodra@gmail.com> diff --git a/bfd/bfd-in.h b/bfd/bfd-in.h index d88bcb6..ae8149a 100644 --- a/bfd/bfd-in.h +++ b/bfd/bfd-in.h @@ -25,6 +25,10 @@ #ifndef __BFD_H_SEEN__ #define __BFD_H_SEEN__ +#ifndef PACKAGE +#error config.h must be included before this header +#endif + #ifdef __cplusplus extern "C" { #endif diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h index f1fc33a..275f977 100644 --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -32,6 +32,10 @@ #ifndef __BFD_H_SEEN__ #define __BFD_H_SEEN__ +#ifndef PACKAGE +#error config.h must be included before this header +#endif + #ifdef __cplusplus extern "C" { #endif diff --git a/bfd/compress.c b/bfd/compress.c index a82a8bc..52c884c 100644 --- a/bfd/compress.c +++ b/bfd/compress.c @@ -1,5 +1,5 @@ /* Compressed section support (intended for debug sections). - Copyright 2008, 2010, 2011 + Copyright 2008, 2010, 2011, 2012 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. @@ -19,7 +19,6 @@ Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */ -#include "config.h" #include "sysdep.h" #include "bfd.h" #include "libbfd.h" diff --git a/bfd/config.in b/bfd/config.in index cb53b14..20b619d 100644 --- a/bfd/config.in +++ b/bfd/config.in @@ -1,5 +1,12 @@ /* config.in. Generated from configure.in by autoheader. */ +/* Check that config.h is #included before system headers + (this works only for glibc, but that should be enough). */ +#if defined(__GLIBC__) && !defined(__CONFIG_H__) +# error config.h must be #included before system headers +#endif +#define __CONFIG_H__ 1 + /* Name of host specific core header file to include in elf.c. */ #undef CORE_HEADER diff --git a/bfd/configure b/bfd/configure index 7c52478..fe51170 100755 --- a/bfd/configure +++ b/bfd/configure @@ -12217,6 +12217,9 @@ fi ac_config_headers="$ac_config_headers config.h:config.in" +# PR 14072 + + if test -z "$target" ; then as_fn_error "Unrecognized target system type; please check config.sub." "$LINENO" 5 fi diff --git a/bfd/configure.in b/bfd/configure.in index 47631cc..9e72c7a 100644 --- a/bfd/configure.in +++ b/bfd/configure.in @@ -117,6 +117,15 @@ AM_BINUTILS_WARNINGS AC_CONFIG_HEADERS(config.h:config.in) +# PR 14072 +AH_VERBATIM([00_CONFIG_H_CHECK], +[/* Check that config.h is #included before system headers + (this works only for glibc, but that should be enough). */ +#if defined(__GLIBC__) && !defined(__CONFIG_H__) +# error config.h must be #included before system headers +#endif +#define __CONFIG_H__ 1]) + if test -z "$target" ; then AC_MSG_ERROR(Unrecognized target system type; please check config.sub.) fi diff --git a/bfd/elf32-m68hc1x.c b/bfd/elf32-m68hc1x.c index 70bf09e..65d17d9 100644 --- a/bfd/elf32-m68hc1x.c +++ b/bfd/elf32-m68hc1x.c @@ -20,8 +20,8 @@ Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */ -#include "alloca-conf.h" #include "sysdep.h" +#include "alloca-conf.h" #include "bfd.h" #include "bfdlink.h" #include "libbfd.h" diff --git a/bfd/elf64-hppa.c b/bfd/elf64-hppa.c index e3de2a6..6087fe5 100644 --- a/bfd/elf64-hppa.c +++ b/bfd/elf64-hppa.c @@ -20,8 +20,8 @@ Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */ -#include "alloca-conf.h" #include "sysdep.h" +#include "alloca-conf.h" #include "bfd.h" #include "libbfd.h" #include "elf-bfd.h" diff --git a/bfd/plugin.c b/bfd/plugin.c index 733ba71..8d2c4b20 100644 --- a/bfd/plugin.c +++ b/bfd/plugin.c @@ -19,7 +19,6 @@ Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */ -#include "config.h" #include "sysdep.h" #include "bfd.h" @@ -1,7 +1,7 @@ /* bfd back-end for HP PA-RISC SOM objects. Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, - 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 - Free Software Foundation, Inc. + 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, + 2012 Free Software Foundation, Inc. Contributed by the Center for Software Science at the University of Utah. @@ -23,8 +23,8 @@ Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */ -#include "alloca-conf.h" #include "sysdep.h" +#include "alloca-conf.h" #include "bfd.h" #include "libbfd.h" diff --git a/bfd/sysdep.h b/bfd/sysdep.h index 20ef56d..b4fed10 100644 --- a/bfd/sysdep.h +++ b/bfd/sysdep.h @@ -23,6 +23,10 @@ #ifndef BFD_SYSDEP_H #define BFD_SYSDEP_H +#ifdef PACKAGE +#error sysdep.h must be included in lieu of config.h +#endif + #include "config.h" #include "ansidecl.h" @@ -1,6 +1,6 @@ /* xSYM symbol-file support for BFD. Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, - 2009, 2010, 2011 Free Software Foundation, Inc. + 2009, 2010, 2011, 2012 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. @@ -21,8 +21,8 @@ /* xSYM is the debugging format used by CodeWarrior on Mac OS classic. */ -#include "alloca-conf.h" #include "sysdep.h" +#include "alloca-conf.h" #include "xsym.h" #include "bfd.h" #include "libbfd.h" |