[svn:parrot] r41368 - trunk/tools/install
fperrad at svn.parrot.org
fperrad at svn.parrot.org
Sat Sep 19 19:37:26 UTC 2009
Author: fperrad
Date: Sat Sep 19 19:37:25 2009
New Revision: 41368
URL: https://trac.parrot.org/parrot/changeset/41368
Log:
[languages] chdir to the directory of each language
Modified:
trunk/tools/install/smoke_languages.pl
Modified: trunk/tools/install/smoke_languages.pl
==============================================================================
--- trunk/tools/install/smoke_languages.pl Sat Sep 19 19:08:24 2009 (r41367)
+++ trunk/tools/install/smoke_languages.pl Sat Sep 19 19:37:25 2009 (r41368)
@@ -6,6 +6,7 @@
use warnings;
use 5.008;
+use Cwd;
use Getopt::Long;
use File::Spec::Functions;
@@ -58,13 +59,14 @@
$bindir = 'bin' unless $bindir;
-chdir $DESTDIR if ($DESTDIR);
+chdir($DESTDIR) if ($DESTDIR);
+my $pwd = getcwd();
my $filename;
my $exe;
my $out;
my $FH;
-my $parrot = catfile($bindir, 'parrot');
+my $parrot = catfile($pwd, $bindir, 'parrot');
$out = `$parrot -V`;
$out =~ m/version (\S+) built/;
@@ -80,20 +82,22 @@
SKIP:
{
-skip("abc", 1) unless (-d "$langdir/abc");
+skip("abc", 1) unless (-d "$pwd/$langdir/abc");
+chdir("$pwd/$langdir/abc");
$filename = 'test.bc';
open $FH, '>', $filename
or die "Can't open $filename ($!).\n";
print $FH "1 + 2\n";
close $FH;
-$out = `$parrot $langdir/abc/abc.pbc $filename`;
+$out = `$parrot abc.pbc $filename`;
ok($out eq "3\n", "check abc");
unlink($filename);
}
SKIP:
{
-skip("Befunge", 1) unless (-d "$langdir/befunge");
+skip("Befunge", 1) unless (-d "$pwd/$langdir/befunge");
+chdir("$pwd/$langdir/befunge");
$filename = 'test.bef';
open $FH, '>', $filename
or die "Can't open $filename ($!).\n";
@@ -110,117 +114,127 @@
> :8- ^
CODE
close $FH;
-$out = `$parrot $langdir/befunge/befunge.pbc $filename`;
+$out = `$parrot befunge.pbc $filename`;
ok($out eq "If you can see a 4 here ->4 <- then everything is ok!\n", "check befunge");
unlink($filename);
}
SKIP:
{
-skip("bf", 3) unless (-d "$langdir/bf");
-$out = `$parrot $langdir/bf/bf.pbc`;
+skip("bf", 3) unless (-d "$pwd/$langdir/bf");
+chdir("$pwd/$langdir/bf");
+$out = `$parrot bf.pbc`;
ok($out =~ /^usage/, "check bf");
-$out = `$parrot $langdir/bf/bfc.pbc`;
+$out = `$parrot bfc.pbc`;
ok($out =~ /^usage/, "check bfc");
-$out = `$parrot $langdir/bf/bfco.pbc`;
+$out = `$parrot bfco.pbc`;
ok($out =~ /^usage/, "check bfco");
}
SKIP:
{
-skip("Cardinal", 1) unless (-d "$langdir/cardinal");
-$out = `$parrot $langdir/cardinal/cardinal.pbc -e "print 'hello world';"`;
+skip("Cardinal", 1) unless (-d "$pwd/$langdir/cardinal");
+chdir("$pwd/$langdir/cardinal");
+$out = `$parrot cardinal.pbc -e "print 'hello world';"`;
ok($out eq "hello world", "check cardinal");
}
SKIP:
{
-skip("ChitChat", 1) unless (-d "$langdir/chitchat");
+skip("ChitChat", 1) unless (-d "$pwd/$langdir/chitchat");
+chdir("$pwd/$langdir/chitchat");
$filename = 'test.smalltalk';
open $FH, '>', $filename
or die "Can't open $filename ($!).\n";
print $FH "Transcript show: 'Hello, world!'.";
close $FH;
-$out = `$parrot $langdir/chitchat/chitchat.pbc $filename`;
+$out = `$parrot chitchat.pbc $filename`;
ok($out eq "Hello, world!\n", "check chitchat");
unlink($filename);
}
SKIP:
{
-skip(".NET", 1) unless (-d "$langdir/dotnet");
-$out = `$parrot $langdir/dotnet/net2pbc.pbc`;
+skip(".NET", 1) unless (-d "$pwd/$langdir/dotnet");
+chdir("$pwd/$langdir/dotnet");
+$out = `$parrot dotnet/net2pbc.pbc`;
ok($out =~ /^Usage/, "check dotnet");
}
SKIP:
{
-skip("EcmaScript", 1) unless (-d "$langdir/ecmascript");
+skip("EcmaScript", 1) unless (-d "$pwd/$langdir/ecmascript");
+chdir("$pwd/$langdir/ecmascript");
$filename = 'test.js';
open $FH, '>', $filename
or die "Can't open $filename ($!).\n";
print $FH "print(\"Hello World from JS\");";
close $FH;
-$out = `$parrot $langdir/ecmascript/js.pbc $filename`;
+$out = `$parrot js.pbc $filename`;
ok($out eq "Hello World from JS\n", "check ecmascript");
unlink($filename);
}
SKIP:
{
-skip("fun", 1) unless (-d "$langdir/fun");
+skip("fun", 1) unless (-d "$pwd/$langdir/fun");
+chdir("$pwd/$langdir/fun");
$filename = 'test.fun';
open $FH, '>', $filename
or die "Can't open $filename ($!).\n";
print $FH "\"Hello World!\".";
close $FH;
-$out = `$parrot $langdir/fun/fun.pbc $filename`;
+$out = `$parrot fun.pbc $filename`;
ok($out eq "Hello World!\n", "check fun");
unlink($filename);
}
SKIP:
{
-skip("gil", 1) unless (-d "$langdir/gil");
+skip("gil", 1) unless (-d "$pwd/$langdir/gil");
+chdir("$pwd/$langdir/gil");
$filename = 'test.gil';
open $FH, '>', $filename
or die "Can't open $filename ($!).\n";
print $FH q{say('Hello, world!');};
close $FH;
-$out = `$parrot $langdir/gil/gil.pbc $filename`;
+$out = `$parrot gil.pbc $filename`;
ok($out eq "Hello, world!\n", "check gil");
unlink($filename);
}
SKIP:
{
-skip("HQ9Plus", 1) unless (-d "$langdir/hq9plus");
+skip("HQ9Plus", 1) unless (-d "$pwd/$langdir/hq9plus");
+chdir("$pwd/$langdir/hq9plus");
$filename = 'test.HQ9Plus';
open $FH, '>', $filename
or die "Can't open $filename ($!).\n";
print $FH "H";
close $FH;
-$out = `$parrot $langdir/hq9plus/hq9plus.pbc $filename`;
+$out = `$parrot hq9plus.pbc $filename`;
ok($out eq "Hello, world!\n", "check HQ9Plus");
unlink($filename);
}
SKIP:
{
-skip("Lisp", 1) unless (-d "$langdir/lisp");
+skip("Lisp", 1) unless (-d "$pwd/$langdir/lisp");
+chdir("$pwd/$langdir/lisp");
$filename = 'test.l';
open $FH, '>', $filename
or die "Can't open $filename ($!).\n";
print $FH "( print \"Hello, World!\" )\n";
close $FH;
-$out = `$parrot $langdir/lisp/lisp.pbc $filename`;
+$out = `$parrot lisp.pbc $filename`;
ok($out eq "Hello, World!\n", "check lisp");
unlink($filename);
}
SKIP:
{
-skip("LOLCODE", 1) unless (-d "$langdir/lolcode");
+skip("LOLCODE", 1) unless (-d "$pwd/$langdir/lolcode");
+chdir("$pwd/$langdir/lolcode");
$filename = 'test.lolcode';
open $FH, '>', $filename
or die "Can't open $filename ($!).\n";
@@ -230,93 +244,101 @@
KTHXBYE
CODE
close $FH;
-$out = `$parrot $langdir/lolcode/lolcode.pbc $filename`;
+$out = `$parrot lolcode.pbc $filename`;
ok($out eq "HAI WORLD!\n", "check lolcode");
unlink($filename);
}
SKIP:
{
-skip("Lua", 1) unless (-d "$langdir/lua");
-$out = `$parrot $langdir/lua/lua.pbc -e "print(nil)"`;
+skip("Lua", 1) unless (-d "$pwd/$langdir/lua");
+chdir("$pwd/$langdir/lua");
+$out = `$parrot lua.pbc -e "print(nil)"`;
ok($out eq "nil\n", "check lua");
}
SKIP:
{
-skip("m4", 1) unless (-d "$langdir/m4");
-$out = `$parrot $langdir/m4/m4.pbc`;
+skip("m4", 1) unless (-d "$pwd/$langdir/m4");
+chdir("$pwd/$langdir/m4");
+$out = `$parrot m4.pbc`;
ok($out =~ /^Usage/, "check m4");
}
SKIP:
{
-skip("Markdown", 1) unless (-d "$langdir/markdown");
+skip("Markdown", 1) unless (-d "$pwd/$langdir/markdown");
+chdir("$pwd/$langdir/markdown");
$filename = 'test.text';
open $FH, '>', $filename
or die "Can't open $filename ($!).\n";
print $FH "Hello, World!\n\n";
close $FH;
-$out = `$parrot $langdir/markdown/markdown.pbc $filename`;
+$out = `$parrot markdown.pbc $filename`;
ok($out eq "<p>Hello, World!</p>\n", "check markdown");
unlink($filename);
}
SKIP:
{
-skip("matrixy", 1) unless (-d "$langdir/matrixy");
+skip("matrixy", 1) unless (-d "$pwd/$langdir/matrixy");
+chdir("$pwd/$langdir/matrixy");
$filename = 'test.oct';
open $FH, '>', $filename
or die "Can't open $filename ($!).\n";
print $FH "printf(\"Hello, world!\n\");";
close $FH;
-$out = `$parrot $langdir/matrixy/matrixy.pbc $filename`;
+$out = `$parrot matrixy.pbc $filename`;
ok($out eq "Hello, world!\n", "check matrixy");
unlink($filename);
}
SKIP:
{
-skip("Paraplegic", 1) unless (-d "$langdir/paraplegic");
+skip("Paraplegic", 1) unless (-d "$pwd/$langdir/paraplegic");
+chdir("$pwd/$langdir/paraplegic");
$filename = 'test.apl';
open $FH, '>', $filename
or die "Can't open $filename ($!).\n";
print $FH "\"Hello world!\"";
close $FH;
-$out = `$parrot $langdir/paraplegic/APL.pbc $filename`;
+$out = `$parrot APL.pbc $filename`;
ok($out eq "Hello world!\n", "check Paraplegic");
unlink($filename);
}
SKIP:
{
-skip("Pheme", 1) unless (-d "$langdir/pheme");
+skip("Pheme", 1) unless (-d "$pwd/$langdir/pheme");
+chdir("$pwd/$langdir/pheme");
$filename = 'test.l';
open $FH, '>', $filename
or die "Can't open $filename ($!).\n";
print $FH "( write \"Hello, World!\\n\" )\n";
close $FH;
-$out = `$parrot $langdir/pheme/pheme.pbc $filename`;
+$out = `$parrot pheme.pbc $filename`;
ok($out eq "Hello, World!\n", "check pheme");
unlink($filename);
}
SKIP:
{
-skip("Pipp", 1) unless (-d "$langdir/pipp");
+skip("Pipp", 1) unless (-d "$pwd/$langdir/pipp");
+chdir("$pwd/$langdir/pipp");
$filename = 'test.php';
open $FH, '>', $filename
or die "Can't open $filename ($!).\n";
print $FH "<?php echo \"Hello, World!\\n\"; ?>";
close $FH;
-$out = `$parrot $langdir/pipp/pipp.pbc $filename`;
+$out = `$parrot pipp.pbc $filename`;
ok($out eq "Hello, World!\n", "check pipp");
unlink($filename);
}
SKIP:
{
-skip("porcupine", 1) unless (-d "$langdir/porcupine");
+skip("porcupine", 1) unless (-d "$pwd/$langdir/porcupine");
+chdir("$pwd/$langdir/porcupine");
$filename = 'test.pas';
open $FH, '>', $filename
or die "Can't open $filename ($!).\n";
@@ -327,54 +349,58 @@
end.
CODE
close $FH;
-$out = `$parrot $langdir/porcupine/porcupine.pbc $filename`;
+$out = `$parrot porcupine.pbc $filename`;
ok($out eq "Hello, world!\n", "check porcupine");
unlink($filename);
}
SKIP:
{
-skip("primitivearc", 1) unless (-d "$langdir/primitivearc");
+skip("primitivearc", 1) unless (-d "$pwd/$langdir/primitivearc");
+chdir("$pwd/$langdir/primitivearc");
$filename = 'test.arc';
open $FH, '>', $filename
or die "Can't open $filename ($!).\n";
print $FH q{"Hello, world!\n"};
close $FH;
-$out = `$parrot $langdir/primitivearc/primitivearc.pbc $filename`;
+$out = `$parrot primitivearc.pbc $filename`;
ok($out eq "Hello, world!\n\n", "check primitivearc");
unlink($filename);
}
SKIP:
{
-skip("Punie", 1) unless (-d "$langdir/punie");
+skip("Punie", 1) unless (-d "$pwd/$langdir/punie");
+chdir("$pwd/$langdir/punie");
$filename = 'test.p1';
open $FH, '>', $filename
or die "Can't open $filename ($!).\n";
print $FH "print \"Hello, World!\";\n";
close $FH;
-$out = `$parrot $langdir/punie/punie.pbc $filename`;
+$out = `$parrot punie.pbc $filename`;
ok($out eq "Hello, World!", "check punie");
unlink($filename);
}
SKIP:
{
-skip("Pynie", 1) unless (-d "$langdir/pynie");
+skip("Pynie", 1) unless (-d "$pwd/$langdir/pynie");
+chdir("$pwd/$langdir/pynie");
$filename = 'test.py';
open $FH, '>', $filename
or die "Can't open $filename ($!).\n";
print $FH "print('Hello, World!')\n";
close $FH;
-$out = `$parrot $langdir/pynie/pynie.pbc $filename`;
+$out = `$parrot pynie.pbc $filename`;
ok($out eq "Hello, World!\n", "check pynie");
unlink($filename);
}
SKIP:
{
-skip("Rakudo", 2) unless (-d "$langdir/rakudo");
-$out = `$parrot $langdir/rakudo/perl6.pbc -e "say 'hello world'"`;
+skip("Rakudo", 2) unless (-d "$pwd/$langdir/rakudo");
+chdir("$pwd/$langdir/rakudo");
+$out = `$parrot perl6.pbc -e "say 'hello world'"`;
ok($out eq "hello world\n", "check rakudo");
skip("perl6 executable", 1) if ($bindir eq '.');
@@ -385,7 +411,8 @@
SKIP:
{
-skip("Shakespeare", 1) unless (-d "$langdir/shakespeare");
+skip("Shakespeare", 1) unless (-d "$pwd/$langdir/shakespeare");
+chdir("$pwd/$langdir/shakespeare");
$filename = 'test.spl';
open $FH, '>', $filename
or die "Can't open $filename ($!).\n";
@@ -482,40 +509,43 @@
CODE
close $FH;
-$out = `$parrot $langdir/shakespeare/shakespeare.pbc $filename`;
+$out = `$parrot shakespeare.pbc $filename`;
ok($out eq "Hello World!\n", "check shakespeare");
unlink($filename);
}
SKIP:
{
-skip("steme", 1) unless (-d "$langdir/steme");
+skip("steme", 1) unless (-d "$pwd/$langdir/steme");
+chdir("$pwd/$langdir/steme");
$filename = 'test.scm';
open $FH, '>', $filename
or die "Can't open $filename ($!).\n";
print $FH "( say \"Hello, World!\" )\n";
close $FH;
-$out = `$parrot $langdir/steme/steme.pbc $filename`;
+$out = `$parrot steme.pbc $filename`;
ok($out eq "Hello, World!\n", "check steme");
unlink($filename);
}
SKIP:
{
-skip("Squaak", 1) unless (-d "$langdir/squaak");
+skip("Squaak", 1) unless (-d "$pwd/$langdir/squaak");
+chdir("$pwd/$langdir/squaak");
$filename = 'test.squaak';
open $FH, '>', $filename
or die "Can't open $filename ($!).\n";
print $FH "print(\"Hello, World!\")\n";
close $FH;
-$out = `$parrot $langdir/squaak/squaak.pbc $filename`;
+$out = `$parrot squaak.pbc $filename`;
ok($out eq "Hello, World!\n", "check squaak");
unlink($filename);
}
SKIP:
{
-skip("unlambda", 1) unless (-d "$langdir/unlambda");
+skip("unlambda", 1) unless (-d "$pwd/$langdir/unlambda");
+chdir("$pwd/$langdir/unlambda");
$filename = 'test.unl';
open $FH, '>', $filename
or die "Can't open $filename ($!).\n";
@@ -524,15 +554,16 @@
`r```````````.H.e.l.l.o. .w.o.r.l.di
CODE
close $FH;
-$out = `$parrot $langdir/unlambda/unl.pbc $filename`;
+$out = `$parrot unl.pbc $filename`;
ok($out eq "Hello world\n", "check unlambda");
unlink($filename);
}
SKIP:
{
-skip("WMLScript", 1) unless (-d "$langdir/wmlscript");
+skip("WMLScript", 1) unless (-d "$pwd/$langdir/wmlscript");
skip("WMLScript, not wmlsc", 1) unless (`wmlsc -h` =~ /wmlsc/);
+chdir("$pwd/$langdir/wmlscript");
$filename = 'test.wmls';
open $FH, '>', $filename
@@ -545,7 +576,7 @@
CODE
close $FH;
`wmlsc $filename`;
-$out = `$parrot $langdir/wmlscript/wmlsi.pbc ${filename}c main`;
+$out = `$parrot wmlsi.pbc ${filename}c main`;
ok($out eq "Hello World!\n", "check wmlscript");
unlink($filename);
unlink($filename . 'c');
More information about the parrot-commits
mailing list