diff options
author | Nick Clifton <nickc@redhat.com> | 2000-01-04 23:30:51 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2000-01-04 23:30:51 +0000 |
commit | 5aaace278daa85ea6c3255a47e4dd47f7f25df26 (patch) | |
tree | 51cba6bf9bf28376e3fc7763f91bea113f0bd6c5 | |
parent | oops - omitted from previous delta (diff) | |
download | binutils-gdb-5aaace278daa85ea6c3255a47e4dd47f7f25df26.tar.gz binutils-gdb-5aaace278daa85ea6c3255a47e4dd47f7f25df26.tar.bz2 binutils-gdb-5aaace278daa85ea6c3255a47e4dd47f7f25df26.zip |
Apply patch from Mumit Khan to fix bugs generating dll names.
-rw-r--r-- | ld/ChangeLog | 6 | ||||
-rw-r--r-- | ld/deffilep.y | 8 | ||||
-rw-r--r-- | ld/pe-dll.c | 9 |
3 files changed, 14 insertions, 9 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog index cc26ce06570..2ab6c95fe7b 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,9 @@ +2000-01-04 Mumit Khan <khan@xraylith.wisc.edu> + + * pe-dll.c (pe_dll_generate_implib): Use the correct name for output + dll. + * deffilep.y (opt_name): Allow "." in name. + 1999-12-02 Nick Clifton <nickc@cygnus.com> * Makefile.am: Fix arm-epoc-pe dependencies. diff --git a/ld/deffilep.y b/ld/deffilep.y index 31aa703a917..6b17e55817e 100644 --- a/ld/deffilep.y +++ b/ld/deffilep.y @@ -214,7 +214,13 @@ attr: ; opt_name: ID { $$ = $1; } - | { $$ = 0; } + | ID '.' ID + { + char * name = xmalloc (strlen ($1) + 1 + strlen ($3) + 1); + sprintf (name, "%s.%s", $1, $3); + $$ = name; + } + | { $$ = ""; } ; opt_ordinal: diff --git a/ld/pe-dll.c b/ld/pe-dll.c index 657f41dae3a..afb7edd60c4 100644 --- a/ld/pe-dll.c +++ b/ld/pe-dll.c @@ -1455,14 +1455,7 @@ pe_dll_generate_implib (def, impfilename) bfd *outarch; bfd *head = 0; - dll_filename = def->name; - if (dll_filename == 0) - { - dll_filename = dll_name; - for (i=0; impfilename[i]; i++) - if (impfilename[i] == '/' || impfilename[i] == '\\') - dll_filename = impfilename+1; - } + dll_filename = (def->name) ? def->name : dll_name; dll_symname = xstrdup (dll_filename); for (i=0; dll_symname[i]; i++) if (!isalnum ((unsigned char) dll_symname[i])) |