2014-06-23 01:36:10 +00:00
|
|
|
require "formula"
|
Parrot formula
Parrot is a virtual machine designed to efficiently compile
and execute bytecode for dynamic languages. Parrot currently
hosts a variety of language implementations in various stages
of completion, including Tcl, Javascript, Ruby, Lua, Scheme,
PHP, Python, Perl 6, APL, and a .NET bytecode translator.
The parrot binary needs patching to find its library.
2009-10-03 13:06:46 +00:00
|
|
|
|
2011-03-10 05:11:03 +00:00
|
|
|
class Parrot < Formula
|
2014-06-23 01:36:10 +00:00
|
|
|
homepage "http://www.parrot.org/"
|
2014-07-24 05:09:24 +00:00
|
|
|
url "ftp://ftp.parrot.org/pub/parrot/releases/supported/6.6.0/parrot-6.6.0.tar.bz2"
|
|
|
|
sha256 "08e9e02db952828f6ab71755be47f99ebc90894378f04d8e4d7f3bc623f79ff5"
|
2012-09-01 20:26:50 +00:00
|
|
|
|
2014-06-23 01:36:10 +00:00
|
|
|
head "https://github.com/parrot/parrot.git"
|
Parrot formula
Parrot is a virtual machine designed to efficiently compile
and execute bytecode for dynamic languages. Parrot currently
hosts a variety of language implementations in various stages
of completion, including Tcl, Javascript, Ruby, Lua, Scheme,
PHP, Python, Perl 6, APL, and a .NET bytecode translator.
The parrot binary needs patching to find its library.
2009-10-03 13:06:46 +00:00
|
|
|
|
2014-06-23 01:36:10 +00:00
|
|
|
conflicts_with "rakudo-star"
|
2013-06-11 20:04:13 +00:00
|
|
|
|
2014-06-23 01:36:10 +00:00
|
|
|
depends_on "gmp" => :optional
|
|
|
|
depends_on "icu4c" => :optional
|
|
|
|
depends_on "pcre" => :optional
|
|
|
|
depends_on "readline" => :optional
|
|
|
|
depends_on "libffi" => :optional
|
Parrot formula
Parrot is a virtual machine designed to efficiently compile
and execute bytecode for dynamic languages. Parrot currently
hosts a variety of language implementations in various stages
of completion, including Tcl, Javascript, Ruby, Lua, Scheme,
PHP, Python, Perl 6, APL, and a .NET bytecode translator.
The parrot binary needs patching to find its library.
2009-10-03 13:06:46 +00:00
|
|
|
|
|
|
|
def install
|
2010-11-06 15:39:15 +00:00
|
|
|
system "perl", "Configure.pl", "--prefix=#{prefix}",
|
2013-07-17 17:10:33 +00:00
|
|
|
"--mandir=#{man}",
|
2010-11-06 15:39:15 +00:00
|
|
|
"--debugging=0",
|
|
|
|
"--cc=#{ENV.cc}"
|
2010-06-15 15:17:56 +00:00
|
|
|
|
2009-12-02 15:06:01 +00:00
|
|
|
system "make"
|
Parrot formula
Parrot is a virtual machine designed to efficiently compile
and execute bytecode for dynamic languages. Parrot currently
hosts a variety of language implementations in various stages
of completion, including Tcl, Javascript, Ruby, Lua, Scheme,
PHP, Python, Perl 6, APL, and a .NET bytecode translator.
The parrot binary needs patching to find its library.
2009-10-03 13:06:46 +00:00
|
|
|
system "make install"
|
2012-07-30 22:30:02 +00:00
|
|
|
# Don't install this file in HOMEBREW_PREFIX/lib
|
2014-06-23 01:36:10 +00:00
|
|
|
rm_rf lib/"VERSION"
|
Parrot formula
Parrot is a virtual machine designed to efficiently compile
and execute bytecode for dynamic languages. Parrot currently
hosts a variety of language implementations in various stages
of completion, including Tcl, Javascript, Ruby, Lua, Scheme,
PHP, Python, Perl 6, APL, and a .NET bytecode translator.
The parrot binary needs patching to find its library.
2009-10-03 13:06:46 +00:00
|
|
|
end
|
2014-04-25 17:48:20 +00:00
|
|
|
|
|
|
|
test do
|
|
|
|
path = testpath/"test.pir"
|
|
|
|
path.write <<-EOS.undent
|
|
|
|
.sub _main
|
|
|
|
.local int i
|
|
|
|
i = 0
|
|
|
|
loop:
|
|
|
|
print i
|
|
|
|
inc i
|
|
|
|
if i < 10 goto loop
|
|
|
|
.end
|
|
|
|
EOS
|
|
|
|
|
|
|
|
out = `#{bin}/parrot #{path}`
|
|
|
|
assert_equal "0123456789", out
|
|
|
|
assert_equal 0, $?.exitstatus
|
|
|
|
end
|
Parrot formula
Parrot is a virtual machine designed to efficiently compile
and execute bytecode for dynamic languages. Parrot currently
hosts a variety of language implementations in various stages
of completion, including Tcl, Javascript, Ruby, Lua, Scheme,
PHP, Python, Perl 6, APL, and a .NET bytecode translator.
The parrot binary needs patching to find its library.
2009-10-03 13:06:46 +00:00
|
|
|
end
|