Change 33481 by [EMAIL PROTECTED] on 2008/03/11 19:47:44

        Subject: Re: Perl @ http://www.ccl4.org/~nick/P/perl-33444.tar.bz2
        From: Reini Urban <[EMAIL PROTECTED]>
        Message-ID: <[EMAIL PROTECTED]>
        Date: Sat, 08 Mar 2008 20:55:36 +0100
        
        * CYG04 At least on cygwin strip the last number
            from the dll. This is in the cygwin.com build since years.

Affected files ...

... //depot/perl/cygwin/Makefile.SHs#24 edit
... //depot/perl/installperl#153 edit
... //depot/perl/lib/ExtUtils/t/Embed.t#23 edit

Differences ...

==== //depot/perl/cygwin/Makefile.SHs#24 (text) ====
Index: perl/cygwin/Makefile.SHs
--- perl/cygwin/Makefile.SHs#23~31710~  2007-08-13 23:58:22.000000000 -0700
+++ perl/cygwin/Makefile.SHs    2008-03-11 12:47:44.000000000 -0700
@@ -34,7 +34,15 @@
 libperl=`echo $libperl|sed -e s,\\\..*,,`
 linklibperl=-l`echo $libperl|sed -e s,^lib,,`
 vers=`echo $version|tr '.' '_'`
-dllname=`echo $libperl|sed -e s,^lib,cyg,`$vers
+dllname=`echo $libperl|sed -e s,^lib,cyg,``echo $vers|sed -e s,_[0-9]$,,`
+# append "d" suffix to -DDEBUGGING build: cygperl5_10d.dll
+case $config_args in
+  *DEBUGGING*)
+      dllname="${dllname}"d
+      ;;
+esac
+# added -mms-bitfields to be able to link to MSVC win32 bitfields libs 
+# (4 byte instead of 2 byte alignment)
 
 $spitshell >>Makefile <<!GROK!THIS!
 LIBPERL = $libperl
@@ -42,6 +50,7 @@
 DLLNAME= $dllname
 CLDFLAGS= -L$addtopath $ldflags
 LDDLFLAGS = --shared -L$addtopath $ldflags
+CCFLAGS=$ccflags -mms-bitfields 
 PLDLFLAGS = 
 CAT = $cat
 AWK = $awk

==== //depot/perl/installperl#153 (xtext) ====
Index: perl/installperl
--- perl/installperl#152~33358~ 2008-02-24 14:39:56.000000000 -0800
+++ perl/installperl    2008-03-11 12:47:44.000000000 -0700
@@ -283,7 +283,7 @@
 
     if ($Is_Cygwin) {
        $perldll = $libperl;
-       my $v_e_r_s = $ver; $v_e_r_s =~ tr/./_/;
+       my $v_e_r_s = substr($ver,0,-2); $v_e_r_s =~ tr/./_/;
        $perldll =~ s/(\..*)?$/$v_e_r_s.$dlext/;
        $perldll =~ s/^lib/cyg/;
     } else {
@@ -368,6 +368,7 @@
 # Install library files.
 
 my ($do_installarchlib, $do_installprivlib) = (0, 0);
+my $vershort = $Is_Cygwin ? substr($ver,0,-2) : $ver;
 
 mkpath($installprivlib, $verbose, 0777);
 mkpath($installarchlib, $verbose, 0777);
@@ -377,7 +378,7 @@
 if (chdir "lib") {
     $do_installarchlib = ! samepath($installarchlib, '.');
     $do_installprivlib = ! samepath($installprivlib, '.');
-    $do_installprivlib = 0 if $versiononly && !($installprivlib =~ m/\Q$ver/);
+    $do_installprivlib = 0 if $versiononly && !($installprivlib =~ 
m/\Q$vershort/);
 
     if ($do_installarchlib || $do_installprivlib) {
        find(\&installlib, '.');
@@ -570,7 +571,7 @@
 # ($installprivlib/pods for cygwin).
 
 my $pod = ($Is_Cygwin || $Is_Darwin || $Is_VMS || $Is_W32) ? 'pods' : 'pod';
-if ( !$versiononly || ($installprivlib =~ m/\Q$ver/)) {
+if ( !$versiononly || ($installprivlib =~ m/\Q$vershort/)) {
     mkpath("${installprivlib}/$pod", $verbose, 0777);
 
     # If Perl 5.003's perldiag.pod is there, rename it.

==== //depot/perl/lib/ExtUtils/t/Embed.t#23 (text) ====
Index: perl/lib/ExtUtils/t/Embed.t
--- perl/lib/ExtUtils/t/Embed.t#22~33332~       2008-02-18 07:05:27.000000000 
-0800
+++ perl/lib/ExtUtils/t/Embed.t 2008-03-11 12:47:44.000000000 -0700
@@ -106,7 +106,7 @@
     }
    }
    elsif ($^O eq 'cygwin') { # Cygwin needs the shared libperl copied
-     my $v_e_r_s = $Config{version};
+     my $v_e_r_s = substr($Config{version},0,-2);
      $v_e_r_s =~ tr/./_/;
      system("cp ../cygperl$v_e_r_s.dll ./");    # for test 1
    }
End of Patch.

Reply via email to