From 5a6f7e2db556f93765b75baf2d1ee1509225410d Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Thu, 30 Nov 2006 23:52:50 +0000 Subject: Added a testsuite. More support for COPY relocations. --- gold/main.cc | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 gold/main.cc (limited to 'gold/main.cc') diff --git a/gold/main.cc b/gold/main.cc new file mode 100644 index 0000000..ea65c2d --- /dev/null +++ b/gold/main.cc @@ -0,0 +1,57 @@ +// main.cc -- gold main function. + +#include "gold.h" + +#include "options.h" +#include "dirsearch.h" +#include "workqueue.h" +#include "object.h" +#include "symtab.h" +#include "layout.h" + +using namespace gold; + +int +main(int argc, char** argv) +{ +#if defined (HAVE_SETLOCALE) && defined (HAVE_LC_MESSAGES) + setlocale (LC_MESSAGES, ""); +#endif +#if defined (HAVE_SETLOCALE) + setlocale (LC_CTYPE, ""); +#endif + bindtextdomain (PACKAGE, LOCALEDIR); + textdomain (PACKAGE); + + program_name = argv[0]; + + // Handle the command line options. + Command_line command_line; + command_line.process(argc - 1, argv + 1); + + // The work queue. + Workqueue workqueue(command_line.options()); + + // The list of input objects. + Input_objects input_objects; + + // The symbol table. + Symbol_table symtab; + + // The layout object. + Layout layout(command_line.options()); + + // Get the search path from the -L options. + Dirsearch search_path; + search_path.add(&workqueue, command_line.options().search_path()); + + // Queue up the first set of tasks. + queue_initial_tasks(command_line.options(), search_path, + command_line, &workqueue, &input_objects, + &symtab, &layout); + + // Run the main task processing loop. + workqueue.process(); + + gold_exit(true); +} -- cgit v1.1