Subject: Re: guile-1.4 shared patch (was: Re: lilypond build on cygwin stucks)
From: "Gerrit P. Haase" <[email-masked]>
To: [email-masked], [email-masked], [email-masked]
Date: Fri, 21 Sep 2001 00:19:49 +0200

Jan Nieuwenhuizen schrieb am 2001-09-20, 9:54:

>"Gerrit P. Haase" <[email-masked]> writes:
>
>> Jan Nieuwenhuizen schrieb am 2001-09-18, 22:04:
>> 
>> Well now, after several attempts, I got it managed to build guile on
>> Cygwin with shared libs (libguile.dll & libguilereadline.dll).
>> 
>> Now it is: guile-1.4-2.
>> The patch is up (because 30K), i hope it works for others, too.
>> http://familiehaase.de/cywgin/guile/guile-1.4-2.patch

I have updated the patch today, because it seems the import
library gets not built (and not installed ), but there is one 
generated when linking libguilereadline with libguile.dll so 
we can take this. Needs to be copied and renamed manually.
I have not tried yet to link against this import lib with a
libtoolized package, is there one somewhere which I can use to 
test the libguil.la and import-lib?
( Patch is at same location, same name).

LilyPond links o.k with that importlib, i built it yesterday, needs 
some testing yet.

>Ok, that looks good.  Where did you get the autogen.sh and
>autobuild.sh scripts; I mean, why do they need to be in the patch?

I wrote it, parts are from the autogen.sh of current guile (1.7)
and other parts are from me.
autobuild.sh is just a bundle of all steps i did to get it up 
and running so i was able to link against libguile.dll.
If you type sh -x ./autobuild.sh all should be managed by this script.

If you type 'sh -x autogen.sh' only the configure and Makefile.in scripts
were updated plus a new version of libtool is copied in the lt subdir.

>Also, you add
>
>   AC_LIBTOOL_WIN32_DLL
>
>to configure.in, that looks rather cygwin specific...

That is for libtool to tell it to build win32 .dll's:)

>For cross-compiling guile, we'll still need the <arch>-guile-config
>patch on top of this.

O.k. I don't know about problems with crosscompiling.  But it should
be possible to build .dll's at a linux box, though I don't know.
You are talking about this:
#!/bin/sh
# target-guile-config.in
case $1 in
	--version)
		echo "1.4"
		exit 0
		;;
	compile)
		echo "-I/home/cygwin/cygwin-1.3.2/usr/include -I/home/cygwin/cygwin-1.3.2/usr/include/w32api"
		exit 0
		;;
	link)
		echo "-lguile -L/home/cygwin/cygwin-1.3.2/usr/lib -lregex /home/cygwin/cygwin-1.3.2/usr/bin/cygwin1.dll"
		exit 0
		;;
esac

Question:
=========
I don't need to include win32api for a 'native' cygwin build.
Do you compile with -mno-cygwin flag?
And you are linking against cygwin1.dll?
Standard is to put the import libs on the link line (libcygwin.a).

If I link against libcygwin.a I don't need w32api and vice versa.

This <arch>-guile-config is of no use after it is installed on cygwin.

Gerrit

-- 
=^..^=

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/