delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2000/09/09/06:43:02

Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT sources DOT redhat DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin/>
List-Post: <mailto:cygwin AT sources DOT redhat DOT com>
List-Help: <mailto:cygwin-help AT sources DOT redhat DOT com>, <http://sources.redhat.com/ml/#faqs>
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" <robert DOT collins AT itdomain DOT com DOT au>
To: <cygwin AT sources DOT redhat DOT com>
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
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" <gvv AT techie DOT com>
To: "Earnie Boyd" <earnie_boyd AT yahoo DOT com>
Cc: "Robert Collins" <robert DOT collins AT itdomain DOT com DOT au>;
<cygwin AT sources DOT redhat DOT com>
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

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019