8#include "../dumper/dumper.h"
9#include "../linker/module.h"
10#include "../linker/options.h"
11#include "../linker/segment.h"
12#include "../linker/segment_manager.h"
13#include "../linker/writer.h"
21 : AOutFormat(AOutFormat::EMX, AOutFormat::ZMAGIC), LEFormat(LEFormat::OS2, LEFormat::OUTPUT_CON)
23 LEFormat::module_flags = LEFormat::GUIAware | LEFormat::NoInternalFixup;
24 LEFormat::signature[1] =
'X';
27 bool bound_image =
false;
28 uint32_t aout_header_offset = 0;
29 std::array<char, 64> dos_options;
31 uint32_t text_base = 0;
32 uint32_t text_end = 0;
33 uint32_t data_base = 0;
34 uint32_t data_end = 0;
35 uint32_t bss_base = 0;
37 uint32_t heap_base = 0;
38 uint32_t heap_end = 0;
39 uint32_t heap_brk = 0;
40 uint32_t heap_off = 0;
42 uint32_t stack_base = 0;
43 uint32_t stack_end = 0;
45 std::array<char, 64> os2_options;
70 InitializeFields(stub);
76 static std::vector<Linker::OptionDescription<void> *> ParameterNames;
79 std::shared_ptr<Linker::OptionCollector>
GetOptions()
override;
80 void SetOptions(std::map<std::string, std::string>& options)
override;
82 void OnNewSegment(std::shared_ptr<Linker::Segment> segment)
override;
An abstract interface that separates structure and presentation of the data inside a file.
Definition dumper.h:773
Encodes an object module file as a collection of sections, symbols and relocations.
Definition module.h:24
Helper class that contains the options interpreted by the format.
Definition options.h:474
Documents and handles command line options.
Definition options.h:306
A helper class, encapsulating functionality needed to import binary data.
Definition reader.h:20
A helper class, encapsulating functionality needed to export binary data.
Definition writer.h:15