diff options
author | Danny Smith <dannysmith@users.sourceforge.net> | 2006-02-01 21:28:29 +0000 |
---|---|---|
committer | Danny Smith <dannysmith@users.sourceforge.net> | 2006-02-01 21:28:29 +0000 |
commit | 6b31ad165d5b94d0a207bc2eab1855599a81033b (patch) | |
tree | 9de036d784734513fec2056aeadb908486761f01 /ld | |
parent | f524510a162cee710564bda63698c2e6b6307554 (diff) | |
download | gdb-6b31ad165d5b94d0a207bc2eab1855599a81033b.zip gdb-6b31ad165d5b94d0a207bc2eab1855599a81033b.tar.gz gdb-6b31ad165d5b94d0a207bc2eab1855599a81033b.tar.bz2 |
* deffilep.y (def_image_name): If the image name does not have
a suffix, append the default.
* ld.texinfo: Document NAME, LIBRARY usage in PE-COFF .def files.
Diffstat (limited to 'ld')
-rw-r--r-- | ld/ChangeLog | 6 | ||||
-rw-r--r-- | ld/deffilep.y | 11 | ||||
-rw-r--r-- | ld/ld.texinfo | 16 |
3 files changed, 32 insertions, 1 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog index f06eade..81a0e39 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,9 @@ +2006-02-01 Danny Smith <dannysmith@users.sourceforge.net> + + * deffilep.y (def_image_name): If the image name does not have + a suffix, append the default. + * ld.texinfo: Document NAME, LIBRARY usage in PE-COFF .def files. + 2006-01-31 Danny Smith dannysmith@users.sourceforge.net * NEWS: Mention support for forward exports in PE-COFF dll's. diff --git a/ld/deffilep.y b/ld/deffilep.y index d349537..78da27a 100644 --- a/ld/deffilep.y +++ b/ld/deffilep.y @@ -654,7 +654,16 @@ def_image_name (const char *name, int base, int is_dll) def_filename, linenumber, is_dll ? "LIBRARY" : "NAME", name); if (def->name) free (def->name); - def->name = xstrdup (image_name); + /* Append the default suffix, if none specified. */ + if (strchr (image_name, '.') == 0) + { + const char * suffix = is_dll ? ".dll" : ".exe"; + + def->name = xmalloc (strlen (image_name) + strlen (suffix) + 1); + sprintf (def->name, "%s%s", image_name, suffix); + } + else + def->name = xstrdup (image_name); def->base_address = base; def->is_dll = is_dll; } diff --git a/ld/ld.texinfo b/ld/ld.texinfo index 4f809f3..d455727 100644 --- a/ld/ld.texinfo +++ b/ld/ld.texinfo @@ -5598,6 +5598,22 @@ 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. +The optional @code{LIBRARY <name>} command indicates the @emph{internal} +name of the output DLL. If @samp{<name>} does not include a suffix, +the default library suffix, @samp{.DLL} is appended. + +When the .DEF file is used to build an application. rather than a +library, the @code{NAME <name>} command shoud be used instead of +@code{LIBRARY}. If @samp{<name>} does not include a suffix, the default +executable suffix, @samp{.EXE} is appended. + +With either @code{LIBRARY <name>} or @code{NAME <name>} the optional +specification @code{BASE = <number>} may be used to specify a +non-default base address for the image. + +If neither @code{LIBRARY <name>} nor @code{NAME <name>} is specified, +the internal name is the same as the filename specified on the command line. + The complete specification of an export symbol is: @example |