diff options
author | Kai Tietz <kai.tietz@onevision.com> | 2009-10-23 11:40:17 +0000 |
---|---|---|
committer | Kai Tietz <kai.tietz@onevision.com> | 2009-10-23 11:40:17 +0000 |
commit | 7fcab871034a5e755786062826456863ab65683b (patch) | |
tree | 6f9c5ce538e5ad88f6985fe18ca50075ee5ac59a /ld/ld.texinfo | |
parent | 424908eba6008ba81a554c062a185f02c15bdc79 (diff) | |
download | gdb-7fcab871034a5e755786062826456863ab65683b.zip gdb-7fcab871034a5e755786062826456863ab65683b.tar.gz gdb-7fcab871034a5e755786062826456863ab65683b.tar.bz2 |
2009-10-23 Kai Tietz <kai.tietz@onevision.com>
* deffile.h (def_file_export): New member its_name.
(def_file_import): Likewise.
(def_file_add_export): Add argument its_name.
(def_file_add_import): Likewise.
* deffilep.y (def_exports): Add argument its_name.
(def_import): Likewise.
(EQUAL): Add new token for '=='.
(opt_equalequal_name): New rule.
(expline): Add rule opt_equalequal_name.
(impline): Likewise.
(def_file_free): Free for exports and imports
the optional member its_name.
(def_lex): Add scan of '==' as EQUAL.
* pe-dll.c (pe_export_sort): Sort for its_name too.
(process_def_file_and_drectve): Adjust calls to
def_file_add_export.
(generate_edata): Take its_name in account.
(make_one): Likewise.
(pe_process_import_defs): Likewise.
(pe_dll_generate_def_file): Add print of new '==' option.
* ld.texinfo: Extend documentation about .def file syntax.
* NEWS: Mention new feature.
Diffstat (limited to 'ld/ld.texinfo')
-rw-r--r-- | ld/ld.texinfo | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/ld/ld.texinfo b/ld/ld.texinfo index 4899d61..9e9d1f1 100644 --- a/ld/ld.texinfo +++ b/ld/ld.texinfo @@ -6672,14 +6672,19 @@ bar _bar = bar another_foo = abc.dll.afoo var1 DATA +doo = foo == foo2 +eoo DATA == var1 @end example -This example defines a DLL with a non-default base address and five +This example defines a DLL with a non-default base address and seven symbols in the export table. The third exported symbol @code{_bar} is an alias for the second. The fourth symbol, @code{another_foo} is resolved by "forwarding" to another module and treating it as an alias for @code{afoo} exported from the DLL @samp{abc.dll}. The final symbol -@code{var1} is declared to be a data object. +@code{var1} is declared to be a data object. The @samp{doo} symbol in +export library is an alias of @samp{foo}, which gets the string name +in export table @samp{foo2}. The @samp{eoo} symbol is an data export +symbol, which gets in export table the name @samp{var1}. The optional @code{LIBRARY <name>} command indicates the @emph{internal} name of the output DLL. If @samp{<name>} does not include a suffix, @@ -6704,7 +6709,7 @@ The complete specification of an export symbol is: EXPORTS ( ( ( <name1> [ = <name2> ] ) | ( <name1> = <module-name> . <external-name>)) - [ @@ <integer> ] [NONAME] [DATA] [CONSTANT] [PRIVATE] ) * + [ @@ <integer> ] [NONAME] [DATA] [CONSTANT] [PRIVATE] [== <name3>] ) * @end example Declares @samp{<name1>} as an exported symbol from the DLL, or declares @@ -6712,7 +6717,8 @@ Declares @samp{<name1>} as an exported symbol from the DLL, or declares @samp{<name1>} as a "forward" alias for the symbol @samp{<external-name>} in the DLL @samp{<module-name>}. Optionally, the symbol may be exported by the specified ordinal -@samp{<integer>} alias. +@samp{<integer>} alias. The optional @samp{<name3>} is the to be used +string in import/export table for the symbol. The optional keywords that follow the declaration indicate: |