]> git.ipfire.org Git - thirdparty/libtool.git/commitdiff
* ltconfig.in (archive{,_sym}_commands): Be careful not to
authorAlexandre Oliva <oliva@dcc.unicamp.br>
Thu, 18 Feb 1999 18:50:24 +0000 (18:50 +0000)
committerGary V. Vaughan <gary@gnu.org>
Thu, 18 Feb 1999 18:50:24 +0000 (18:50 +0000)
re-export the dll entry points DllMain@12, _cygwin_dll_entry@12 and
_cygwin_noncygwin_dll_entry@12 to avoid bugs with the wrong entry
function being called with inter-dll dependencies.
Reported by DJ Delorie <dj@delorie.com>
* THANKS: Added DJ Delorie, since his code inspired the impgen.c
program and because he has patiently answered all of the
irritating dll and win32 questions I have fired at him.

ChangeLog
THANKS
ltconfig.in

index 794137d44c52371cec1702742b46bbeeddb0c0f1..c4fbd893e496685ff13496e98bbfd171a41a6b8a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -6,6 +6,15 @@
 
 1999-02-18  Gary V. Vaughan  <gvaughan@oranda.demon.co.uk>
 
+       * ltconfig.in (archive{,_sym}_commands): Be careful not to
+       re-export the dll entry points DllMain@12, _cygwin_dll_entry@12 and
+       _cygwin_noncygwin_dll_entry@12 to avoid bugs with the wrong entry
+       function being called with inter-dll dependencies.
+       Reported by DJ Delorie <dj@delorie.com>
+       * THANKS: Added DJ Delorie, since his code inspired the impgen.c
+       program and because he has patiently answered all of the
+       irritating dll and win32 questions I have fired at him.
+       
        * ltmain.in (version_type):  Oops.  Irix versioning implies that
        major version numbers are 1 based (not zero based).  Fixed.
        
diff --git a/THANKS b/THANKS
index 99fe19a765b2a84ad6bf08f6753cf43687035c05..242b00961048270345266352b73d8a9f2a8abebe 100644 (file)
--- a/THANKS
+++ b/THANKS
@@ -15,6 +15,7 @@ Andrey Slepuhin <pooh@msu.ru>
 Bruno Haible <haible@ilog.fr>
 Carl D. Roth <roth@cse.ucsc.edu>
 Chris P. Ross <cross@eng.us.uu.net>
+DJ Delorie <dj@delorie.com>
 Edouard G. Parmelan <Edouard.Parmelan@France.NCR.COM>
 Eric Estievenart <eric@via.ecp.fr>
 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu>
index d43b41440c232f4325525225880dcd4ef048dcb3..dd27465b7a9c694fd96a1ceec40137f5881fbbeb 100755 (executable)
@@ -1088,7 +1088,7 @@ if test "$with_gnu_ld" = yes; then
     hardcode_libdir_flag_spec='-L$libdir'
     allow_undefined_flag=unsupported
     always_export_symbols=yes
-    export_symbols_cmd='$DLLTOOL --export-all --output-def $export_symbols $objdir/$soname-ltdll.$objext $libobjs'
+    export_symbols_cmd='$DLLTOOL --exclude-symbols DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12 --output-def $export_symbols $objdir/$soname-ltdll.$objext $libobjs'
 
     archive_expsym_cmds='rm -f $objdir/$soname-ltdll.c~
       sed -e "/^# \/\* ltdll.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $0 > $objdir/$soname-ltdll.c~
@@ -1096,9 +1096,9 @@ if test "$with_gnu_ld" = yes; then
       echo EXPORTS > $objdir/$soname-def~
       cat "$export_symbols" >> $objdir/$soname-def~
       $CC -Wl,--base-file,$objdir/$soname-base -Wl,--dll -nostartfiles -Wl,-e,__cygwin_dll_entry@12 -o $lib $objdir/$soname-ltdll.$objext $libobjs $deplibs $linkopts~
-      $DLLTOOL --as=$AS --dllname $soname --exclude-symbol=_cygwin_dll_entry@12 --def $objdir/$soname-def --base-file $objdir/$soname-base --output-exp $objdir/$soname-exp~
+      $DLLTOOL --as=$AS --dllname $soname --exclude-symbols DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12 --def $objdir/$soname-def --base-file $objdir/$soname-base --output-exp $objdir/$soname-exp~
       $CC -Wl,--base-file,$objdir/$soname-base $objdir/$soname-exp -Wl,--dll -nostartfiles -Wl,-e,__cygwin_dll_entry@12 -o $lib $objdir/$soname-ltdll.$objext $libobjs $deplibs $linkopts~
-      $DLLTOOL --as=$AS --dllname $soname --exclude-symbol=_cygwin_dll_entry@12 --def $objdir/$soname-def --base-file $objdir/$soname-base --output-exp $objdir/$soname-exp~
+      $DLLTOOL --as=$AS --dllname $soname --exclude-symbols DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12 --def $objdir/$soname-def --base-file $objdir/$soname-base --output-exp $objdir/$soname-exp~
       $CC $objdir/$soname-exp -Wl,--dll -nostartfiles -Wl,-e,__cygwin_dll_entry@12 -o $lib $objdir/$soname-ltdll.$objext $libobjs $deplibs $linkopts'
 
       old_archive_from_new_cmds='$DLLTOOL --as=$AS --dllname $soname --def $objdir/$soname-def --output-lib $objdir/$libname.a'