On Mon Sep 10 10:53:43 2007, [EMAIL PROTECTED] wrote:

> 
> Is the chance that $prefix ends in slash-newline sufficiently rare
> that the $
> anchor is better than \z?
> 

You mean, for the first time in 7-1/2 years of doing Perl, I'm going to
have to learn what the \z modifier does?

c:  you sure know how to hurt a guy!

Please evaluate the patch attached, which renames one test file, adds
another test file, and revises config/init/install.pm.

Can we get some tests on Win32 as well?  And how about that Mac OS 9?

kid51
Index: MANIFEST
===================================================================
--- MANIFEST    (revision 21176)
+++ MANIFEST    (working copy)
@@ -1,7 +1,7 @@
 # ex: set ro:
 # $Id$
 #
-# generated by tools/dev/mk_manifest_and_skip.pl Mon Sep 10 22:33:35 2007 UT
+# generated by tools/dev/mk_manifest_and_skip.pl Tue Sep 11 01:21:18 2007 UT
 #
 # See tools/dev/install_files.pl for documentation on the
 # format of this file.
@@ -2923,7 +2923,8 @@
 t/configure/101-init_manifest.02.t                          []
 t/configure/102-init_defaults.01.t                          []
 t/configure/102-init_defaults.02.t                          []
-t/configure/103-init_install.t                              []
+t/configure/103-init_install.01.t                           []
+t/configure/103-init_install.02.t                           []
 t/configure/104-init_miniparrot.t                           []
 t/configure/105-init_hints.01.t                             []
 t/configure/105-init_hints.02.t                             []
Index: t/configure/103-init_install.t
===================================================================
--- t/configure/103-init_install.t      (revision 21176)
+++ t/configure/103-init_install.t      (working copy)
@@ -1,107 +0,0 @@
-#! perl
-# Copyright (C) 2007, The Perl Foundation.
-# $Id$
-# 103-init_install.t
-
-use strict;
-use warnings;
-use Test::More tests => 19;
-use Carp;
-use Cwd;
-use Data::Dumper;
-use File::Temp qw(tempdir);
-use lib qw( lib t/configure/testlib );
-use Parrot::Configure;
-use Parrot::Configure::Options qw( process_options );
-use_ok('config::init::install');
-use Parrot::Configure::Test qw( test_step_thru_runstep);
-
-my $cwd = cwd();
-{
-    my $tdir = tempdir();
-    my $tdir1 = tempdir();
-    my $args = process_options( {
-        argv            => [
-                            qq{--prefix=$tdir},
-                            qq{--exec-prefix=$tdir},
-                            qq{--bindir=$tdir1},
-                            qq{--sbindir=$tdir1},
-                            qq{--libexecdir=$tdir1},
-                            qq{--datadir=$tdir1},
-                            qq{--sysconfdir=$tdir1},
-                            qq{--sharedstatedir=$tdir1},
-                            qq{--localstatedir=$tdir1},
-                            qq{--libdir=$tdir1},
-                            qq{--includedir=$tdir1},
-                            qq{--oldincludedir=$tdir1},
-                            qq{--infodir=$tdir1},
-                            qq{--mandir=$tdir1},
-                            ],
-        mode            => q{configure},
-    } );
-
-    my $conf = Parrot::Configure->new;
-    test_step_thru_runstep($conf, q{init::install}, $args);
-
-    is($conf->data->get('prefix'), $tdir,
-        "--prefix option confirmed");
-    is($conf->data->get('exec_prefix'), $tdir,
-        "--exec-prefix option confirmed");
-    is($conf->data->get('bindir'), $tdir1,
-        "--bindir option confirmed");
-    is($conf->data->get('sbindir'), $tdir1,
-        "--sbindir option confirmed");
-    is($conf->data->get('libexecdir'), $tdir1,
-        "--libexecdir option confirmed");
-    is($conf->data->get('datadir'), $tdir1,
-        "--datadir option confirmed");
-    is($conf->data->get('sharedstatedir'), $tdir1,
-        "--sharedstatedir option confirmed");
-    is($conf->data->get('localstatedir'), $tdir1,
-        "--localstatedir option confirmed");
-    is($conf->data->get('libdir'), $tdir1,
-        "--libdir option confirmed");
-    is($conf->data->get('includedir'), $tdir1,
-        "--includedir option confirmed");
-    is($conf->data->get('oldincludedir'), $tdir1,
-        "--oldincludedir option confirmed");
-    is($conf->data->get('infodir'), $tdir1,
-        "--infodir option confirmed");
-    is($conf->data->get('mandir'), $tdir1,
-        "--mandir option confirmed");
-}
-
-pass("Completed all tests in $0");
-
-################### DOCUMENTATION ###################
-
-=head1 NAME
-
-103-init_install.t - test config::init::install
-
-=head1 SYNOPSIS
-
-    % prove t/configure/103-init_install.t
-
-=head1 DESCRIPTION
-
-The files in this directory test functionality used by F<Configure.pl>.
-
-The tests in this file test subroutines exported by config::init::install.
-
-=head1 AUTHOR
-
-James E Keenan
-
-=head1 SEE ALSO
-
-config::init::install, F<Configure.pl>.
-
-=cut
-
-# Local Variables:
-#   mode: cperl
-#   cperl-indent-level: 4
-#   fill-column: 100
-# End:
-# vim: expandtab shiftwidth=4:
Index: t/configure/103-init_install.02.t
===================================================================
--- t/configure/103-init_install.02.t   (revision 0)
+++ t/configure/103-init_install.02.t   (revision 0)
@@ -0,0 +1,109 @@
+#! perl
+# Copyright (C) 2007, The Perl Foundation.
+# $Id$
+# 103-init_install.02.t
+
+use strict;
+use warnings;
+use Test::More tests => 19;
+use Carp;
+use Cwd;
+use Data::Dumper;
+use File::Temp qw(tempdir);
+use lib qw( lib t/configure/testlib );
+use Parrot::Configure;
+use Parrot::Configure::Options qw( process_options );
+use_ok('config::init::install');
+use Parrot::Configure::Test qw( test_step_thru_runstep);
+
+my $cwd = cwd();
+{
+    my $tdir = tempdir();
+    my $tdir_orig = $tdir;
+    $tdir .= q{/};
+    my $tdir1 = tempdir();
+    my $args = process_options( {
+        argv            => [
+                            qq{--prefix=$tdir},
+                            qq{--exec-prefix=$tdir},
+                            qq{--bindir=$tdir1},
+                            qq{--sbindir=$tdir1},
+                            qq{--libexecdir=$tdir1},
+                            qq{--datadir=$tdir1},
+                            qq{--sysconfdir=$tdir1},
+                            qq{--sharedstatedir=$tdir1},
+                            qq{--localstatedir=$tdir1},
+                            qq{--libdir=$tdir1},
+                            qq{--includedir=$tdir1},
+                            qq{--oldincludedir=$tdir1},
+                            qq{--infodir=$tdir1},
+                            qq{--mandir=$tdir1},
+                            ],
+        mode            => q{configure},
+    } );
+
+    my $conf = Parrot::Configure->new;
+    test_step_thru_runstep($conf, q{init::install}, $args);
+
+    is($conf->data->get('prefix'), $tdir_orig,
+        "--prefix option confirmed; trailing slash stripped");
+    is($conf->data->get('exec_prefix'), $tdir_orig,
+        "--exec-prefix option confirmed; trailing slash stripped");
+    is($conf->data->get('bindir'), $tdir1,
+        "--bindir option confirmed");
+    is($conf->data->get('sbindir'), $tdir1,
+        "--sbindir option confirmed");
+    is($conf->data->get('libexecdir'), $tdir1,
+        "--libexecdir option confirmed");
+    is($conf->data->get('datadir'), $tdir1,
+        "--datadir option confirmed");
+    is($conf->data->get('sharedstatedir'), $tdir1,
+        "--sharedstatedir option confirmed");
+    is($conf->data->get('localstatedir'), $tdir1,
+        "--localstatedir option confirmed");
+    is($conf->data->get('libdir'), $tdir1,
+        "--libdir option confirmed");
+    is($conf->data->get('includedir'), $tdir1,
+        "--includedir option confirmed");
+    is($conf->data->get('oldincludedir'), $tdir1,
+        "--oldincludedir option confirmed");
+    is($conf->data->get('infodir'), $tdir1,
+        "--infodir option confirmed");
+    is($conf->data->get('mandir'), $tdir1,
+        "--mandir option confirmed");
+}
+
+pass("Completed all tests in $0");
+
+################### DOCUMENTATION ###################
+
+=head1 NAME
+
+103-init_install.02.t - test config::init::install
+
+=head1 SYNOPSIS
+
+    % prove t/configure/103-init_install.02.t
+
+=head1 DESCRIPTION
+
+The files in this directory test functionality used by F<Configure.pl>.
+
+The tests in this file test subroutines exported by config::init::install.
+
+=head1 AUTHOR
+
+James E Keenan
+
+=head1 SEE ALSO
+
+config::init::install, F<Configure.pl>.
+
+=cut
+
+# Local Variables:
+#   mode: cperl
+#   cperl-indent-level: 4
+#   fill-column: 100
+# End:
+# vim: expandtab shiftwidth=4:

Property changes on: t/configure/103-init_install.02.t
___________________________________________________________________
Name: svn:mime-type
   + text/plain
Name: svn:keywords
   + Author Date Id Revision
Name: svn:eol-style
   + native

Index: config/init/install.pm
===================================================================
--- config/init/install.pm      (revision 21176)
+++ config/init/install.pm      (working copy)
@@ -66,7 +66,9 @@
     my ( $self, $conf ) = @_;
 
     my $prefix  = $conf->options->get('prefix')      || "/usr/local";
+    $prefix =~ s{/\z}{};
     my $ep = $conf->options->get('exec-prefix');
+    $ep =~ s{/\z}{} if defined $ep;
     my $eprefix = $ep ? $ep : $prefix;
 
     #  --bindir=DIR           user executables [EPREFIX/bin]

Reply via email to