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 Date: Fri, 8 Sep 2000 01:27:40 +0100 From: "Gary V. Vaughan" To: Earnie Boyd Cc: Robert Collins , cygwin AT sources DOT redhat DOT com Subject: Re: libtool Message-ID: <20000908012740.A26790@demon.co.uk> References: <20000907133430 DOT 25505 DOT qmail AT web119 DOT yahoomail DOT com> <20000907185550 DOT O7695 AT demon DOT co DOT uk> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <20000907185550.O7695@demon.co.uk>; from gvv@techie.com on Thu, Sep 07, 2000 at 06:55:50PM +0100 X-Operating-System: Linux oranda 2.2.13 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,DllMainCRTStartup 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,DllMainCRTStartup 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 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,DllMainCRTStartup 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 AT 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