Subject: | 'make ppd' specifies wrong ARCHITECTURE NAME in ppd file (5.10 only) |
Hi,
It's a win32 problem - whether we're running 'nmake ppd' or 'dmake
ppd', the ARCHITECTURE NAME that gets written into the generated ppd
file is incorrect on perl-5.10.
Here's a patch against version 6.50 of MM_Unix.pm (stolen from code in
http://cpansearch.perl.org/src/MURRAY/PPM-2.1.9/lib/PPM.pm ) that
rights the wrong:
################################
--- MM_Unix.pm_orig Fri May 15 15:46:42 2009
+++ MM_Unix.pm Fri May 15 15:51:33 2009
@@ -3002,12 +3002,11 @@
}
my $archname = $Config{archname};
- if ($] >= 5.008) {
- # archname did not change from 5.6 to 5.8, but those versions
may
- # not be not binary compatible so now we append the part of the
- # version that changes when binary compatibility may change
- $archname .= "-". substr($Config{version},0,3);
- }
+if ($] >= 5.008) {
+ my $vstring = sprintf "%vd", $^V;
+ $vstring =~ s/\.\d+$//;
+ $archname .= "-$vstring";
+}
$ppd_xml .= sprintf <<'PPD_OUT', $archname;
<OS NAME="$(OSNAME)" />
<ARCHITECTURE NAME="%s" />
################################
(The problem: The ARCHITECTURE NAME currently terminates the string
with "5.1", but it needs to terminate with "5.10".)
Cheers,
Rob