From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 16814 invoked by alias); 11 Jul 2012 15:08:08 -0000 Received: (qmail 16805 invoked by uid 22791); 11 Jul 2012 15:08:06 -0000 X-SWARE-Spam-Status: No, hits=-5.0 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,FREEMAIL_FROM,KHOP_RCVD_TRUST,KHOP_THREADED,RCVD_IN_DNSWL_LOW,RCVD_IN_HOSTKARMA_YE X-Spam-Check-By: sourceware.org Received: from mail-ey0-f171.google.com (HELO mail-ey0-f171.google.com) (209.85.215.171) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Wed, 11 Jul 2012 15:07:53 +0000 Received: by eaaa12 with SMTP id a12so426449eaa.2 for ; Wed, 11 Jul 2012 08:07:51 -0700 (PDT) MIME-Version: 1.0 Received: by 10.152.125.236 with SMTP id mt12mr49288277lab.12.1342019271727; Wed, 11 Jul 2012 08:07:51 -0700 (PDT) Received: by 10.112.86.130 with HTTP; Wed, 11 Jul 2012 08:07:51 -0700 (PDT) In-Reply-To: References: Date: Wed, 11 Jul 2012 15:08:00 -0000 Message-ID: Subject: Re: perl-5.14.2 switch From: Reini Urban To: "Yaakov (Cygwin/X)" Cc: cygwin@cygwin.com Content-Type: text/plain; charset=ISO-8859-1 X-IsSubscribed: yes Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner@cygwin.com Mail-Followup-To: cygwin@cygwin.com X-SW-Source: 2012-07/txt/msg00168.txt.bz2 On Wed, Jul 11, 2012 at 4:53 AM, Yaakov (Cygwin/X) wrote: > On Tue, Jul 10, 2012 at 1:01 PM, Reini Urban wrote: >> I'll be switching perl from 5.10 to 5.14 in the next days. > > Another issue: > > $Config{static_ext} is defined as Win32CORE. The problem is that any > use of ExtUtils::Embed then requires Win32CORE; its bootstrap call is > included by xsinit and the static library added to ldopts, resulting > in the w32_* functions being exported by any EU::E module. Yes, same as for the Cygwin:: functions. > Where this really breaks things is where a EU::E module is linked with > libtool (as in gnumeric's perl-loader plugin): the xsinit-generated > code calls boot_Win32CORE() but libtool will drop any static link > libraries when creating a shared library/module, meaning the link > fails with an unresolved reference to said function. > > AFAICS, static_ext should be empty; packages which actually need the > w32_* symbols can add Win32CORE as an argument to the EU::E functions. I see the problem, but I'm afraid that I cannot move Win32CORE from static to dynamic now. Generally we must have the ability to support both types of exts, static and dynamic. Some internal exts are also static, such as Cygwin, Internals, utf8, UNIVERSAL, DynaLoader, PerlIO, mro and partially version, attributes, Tie::Hash::NamedCapture. But they are included in libperl. Previously I solved this by adding Win32CORE.o to libperl itself. Should I do that? -- Reini Urban http://cpanel.net/ http://www.perl-compiler.org/ -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple