* lib/ld-lib.exp (default_ld_simple_link): Permit the linker to
[deliverable/binutils-gdb.git] / ld / ld.h
diff --git a/ld/ld.h b/ld/ld.h
index d23633e168dee0322d30794069b01dac0af86a3c..99924d5aca20c43059818660f8ff02e862059506 100644 (file)
--- a/ld/ld.h
+++ b/ld/ld.h
@@ -1,6 +1,5 @@
-/* ld.h -
-
-   Copyright (C) 1991, 1993 Free Software Foundation, Inc.
+/* ld.h -- general linker header file
+   Copyright (C) 1991, 93, 94, 95, 1996 Free Software Foundation, Inc.
 
    This file is part of GLD, the Gnu Linker.
 
    GNU General Public License for more details.
 
    You should have received a copy of the GNU General Public License
-   along with GLD; see the file COPYING.  If not, write to
-   the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
+   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 LD_H
 #define LD_H
 
+/* Look in this environment name for the linker to pretend to be */
+#define EMULATION_ENVIRON "LDEMULATION"
+/* If in there look for the strings: */
+
+/* Look in this variable for a target format */
+#define TARGET_ENVIRON "GNUTARGET"
+
+/* Input sections which are put in a section of this name are actually
+   discarded.  */
+#define DISCARD_SECTION_NAME "/DISCARD/"
+
 /* Extra information we hold on sections */
 typedef struct  user_section_struct
 {
@@ -58,6 +69,27 @@ typedef struct
 
   /* Runtime library search path from the -rpath argument.  */
   char *rpath;
+
+  /* Link time runtime library search path from the -rpath-link
+     argument.  */
+  char *rpath_link;
+
+  /* Big or little endian as set on command line.  */
+  enum { ENDIAN_UNSET = 0, ENDIAN_BIG, ENDIAN_LITTLE } endian;
+
+  /* If true, export all symbols in the dynamic symbol table of an ELF
+     executable.  */
+  boolean export_dynamic;
+
+  /* If true, build MIPS embedded PIC relocation tables in the output
+     file.  */
+  boolean embedded_relocs;
+
+  /* If true, force generation of a file with a .exe file. */
+  boolean force_exe_suffix;
+
+  /* If true, generate a cross reference report.  */
+  boolean cref;
 } args_type;
 
 extern args_type command_line;
@@ -70,20 +102,25 @@ typedef struct
   boolean magic_demand_paged;
   boolean make_executable;
 
-  /* If true, request BFD to use the traditional format.  */
-  boolean traditional_format;
-
   /* If true, doing a dynamic link.  */
   boolean dynamic_link;
 
+  /* If true, build constructors.  */
   boolean build_constructors;
 
+  /* If true, warn about any constructors.  */
+  boolean warn_constructors;
+
   /* If true, warn about merging common symbols with others.  */
   boolean warn_common;
 
   /* If true, only warn once about a particular undefined symbol.  */
   boolean warn_once;
 
+  /* If true, warn if multiple global-pointers are needed (Alpha
+     only).  */
+  boolean warn_multiple_gp;
+
   boolean sort_common;
 
   boolean text_read_only;
@@ -92,6 +129,9 @@ typedef struct
   FILE *map_file;
 
   boolean stats;
+
+  int split_by_reloc;
+  boolean split_by_file;
 } ld_config_type;
 
 extern ld_config_type config;
@@ -106,6 +146,12 @@ typedef enum
 extern boolean had_script;
 extern boolean force_make_executable;
 
+/* Non-zero if we are processing a --defsym from the command line.  */
+extern int parsing_defsym;
+
 extern int yyparse PARAMS ((void));
 
+extern void add_cref PARAMS ((const char *, bfd *, asection *, bfd_vma));
+extern void output_cref PARAMS ((FILE *));
+
 #endif
This page took 0.02539 seconds and 4 git commands to generate.