summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ld/ChangeLog44
-rw-r--r--ld/emultempl/aix.em7
-rw-r--r--ld/emultempl/armcoff.em7
-rw-r--r--ld/emultempl/armelf.em7
-rw-r--r--ld/emultempl/armelf_oabi.em7
-rw-r--r--ld/emultempl/beos.em4
-rw-r--r--ld/emultempl/elf32.em6
-rw-r--r--ld/emultempl/generic.em10
-rw-r--r--ld/emultempl/gld960.em9
-rw-r--r--ld/emultempl/gld960c.em10
-rw-r--r--ld/emultempl/hppaelf.em4
-rw-r--r--ld/emultempl/linux.em7
-rw-r--r--ld/emultempl/lnk960.em7
-rw-r--r--ld/emultempl/mipsecoff.em9
-rw-r--r--ld/emultempl/pe.em2
-rw-r--r--ld/emultempl/sunos.em6
-rw-r--r--ld/emultempl/ticoff.em7
-rw-r--r--ld/emultempl/vanilla.em9
-rw-r--r--ld/ldemul.c4
-rw-r--r--ld/ldemul.h5
-rw-r--r--ld/ldfile.h11
-rw-r--r--ld/ldgram.y2
-rw-r--r--ld/ldlang.c2
-rw-r--r--ld/ldlang.h2
-rw-r--r--ld/ldmain.c2
-rw-r--r--ld/ldver.c6
-rw-r--r--ld/mpw-elfmips.c22
-rw-r--r--ld/mpw-eppcmac.c6
-rw-r--r--ld/mpw-esh.c9
-rw-r--r--ld/mpw-idtmips.c9
-rw-r--r--ld/pe-dll.c1
31 files changed, 161 insertions, 82 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog
index 44b124dea3..0ddfe75372 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,47 @@
+2000-07-10 Alan Modra <alan@linuxcare.com.au>
+
+ * ldemul.h (struct lang_input_statement_struct): Remove forward
+ declaration.
+ (struct search_dirs): Likewise.
+ * ldfile.h (struct lang_input_statement_struct): Likewise.
+ Protect file from multiple inclusion.
+ * ldlang.h (LANG_FOR_EACH_INPUT_STATEMENT): Move file_chain
+ declaration from macro to file scope.
+
+ * ldemul.c: ldexp.h,ldlang.h,ldfile.h,ldemul.h go in this order.
+ * ldgram.y: Likewise here.
+ * ldlang.c: And here.
+ * ldmain.c: And here.
+ * mpw-elfmips.c: And here.
+ * mpw-eppcmac.c: And here.
+ * emultempl/aix.em: And here.
+ * emultempl/armcoff.em: And here.
+ * emultempl/armelf.em: And here.
+ * emultempl/armelf_oabi.em: And here.
+ * emultempl/beos.em: And here.
+ * emultempl/elf32.em: And here.
+ * emultempl/hppaelf.em: And here.
+ * emultempl/linux.em: And here.
+ * emultempl/lnk960.em: And here.
+ * emultempl/pe.em: And here.
+ * emultempl/sunos.em: And here.
+ * mpw-esh.c: And here. Include ldexp.h and ldlang.h too.
+ * mpw-idtmips.c: Ditto.
+ * emultempl/generic.em: Ditto.
+ * emultempl/gld960.em: Ditto.
+ * emultempl/gld960c.em: Ditto.
+ * emultempl/mipsecoff.em: Ditto.
+ * emultempl/ticoff.em: Ditto.
+ * emultempl/vanilla.em: Ditto.
+
+ * pe-dll.c: Include ldfile.h
+ * ldver.c: Include ldexp.h, ldlang.h, ldfile.h
+
+ * mpw-elfmips.c: (gldelf32ebmip_before_allocation): Add missing
+ arguments to bfd_elf32_size_dynamic_sections call.
+ (gldelf32ebmip_place_orphan): Add missing arguments to
+ lang_leave_output_section_statement call.
+
2000-07-10 H.J. Lu <hjl@gnu.org>
* emultempl/pe.em (pe_enable_stdcall_fixup): Protect with
diff --git a/ld/emultempl/aix.em b/ld/emultempl/aix.em
index dd81b5f744..c07ddef9d8 100644
--- a/ld/emultempl/aix.em
+++ b/ld/emultempl/aix.em
@@ -4,7 +4,8 @@ cat >e${EMULATION_NAME}.c <<EOF
/* This file is is generated by a shell script. DO NOT EDIT! */
/* AIX emulation code for ${EMULATION_NAME}
- Copyright (C) 1991, 93, 95, 96, 97, 98, 1999 Free Software Foundation, Inc.
+ Copyright (C) 1991, 93, 95, 96, 97, 98, 99, 2000
+ Free Software Foundation, Inc.
Written by Steve Chamberlain <sac@cygnus.com>
AIX support by Ian Lance Taylor <ian@cygnus.com>
@@ -37,11 +38,11 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#include "ld.h"
#include "ldmain.h"
-#include "ldemul.h"
-#include "ldfile.h"
#include "ldmisc.h"
#include "ldexp.h"
#include "ldlang.h"
+#include "ldfile.h"
+#include "ldemul.h"
#include "ldctor.h"
#include "ldgram.h"
diff --git a/ld/emultempl/armcoff.em b/ld/emultempl/armcoff.em
index d73b3d172f..936da13a63 100644
--- a/ld/emultempl/armcoff.em
+++ b/ld/emultempl/armcoff.em
@@ -4,7 +4,8 @@ cat >e${EMULATION_NAME}.c <<EOF
/* This file is is generated by a shell script. DO NOT EDIT! */
/* emulate the original gld for the given ${EMULATION_NAME}
- Copyright (C) 1991, 93, 96, 97, 98, 1999 Free Software Foundation, Inc.
+ Copyright (C) 1991, 93, 96, 97, 98, 99, 2000
+ Free Software Foundation, Inc.
Written by Steve Chamberlain steve@cygnus.com
This file is part of GLD, the Gnu Linker.
@@ -32,12 +33,12 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#include "ld.h"
#include "ldmain.h"
-#include "ldemul.h"
-#include "ldfile.h"
#include "ldmisc.h"
#include "ldexp.h"
#include "ldlang.h"
+#include "ldfile.h"
+#include "ldemul.h"
static void gld${EMULATION_NAME}_before_parse PARAMS ((void));
static void gld${EMULATION_NAME}_before_allocation PARAMS ((void));
diff --git a/ld/emultempl/armelf.em b/ld/emultempl/armelf.em
index a1a3968310..37339cc09e 100644
--- a/ld/emultempl/armelf.em
+++ b/ld/emultempl/armelf.em
@@ -5,7 +5,8 @@ cat >e${EMULATION_NAME}.c <<EOF
/* This file is is generated by a shell script. DO NOT EDIT! */
/* emulate the original gld for the given ${EMULATION_NAME}
- Copyright (C) 1991, 93, 96, 97, 98, 1999 Free Software Foundation, Inc.
+ Copyright (C) 1991, 93, 96, 97, 98, 99, 2000
+ Free Software Foundation, Inc.
Written by Steve Chamberlain steve@cygnus.com
This file is part of GLD, the Gnu Linker.
@@ -36,12 +37,12 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#include "ld.h"
#include "ldmain.h"
-#include "ldemul.h"
-#include "ldfile.h"
#include "ldmisc.h"
#include "ldexp.h"
#include "ldlang.h"
+#include "ldfile.h"
+#include "ldemul.h"
#include "ldgram.h"
static boolean gld${EMULATION_NAME}_open_dynamic_archive
diff --git a/ld/emultempl/armelf_oabi.em b/ld/emultempl/armelf_oabi.em
index d8ca87ab0a..7936d484bc 100644
--- a/ld/emultempl/armelf_oabi.em
+++ b/ld/emultempl/armelf_oabi.em
@@ -4,7 +4,8 @@ cat >e${EMULATION_NAME}.c <<EOF
/* This file is is generated by a shell script. DO NOT EDIT! */
/* emulate the original gld for the given ${EMULATION_NAME}
- Copyright (C) 1991, 93, 96, 97, 98, 1999 Free Software Foundation, Inc.
+ Copyright (C) 1991, 93, 96, 97, 98, 99, 2000
+ Free Software Foundation, Inc.
Written by Steve Chamberlain steve@cygnus.com
This file is part of GLD, the Gnu Linker.
@@ -39,12 +40,12 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#include "ld.h"
#include "ldmain.h"
-#include "ldemul.h"
-#include "ldfile.h"
#include "ldmisc.h"
#include "ldexp.h"
#include "ldlang.h"
+#include "ldfile.h"
+#include "ldemul.h"
static void gld${EMULATION_NAME}_before_parse PARAMS ((void));
static void gld${EMULATION_NAME}_before_allocation PARAMS ((void));
diff --git a/ld/emultempl/beos.em b/ld/emultempl/beos.em
index 2c14fbcce3..1e469f461a 100644
--- a/ld/emultempl/beos.em
+++ b/ld/emultempl/beos.em
@@ -2,7 +2,7 @@
# It does some substitutions.
cat >e${EMULATION_NAME}.c <<EOF
/* This file is part of GLD, the Gnu Linker.
- Copyright 1995, 96, 97, 98, 1999 Free Software Foundation, Inc.
+ Copyright 1995, 96, 97, 98, 99, 2000 Free Software Foundation, Inc.
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
@@ -35,11 +35,11 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#include "ldgram.h"
#include "ldexp.h"
#include "ldlang.h"
+#include "ldfile.h"
#include "ldemul.h"
#include "ldlex.h"
#include "ldmisc.h"
#include "ldctor.h"
-#include "ldfile.h"
#include "coff/internal.h"
#include "../bfd/libcoff.h"
diff --git a/ld/emultempl/elf32.em b/ld/emultempl/elf32.em
index 0d55780925..7a9c8822fd 100644
--- a/ld/emultempl/elf32.em
+++ b/ld/emultempl/elf32.em
@@ -7,7 +7,7 @@ cat >e${EMULATION_NAME}.c <<EOF
/* This file is is generated by a shell script. DO NOT EDIT! */
/* ${ELFSIZE} bit ELF emulation code for ${EMULATION_NAME}
- Copyright (C) 1991, 93, 94, 95, 96, 97, 98, 1999
+ Copyright (C) 1991, 93, 94, 95, 96, 97, 98, 99, 2000
Free Software Foundation, Inc.
Written by Steve Chamberlain <sac@cygnus.com>
ELF support by Ian Lance Taylor <ian@cygnus.com>
@@ -39,11 +39,11 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#include "ld.h"
#include "ldmain.h"
-#include "ldemul.h"
-#include "ldfile.h"
#include "ldmisc.h"
#include "ldexp.h"
#include "ldlang.h"
+#include "ldfile.h"
+#include "ldemul.h"
#include "ldgram.h"
static void gld${EMULATION_NAME}_before_parse PARAMS ((void));
diff --git a/ld/emultempl/generic.em b/ld/emultempl/generic.em
index 6635e09e20..f96323e211 100644
--- a/ld/emultempl/generic.em
+++ b/ld/emultempl/generic.em
@@ -4,7 +4,8 @@ cat >e${EMULATION_NAME}.c <<EOF
/* This file is is generated by a shell script. DO NOT EDIT! */
/* emulate the original gld for the given ${EMULATION_NAME}
- Copyright (C) 1991, 93, 94, 95, 96, 1999 Free Software Foundation, Inc.
+ Copyright (C) 1991, 93, 94, 95, 96, 99, 2000
+ Free Software Foundation, Inc.
Written by Steve Chamberlain steve@cygnus.com
This file is part of GLD, the Gnu Linker.
@@ -31,10 +32,13 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#include "ld.h"
#include "ldmain.h"
-#include "ldemul.h"
-#include "ldfile.h"
#include "ldmisc.h"
+#include "ldexp.h"
+#include "ldlang.h"
+#include "ldfile.h"
+#include "ldemul.h"
+
static void gld${EMULATION_NAME}_before_parse PARAMS ((void));
static char *gld${EMULATION_NAME}_get_script PARAMS ((int *isfile));
diff --git a/ld/emultempl/gld960.em b/ld/emultempl/gld960.em
index ad8e5bfafa..a880cc8d79 100644
--- a/ld/emultempl/gld960.em
+++ b/ld/emultempl/gld960.em
@@ -1,7 +1,7 @@
# This shell script emits a C file. -*- C -*-
# It does some substitutions.
cat >e${EMULATION_NAME}.c <<EOF
-/* Copyright (C) 1991, 93, 94, 95, 1999 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 93, 94, 95, 99, 2000 Free Software Foundation, Inc.
This file is part of GLD, the Gnu Linker.
@@ -30,11 +30,14 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307
#include "bfdlink.h"
#include "ld.h"
-#include "ldemul.h"
-#include "ldfile.h"
#include "ldmisc.h"
#include "ldmain.h"
+#include "ldexp.h"
+#include "ldlang.h"
+#include "ldfile.h"
+#include "ldemul.h"
+
#ifdef GNU960
static void
diff --git a/ld/emultempl/gld960c.em b/ld/emultempl/gld960c.em
index c7f162455c..d1cb441081 100644
--- a/ld/emultempl/gld960c.em
+++ b/ld/emultempl/gld960c.em
@@ -1,7 +1,8 @@
# This shell script emits a C file. -*- C -*-
# It does some substitutions.
cat >e${EMULATION_NAME}.c <<EOF
-/* Copyright (C) 1991, 93, 94, 95, 96, 1999 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 93, 94, 95, 96, 99, 2000
+ Free Software Foundation, Inc.
This file is part of GLD, the Gnu Linker.
@@ -32,11 +33,14 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#include "bfdlink.h"
#include "ld.h"
-#include "ldemul.h"
-#include "ldfile.h"
#include "ldmisc.h"
#include "ldmain.h"
+#include "ldexp.h"
+#include "ldlang.h"
+#include "ldfile.h"
+#include "ldemul.h"
+
#ifdef GNU960
static void
diff --git a/ld/emultempl/hppaelf.em b/ld/emultempl/hppaelf.em
index 51f3bbd624..dfa1d0afef 100644
--- a/ld/emultempl/hppaelf.em
+++ b/ld/emultempl/hppaelf.em
@@ -31,11 +31,11 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#include "ld.h"
#include "ldmain.h"
-#include "ldemul.h"
-#include "ldfile.h"
#include "ldmisc.h"
#include "ldexp.h"
#include "ldlang.h"
+#include "ldfile.h"
+#include "ldemul.h"
#include "ldgram.h"
#include "ldctor.h"
#include "elf32-hppa.h"
diff --git a/ld/emultempl/linux.em b/ld/emultempl/linux.em
index dfa855edd0..31d816d96e 100644
--- a/ld/emultempl/linux.em
+++ b/ld/emultempl/linux.em
@@ -4,7 +4,8 @@ cat >e${EMULATION_NAME}.c <<EOF
/* This file is is generated by a shell script. DO NOT EDIT! */
/* Linux a.out emulation code for ${EMULATION_NAME}
- Copyright (C) 1991, 93, 94, 95, 96, 98, 1999 Free Software Foundation, Inc.
+ Copyright (C) 1991, 93, 94, 95, 96, 98, 99, 2000
+ Free Software Foundation, Inc.
Written by Steve Chamberlain <sac@cygnus.com>
Linux support by Eric Youngdale <ericy@cais.cais.com>
@@ -32,11 +33,11 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#include "ld.h"
#include "ldmain.h"
-#include "ldemul.h"
-#include "ldfile.h"
#include "ldmisc.h"
#include "ldexp.h"
#include "ldlang.h"
+#include "ldfile.h"
+#include "ldemul.h"
static void gld${EMULATION_NAME}_before_parse PARAMS ((void));
static boolean gld${EMULATION_NAME}_open_dynamic_archive
diff --git a/ld/emultempl/lnk960.em b/ld/emultempl/lnk960.em
index a4c32579ee..6fedf333be 100644
--- a/ld/emultempl/lnk960.em
+++ b/ld/emultempl/lnk960.em
@@ -2,7 +2,8 @@
# It does some substitutions.
cat >e${EMULATION_NAME}.c <<EOF
/* intel coff loader emulation specific stuff
- Copyright (C) 1991, 93, 94, 95, 96, 1999 Free Software Foundation, Inc.
+ Copyright (C) 1991, 93, 94, 95, 96, 99, 2000
+ Free Software Foundation, Inc.
Written by Steve Chamberlain steve@cygnus.com
This file is part of GLD, the Gnu Linker.
@@ -28,12 +29,12 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307
/*#include "archures.h"*/
#include "ld.h"
-#include "ldemul.h"
+#include "ldmain.h"
#include "ldmisc.h"
#include "ldexp.h"
#include "ldlang.h"
#include "ldfile.h"
-#include "ldmain.h"
+#include "ldemul.h"
typedef struct lib_list {
char *name;
diff --git a/ld/emultempl/mipsecoff.em b/ld/emultempl/mipsecoff.em
index 61ab7d4e91..cb18e6510a 100644
--- a/ld/emultempl/mipsecoff.em
+++ b/ld/emultempl/mipsecoff.em
@@ -4,7 +4,7 @@ cat >e${EMULATION_NAME}.c <<EOF
/* This file is is generated by a shell script. DO NOT EDIT! */
/* Handle embedded relocs for MIPS.
- Copyright 1994, 95, 97, 1999 Free Software Foundation, Inc.
+ Copyright 1994, 95, 97, 99, 2000 Free Software Foundation, Inc.
Written by Ian Lance Taylor <ian@cygnus.com> based on generic.em.
This file is part of GLD, the Gnu Linker.
@@ -31,10 +31,13 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#include "ld.h"
#include "ldmain.h"
-#include "ldemul.h"
-#include "ldfile.h"
#include "ldmisc.h"
+#include "ldexp.h"
+#include "ldlang.h"
+#include "ldfile.h"
+#include "ldemul.h"
+
static void gld${EMULATION_NAME}_before_parse PARAMS ((void));
static void gld${EMULATION_NAME}_after_open PARAMS ((void));
static void check_sections PARAMS ((bfd *, asection *, PTR));
diff --git a/ld/emultempl/pe.em b/ld/emultempl/pe.em
index ee213ae1a2..582d541895 100644
--- a/ld/emultempl/pe.em
+++ b/ld/emultempl/pe.em
@@ -37,11 +37,11 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#include "ldgram.h"
#include "ldexp.h"
#include "ldlang.h"
+#include "ldfile.h"
#include "ldemul.h"
#include "ldlex.h"
#include "ldmisc.h"
#include "ldctor.h"
-#include "ldfile.h"
#include "coff/internal.h"
/* FIXME: This is a BFD internal header file, and we should not be
diff --git a/ld/emultempl/sunos.em b/ld/emultempl/sunos.em
index a571b6b3b7..23fa285906 100644
--- a/ld/emultempl/sunos.em
+++ b/ld/emultempl/sunos.em
@@ -4,7 +4,7 @@ cat >e${EMULATION_NAME}.c <<EOF
/* This file is is generated by a shell script. DO NOT EDIT! */
/* SunOS emulation code for ${EMULATION_NAME}
- Copyright (C) 1991, 93, 94, 95, 96, 97, 98, 1999
+ Copyright (C) 1991, 93, 94, 95, 96, 97, 98, 99, 2000
Free Software Foundation, Inc.
Written by Steve Chamberlain <sac@cygnus.com>
SunOS shared library support by Ian Lance Taylor <ian@cygnus.com>
@@ -36,11 +36,11 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#include "ld.h"
#include "ldmain.h"
-#include "ldemul.h"
-#include "ldfile.h"
#include "ldmisc.h"
#include "ldexp.h"
#include "ldlang.h"
+#include "ldfile.h"
+#include "ldemul.h"
#ifdef HAVE_DIRENT_H
# include <dirent.h>
diff --git a/ld/emultempl/ticoff.em b/ld/emultempl/ticoff.em
index 21bd35d5e5..7cab15db5f 100644
--- a/ld/emultempl/ticoff.em
+++ b/ld/emultempl/ticoff.em
@@ -30,10 +30,13 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#include "ld.h"
#include "ldmain.h"
-#include "ldemul.h"
-#include "ldfile.h"
#include "ldmisc.h"
+#include "ldexp.h"
+#include "ldlang.h"
+#include "ldfile.h"
+#include "ldemul.h"
+
#include "getopt.h"
static int coff_version;
diff --git a/ld/emultempl/vanilla.em b/ld/emultempl/vanilla.em
index 0a74abd0e0..c91d6cac1e 100644
--- a/ld/emultempl/vanilla.em
+++ b/ld/emultempl/vanilla.em
@@ -2,7 +2,7 @@
# It does some substitutions.
cat >e${EMULATION_NAME}.c <<EOF
/* A vanilla emulation with no defaults
- Copyright (C) 1991, 1993 Free Software Foundation, Inc.
+ Copyright (C) 1991, 92, 93, 94, 2000 Free Software Foundation, Inc.
Written by Steve Chamberlain steve@cygnus.com
This file is part of GLD, the Gnu Linker.
@@ -26,11 +26,14 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#include "ld.h"
-#include "ldemul.h"
-#include "ldfile.h"
#include "ldmisc.h"
#include "ldmain.h"
+#include "ldexp.h"
+#include "ldlang.h"
+#include "ldfile.h"
+#include "ldemul.h"
+
static void vanilla_before_parse()
{
}
diff --git a/ld/ldemul.c b/ld/ldemul.c
index 08a4e47e1c..41c638a461 100644
--- a/ld/ldemul.c
+++ b/ld/ldemul.c
@@ -1,5 +1,5 @@
/* ldemul.c -- clearing house for ld emulation states
- Copyright (C) 1991, 92, 93, 94, 95, 96, 97, 98, 1999
+ Copyright (C) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000
Free Software Foundation, Inc.
This file is part of GLD, the Gnu Linker.
@@ -22,11 +22,11 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307
#include "sysdep.h"
#include "ld.h"
-#include "ldemul.h"
#include "ldmisc.h"
#include "ldexp.h"
#include "ldlang.h"
#include "ldfile.h"
+#include "ldemul.h"
#include "ldmain.h"
#include "ldemul-list.h"
diff --git a/ld/ldemul.h b/ld/ldemul.h
index b2d91031ba..97313d532d 100644
--- a/ld/ldemul.h
+++ b/ld/ldemul.h
@@ -16,11 +16,6 @@
#ifndef LDEMUL_H
#define LDEMUL_H
-#if ANSI_PROTOTYPES
-struct lang_input_statement_struct;
-struct search_dirs;
-#endif
-
extern void ldemul_hll PARAMS ((char *));
extern void ldemul_syslib PARAMS ((char *));
extern void ldemul_after_parse PARAMS ((void));
diff --git a/ld/ldfile.h b/ld/ldfile.h
index 9c9a4d65c2..5e73f03be8 100644
--- a/ld/ldfile.h
+++ b/ld/ldfile.h
@@ -1,5 +1,5 @@
/* ldfile.h -
- Copyright 1991, 1992 Free Software Foundation, Inc.
+ Copyright 1991, 92, 93, 94, 95, 2000 Free Software Foundation, Inc.
This file is part of GLD, the Gnu Linker.
@@ -17,6 +17,9 @@
along with GLD; see the file COPYING. If not, write to
the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+#ifndef LDFILE_H
+#define LDFILE_H
+
extern const char *ldfile_input_filename;
extern boolean ldfile_assumed_script;
extern unsigned long ldfile_output_machine;
@@ -38,10 +41,6 @@ typedef struct search_dirs
extern search_dirs_type *search_head;
-#if ANSI_PROTOTYPES
-struct lang_input_statement_struct;
-#endif
-
extern void ldfile_add_arch PARAMS ((CONST char *));
extern void ldfile_add_library_path PARAMS ((const char *, boolean cmdline));
extern void ldfile_open_command_file PARAMS ((const char *name));
@@ -54,3 +53,5 @@ extern void ldfile_set_output_arch PARAMS ((CONST char *));
extern boolean ldfile_open_file_search
PARAMS ((const char *arch, struct lang_input_statement_struct *,
const char *lib, const char *suffix));
+
+#endif
diff --git a/ld/ldgram.y b/ld/ldgram.y
index 77fe7969df..2c4047897e 100644
--- a/ld/ldgram.y
+++ b/ld/ldgram.y
@@ -33,8 +33,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#include "ldexp.h"
#include "ldver.h"
#include "ldlang.h"
-#include "ldemul.h"
#include "ldfile.h"
+#include "ldemul.h"
#include "ldmisc.h"
#include "ldmain.h"
#include "mri.h"
diff --git a/ld/ldlang.c b/ld/ldlang.c
index 6068f51e39..c3420c5434 100644
--- a/ld/ldlang.c
+++ b/ld/ldlang.c
@@ -30,11 +30,11 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#include "ldgram.h"
#include "ldexp.h"
#include "ldlang.h"
-#include "ldemul.h"
#include "ldlex.h"
#include "ldmisc.h"
#include "ldctor.h"
#include "ldfile.h"
+#include "ldemul.h"
#include "fnmatch.h"
#include "demangle.h"
diff --git a/ld/ldlang.h b/ld/ldlang.h
index 553db4b2a0..1a428c61e8 100644
--- a/ld/ldlang.h
+++ b/ld/ldlang.h
@@ -379,6 +379,7 @@ extern boolean delete_output_file_on_failure;
extern const char *entry_symbol;
extern boolean entry_from_cmdline;
+extern lang_statement_list_type file_chain;
extern void lang_init PARAMS ((void));
extern struct memory_region_struct *lang_memory_region_lookup
@@ -430,7 +431,6 @@ extern bfd_vma lang_do_assignments
bfd_vma dot));
#define LANG_FOR_EACH_INPUT_STATEMENT(statement) \
- extern lang_statement_list_type file_chain; \
lang_input_statement_type *statement; \
for (statement = (lang_input_statement_type *)file_chain.head;\
statement != (lang_input_statement_type *)NULL; \
diff --git a/ld/ldmain.c b/ld/ldmain.c
index 660ea94265..538268e1e7 100644
--- a/ld/ldmain.c
+++ b/ld/ldmain.c
@@ -36,9 +36,9 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#include "ldgram.h"
#include "ldexp.h"
#include "ldlang.h"
-#include "ldemul.h"
#include "ldlex.h"
#include "ldfile.h"
+#include "ldemul.h"
#include "ldctor.h"
/* Somewhere above, sys/stat.h got included . . . . */
diff --git a/ld/ldver.c b/ld/ldver.c
index 5b600a2bbd..8ffcfd2eab 100644
--- a/ld/ldver.c
+++ b/ld/ldver.c
@@ -1,5 +1,6 @@
/* ldver.c -- Print linker version.
- Copyright (C) 1991, 92, 93, 94, 95, 1996, 1998 Free Software Foundation, Inc.
+ Copyright (C) 1991, 92, 93, 94, 95, 96, 97, 2000
+ Free Software Foundation, Inc.
This file is part of GLD, the Gnu Linker.
@@ -23,6 +24,9 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#include "ld.h"
#include "ldver.h"
+#include "ldexp.h"
+#include "ldlang.h"
+#include "ldfile.h"
#include "ldemul.h"
#include "ldmain.h"
diff --git a/ld/mpw-elfmips.c b/ld/mpw-elfmips.c
index e8ab0560aa..3143b2ec14 100644
--- a/ld/mpw-elfmips.c
+++ b/ld/mpw-elfmips.c
@@ -1,7 +1,8 @@
/* This file is is generated by a shell script. DO NOT EDIT! */
/* 32 bit ELF emulation code for elf32ebmip
- Copyright (C) 1991, 93, 94, 95, 1996, 1998 Free Software Foundation, Inc.
+ Copyright (C) 1991, 93, 94, 95, 96, 98, 2000
+ Free Software Foundation, Inc.
Written by Steve Chamberlain <sac@cygnus.com>
ELF support by Ian Lance Taylor <ian@cygnus.com>
@@ -32,12 +33,12 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#include "ld.h"
#include "ldmain.h"
-#include "ldemul.h"
-#include "ldfile.h"
#include "ldmisc.h"
#include "ldexp.h"
#include "ldlang.h"
#include "ldgram.h"
+#include "ldfile.h"
+#include "ldemul.h"
static void gldelf32ebmip_before_parse PARAMS ((void));
static boolean gldelf32ebmip_open_dynamic_archive
@@ -442,12 +443,11 @@ gldelf32ebmip_before_allocation ()
rpath = command_line.rpath;
if (rpath == NULL)
rpath = (const char *) getenv ("LD_RUN_PATH");
- if (! bfd_elf32_size_dynamic_sections (output_bfd,
- command_line.soname,
- rpath,
- command_line.export_dynamic,
- &link_info,
- &sinterp))
+ if (! (bfd_elf32_size_dynamic_sections
+ (output_bfd, command_line.soname, rpath,
+ command_line.export_dynamic, command_line.filter_shlib,
+ (const char * const *) command_line.auxiliary_filters,
+ &link_info, &sinterp, lang_elf_version_info)))
einfo (_("%P%F: failed to set dynamic section sizes: %E\n"));
/* Let the user override the dynamic linker we are using. */
@@ -694,7 +694,9 @@ gldelf32ebmip_place_orphan (file, s)
os = lang_output_section_statement_lookup (secname);
wild_doit (&os->children, s, os, file);
- lang_leave_output_section_statement ((bfd_vma) 0, "*default*");
+ lang_leave_output_section_statement
+ ((bfd_vma) 0, "*default*",
+ (struct lang_output_section_phdr_list *) NULL, "*default*");
stat_ptr = &add;
if (*ps == '\0' && config.build_constructors)
diff --git a/ld/mpw-eppcmac.c b/ld/mpw-eppcmac.c
index ba09a410df..713f0815e4 100644
--- a/ld/mpw-eppcmac.c
+++ b/ld/mpw-eppcmac.c
@@ -1,7 +1,7 @@
/* This file is is generated by a shell script. DO NOT EDIT! */
/* AIX emulation code for ppcmacos
- Copyright (C) 1991, 1993, 1995, 1998 Free Software Foundation, Inc.
+ Copyright (C) 1991, 93, 95, 98, 2000 Free Software Foundation, Inc.
Written by Steve Chamberlain <sac@cygnus.com>
AIX support by Ian Lance Taylor <ian@cygnus.com>
@@ -33,13 +33,13 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#include "ld.h"
#include "ldmain.h"
-#include "ldemul.h"
-#include "ldfile.h"
#include "ldmisc.h"
#include "ldexp.h"
#include "ldlang.h"
#include "ldctor.h"
#include "ldgram.h"
+#include "ldfile.h"
+#include "ldemul.h"
static void gldppcmacos_before_parse PARAMS ((void));
static int gldppcmacos_parse_args PARAMS ((int, char **));
diff --git a/ld/mpw-esh.c b/ld/mpw-esh.c
index 93bc5f54c7..6af2c0f2b7 100644
--- a/ld/mpw-esh.c
+++ b/ld/mpw-esh.c
@@ -1,7 +1,7 @@
/* This file is is generated by a shell script. DO NOT EDIT! */
/* emulate the original gld for the given sh
- Copyright (C) 1991, 1993 Free Software Foundation, Inc.
+ Copyright (C) 1991, 1993, 2000 Free Software Foundation, Inc.
Written by Steve Chamberlain steve@cygnus.com
This file is part of GLD, the Gnu Linker.
@@ -29,10 +29,13 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#include "ld.h"
#include "ldmain.h"
-#include "ldemul.h"
-#include "ldfile.h"
#include "ldmisc.h"
+#include "ldexp.h"
+#include "ldlang.h"
+#include "ldfile.h"
+#include "ldemul.h"
+
static void gldsh_before_parse PARAMS ((void));
static char *gldsh_get_script PARAMS ((int *isfile));
diff --git a/ld/mpw-idtmips.c b/ld/mpw-idtmips.c
index 08ddc70393..69b91ac3b9 100644
--- a/ld/mpw-idtmips.c
+++ b/ld/mpw-idtmips.c
@@ -1,7 +1,7 @@
/* This file is is generated by a shell script. DO NOT EDIT! */
/* Handle embedded relocs for MIPS.
- Copyright 1994 Free Software Foundation, Inc.
+ Copyright 1994, 2000 Free Software Foundation, Inc.
Written by Ian Lance Taylor <ian@cygnus.com> based on generic.em.
This file is part of GLD, the Gnu Linker.
@@ -29,10 +29,13 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#include "ld.h"
#include "ldmain.h"
-#include "ldemul.h"
-#include "ldfile.h"
#include "ldmisc.h"
+#include "ldexp.h"
+#include "ldlang.h"
+#include "ldfile.h"
+#include "ldemul.h"
+
static void gldmipsidt_before_parse PARAMS ((void));
static void gldmipsidt_after_open PARAMS ((void));
static void check_sections PARAMS ((bfd *, asection *, PTR));
diff --git a/ld/pe-dll.c b/ld/pe-dll.c
index 6b8b1af007..d028fd1765 100644
--- a/ld/pe-dll.c
+++ b/ld/pe-dll.c
@@ -34,6 +34,7 @@
#include "ldmisc.h"
#include "ldgram.h"
#include "ldmain.h"
+#include "ldfile.h"
#include "ldemul.h"
#include "coff/internal.h"
#include "../bfd/libcoff.h"