aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMoritz Lenz <moritz@faui2k3.org>2015-02-20 09:30:30 +0100
committerMoritz Lenz <moritz@faui2k3.org>2015-02-20 12:19:06 +0100
commit3be6a386b5745cf1aa7554b1ff550be2b1032aa6 (patch)
tree19a40e654b3acd5d85a2a1d4177f726e9c3def74
parentad603195cc64986f6b3bb462e40374a4becfdcc4 (diff)
Prepare parrot suspension
-rw-r--r--Configure.pl65
-rw-r--r--README56
-rw-r--r--docs/cheatsheet.txt2
-rw-r--r--tools/build/Makefile.in30
-rw-r--r--tools/lib/NQP/Configure.pm166
-rw-r--r--tools/star/Makefile16
-rw-r--r--tools/star/release-guide.pod11
7 files changed, 35 insertions, 311 deletions
diff --git a/Configure.pl b/Configure.pl
index a6f9f54..dd93730 100644
--- a/Configure.pl
+++ b/Configure.pl
@@ -34,8 +34,6 @@ MAIN: {
GetOptions(\%options, 'help!', 'prefix=s',
'backends=s', 'no-clean!',
'gen-nqp:s', 'gen-moar:s',
- 'gen-parrot:s', 'parrot-option=s@',
- 'parrot-make-option=s@',
'make-install!', 'makefile-timing!',
'force!',
) or do {
@@ -68,7 +66,7 @@ MAIN: {
$options{prefix} = File::Spec->rel2abs($options{prefix});
my $prefix = $options{'prefix'};
- my %known_backends = (parrot => 1, jvm => 1, moar => 1);
+ my %known_backends = (jvm => 1, moar => 1);
my %letter_to_backend;
my $default_backend;
for (keys %known_backends) {
@@ -76,10 +74,13 @@ MAIN: {
}
my %backends;
if (defined $options{backends}) {
- $options{backends} = 'moar,jvm,parrot'
+ $options{backends} = 'moar,jvm'
if lc($options{backends}) eq 'all';
for my $b (split /,\s*/, $options{backends}) {
$b = lc $b;
+ if ($b eq 'parrot') {
+ die "Parrot support has been suspended from Rakudo Star. Please use version 2015.02 if you need Parrot support, or otherwise the MoarVM backend.\n";
+ }
unless ($known_backends{$b}) {
die "Unknown backend '$b'; Supported backends are: " .
join(", ", sort keys %known_backends) .
@@ -106,18 +107,12 @@ MAIN: {
$backends{moar} = 1;
$default_backend ||= 'moar';
}
- if (exists $options{'gen-parrot'}) {
- $backends{parrot} = 1;
- $default_backend ||= 'parrot';
- }
unless (%backends) {
die "No suitable nqp executables found! Please specify some --backends, or a --prefix that contains nqp-{p,j,m} executables\n\n"
. "Example to build for all backends (which will take a while):\n"
- . "\tperl Configure.pl --backends=moar,parrot,jvm --gen-moar --gen-parrot\n\n"
+ . "\tperl Configure.pl --backends=moar,jvm --gen-moar\n\n"
. "Example to build for MoarVM only:\n"
. "\tperl Configure.pl --gen-moar\n\n"
- . "Example to build for Parrot only:\n"
- . "\tperl Configure.pl --gen-parrot\n\n"
. "Example to build for JVM only:\n"
. "\tperl Configure.pl --backends=jvm --gen-nqp\n\n";
}
@@ -171,37 +166,6 @@ MAIN: {
my @errors;
my %errors;
- if ($backends{parrot}) {
- my %nqp_config;
- if ($impls{parrot}{config}) {
- %nqp_config = %{ $impls{parrot}{config} };
- }
- else {
- push @errors, "Cannot obtain configuration from NQP on parrot";
- }
-
- my $nqp_have = $nqp_config{'nqp::version'} || '';
- if ($nqp_have && cmp_rev($nqp_have, $nqp_want) < 0) {
- push @errors, "NQP revision $nqp_want required (currently $nqp_have).";
- }
-
- if (!@errors) {
- push @errors, verify_install([ @NQP::Configure::required_parrot_files,
- @NQP::Configure::required_nqp_files ],
- %config, %nqp_config);
- push @errors,
- "(Perhaps you need to 'make install', 'make install-dev',",
- "or install the 'devel' package for NQP or Parrot?)"
- if @errors;
- }
-
- $errors{parrot}{'no gen-nqp'} = @errors && !defined $options{'gen-nqp'};
-
- unless (@errors) {
- %config = (%nqp_config, %config);
- print "Using $impls{parrot}{bin} (version $nqp_config{'nqp::version'}).\n";
- }
- }
if ($backends{jvm}) {
$config{j_nqp} = $impls{jvm}{bin};
$config{j_nqp} =~ s{/}{\\}g if $^O eq 'MSWin32';
@@ -244,16 +208,12 @@ MAIN: {
}
}
- if ($errors{parrot}{'no gen-nqp'} || $errors{jvm}{'no gen-nqp'} || $errors{moar}{'no gen-nqp'}) {
+ if ($errors{jvm}{'no gen-nqp'} || $errors{moar}{'no gen-nqp'}) {
my @options_to_pass;
- push @options_to_pass, "--gen-parrot" if $backends{parrot};
push @options_to_pass, "--gen-moar" if $backends{moar};
push @options_to_pass, "--gen-nqp" unless @options_to_pass;
my $options_to_pass = join ' ', @options_to_pass;
- my $want_executables = $backends{parrot} && $backends{moar}
- ? ', Parrot and MoarVM'
- : $backends{parrot}
- ? ' and Parrot'
+ my $want_executables =
: $backends{moar}
? ' and MoarVM'
: '';
@@ -303,19 +263,12 @@ Configure.pl - $lang Configure
General Options:
--help Show this text
--prefix=dir Install files in dir; also look for executables there
- --backends=parrot,jvm,moar
+ --backends=jvm,moar
Which backend(s) to use
--gen-moar[=branch]
Download and build a copy of MoarVM
--gen-nqp[=branch]
Download and build a copy of NQP
- --gen-parrot[=branch]
- Download and build a copy of Parrot
- --parrot-option='--option'
- Options to pass to Parrot's Configure.pl
- --parrot-make-option='--option'
- Options to pass to Parrot's make, for example:
- --parrot-make-option='--jobs=4'
--makefile-timing Enable timing of individual makefile commands
Configure.pl also reads options from 'config.default' in the current directory.
diff --git a/README b/README
index 7b8b13c..37138bb 100644
--- a/README
+++ b/README
@@ -8,14 +8,14 @@ License Information
-------------------
Rakudo Star is distributed under the terms of the Artistic License 2.0.
This distribution contains software collected from other sources; see the
-individual source subdirectories (in parrot/, rakudo/, MoarVM/ and modules/)
+individual source subdirectories (in rakudo/, MoarVM/ and modules/)
for copyright and licensing information of those components.
Overview
--------
-The Rakudo Perl 6 compiler can target MoarVM, the JVM, and the Parrot
-Virtual Machine. Rakudo Star fully supports MoarVM and Parrot; not all
-modules work on the JVM at present. You can choose to build and install
+The Rakudo Perl 6 compiler can target MoarVM and the JVM. Rakudo Star
+fully supports MoarVM; not all modules work on the JVM at present.
+You can choose to build and install
Rakudo for one or more of these virtual machines at configure time.
@@ -40,45 +40,21 @@ above is suggested. JDK8, if available, is better still. The build
can complete within a gigabyte of memory.
-Build Prerequisites for Rakudo on Parrot
-----------------------------------------
-To build Rakudo Star on Parrot you need at least a 'make' utility, a C
-compiler, and Perl 5.10.0 or newer. You probably also want a machine with
-a fair amount of memory available: 1GB is known to be too small for
-building Rakudo on Parrot, while 2GB is generally known to be sufficient.
-
-In order to fully support Unicode, you'll also want to have the ICU
-library installed (http://site.icu-project.org/). Rakudo can run
-without ICU, but some Unicode-related features will not work properly.
-
-On Debian GNU/Linux or Ubuntu Linux, the necessary components
-for building Rakudo can be installed via the command
-
- aptitude install build-essential libicu-dev openjdk-7-jdk
-
-Readline support also requires the "libreadline-dev" library.
-
-On RedHat/Fedora/CentOS, the components can be installed with
-
- yum groupinstall development-tools
- yum install libicu-devel readline-devel
-
Configuring Rakudo Star
-----------------------
The easiest way to build Rakudo Star for a particular backend is:
$ perl Configure.pl --backend=moar --gen-moar # MoarVM
- $ perl Configure.pl --backend=parrot --gen-parrot # Parrot
$ perl Configure.pl --backend=jvm --gen-nqp # JVM
You can also build for all backends:
- $ perl Configure.pl --backend=parrot,jvm,moar --gen-parrot --gen-moar
+ $ perl Configure.pl --backend=jvm,moar --gen-moar
-Note that --gen-parrot automatically builds a Parrot for you, and
---gen-moar does likewise. Both imply --gen-nqp, which builds NQP, a
-subset of Perl 6 that is used to implemented Rakudo.
+Note that --gen-moar automatically builds a MOarVM for you, and implies
+--gen-nqp, which builds NQP, a subset of Perl 6 that is used to implement
+Rakudo.
Configure this way, one or more Perl 6 executable and selected Perl
6 modules will be installed into the install/ subdirectory, which
@@ -94,12 +70,6 @@ After configuration, build Rakudo Star with:
$ make
$ make install
-On some 64-bit systems Parrot installation reports the lack of,
-or an incomplete ICU installation. It may be required to add
-a symlink to help Parrot find the ICU library:
-
- # ln -s /usr/include/x86_64-linux-gnu/unicode /usr/include/unicode
-
Once Rakudo Star is installed, you can run Perl 6 programs by doing:
$ ./perl6 hello.pl
@@ -143,7 +113,7 @@ resources for Perl 6 development, and is generally the starting
point for information about Perl 6.
There are several mailing lists, IRC channels, and wikis available
-with help for Perl 6 and Rakudo on Parrot. Figuring out the right
+with help for Perl 6 and Rakudo. Figuring out the right
one to use is often the biggest battle. Here are some rough
guidelines:
@@ -154,12 +124,10 @@ for the people who want to use Perl 6 to write programs, as
opposed to those who are implementing or developing the Perl 6
language itself.
-Questions about the Rakudo compiler for Parrot and the Parrot compiler
-tools can go to perl6-compiler@perl.org. Discussion about Parrot itself
-generally takes place on parrot-dev@lists.parrot.org.
+Questions about the Rakudo compiler can go to perl6-compiler@perl.org.
-The Rakudo and Parrot development teams tend to hang out on IRC a fair
-bit, on irc.freenode.net/#perl6 and irc.parrot.org/#parrot, respectively.
+The Rakudo and MoarVM development teams tend to hang out on IRC a fair
+bit, on irc.freenode.net/#perl6 and irc.freenode.net/#moarvm, respectively.
Rakudo's official web site is http://rakudo.org/ , where you can
find useful information for developers and users alike.
diff --git a/docs/cheatsheet.txt b/docs/cheatsheet.txt
index 8b8d104..baf51a8 100644
--- a/docs/cheatsheet.txt
+++ b/docs/cheatsheet.txt
@@ -46,7 +46,7 @@ or xor Stringy: eq !eq(ne) ~ lt gt leg le ge
ObjectID: === !===
METAOPERATORS LINKS IRC
[op] reduce listop to A op B op C... perl6.org #perl6 irc.freenode.net
-op= A = A op B rakudo.org #parrot irc.perl.org
+op= A = A op B rakudo.org #moarvm irc.freenode.net
!op !(A op B)
»op« hyper/vectorize REGEX METACHARS REGEX MODIFIERS
Zop zip with op ^ $ string begin/end :i ignore case
diff --git a/tools/build/Makefile.in b/tools/build/Makefile.in
index 2dd3013..2919d5e 100644
--- a/tools/build/Makefile.in
+++ b/tools/build/Makefile.in
@@ -1,6 +1,5 @@
# Copyright (C) 2006-2014, The Perl Foundation.
-PARROT_DIR = parrot
MOAR_DIR = moarvm
NQP_DIR = nqp
RAKUDO_DIR = rakudo
@@ -9,11 +8,6 @@ STAR_VERSION = 2015.02
# install location
PREFIX_DIR = @prefix@
-# values from parrot_config
-PARROT_BIN_DIR = @bindir@
-PARROT_VERSION = @versiondir@
-PARROT_LIB_DIR = @libdir@$(PARROT_VERSION)
-
# JVM install location
JVM_BIN_DIR = $(PREFIX_DIR)/bin
@@ -28,10 +22,6 @@ RM_F = $(PERL) -MExtUtils::Command -e rm_f
MKPATH = $(PERL) -MExtUtils::Command -e mkpath
CHMOD = $(PERL) -MExtUtils::Command -e chmod
-PERL6_P_EXE = perl6-p$(EXE)
-PERL6_P_LANG_DIR = $(PARROT_LIB_DIR)/languages/perl6
-PERL6_P_INSTALL = $(PARROT_BIN_DIR)/$(PERL6_P_EXE)
-
PERL6_J_EXE = perl6-j$(BAT)
PERL6_J_LANG_DIR = $(PREFIX_DIR)/languages/perl6
PERL6_J_INSTALL = $(JVM_BIN_DIR)/$(PERL6_J_EXE)
@@ -62,17 +52,9 @@ rakudo-install: rakudo
cd $(RAKUDO_DIR) && $(MAKE) install
$(CP) $(DESTDIR)@default_backend_exe@ $(PERL6_EXE)
$(CHMOD) 755 $(PERL6_EXE)
- @win32_libparrot_copy@
modules-install: @backend_modules_install@
-modules-install-p:
- @echo "== Installing modules for Parrot"
- $(PERL) tools/build/module-install.pl $(DESTDIR)$(PERL6_P_INSTALL) $(DESTDIR)$(PERL6_P_LANG_DIR)/lib pir pir $(MODULES)
- @echo "== Installing binaries for Parrot"
- $(PERL) tools/build/bin-install.pl $(PERL6_P_INSTALL) $(DESTDIR)$(PARROT_BIN_DIR) p modules/ufo/bin/ufo modules/panda/bin/panda modules/doc/bin/p6doc
- $(PERL) tools/build/bin-install.pl $(PERL6_P_INSTALL) $(DESTDIR)$(PARROT_BIN_DIR) p modules/ufo/bin/ufo modules/panda/bin/panda modules/doc/bin/p6doc-index
-
modules-install-j:
@echo "== Installing modules for JVM"
$(PERL) tools/build/module-install.pl $(DESTDIR)$(PERL6_J_INSTALL) $(DESTDIR)$(PERL6_J_LANG_DIR)/lib jar jar $(MODULES)
@@ -90,11 +72,6 @@ modules-install-m:
modules-test: @backend_modules_test@
verbose-modules-test: @backend_modules_test@
-modules-test-p:
- $(PERL) tools/build/modules-test.pl $(CURDIR) $(DESTDIR)$(PERL6_P_INSTALL) $(MODULES)
-verbose-modules-test-p:
- $(PERL) tools/build/modules-test.pl --verbose $(CURDIR) $(DESTDIR)$(PERL6_P_INSTALL) $(MODULES)
-
modules-test-j:
$(PERL) tools/build/modules-test.pl $(CURDIR) $(DESTDIR)$(PERL6_J_INSTALL) $(MODULES)
verbose-modules-test-j:
@@ -121,7 +98,6 @@ clean:
$(RM_F) $(CLEANUPS)
cd $(RAKUDO_DIR) && $(MAKE) clean
cd $(NQP_DIR) && $(MAKE) clean
- cd $(PARROT_DIR) && $(MAKE) clean
distclean: realclean
@@ -129,15 +105,11 @@ realclean: clean
$(RM_F) Makefile
cd $(RAKUDO_DIR) && $(MAKE) realclean
cd $(NQP_DIR) && $(MAKE) realclean
- cd $(PARROT_DIR) && $(MAKE) realclean
configclean:
$(RM_F) $(CLEANUPS)
cd $(NQP_DIR) && $(MAKE) clean
-configclean-p:
- cd $(PARROT_DIR) && $(MAKE) clean
-
configclean-j:
configclean-m:
@@ -173,7 +145,7 @@ perlcritic:
perlcritic -1 --profile tools/util/perlcritic.conf $(CRITIC_FILES)
msi:
- -$(CP) c:/strawberry/c/bin/libgcc_s_sjlj-1.dll $(PARROT_BIN_DIR)
+ -$(CP) c:/strawberry/c/bin/libgcc_s_sjlj-1.dll
cmd /c heat dir $(PREFIX_DIR) -gg -sfrag -cg RakudoStar -dr INSTALLROOT -srd -out star-files.wxs
cmd /c candle star-files.wxs
cmd /c candle -dSTARVERSION=$(STAR_VERSION) tools/build/star-product.wxs
diff --git a/tools/lib/NQP/Configure.pm b/tools/lib/NQP/Configure.pm
index a860cd4..664f63f 100644
--- a/tools/lib/NQP/Configure.pm
+++ b/tools/lib/NQP/Configure.pm
@@ -7,34 +7,23 @@ use File::Copy qw(copy);
use base qw(Exporter);
our @EXPORT_OK = qw(sorry slurp system_or_die
cmp_rev
- read_parrot_config read_config
+ read_config
fill_template_file fill_template_text
git_checkout
verify_install gen_moar
- gen_nqp gen_parrot);
+ gen_nqp );
our $exe = $^O eq 'MSWin32' ? '.exe' : '';
our $bat = $^O eq 'MSWin32' ? '.bat' : '';
-our @required_parrot_files = qw(
- @bindir@/parrot@exe@
- @bindir@/pbc_to_exe@exe@
- @bindir@/@ops2c@@exe@
- @libdir@@versiondir@/tools/build/pmc2c.pl
- @srcdir@@versiondir@/pmc
- @includedir@@versiondir@/pmc
-);
-
our @required_nqp_files = qw(
@bindir@/nqp-p@exe@
);
our $nqp_git = 'http://github.com/perl6/nqp.git';
-our $par_git = 'http://github.com/parrot/parrot.git';
our $moar_git= 'https://github.com/MoarVM/MoarVM.git';
our $nqp_push = 'git@github.com:perl6/nqp.git';
-our $par_push = 'git@github.com:parrot/parrot.git';
our $moar_push= 'git@github.com:MoarVM/MoarVM.git';
sub sorry {
@@ -100,57 +89,6 @@ sub read_config {
}
-sub read_parrot_config {
- my @parrot_config_src = @_;
- my %config = ();
- open my $CONFIG_PIR, '>', 'parrot-config.pir'
- or die "Unable to write parrot-config.pir\n";
- print $CONFIG_PIR <<'END';
- .include 'iglobals.pasm'
- .sub "main" :main
- .local pmc interp, config_hash, config_iter
- interp = getinterp
- config_hash = interp[.IGLOBALS_CONFIG_HASH]
- config_iter = iter config_hash
- config_loop:
- unless config_iter goto config_done
- $P0 = shift config_iter
- print "parrot::"
- $S0 = $P0.'key'()
- print $S0
- print "="
- $S0 = $P0.'value'()
- print $S0
- print "\n"
- goto config_loop
- config_done:
- .return ()
- .end
-END
- close($CONFIG_PIR);
-
- for my $file (@parrot_config_src) {
- no warnings;
- if ($file =~ /.pir$/ && open my $PARROT_CONFIG, '<', $file) {
- while (<$PARROT_CONFIG>) {
- if (/P0\["(.*?)"\], "(.*?)"/) { $config{"parrot::$1"} = $2 }
- }
- close($PARROT_CONFIG) or die $!;
- }
- elsif (open my $PARROT, '-|', "\"$file\" parrot-config.pir") {
- while (<$PARROT>) {
- if (/^([\w:]+)=(.*)/) { $config{$1} = $2 }
- }
- close($PARROT);
- }
- last if %config;
- }
- unlink('parrot-config.pir');
- $config{'parrot::ops2c'} ||= 'ops2c';
- return %config;
-}
-
-
sub fill_template_file {
my $infile = shift;
my $outfile = shift;
@@ -190,8 +128,8 @@ sub fill_template_text {
$str;
};
- $text =~ s/@@([:\w]+)@@/$escape->($config{$1} || $config{"parrot::$1"} || '')/ge;
- $text =~ s/@([:\w]+)@/$config{$1} || $config{"parrot::$1"} || ''/ge;
+ $text =~ s/@@([:\w]+)@@/$escape->($config{$1} || '')/ge;
+ $text =~ s/@([:\w]+)@/$config{$1} || ''/ge;
if ($text =~ /nqp::makefile/) {
if ($^O eq 'MSWin32') {
$text =~ s{/}{\\}g;
@@ -278,7 +216,6 @@ sub gen_nqp {
my $backends = $options{'backends'};
my $gen_nqp = $options{'gen-nqp'};
my $gen_moar = $options{'gen-moar'};
- my $gen_parrot = $options{'gen-parrot'};
my $prefix = $options{'prefix'} || cwd().'/install';
my $startdir = cwd();
@@ -287,27 +224,6 @@ sub gen_nqp {
my (%impls, %need);
- if ($backends =~ /parrot/) {
- my %c = read_parrot_config("$prefix/bin/parrot");
-
- if (%c) {
- my $bin = fill_template_text('@bindir@/nqp-p@ext@', %c);
- $impls{parrot}{bin} = $bin;
- %c = read_config($bin);
- $impls{parrot}{config} = \%c;
- my $nqp_have = $c{'nqp::version'};
- my $nqp_ok = $nqp_have && cmp_rev($nqp_have, $nqp_want) >= 0;
- if ($nqp_ok) {
- $impls{parrot}{ok} = 1;
- }
- else {
- $need{parrot} = 1;
- }
- }
- else {
- $need{parrot} = 1;
- }
- }
for my $b (qw/jvm moar/) {
if ($backends =~ /$b/) {
my $postfix = substr $b, 0, 1;
@@ -328,25 +244,17 @@ sub gen_nqp {
return %impls unless %need;
- if (defined $gen_nqp || defined $gen_parrot || defined $gen_moar) {
+ if (defined $gen_nqp || defined $gen_moar) {
git_checkout($nqp_git, 'nqp', $nqp_want, $nqp_push);
}
- if ($need{parrot} && defined $gen_parrot) {
- my ($par_want) = split(' ', slurp($PARROT_REVISION));
- my $parrot = gen_parrot($par_want, %options, prefix => $prefix);
- my %c = read_parrot_config($parrot);
- $impls{parrot}{bin} = fill_template_text('@bindir@/nqp-p@ext@', %c);
- $impls{parrot}{config} = \%c;
- }
-
if ($need{moar} && defined $gen_moar) {
my ($moar_want) = split(' ', slurp($MOAR_REVISION));
my $moar = gen_moar($moar_want, %options, prefix => $prefix);
$impls{moar}{bin} = "$prefix/bin/nqp-m$bat";
}
- return %impls unless defined($gen_nqp) || defined($gen_parrot) || defined($gen_moar);
+ return %impls unless defined($gen_nqp) || defined($gen_moar);
my $backends_to_build = join ',', sort keys %need;
my @cmd = ($^X, 'Configure.pl', "--prefix=$prefix",
@@ -367,68 +275,6 @@ sub gen_nqp {
return %impls;
}
-
-sub gen_parrot {
- my $par_want = shift;
- my %options = @_;
-
- my $prefix = $options{'prefix'} || cwd()."/install";
- my $gen_parrot = $options{'gen-parrot'};
- my @opts = @{ $options{'parrot-option'} || [] };
- push @opts, "--optimize";
- my $startdir = cwd();
-
- my $par_exe = "$options{'prefix'}/bin/parrot$exe";
- my %config = read_parrot_config($par_exe);
-
- my $par_have = $config{'parrot::git_describe'} || '';
- my $par_ok = $par_have && cmp_rev($par_have, $par_want) >= 0;
- if ($gen_parrot) {
- my $par_repo = git_checkout($par_git, 'parrot', $gen_parrot, $par_push);
- $par_ok = $par_have eq $par_repo;
- }
- elsif (!$par_ok) {
- git_checkout($par_git, 'parrot', $par_want, $par_push);
- }
-
- if ($par_ok) {
- print "$par_exe is Parrot $par_have.\n";
- return $par_exe;
- }
- chdir("$startdir/parrot") or die $!;
- if (-f 'Makefile') {
- %config = read_parrot_config('config_lib.pir');
- my $make = $config{'parrot::make'};
- if ($make) {
- print "\nPerforming '$make realclean' ...\n";
- system_or_die($make, 'realclean');
- }
- }
-
- $prefix =~ s{\\}{/}g;
-
- print "\nConfiguring Parrot ...\n";
- my @cmd = ($^X, "Configure.pl", @opts, "--prefix=$prefix");
- print "@cmd\n";
- system_or_die(@cmd);
-
- print "\nBuilding Parrot ...\n";
- %config = read_parrot_config('config_lib.pir');
- my $make = $config{'parrot::make'} or
- die "Unable to determine value for 'make' from parrot config\n";
- system_or_die($make, 'install-dev');
- chdir($startdir);
-
- # That is a hack to get the import-lib in place. Parrot seems unpatchable because
- # its static build shares the same libname as the import-lib.
- if (-e "$startdir/parrot/libparrot.lib" && !-e "$startdir/install/bin/libparrot.lib") {
- copy("$startdir/parrot/libparrot.lib", "$startdir/install/bin/libparrot.lib");
- }
-
- print "Parrot installed.\n";
- return fill_template_text('@bindir@/parrot@exe@', %config);
-}
-
sub gen_moar {
my $moar_want = shift;
my %options = @_;
diff --git a/tools/star/Makefile b/tools/star/Makefile
index 209251a..29eb982 100644
--- a/tools/star/Makefile
+++ b/tools/star/Makefile
@@ -1,6 +1,5 @@
RAKUDO_VER = 2015.02
NQP_VER = 2015.02
-PARROT_VER = 6.10.0
MOAR_VER = 2015.02
STAR_REL = rakudo-star-$(VERSION)
@@ -14,9 +13,6 @@ RAKUDO_SRC = $(SRC_DIR)/$(RAKUDO_TGZ)
NQP_TGZ = nqp-$(NQP_VER).tar.gz
NQP_URL = http://rakudo.org/downloads/nqp/$(NQP_TGZ)
NQP_SRC = $(SRC_DIR)/$(NQP_TGZ)
-PARROT_TGZ = parrot-$(PARROT_VER).tar.gz
-PARROT_URL = http://ftp.parrot.org/releases/all/$(PARROT_VER)/$(PARROT_TGZ)
-PARROT_SRC = $(SRC_DIR)/$(PARROT_TGZ)
MOAR_TGZ = MoarVM-$(MOAR_VER).tar.gz
MOAR_URL = http://www.moarvm.org/releases/$(MOAR_TGZ)
MOAR_SRC = $(SRC_DIR)/$(MOAR_TGZ)
@@ -25,7 +21,7 @@ PERL = perl
PREFIX = $(PERL) $(CURDIR)/tools/star/prefix.pl
WGET = wget --no-check-certificate
-all: rakudo nqp parrot moar manifest
+all: rakudo nqp moar manifest
always:
@@ -36,20 +32,13 @@ $(RAKUDO_SRC):
mkdir -p $(SRC_DIR)
$(WGET) $(RAKUDO_URL) -O $(RAKUDO_SRC)
-nqp: parrot moar $(NQP_SRC)
+nqp: moar $(NQP_SRC)
tar --xform 's!nqp-[^/]*!nqp!' -xvzf $(NQP_SRC)
$(NQP_SRC):
mkdir -p $(SRC_DIR)
$(WGET) $(NQP_URL) -O $(NQP_SRC)
-parrot: $(PARROT_SRC)
- tar --xform 's!parrot-[^/]*!parrot!' -xvzf $(PARROT_SRC)
-
-$(PARROT_SRC):
- mkdir -p $(SRC_DIR)
- $(WGET) $(PARROT_URL) -O $(PARROT_SRC)
-
moar: $(MOAR_SRC)
tar --xform 's!MoarVM-[^/]*!MoarVM!' -xvzf $(MOAR_SRC)
@@ -68,7 +57,6 @@ manifest: modules/DBIish/lib
$(PREFIX) rakudo/ rakudo/MANIFEST >>MANIFEST
$(PREFIX) nqp/ nqp/MANIFEST >>MANIFEST
$(PREFIX) MoarVM/ MoarVM/MANIFEST >>MANIFEST
- cut -d' ' -f1 parrot/MANIFEST | $(PREFIX) parrot/ >>MANIFEST
git submodule foreach --quiet 'git ls-files | $(PREFIX) $$path/' >>MANIFEST
grep -v -f tools/star/MANIFEST.exclude MANIFEST >MANIFEST.1
$(PERL) -n -e 'chomp; -f && print "$$_\n"' MANIFEST.1 >MANIFEST
diff --git a/tools/star/release-guide.pod b/tools/star/release-guide.pod
index 20f8153..da3026e 100644
--- a/tools/star/release-guide.pod
+++ b/tools/star/release-guide.pod
@@ -8,7 +8,7 @@ varies from one release to the next.
Also, while the Rakudo compiler issues monthly releases; Star
releases are free to choose a longer release cycle. Star releases
are also free to choose older releases of the compiler, NQP, and/or
-Parrot. The goal is to balance end-user stability needs with
+MoarVM. The goal is to balance end-user stability needs with
progress being made on the compiler, modules, and other runtime
components. Currently Star is on a monthly release cycle; we
expect to slow down to quarterly releases again sometime in the
@@ -57,13 +57,12 @@ reports a clean repository.
Change to the star repository directory, and edit the first four
lines of F<tools/star/Makefile> to indicate the desired releases of
-Rakudo, NQP, MoarVM, and Parrot to use.
+Rakudo, NQP and MoarVM to use.
Usually that means the last Rakudo release, the NQP version that is in the
released Rakudo's F<tools/build/NQP_REVISION> file, the MoarVM version that
is in the F<tools/build/MOAR_REVISION> file that is included in the NQP
-release, and the Parrot version in the F<tools/build/PARROT_REVISION> file
-that is include in the NQP release.
+release.
$ cd star
$ vi tools/star/Makefile
@@ -154,7 +153,7 @@ Unpack the tarball somewhere else, and do a test build/install:
$ cd work
$ tar xvfz ../rakudo-star-2012.08.tar.gz
$ cd rakudo-star-2012.08
- $ perl Configure.pl --gen-parrot
+ $ perl Configure.pl --gen-moar
$ make install
$ make rakudo-test
$ make rakudo-spectest
@@ -198,8 +197,6 @@ Publicize the release in the appropriate places. These include:
=item * perl6-compiler@perl.org
-=item * parrot-users@lists.parrot.org
-
=item * http://en.wikipedia.org/wiki/Rakudo_Perl_6
=item * http://en.wikipedia.org/wiki/Perl_6