Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT sources DOT redhat DOT com Delivered-To: mailing list cygwin AT sources DOT redhat DOT com Message-ID: <006601c01a4a$ad73e690$f7c723cb@lifelesswks> From: "Robert Collins" To: References: <20000907133430 DOT 25505 DOT qmail AT web119 DOT yahoomail DOT com> <20000907185550 DOT O7695 AT demon DOT co DOT uk> <20000908012740 DOT A26790 AT demon DOT co DOT uk> Subject: Re: libtool Date: Sat, 9 Sep 2000 21:42:38 +1100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.3018.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.3018.1300 X-OriginalArrivalTime: 09 Sep 2000 10:42:08.0523 (UTC) FILETIME=[9A504DB0:01C01A4A] Gary, Other than hanging on make check your tar.gz built fine for me... how can I take the libtool you have in that archive and apply it to (say glib or orbit)? I realise exported variables need to be wrapped with declspec(dllexport) before building the dll but I thought you had the functions being done automatically? Is that an incorrect assumption? Thanks, Rob ----- Original Message ----- From: "Gary V. Vaughan" To: "Earnie Boyd" Cc: "Robert Collins" ; Sent: Friday, September 08, 2000 11:27 AM Subject: Re: libtool > On Thu, Sep 07, 2000 at 06:55:50PM +0100, Gary V. Vaughan wrote: > > > > I'll upgrade to cygwin 1.1.4 and post some traces later tonight in the > > hope that someone can make more sense of them than I can. > > I updated to the very latest cygwin stuff using the web setup.exe, and > tried to compile a program that I know definitely built on my b20.1 > installation a few weeks back (a prerelease of GNU m4 1.5, available > from my website). It uses link time and runtime (LoadLibrary()) dll's > and is a pretty good stress test for libtool's dll support. > > To my surprise, it worked! Here is a part of the log around where the > build is compiling the libm4.la dll: > > . > . > . > /bin/sh ../libtool --mode=link gcc -g -O2 -no-undefined -export-dynamic @DLLDFLAGS@ -o libm4.la -rpath /usr/local/lib list.lo m4module.lo error.lo obstack.lo regex.lo xmalloc.lo xstrdup.lo > rm -fr .libs/libm4.la .libs/libm4.* .libs/libm4.* > generating symbol list for `libm4.la' > dlltool --export-all --exclude-symbols DllMain AT 12,_cygwin_dll_entry AT 12,_cygwin_noncygwin_dll_entry AT 12,DllMainCRTSta rtup AT 12,DllEntryPoint AT 12 --output-def .libs/libm4-0-0-0.dll-def list.lo m4module.lo error.lo obstack.lo regex.lo xmalloc.lo xstrdup.lo > sed -e "1,/EXPORTS/d" -e "s/ @ [0-9]*//" -e "s/ *;.*$//" < .libs/libm4-0-0-0.dll-def > .libs/libm4.exp > echo EXPORTS > .libs/libm4-0-0-0.dll-def > _lt_hint=1; \ > cat .libs/libm4.exp | while read symbol; do \ > set dummy $symbol; \ > case $# in \ > 2) echo " $2 @ $_lt_hint ; " >> .libs/libm4-0-0-0.dll-def ;; \ > *) echo " $2 @ $_lt_hint $3 ; " >> .libs/libm4-0-0-0.dll-def ;; \ > esac; \ > _lt_hint=`expr 1 + $_lt_hint`; \ > done > gcc -Wl,--base-file,.libs/libm4-0-0-0.dll-base -Wl,--dll -nostartfiles -Wl,- e,__cygwin_dll_entry AT 12 -o .libs/libm4-0-0-0.dll list.lo m4module.lo error.lo obstack.lo regex.lo xmalloc.lo xstrdup.lo > dlltool --as=as --dllname libm4-0-0-0.dll --exclude-symbols DllMain AT 12,_cygwin_dll_entry AT 12,_cygwin_noncygwin_dll_entry AT 12,DllMainCRTSta rtup AT 12,DllEntryPoint AT 12--def .libs/libm4-0-0-0.dll-def --base-file .libs/libm4-0-0-0.dll-base--output-exp .libs/libm4-0-0-0.dll-exp > gcc -Wl,--base-file,.libs/libm4-0-0-0.dll-base .libs/libm4-0-0-0.dll-exp -Wl,--dll -nostartfiles -Wl,-e,__cygwin_dll_entry@ 12 -o .libs/libm4-0-0-0.dll list.lo m4module.lo error.lo obstack.lo regex.lo xmalloc.lo xstrdup.lo > dlltool --as=as --dllname libm4-0-0-0.dll --exclude-symbols DllMain AT 12,_cygwin_dll_entry AT 12,_cygwin_noncygwin_dll_entry AT 12,DllMainCRTSta rtup AT 12,DllEntryPoint AT 12 --def .libs/libm4-0-0-0.dll-def --base-file .libs/libm4-0-0-0.dll-base --output-exp .libs/libm4-0-0-0.dll-exp > gcc .libs/libm4-0-0-0.dll-exp -Wl,--dll -nostartfiles -Wl,-e,__cygwin_dll_entry@ 12 -o .libs/libm4-0-0-0.dll list.lo m4module.lo error.lo obstack.lo regex.lo xmalloc.lo xstrdup.lo > creating libm4.la > . > . > . > > Cheers, > Gary. > > p.s. I think the current cvs HEAD of libtool is broken wrt cygwin > right now. > > p.p.s. the version of getopts linked by the system is subtly broken > and causes this m4 build to fail most of it's tests due to > misparsing of the command line. Linking it with the getopt > files in the distribution works fine, and the build passes all > tests. > -- > ___ _ ___ __ _ mailto: gvv AT techie DOT com > / __|__ _ _ ___ _| | / / | / /_ _ _ _ __ _| |_ __ _ ___ gary AT gnu DOT org > | (_ / _` | '_|// / |/ /| |/ / _` | || / _` | ' \/ _` | _ \ > \___\__,_|_|\_, /|___(_)___/\__,_|\_,_\__, |_||_\__,_|//_/ > home page: /___/ /___/ gpg public key: > http://www.oranda.demon.co.uk http://www.oranda.demon.co.uk/key.asc > -- Want to unsubscribe from this list? Send a message to cygwin-unsubscribe AT sourceware DOT cygnus DOT com