This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Embed.t fails on Win32
[perl5.git] / Porting / makerel
index ea99c67..ae43642 100644 (file)
@@ -22,17 +22,12 @@ my @patchlevel_h = <PATCHLEVEL>;
 close PATCHLEVEL;
 my $patchlevel_h = join "", grep { /^#\s*define/ } @patchlevel_h;
 print $patchlevel_h;
+$revision = $1 if $patchlevel_h =~ /PERL_REVISION\s+(\d+)/;
 $patchlevel = $1 if $patchlevel_h =~ /PERL_VERSION\s+(\d+)/;
 $subversion = $1 if $patchlevel_h =~ /PERL_SUBVERSION\s+(\d+)/;
 die "Unable to parse patchlevel.h" unless $subversion >= 0;
-$vers = sprintf("5.%03d", $patchlevel);
-$vms_vers = sprintf("5_%03d", $patchlevel);
-if ($subversion) {
-    $vers.= sprintf( "_%02d", $subversion);
-    $vms_vers.= sprintf( "%02d", $subversion);
-} else {
-    $vms_vers.= "  ";
-}
+$vers = sprintf("%d.%d.%d", $revision, $patchlevel, $subversion);
+$vms_vers = sprintf("%d_%d_%d", $revision, $patchlevel, $subversion);
 
 # fetch list of local patches
 my (@local_patches, @lpatch_tags, $lpatch_tags);
@@ -41,7 +36,7 @@ my (@local_patches, @lpatch_tags, $lpatch_tags);
 @lpatch_tags   = map  {  /^\s*,"(\w+)/ } @local_patches;
 $lpatch_tags   = join "-", @lpatch_tags;
 
-$perl = "perl$vers";
+$perl = "perl-$vers";
 $reldir = "$perl";
 $reldir .= "-$lpatch_tags" if $lpatch_tags;
 
@@ -83,9 +78,10 @@ print "\n";
 chdir "$relroot/$reldir" or die $!;
 
 print "Setting file permissions...\n";
-system("find . -type f -print     | xargs chmod -w");
-system("find . -type d -print     | xargs chmod g-s");
-system("find t -name '*.t' -print | xargs chmod +x");
+system("find . -type f -print     | xargs chmod 0444");
+system("find . -type d -print     | xargs chmod 0755");
+system("find t ext lib -name '*.t'     -print | xargs chmod +x");
+system("find t ext lib -name 'test.pl' -print | xargs chmod +x");
 my @exe = qw(
     Configure
     configpm
@@ -96,46 +92,74 @@ my @exe = qw(
     opcode.pl
     perly.fixer
     t/TEST
-    t/*/*.t
     *.SH
     vms/ext/Stdio/test.pl
     vms/ext/filespec.t
     x2p/*.SH
-    Porting/patchls
+    Porting/findrfuncs
+    Porting/genlog
     Porting/makerel
+    Porting/p4d2p
+    Porting/p4desc
+    Porting/p4genpatch
+    Porting/patchls
+    Porting/*.pl
+    mpeix/nm
+    mpeix/relink
 );
 system("chmod +x @exe");
 
 my @writables = qw(
-    embed.h
-    embedvar.h
-    ext/B/B/Asmdata.pm
-    ext/ByteLoader/byterun.c
-    ext/ByteLoader/byterun.h
-    global.sym
+    NetWare/config_H.wc
+    NetWare/Makefile
     keywords.h
-    lib/warning.pm
-    objXSUB.h
     opcode.h
-    pp.sym
+    opnames.h
     pp_proto.h
+    pp.sym
+    proto.h
+    embed.h
+    embedvar.h
+    global.sym
+    pod/perlintern.pod
+    pod/perlapi.pod
+    perlapi.h
+    perlapi.c
+    ext/ByteLoader/byterun.h
+    ext/ByteLoader/byterun.c
+    ext/B/B/Asmdata.pm
+    ext/Devel/PPPort/PPPort.xs
+    ext/Devel/PPPort/module2.c
+    ext/Devel/PPPort/module3.c
     regnodes.h
-    warning.h
+    warnings.h
+    lib/warnings.pm
+    vms/perly_c.vms
+    vms/perly_h.vms
+    win32/Makefile
+    win32/makefile.mk
     win32/config_H.bc
-    win32/config_h.gc
+    win32/config_H.gc
     win32/config_H.vc
+    wince/config_H.ce
+    wince/Makefile.ce
 );
 system("chmod +w @writables");
 
 print "Adding CRs to DOSish files...\n";
 my @crlf = qw(
     djgpp/configure.bat
+    README.ce
     README.dos
     README.win32
     win32/Makefile
     win32/makefile.mk
+    wince/Makefile.ce
+    wince/README.compile
+    wince/README.perlce
+    wince/registry.bat
 );
-system("perl -pi -e 's/\$/\\r/' @crlf");
+system("perl -pi -e 's/\015*\012/\015\012/' @crlf");
 print "\n";
 
 chdir ".." or die $!;