From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Andy Wingo Newsgroups: gmane.lisp.guile.devel,gmane.lisp.guile.bugs Subject: Re: Guile with win32 cross compiling Date: Fri, 17 Jun 2011 11:03:44 +0200 Message-ID: <87wrgk96dq.fsf@pobox.com> References: <20110326220651.GA8300@flap> <20110401185020.GC13643@flap> <20110423161003.GB20479@flap> <20110516230101.GB3311@flap> <20110520122552.GA2454@flap> <20110520221931.GB2223@flap> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: dough.gmane.org 1308324785 6888 80.91.229.12 (17 Jun 2011 15:33:05 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Fri, 17 Jun 2011 15:33:05 +0000 (UTC) Cc: bug-guile@gnu.org, guile-devel@gnu.org To: Volker Grabsch Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Fri Jun 17 17:32:59 2011 Return-path: Envelope-to: guile-devel@m.gmane.org Original-Received: from lists.gnu.org ([140.186.70.17]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1QXb2X-0003fU-NF for guile-devel@m.gmane.org; Fri, 17 Jun 2011 17:32:57 +0200 Original-Received: from localhost ([::1]:56936 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QXb2V-0001al-NU for guile-devel@m.gmane.org; Fri, 17 Jun 2011 11:32:55 -0400 Original-Received: from eggs.gnu.org ([140.186.70.92]:57465) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QXafa-00030D-Ud for guile-devel@gnu.org; Fri, 17 Jun 2011 11:09:17 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QXafZ-0008QL-43 for guile-devel@gnu.org; Fri, 17 Jun 2011 11:09:14 -0400 Original-Received: from a-pb-sasl-sd.pobox.com ([64.74.157.62]:57680 helo=sasl.smtp.pobox.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QXafU-0008Ns-5L; Fri, 17 Jun 2011 11:09:08 -0400 Original-Received: from sasl.smtp.pobox.com (unknown [127.0.0.1]) by a-pb-sasl-sd.pobox.com (Postfix) with ESMTP id 70FEB5F5B; Fri, 17 Jun 2011 11:11:15 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=pobox.com; h=from:to:cc :subject:references:date:in-reply-to:message-id:mime-version :content-type; s=sasl; bh=faplmKa5CPvSTH2pGUIYMmYZZUg=; b=J2skEZ Wb0VlHMtYOxRgbdLD5tSxGkK4OSgF4YODV/SQYrNMmnaByoQgCI3ZGPnCgAvkjY3 bMEaivCxYXwZjyV6DtA/5WuSPCNQ77921WtVXig4Yv/z3f3OeXP47q3MUXBfub9b hWxkmZULp3eFCLRPBZ+Ie/TzEQs+SmyolGhRo= DomainKey-Signature: a=rsa-sha1; c=nofws; d=pobox.com; h=from:to:cc :subject:references:date:in-reply-to:message-id:mime-version :content-type; q=dns; s=sasl; b=LLiZl8pRNQtah+nL6lCRrXArbtpLoZIk JjpfC6eeCF1jCWQshpngHlfTLKN/da5w4Not462o0dOyzD7f9wYeoM9afV7+KVgM vWsxDm5Pb1G0mqkfXAMbk+7nazk2WNhwsXlatzW2V+x+CImlM4Zn8rF7LBJTDSLP 5zeAVt3CjGo= Original-Received: from a-pb-sasl-sd.pobox.com (unknown [127.0.0.1]) by a-pb-sasl-sd.pobox.com (Postfix) with ESMTP id 6A29A5F5A; Fri, 17 Jun 2011 11:11:15 -0400 (EDT) Original-Received: from badger (unknown [90.164.198.39]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by a-pb-sasl-sd.pobox.com (Postfix) with ESMTPSA id 807735F59; Fri, 17 Jun 2011 11:11:14 -0400 (EDT) In-Reply-To: <20110520221931.GB2223@flap> (Volker Grabsch's message of "Sat, 21 May 2011 00:19:31 +0200") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.3 (gnu/linux) X-Pobox-Relay-ID: 0B227BEC-98F4-11E0-B413-5875C023C68D-02397024!a-pb-sasl-sd.pobox.com X-detected-operating-system: by eggs.gnu.org: Solaris 10 (beta) X-Received-From: 64.74.157.62 X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Developers list for Guile, the GNU extensibility library" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Original-Sender: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.devel:12578 gmane.lisp.guile.bugs:5645 Archived-At: Hi Volker, On Sat 21 May 2011 00:19, Volker Grabsch writes: > Jan Nieuwenhuizen schrieb: >> https://github.com/janneke/gub/blob/guile-2.0/gub/specs/guile.py >> https://github.com/janneke/gub/tree/guile-2.0/patches > > As far as I can see, you have patched libgc to support pthreads > under MinGW. You forward-ported those patches from libgc-6.8 to 7.2, > so I'm wondering why those patches didn't make it into upstream > (i.e. the official libgc project) during that time. Are there any > issues with those patches that I should know about? > > Also, have you actually offered these patches to upstream? If so, > what's the URL to their bug tracker, or mailing list archive, where > this issue has been discussed? I haven't been able to find any such > information in neither the *.py file not the patch files. FWIW there should be a new libgc tarball out, if not now, then within the next few days. The libgc list is gc@linux.hpl.hp.com. I have found the libgc maintainers to be very responsive. If there is a problem with mingw and threads that is fixed by Jan's patches, I'm sure they would be happy to have them. Who will submit them there, Jan or Volker? > 2) The struct_timespec / ipv6 / etc. issues > > It seems that you solve those issues using an even uglier hack > than I did. I'm wondering why it is necessary to manipulate the > config.cache, as providing those variables as ./configure paramters > worked quite well for me. > > Moreover, is this a sensible thing to do anyway? Shouldn't we try > to fix the configure.ac to make it more portable and to make it > properly detect those MinGW things in the first place? I have not looked at the patch, and am away from the internet at the moment, but patching config.cache isn't really a bad thing, AFAIU. Here's the deal. Configure scripts attempt to figure out what features your system supports by doing configure-time feature checks (not platform checks). But if you are cross-compiling, sometimes it doesn't have all of the information that it needs. In that case, the configure script will make an assumption. When that assumption does not hold for you, you need to midify the assumption that it's going to make, by setting a cache variable. You can set a cache variable on the ./configure command line, or set it in a config.cache or config.site file. It doesn't matter which. In fact config.site is often the nicest solution, as you don't have to muck up all of your ./configure invocations. Hope this helps, Andy -- http://wingolog.org/