14 use Test::More 'no_plan';
17 use ExtUtils::MakeMaker;
19 ok( my $stdout = tie *STDOUT, 'TieOut' );
21 # Create a normalized MM object to test with
22 my $mm = bless {}, "MM";
24 $mm->{UNINSTALLED_PERL} = 0;
26 my $rel2abs = sub { $mm->rel2abs($mm->catfile(@_)) };
29 $rel2abs->(qw(. t testdata reallylongdirectoryname arch1 Config.pm)),
30 $rel2abs->(qw(. t testdata reallylongdirectoryname arch1 Config.pm)),
34 # Different architecures.
37 $rel2abs->(qw(. t testdata reallylongdirectoryname arch1 Config.pm)),
38 $rel2abs->(qw(. t testdata reallylongdirectoryname arch2 Config.pm)),
41 like $stdout->read, qr{\Q
42 Your perl and your Config.pm seem to have different ideas about the
43 architecture they are running on.
45 Config says: [$Config{archname}]
46 This may or may not cause problems. Please check your installation of perl
47 if you have problems building this extension.
53 # Different file path separators [rt.cpan.org 46416]
56 skip "Win32 test", 1 unless File::Spec->isa("File::Spec::Win32");
59 "/_64/perl1004/lib/Config.pm",
60 '\\_64\\perl1004\\lib\\Config.pm',
65 # PERL_SRC is set, no check is done
70 local $mm->{PERL_SRC} = 1;
72 $rel2abs->(qw(. t testdata reallylongdirectoryname arch1 Config.pm)),
73 $rel2abs->(qw(. t testdata reallylongdirectoryname arch2 Config.pm)),
80 # UNINSTALLED_PERL is set, no message is sent
82 local $mm->{UNINSTALLED_PERL} = 1;
84 $rel2abs->(qw(. t testdata reallylongdirectoryname arch1 Config.pm)),
85 $rel2abs->(qw(. t testdata reallylongdirectoryname arch2 Config.pm)),
88 like $stdout->read, qr{^Have .*\nWant .*$};