diff options
author | Ian Lance Taylor <iant@google.com> | 2006-11-14 19:21:05 +0000 |
---|---|---|
committer | Ian Lance Taylor <iant@google.com> | 2006-11-14 19:21:05 +0000 |
commit | dbe717effbdf31236088837f4686fd5ad5e71893 (patch) | |
tree | fd5ed267334d62fadcaf7ff7132c0a7287553ed8 /gold/script.h | |
parent | 6c73cbb1d9a26d1c4d9bd5464832846b7c049b9d (diff) | |
download | gdb-dbe717effbdf31236088837f4686fd5ad5e71893.zip gdb-dbe717effbdf31236088837f4686fd5ad5e71893.tar.gz gdb-dbe717effbdf31236088837f4686fd5ad5e71893.tar.bz2 |
More dynamic object support, initial scripting support.
Diffstat (limited to 'gold/script.h')
-rw-r--r-- | gold/script.h | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/gold/script.h b/gold/script.h new file mode 100644 index 0000000..de2e5af --- /dev/null +++ b/gold/script.h @@ -0,0 +1,39 @@ +// script.h -- handle linker scripts for gold -*- C++ -*- + +// We implement a subset of the original GNU ld linker script language +// for compatibility. The goal is not to implement the entire +// language. It is merely to implement enough to handle common uses. +// In particular we need to handle /usr/lib/libc.so on a typical +// GNU/Linux system, and we want to handle linker scripts used by the +// Linux kernel build. + +#ifndef GOLD_SCRIPT_H +#define GOLD_SCRIPT_H + +namespace gold +{ + +class General_options; +class Symbol_table; +class Layout; +class Input_objects; +class Input_group; +class Input_file; +class Task_token; + +// FILE was found as an argument on the command line, but was not +// recognized as an ELF file. Try to read it as a script. We've +// already read BYTES of data into P. Return true if the file was +// handled. This has to handle /usr/lib/libc.so on a GNU/Linux +// system. + +bool +read_input_script(Workqueue*, const General_options&, Symbol_table*, Layout*, + const Dirsearch&, Input_objects*, Input_group*, + const Input_argument*, Input_file*, const unsigned char* p, + off_t bytes, Task_token* this_blocker, + Task_token* next_blocker); + +} // End namespace gold. + +#endif // !defined(GOLD_SCRIPT_H) |