7 The GNU linker. Turns ObjectFiles into Executables and SharedLibraries. To
8 create a shared library, specify "shared" as the second argument to
11 Uses either gcc or g++ depending on what was used to compile the object files.
13 class GnuLinker: public Tool
16 class Linker: public SubTool
19 std::string compiler_tag;
22 Linker(GnuLinker &, const std::string &);
24 std::string create_build_signature(const BuildInfo &) const override;
26 void do_prepare() override;
28 Task *run(const Target &) const override;
31 Linker *default_linker = 0;
32 Linker *cxx_linker = 0;
35 GnuLinker(Builder &, const Architecture &);
38 Target *create_target(const std::vector<Target *> &, const std::string &) override;
39 Target *create_install(Target &) const override;
41 void do_prepare() override;
43 Task *run(const Target &) const override;