www.delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2008/07/02/16:25:32

X-Recipient: archive-cygwin AT delorie DOT com
X-Spam-Check-By: sourceware.org
Message-ID: <486BE588.4080004@x-ray.at>
Date: Wed, 02 Jul 2008 22:31:04 +0200
From: Reini Urban <rurban AT x-ray DOT at>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de-AT; rv:1.8.1.13) Gecko/20080313 SeaMonkey/1.1.9
MIME-Version: 1.0
To: Jan Dubois <jand AT activestate DOT com>
CC: Cygwin List <cygwin AT cygwin DOT com>
Subject: Re: Cygwin Perl doesn't seem to include Win32CORE
References: <012801c8dc79$99396c50$cbac44f0$@com>
In-Reply-To: <012801c8dc79$99396c50$cbac44f0$@com>
X-IsSubscribed: yes
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

Jan Dubois schrieb:
> I've installed the latest Cygwin perl using the standard setup.exe.
> While the local changes claim that Win32CORE has been statically linked,
> it doesn't seem to be working:
> 
> C:>perl -E "say for sort keys %Win32::"
> 
> C:>perl -V
> Summary of my perl5 (revision 5 version 10 subversion 0) configuration:
>   Platform:
>     osname=cygwin, osvers=1.5.25(0.15642), archname=cygwin-thread-multi-64int
>     uname='cygwin_nt-5.1 atgrzwn502840 1.5.25(0.15642) 2008-05-26 20:37 i686 cygwin '
>     config_args='-de -Dmksymlinks -Dusethreads -Dmad=y'
>     hint=recommended, useposix=true, d_sigaction=define
>     useithreads=define, usemultiplicity=define
>     useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef
>     use64bitint=define, use64bitall=undef, uselongdouble=undef
>     usemymalloc=y, bincompat5005=undef
>   Compiler:
>     cc='gcc', ccflags ='-DPERL_USE_SAFE_PUTENV -U__STRICT_ANSI__ -mms-bitfields -fno-strict-aliasing -pipe -/usr/local/include',
>     optimize='-O3',
>     cppflags='-DPERL_USE_SAFE_PUTENV -U__STRICT_ANSI__ -mms-bitfields -fno-strict-aliasing -pipe -I/usr/local/include'
>     ccversion='', gccversion='3.4.4 (cygming special, gdc 0.12, using dmd 0.125)', gccosandvers=''
>     intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=12345678
>     d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
>     ivtype='long long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8
>     alignbytes=8, prototype=define
>   Linker and Libraries:
>     ld='g++', ldflags =' -Wl,--enable-auto-import -Wl,--export-all-symbols -Wl,--stack,8388608 -Wl,--enable-auto-image-base
> -L/usr/local/lib'
>     libpth=/usr/local/lib /usr/lib /lib
>     libs=-lgdbm -ldb -ldl -lcrypt -lgdbm_compat
>     perllibs=-ldl -lcrypt -lgdbm_compat
>     libc=/usr/lib/libc.a, so=dll, useshrplib=true, libperl=libperl.a
>     gnulibc_version=''
>   Dynamic Linking:
>     dlsrc=dl_dlopen.xs, dlext=dll, d_dlsymun=undef, ccdlflags=' '
>     cccdlflags=' ', lddlflags=' --shared  -Wl,--enable-auto-import -Wl,--export-all-symbols -Wl,--stack,8388608
> -Wl,--enable-auto-image-base -L/usr/local/lib'
> 
> 
> Characteristics of this binary (from libperl):
>   Compile-time options: MULTIPLICITY MYMALLOC PERL_DONT_CREATE_GVSV
>                         PERL_IMPLICIT_CONTEXT PERL_MAD PERL_USE_SAFE_PUTENV
>                         USE_64_BIT_INT USE_ITHREADS USE_LARGE_FILES
>                         USE_PERLIO USE_REENTRANT_API
>   Locally applied patches:
>         CYG04 major version
>         CYG11 no-bs
>         CYG12 no archlib in otherlibdirs
>         CYG14 Dynaloader
>         CYG15 static-Win32CORE
>         CYG18 File::Spec::case_tolerant performance fix
>         32813 ExtUtils::Install update
>         32891 aassign_common
>         32909 smartmatch-deparse
>         32933 clone-seen_eval
>         32938 refcount-reg_curpm
>         33239 unpack-in-scalar-context
>         33807 sv_setsv_flags crash with gv
>         33937 sort magic crash
>   Built under cygwin
>   Compiled at Jun  1 2008 18:17:45
>   %ENV:
>     PERLDB_OPTS="RemotePort=127.0.0.1:2000"
>     CYGWIN="nontsec"
>   @INC:
>     /usr/lib/perl5/5.10/i686-cygwin
>     /usr/lib/perl5/5.10
>     /usr/lib/perl5/site_perl/5.10/i686-cygwin
>     /usr/lib/perl5/site_perl/5.10
>     /usr/lib/perl5/vendor_perl/5.10/i686-cygwin
>     /usr/lib/perl5/vendor_perl/5.10
>     /usr/lib/perl5/vendor_perl/5.10
>     /usr/lib/perl5/site_perl/5.8
>     .
> 
> Any ideas?

My oh my! Bad testing.

$ perl5.10.0-4 -E "say for sort keys %Win32::"

$ perl5.10.0-5 -E "say for sort keys %Win32::"
CopyFile
DomainName
FormatMessage
FsType
GetCwd
GetFullPathName
GetLastError
GetLongPathName
GetNextAvailDrive
GetOSVersion
GetShortPathName
GetTickCount
IsWin95
IsWinNT
LoginName
NodeName
SetCwd
SetLastError
Sleep
Spawn

I really need to add such a test to core.
Win32CORE.o is indeed statically linked to the dll and the
two Win32CORE functions are there:
$ nm cygperl5_10d.dll |grep CORE
523143f2 T _boot_Win32CORE
523143f7 T _init_Win32CORE

But it is not correctly initialized somehow in -4.
And it's the exe's fault, not the dll.
I suppose _init_Win32CORE is not called, because Config{static_ext} was 
cleared.

version -5 currently in testing:
$ perl -V
Summary of my perl5 (revision 5 version 10 subversion 0 patch 34065) 
configuration:
   Platform:
     osname=cygwin, osvers=1.5.25(0.15642), 
archname=cygwin-thread-multi-64int
     uname='cygwin_nt-5.1 reini 1.5.25(0.15642) 2008-06-12 19:34 i686 
cygwin '
     config_args='-de -Dmksymlinks -Dusethreads -Dmad=y -Dusedevel'
     hint=recommended, useposix=true, d_sigaction=define
     useithreads=define, usemultiplicity=define
     useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef
     use64bitint=define, use64bitall=undef, uselongdouble=undef
     usemymalloc=y, bincompat5005=undef
   Compiler:
     cc='gcc', ccflags ='-DPERL_USE_SAFE_PUTENV -U__STRICT_ANSI__ 
-fno-strict-aliasing -pipe -I/usr/local/include',
     optimize='-O3',
     cppflags='-DPERL_USE_SAFE_PUTENV -U__STRICT_ANSI__ 
-fno-strict-aliasing -pipe -I/usr/local/include'
     ccversion='', gccversion='3.4.4 (cygming special, gdc 0.12, using 
dmd 0.125)', gccosandvers=''
     intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=12345678
     d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
     ivtype='long long', ivsize=8, nvtype='double', nvsize=8, 
Off_t='off_t', lseeksize=8
     alignbytes=8, prototype=define
   Linker and Libraries:
     ld='g++', ldflags =' -Wl,--enable-auto-import 
-Wl,--export-all-symbols -Wl,--stack,8388608 
-Wl,--enable-auto-image-base -L/usr/local/lib'
     libpth=/usr/local/lib /usr/lib /lib
     libs=-lgdbm -ldb -ldl -lcrypt -lgdbm_compat
     perllibs=-ldl -lcrypt
     libc=/usr/lib/libc.a, so=dll, useshrplib=true, libperl=libperl.a
     gnulibc_version=''
   Dynamic Linking:
     dlsrc=dl_dlopen.xs, dlext=dll, d_dlsymun=undef, ccdlflags=' '
     cccdlflags=' ', lddlflags=' --shared  -Wl,--enable-auto-import 
-Wl,--export-all-symbols -Wl,--stack,8388608 
-Wl,--enable-auto-image-base -L/usr/local/lib'


Characteristics of this binary (from libperl):
   Compile-time options: MULTIPLICITY MYMALLOC PERL_DONT_CREATE_GVSV
                         PERL_IMPLICIT_CONTEXT PERL_MAD PERL_MALLOC_WRAP
                         PERL_USE_SAFE_PUTENV USE_64_BIT_INT USE_ITHREADS
                         USE_LARGE_FILES USE_PERLIO USE_REENTRANT_API
   Locally applied patches:
         MAINT34065
         CYG11 no-bs
         CYG12 no archlib in otherlibdirs
         CYG14 Dynaloader
         CYG15 static-Win32CORE
         Bug#55162 File::Spec::case_tolerant performance
   Built under cygwin
   Compiled at Jun 30 2008 16:05:15
   %ENV:
     CYGWIN="server"
   @INC:
     /usr/lib/perl5/5.10/i686-cygwin
     /usr/lib/perl5/5.10
     /usr/lib/perl5/site_perl/5.10/i686-cygwin
     /usr/lib/perl5/site_perl/5.10
     /usr/lib/perl5/vendor_perl/5.10/i686-cygwin
     /usr/lib/perl5/vendor_perl/5.10
     /usr/lib/perl5/vendor_perl/5.10
     /usr/lib/perl5/site_perl/5.8
     /usr/lib/perl5/vendor_perl/5.8
     .

I'll try my luck with this one now.
-- 
Reini Urban
http://phpwiki.org/  http://murbreak.at/

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

- Raw text -


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