diff options
Diffstat (limited to 'ld/ldmain.c')
-rw-r--r-- | ld/ldmain.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/ld/ldmain.c b/ld/ldmain.c index c42c208..8903936 100644 --- a/ld/ldmain.c +++ b/ld/ldmain.c @@ -38,6 +38,8 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "ldindr.h" #include "ldwarn.h" #include "ldctor.h" +#include "lderror.h" + /* IMPORTS */ extern boolean lang_has_input_file; extern boolean trace_files; @@ -118,7 +120,7 @@ unsigned int total_files_seen; /* IMPORTS */ args_type command_line; ld_config_type config; -int +void main (argc, argv) char **argv; int argc; @@ -148,6 +150,7 @@ main (argc, argv) /* Initialize the data about options. */ + trace_files = false; write_map = false; config.relocateable_output = false; @@ -182,8 +185,11 @@ main (argc, argv) lang_has_input_file = false; parse_args(argc, argv); lang_final(); + if (trace_files) { + info("%P: mode %s\n", emulation); + } if (lang_has_input_file == false) { einfo("%P%F: No input files\n"); @@ -191,6 +197,7 @@ main (argc, argv) ldemul_after_parse(); + if (config.map_filename) { if (strcmp(config.map_filename, "-") == 0) @@ -800,7 +807,8 @@ struct lang_input_statement_struct *entry; } if (p->section == &bfd_com_section - || p->flags & BSF_GLOBAL) + || (p->flags & BSF_GLOBAL) + || (p->flags & BSF_INDIRECT)) { register ldsym_type *sp = ldsym_get_soft (p->name); |