From da40b102fc480204573549cfdaa2ff2238e7cc45 Mon Sep 17 00:00:00 2001 From: jnthn Date: Sat, 15 Mar 2014 16:18:39 +0100 Subject: Initial Makefile updates to include MoarVM. Untested, may need tweaks, but should be about right. --- tools/star/Makefile | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/tools/star/Makefile b/tools/star/Makefile index 1d80881..76c5dd7 100644 --- a/tools/star/Makefile +++ b/tools/star/Makefile @@ -1,6 +1,7 @@ RAKUDO_VER = 2014.01 NQP_VER = 2014.01 PARROT_VER = 5.9.0 +MOAR_VER = 2014.01 STAR_REL = rakudo-star-$(VERSION) STAR_TGZ = $(STAR_REL).tar.gz @@ -16,12 +17,15 @@ 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) PERL = perl PREFIX = $(PERL) $(CURDIR)/tools/star/prefix.pl WGET = wget --no-check-certificate -all: rakudo nqp parrot manifest +all: rakudo nqp parrot moar manifest always: @@ -32,7 +36,7 @@ $(RAKUDO_SRC): mkdir -p $(SRC_DIR) $(WGET) $(RAKUDO_URL) -O $(RAKUDO_SRC) -nqp: parrot $(NQP_SRC) +nqp: parrot moar $(NQP_SRC) tar --xform 's!nqp-[^/]*!nqp!' -xvzf $(NQP_SRC) $(NQP_SRC): @@ -46,6 +50,13 @@ $(PARROT_SRC): mkdir -p $(SRC_DIR) $(WGET) $(PARROT_URL) -O $(PARROT_SRC) +moar: $(MOAR_SRC) + tar --xform 's!MoarVM-[^/]*!MoarVM!' -xvzf $(MOAR_SRC) + +$(MOAR_SRC): + mkdir -p $(SRC_DIR) + $(WGET) $(MOAR_URL) -O $(MOAR_SRC) + modules/zavolaj/lib: @echo "Updating submodules" git submodule init @@ -56,6 +67,7 @@ manifest: modules/zavolaj/lib git ls-files >>MANIFEST $(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 -- cgit v1.1 From 361d74053732f75b74528ef8e5470e19465c0bd4 Mon Sep 17 00:00:00 2001 From: jnthn Date: Sat, 15 Mar 2014 16:19:13 +0100 Subject: Some release guide updates. --- tools/star/release-guide.pod | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/tools/star/release-guide.pod b/tools/star/release-guide.pod index bc18b95..58f62ec 100644 --- a/tools/star/release-guide.pod +++ b/tools/star/release-guide.pod @@ -11,7 +11,8 @@ are also free to choose older releases of the compiler, NQP, and/or Parrot. 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 2013. +expect to slow down to quarterly releases again sometime in the +future. =head2 Steps to create a release @@ -50,12 +51,13 @@ reports a clean repository. Change to the star repository directory, and edit the first three lines of tools/star/Makefile to indicate the desired releases of -Rakudo, NQP, and Parrot to use. +Rakudo, NQP, MoarVM, and Parrot to use. Usually that means the last Rakudo release, the NQP version that is in the -released Rakudo's F file, and the parrot version -in the F file that is include in the NQP -release. +released Rakudo's F file, the MoarVM version that +is in the F file that is included in the NQP +release, and the Parrot version in the F file +that is include in the NQP release. $ cd star $ vi tools/star/Makefile @@ -227,7 +229,8 @@ You're done! Celebrate with the appropriate amount of fun. Release Release manager ======= =============== - 2014.02 (unknown yet) + 2014.03 (jnthn) + 2014.04 (unknown yet) =head2 List of Previous Star Releases -- cgit v1.1 From 31977c5ae3c5ec7eb352a547f9cdff78103fed58 Mon Sep 17 00:00:00 2001 From: Jonathan Date: Sat, 15 Mar 2014 17:18:57 +0100 Subject: Add --gen-moar option to Configure.pl. --- Configure.pl | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/Configure.pl b/Configure.pl index 829023c..4840abf 100644 --- a/Configure.pl +++ b/Configure.pl @@ -1,5 +1,5 @@ #! perl -# Copyright (C) 2009 The Perl Foundation +# Copyright (C) 2009-2014 The Perl Foundation use 5.008; use strict; @@ -33,7 +33,7 @@ MAIN: { my %options; GetOptions(\%options, 'help!', 'prefix=s', 'backends=s', 'no-clean!', - 'gen-nqp:s', + 'gen-nqp:s', 'gen-moar:s', 'gen-parrot:s', 'parrot-option=s@', 'parrot-make-option=s@', 'make-install!', 'makefile-timing!', @@ -64,7 +64,7 @@ MAIN: { $options{prefix} ||= 'install'; $options{prefix} = File::Spec->rel2abs($options{prefix}); my $prefix = $options{'prefix'}; - my %known_backends = (parrot => 1, jvm => 1); + my %known_backends = (parrot => 1, jvm => 1, moar => 1); my %letter_to_backend; my $default_backend; for (keys %known_backends) { @@ -223,14 +223,17 @@ Configure.pl - $lang Configure General Options: --help Show this text --prefix=dir Install files in dir; also look for executables there - --backends=parrot,jvm Which backend(s) to use + --backends=parrot,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] + --gen-parrot[=branch] Download and build a copy of Parrot - --parrot-option='--option' + --parrot-option='--option' Options to pass to Parrot's Configure.pl - --parrot-make-option='--option' + --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 -- cgit v1.1 From 07094e4f0936d89c744e8b56ac0c37c15f392219 Mon Sep 17 00:00:00 2001 From: jnthn Date: Sat, 15 Mar 2014 17:26:13 +0100 Subject: Update an outdated URL. --- README.star | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.star b/README.star index 66248bb..b03f21e 100644 --- a/README.star +++ b/README.star @@ -5,8 +5,8 @@ This git repository isn't the distribution itself; the repository contains the tools and scripts used to create a distribution. If you're looking to simply download and run the latest release -of Rakudo Star, please download a .tar.gz file from -http://github.com/rakudo/star/downloads . +of Rakudo Star, please download a .tar.gz or .msi file from +http://rakudo.org/downloads/star/. If you're still reading this, we assume you're a Rakudo Star release manager, or someone that is looking to create new -- cgit v1.1 From 79a6cbdd7e7e375538bbf40b8de68c9bdb154590 Mon Sep 17 00:00:00 2001 From: jnthn Date: Sat, 15 Mar 2014 17:27:38 +0100 Subject: Update .gitignore. --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 8bc840c..da75ed3 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,7 @@ MANIFEST rakudo nqp +MoarVM parrot src config.status -- cgit v1.1 From 7e4162201d370b1cd1ebb7ff8012306572530577 Mon Sep 17 00:00:00 2001 From: jnthn Date: Sat, 15 Mar 2014 17:50:22 +0100 Subject: The Rakudo debugger binary is built by Rakudo now. Don't need to handle it specially in Star any more. --- tools/build/Makefile.in | 27 +++------------------------ 1 file changed, 3 insertions(+), 24 deletions(-) diff --git a/tools/build/Makefile.in b/tools/build/Makefile.in index 0bbc23d..540e9dd 100644 --- a/tools/build/Makefile.in +++ b/tools/build/Makefile.in @@ -1,10 +1,10 @@ -# Copyright (C) 2006-2012, The Perl Foundation. +# Copyright (C) 2006-2014, The Perl Foundation. # $Id$ PARROT_DIR = parrot NQP_DIR = nqp RAKUDO_DIR = rakudo -STAR_VERSION = 2014.01 +STAR_VERSION = 2014.03 # values from parrot_config PREFIX_DIR = @prefix@ @@ -30,12 +30,6 @@ PERL6_INSTALL = $(PARROT_BIN_DIR)/$(PERL6_EXE) MODULES = modules/MODULES.txt -# rakudo-debugger -RD_DIR = modules/rakudo-debugger -RD_PIR = $(RD_DIR)/perl6-debug.pir -RD_PBC = $(RD_DIR)/perl6-debug.pbc -RD_EXE = $(RD_DIR)/perl6-debug$(EXE) - all: rakudo rakudo: $(RAKUDO_DIR)/$(PERL6_EXE) @@ -61,22 +55,7 @@ modules-install: rakudo-install modules-test: $(PERL) tools/build/modules-test.pl $(CURDIR) $(DESTDIR)$(PERL6_INSTALL) modules/MODULES.txt -perl6-debug: $(RD_EXE) - -$(RD_EXE): modules-install - $(P_NQP_EXE) --vmlibs=perl6_ops --target=pir \ - --dynext=$(DESTDIR)$(PARROT_LIB_DIR)/dynext/ \ - --module-path=$(DESTDIR)$(PARROT_LIB_DIR)/languages/nqp/lib \ - --output=$(RD_PIR) $(RD_DIR)/bin/perl6-debug.nqp - $(PARROT_EXE) --dynext $(DESTDIR)$(PARROT_LIB_DIR)/dynext/ -o $(RD_PBC) $(RD_PIR) - $(PBC_TO_EXE) $(RD_PBC) - $(CHMOD) 755 $(RD_EXE) - -perl6-debug-install: perl6-debug - $(CP) $(RD_EXE) $(DESTDIR)$(PARROT_BIN_DIR) - $(CHMOD) 755 $(DESTDIR)$(PARROT_BIN_DIR)/perl6-debug$(EXE) - -install: rakudo-install modules-install perl6-debug-install +install: rakudo-install modules-install test: @echo "" -- cgit v1.1 From e17b584ab997bba90142fe57ecf434ec6f59183f Mon Sep 17 00:00:00 2001 From: jnthn Date: Sat, 15 Mar 2014 18:34:54 +0100 Subject: Some Configure.pm updates for Moar. --- tools/lib/NQP/Configure.pm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/tools/lib/NQP/Configure.pm b/tools/lib/NQP/Configure.pm index 641d2c6..40f64d8 100644 --- a/tools/lib/NQP/Configure.pm +++ b/tools/lib/NQP/Configure.pm @@ -274,6 +274,7 @@ 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(); @@ -321,7 +322,7 @@ sub gen_nqp { return %impls unless %need; - if (defined $gen_nqp || defined $gen_parrot) { + if (defined $gen_nqp || defined $gen_parrot || defined $gen_moar) { git_checkout($nqp_git, 'nqp', $nqp_want, $nqp_push); } @@ -333,7 +334,7 @@ sub gen_nqp { $impls{parrot}{config} = \%c; } - return %impls unless defined($gen_nqp) || defined($gen_parrot); + return %impls unless defined($gen_nqp) || defined($gen_parrot) || defined $gen_moar); my $backends_to_build = join ',', sort keys %need; my @cmd = ($^X, 'Configure.pl', "--prefix=$prefix", -- cgit v1.1 From ee1d52e8c93a2b1a039a8bc19e2c53fee3c0852e Mon Sep 17 00:00:00 2001 From: jnthn Date: Sat, 15 Mar 2014 18:38:07 +0100 Subject: Fix syntax error. --- tools/lib/NQP/Configure.pm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/lib/NQP/Configure.pm b/tools/lib/NQP/Configure.pm index 40f64d8..7e3f15b 100644 --- a/tools/lib/NQP/Configure.pm +++ b/tools/lib/NQP/Configure.pm @@ -334,7 +334,7 @@ sub gen_nqp { $impls{parrot}{config} = \%c; } - return %impls unless defined($gen_nqp) || defined($gen_parrot) || defined $gen_moar); + return %impls unless defined($gen_nqp) || defined($gen_parrot) || defined($gen_moar); my $backends_to_build = join ',', sort keys %need; my @cmd = ($^X, 'Configure.pl', "--prefix=$prefix", -- cgit v1.1 From db73a21ffa2c426e2891297bb6ef53212180569a Mon Sep 17 00:00:00 2001 From: jnthn Date: Sat, 15 Mar 2014 18:47:53 +0100 Subject: Try to get --gen-moar working. --- Configure.pl | 14 +++++++++----- tools/lib/NQP/Configure.pm | 5 +++++ 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/Configure.pl b/Configure.pl index 4840abf..fe665c8 100644 --- a/Configure.pl +++ b/Configure.pl @@ -32,7 +32,7 @@ MAIN: { my %options; GetOptions(\%options, 'help!', 'prefix=s', - 'backends=s', 'no-clean!', + 'backends=s', 'no-clean!', 'gen-nqp:s', 'gen-moar:s', 'gen-parrot:s', 'parrot-option=s@', 'parrot-make-option=s@', @@ -88,8 +88,7 @@ MAIN: { } else { for my $l (sort keys %letter_to_backend) { - # TODO: needs .exe/.bat magic on windows? - if (-x "$prefix/bin/nqp-$l") { + if (-x "$prefix/bin/nqp-$l" || -x "$prefix/bin/nqp-$l.bat" || -x "$prefix/bin/nqp-$l.exe") { my $b = $letter_to_backend{$l}; print "Found $prefix/bin/nqp-$l (backend $b)\n"; $backends{$b} = 1; @@ -97,12 +96,17 @@ MAIN: { } } unless (%backends) { - $backends{parrot} = 1; + if (defined $options{'gen-moar'}) { + $backends{moar} = 1; + } + else { + $backends{parrot} = 1; + } } } unless ($backends{parrot}) { - warn "JVM-only builds are currently not supported, and might go wrong.\n"; + warn "JVM/Moar-only builds are currently not supported, and might go wrong.\n"; } # Save options in config.status diff --git a/tools/lib/NQP/Configure.pm b/tools/lib/NQP/Configure.pm index 7e3f15b..0786cd5 100644 --- a/tools/lib/NQP/Configure.pm +++ b/tools/lib/NQP/Configure.pm @@ -339,6 +339,11 @@ sub gen_nqp { my $backends_to_build = join ',', sort keys %need; my @cmd = ($^X, 'Configure.pl', "--prefix=$prefix", "--backends=$backends", "--make-install"); + + if (defined $gen_moar) { + push @cmd, $gen_moar ? "--gen-moar=$gen_moar" : '--gen-moar'; + } + print "Building NQP ...\n"; chdir("$startdir/nqp"); print "@cmd\n"; -- cgit v1.1 From 1525fbee85276e75c288f6de497974fb06796950 Mon Sep 17 00:00:00 2001 From: jnthn Date: Sat, 15 Mar 2014 18:55:25 +0100 Subject: Another try at Moar, to not fetch from Git. --- tools/lib/NQP/Configure.pm | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/tools/lib/NQP/Configure.pm b/tools/lib/NQP/Configure.pm index 0786cd5..424beea 100644 --- a/tools/lib/NQP/Configure.pm +++ b/tools/lib/NQP/Configure.pm @@ -280,6 +280,7 @@ sub gen_nqp { my $startdir = cwd(); my $PARROT_REVISION = 'nqp/tools/build/PARROT_REVISION'; + my $MOAR_REVISION = 'nqp/tools/build/MOAR_REVISION'; my (%impls, %need); @@ -334,16 +335,18 @@ sub gen_nqp { $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); my $backends_to_build = join ',', sort keys %need; my @cmd = ($^X, 'Configure.pl', "--prefix=$prefix", "--backends=$backends", "--make-install"); - if (defined $gen_moar) { - push @cmd, $gen_moar ? "--gen-moar=$gen_moar" : '--gen-moar'; - } - print "Building NQP ...\n"; chdir("$startdir/nqp"); print "@cmd\n"; -- cgit v1.1 From d6042a679545c86aa9e09ea3817b4e0b081e03b1 Mon Sep 17 00:00:00 2001 From: jnthn Date: Sat, 15 Mar 2014 19:15:28 +0100 Subject: Shut up an error and get a working --gen-moar. --- tools/lib/NQP/Configure.pm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/lib/NQP/Configure.pm b/tools/lib/NQP/Configure.pm index 424beea..cb95cc9 100644 --- a/tools/lib/NQP/Configure.pm +++ b/tools/lib/NQP/Configure.pm @@ -434,7 +434,7 @@ sub gen_moar { my $startdir = cwd(); my $moar_exe = "$prefix/bin/moar$exe"; - my $moar_have = qx{ $moar_exe --version }; + my $moar_have = -e $moar_exe ? qx{ $moar_exe --version } : undef; if ($moar_have) { $moar_have = $moar_have =~ /version (\S+)/ ? $1 : undef; } @@ -452,7 +452,7 @@ sub gen_moar { my $moar_repo = git_checkout($moar_git, 'MoarVM', $gen_moar || $moar_want, $moar_push); - unless (cmp_rev($moar_repo, $moar_want) >= 0) { + if (defined($moar_repo) && cmp_rev($moar_repo, $moar_want) < 0) { die "You asked me to build $gen_moar, but $moar_repo is not new enough to satisfy version $moar_want\n"; } -- cgit v1.1 From 16df5398e60973992eb76fac04246bd942f5e137 Mon Sep 17 00:00:00 2001 From: jnthn Date: Sat, 15 Mar 2014 19:21:23 +0100 Subject: Remove unused symbols. --- tools/build/Makefile.in | 7 ------- 1 file changed, 7 deletions(-) diff --git a/tools/build/Makefile.in b/tools/build/Makefile.in index 540e9dd..e2f1d98 100644 --- a/tools/build/Makefile.in +++ b/tools/build/Makefile.in @@ -19,11 +19,6 @@ RM_F = $(PERL) -MExtUtils::Command -e rm_f MKPATH = $(PERL) -MExtUtils::Command -e mkpath CHMOD = $(PERL) -MExtUtils::Command -e chmod -# locations of parrot resources -PARROT_EXE = $(PARROT_BIN_DIR)/parrot$(EXE) -P_NQP_EXE = $(PARROT_BIN_DIR)/nqp-p$(EXE) -PBC_TO_EXE = $(PARROT_BIN_DIR)/pbc_to_exe$(EXE) - PERL6_EXE = perl6-p$(EXE) PERL6_LANG_DIR = $(PARROT_LIB_DIR)/languages/perl6 PERL6_INSTALL = $(PARROT_BIN_DIR)/$(PERL6_EXE) @@ -111,8 +106,6 @@ help: config: $(PERL) Configure.pl -$(PARROT_EXE): - CRITIC_FILES=Configure.pl tools/build/ perlcritic: -- cgit v1.1 From 45ea83817352fa1ef9caa86aa1b4157e6c765905 Mon Sep 17 00:00:00 2001 From: jnthn Date: Sun, 16 Mar 2014 19:45:18 +0100 Subject: Work towards multi-backend build/install. This gets closer to handling the Rakudo build/install itself on other backends, though not the module install. --- Configure.pl | 10 ++++++++++ tools/build/Makefile.in | 44 +++++++++++++++++++++++++++++++++----------- 2 files changed, 43 insertions(+), 11 deletions(-) diff --git a/Configure.pl b/Configure.pl index fe665c8..02972e9 100644 --- a/Configure.pl +++ b/Configure.pl @@ -98,13 +98,22 @@ MAIN: { unless (%backends) { if (defined $options{'gen-moar'}) { $backends{moar} = 1; + $default_backend = 'moar'; } else { $backends{parrot} = 1; + $default_backend = 'parrot'; } } } + $config{backend_exes} = join ' ', map + { '$(PERL6_' . uc(substr $_, 0, 1) . '_EXE)' } + keys %backends; + $config{default_backend_exe} = '$(PERL6_' . + uc(substr $default_backend, 0, 1) . + '_EXE)'; + unless ($backends{parrot}) { warn "JVM/Moar-only builds are currently not supported, and might go wrong.\n"; } @@ -123,6 +132,7 @@ MAIN: { $config{'stagestats'} = '--stagestats' if $options{'makefile-timing'}; $config{'cpsep'} = $^O eq 'MSWin32' ? ';' : ':'; $config{'shell'} = $^O eq 'MSWin32' ? 'cmd' : 'sh'; + $config{'bat'} = $^O eq 'MSWin32' ? '.bat' : ''; my $make = $config{'make'} = $^O eq 'MSWin32' ? 'nmake' : 'make'; my @prefixes = sort map substr($_, 0, 1), keys %backends; diff --git a/tools/build/Makefile.in b/tools/build/Makefile.in index e2f1d98..6e9acc6 100644 --- a/tools/build/Makefile.in +++ b/tools/build/Makefile.in @@ -1,45 +1,67 @@ # Copyright (C) 2006-2014, The Perl Foundation. # $Id$ -PARROT_DIR = parrot -NQP_DIR = nqp -RAKUDO_DIR = rakudo +PARROT_DIR = parrot +MOAR_DIR = moarvm +NQP_DIR = nqp +RAKUDO_DIR = rakudo STAR_VERSION = 2014.03 -# values from parrot_config +# 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)/bin + +# MoarVM install location +MOAR_BIN_DIR = $(PREFIX)/bin + EXE = @exe@ +BAT = @bat@ PERL = @perl@ CP = $(PERL) -MExtUtils::Command -e cp RM_F = $(PERL) -MExtUtils::Command -e rm_f MKPATH = $(PERL) -MExtUtils::Command -e mkpath CHMOD = $(PERL) -MExtUtils::Command -e chmod -PERL6_EXE = perl6-p$(EXE) -PERL6_LANG_DIR = $(PARROT_LIB_DIR)/languages/perl6 -PERL6_INSTALL = $(PARROT_BIN_DIR)/$(PERL6_EXE) +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)/languages/perl6 +PERL6_J_INSTALL = $(JVM_BIN_DIR)/$(PERL6_J_EXE) + +PERL6_M_EXE = perl6-m$(BAT) +PERL6_M_LANG_DIR = $(PREFIX)/languages/perl6 +PERL6_M_INSTALL = $(MOAR_BIN_DIR)/$(PERL6_M_EXE) MODULES = modules/MODULES.txt all: rakudo -rakudo: $(RAKUDO_DIR)/$(PERL6_EXE) -$(RAKUDO_DIR)/$(PERL6_EXE): +rakudo: @backend_exes@ + +@backend_exes@: @echo "== Configuring and building Rakudo" cd $(RAKUDO_DIR) && $(PERL) Configure.pl --prefix=$(PREFIX_DIR) && $(MAKE) + rakudo-test: rakudo cd $(RAKUDO_DIR) && $(MAKE) test + rakudo-spectest: rakudo cd $(RAKUDO_DIR) && $(MAKE) spectest + rakudo-install: rakudo cd $(RAKUDO_DIR) && $(MAKE) install + $(CP) $(DESTDIR)$(PERL6_INSTALL) @default_backend_exe@ + $(CHMOD) 755 @default_backend_exe@ @win32_libparrot_copy@ - $(CP) $(DESTDIR)$(PERL6_INSTALL) $(PERL6_EXE) - $(CHMOD) 755 $(PERL6_EXE) modules-install: rakudo-install @echo "== Installing modules" -- cgit v1.1 From 3488b6c547b7613c8a9b5e8bf6c6c343bc5c93cb Mon Sep 17 00:00:00 2001 From: jnthn Date: Sun, 16 Mar 2014 22:25:11 +0100 Subject: Some fixes to get tri-Star build/test working. --- Configure.pl | 4 ++-- tools/build/Makefile.in | 8 +++++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/Configure.pl b/Configure.pl index 02972e9..7ecc750 100644 --- a/Configure.pl +++ b/Configure.pl @@ -108,11 +108,11 @@ MAIN: { } $config{backend_exes} = join ' ', map - { '$(PERL6_' . uc(substr $_, 0, 1) . '_EXE)' } + { '$(RAKUDO_DIR)/$(PERL6_' . uc(substr $_, 0, 1) . '_EXE)' } keys %backends; $config{default_backend_exe} = '$(PERL6_' . uc(substr $default_backend, 0, 1) . - '_EXE)'; + '_INSTALL)'; unless ($backends{parrot}) { warn "JVM/Moar-only builds are currently not supported, and might go wrong.\n"; diff --git a/tools/build/Makefile.in b/tools/build/Makefile.in index 6e9acc6..4d9a307 100644 --- a/tools/build/Makefile.in +++ b/tools/build/Makefile.in @@ -41,6 +41,8 @@ PERL6_M_EXE = perl6-m$(BAT) PERL6_M_LANG_DIR = $(PREFIX)/languages/perl6 PERL6_M_INSTALL = $(MOAR_BIN_DIR)/$(PERL6_M_EXE) +PERL6_EXE = perl6$(EXE) + MODULES = modules/MODULES.txt all: rakudo @@ -59,8 +61,8 @@ rakudo-spectest: rakudo rakudo-install: rakudo cd $(RAKUDO_DIR) && $(MAKE) install - $(CP) $(DESTDIR)$(PERL6_INSTALL) @default_backend_exe@ - $(CHMOD) 755 @default_backend_exe@ + $(CP) $(DESTDIR)@default_backend_exe@ $(PERL6_EXE) + $(CHMOD) 755 $(PERL6_EXE) @win32_libparrot_copy@ modules-install: rakudo-install @@ -79,7 +81,7 @@ test: @echo "To run the Rakudo compiler tests, use '$(MAKE) rakudo-test'" @echo "To run the Perl 6 spectests, use '$(MAKE) rakudo-spectest'" @echo "" - @echo "To run tests for individual modules, try:" + @echo "To run tests for individual modules, install and then try:" @echo " prove -e ./perl6 -r modules//t" @echo "" -- cgit v1.1 From ae704363e4b1b2d3a5c5ba6d925f4b1904f314c8 Mon Sep 17 00:00:00 2001 From: Timo Paulssen Date: Mon, 17 Mar 2014 00:52:46 +0100 Subject: baby steps towards tri-module-install. --- Configure.pl | 3 +++ tools/build/Makefile.in | 24 +++++++++++++++++++----- tools/build/module-install.pl | 5 +++-- 3 files changed, 25 insertions(+), 7 deletions(-) diff --git a/Configure.pl b/Configure.pl index 7ecc750..c24cd6b 100644 --- a/Configure.pl +++ b/Configure.pl @@ -110,6 +110,9 @@ MAIN: { $config{backend_exes} = join ' ', map { '$(RAKUDO_DIR)/$(PERL6_' . uc(substr $_, 0, 1) . '_EXE)' } keys %backends; + $config{backend_module_install} = join ' ', map + { 'module-install-' . uc(substr $_, 0, 1) } + keys %backends; $config{default_backend_exe} = '$(PERL6_' . uc(substr $default_backend, 0, 1) . '_INSTALL)'; diff --git a/tools/build/Makefile.in b/tools/build/Makefile.in index 4d9a307..25adc43 100644 --- a/tools/build/Makefile.in +++ b/tools/build/Makefile.in @@ -65,11 +65,25 @@ rakudo-install: rakudo $(CHMOD) 755 $(PERL6_EXE) @win32_libparrot_copy@ -modules-install: rakudo-install - @echo "== Installing modules" - $(PERL) tools/build/module-install.pl $(DESTDIR)$(PERL6_INSTALL) $(DESTDIR)$(PERL6_LANG_DIR)/lib $(MODULES) - @echo "== Installing binaries" - $(PERL) tools/build/bin-install.pl $(PERL6_INSTALL) $(DESTDIR)$(PARROT_BIN_DIR) modules/ufo/bin/ufo modules/panda/bin/panda modules/doc/bin/p6doc +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) modules/ufo/bin/ufo-p modules/panda/bin/panda-p modules/doc/bin/p6doc-p + +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) + @echo "== Installing binaries for JVM" + $(PERL) tools/build/bin-install.pl $(PERL6_J_INSTALL) $(DESTDIR)$(JVM_BIN_DIR) modules/ufo/bin/ufo-j modules/panda/bin/panda-j modules/doc/bin/p6doc-j + +modules-install-m: + @echo "== Installing modules for MoarVM" + $(PERL) tools/build/module-install.pl $(DESTDIR)$(PERL6_M_INSTALL) $(DESTDIR)$(PERL6_M_LANG_DIR)/lib moarvm mbc $(MODULES) + @echo "== Installing binaries for MoarVM" + $(PERL) tools/build/bin-install.pl $(PERL6_M_INSTALL) $(DESTDIR)$(MOAR_BIN_DIR) modules/ufo/bin/ufo-m modules/panda/bin/panda-m modules/doc/bin/p6doc-m modules-test: $(PERL) tools/build/modules-test.pl $(CURDIR) $(DESTDIR)$(PERL6_INSTALL) modules/MODULES.txt diff --git a/tools/build/module-install.pl b/tools/build/module-install.pl index 2ed2589..ea22812 100644 --- a/tools/build/module-install.pl +++ b/tools/build/module-install.pl @@ -9,6 +9,7 @@ use File::Basename; my $perl6bin = shift @ARGV; my $perl6lib = shift @ARGV; +my $comptarget = shift @ARGV; my @pmfiles; my @mod_pms; @@ -76,8 +77,8 @@ do { chdir 'rakudo'; foreach my $pm (@pmfiles) { my $out = $pm; - $out =~ s/\.pm6?$/.pir/; - my @cmd = ($perl6bin, '--target=pir', "--output=$out", $pm); + $out =~ s/\.pm6?$/.$comptarget/; + my @cmd = ($perl6bin, "--target=$comptarget", "--output=$out", $pm); print join(' ', @cmd), "\n"; system(@cmd); } -- cgit v1.1 From dda5873b9651c1c8d3d32a5b1a52ad9156fad5b1 Mon Sep 17 00:00:00 2001 From: Timo Paulssen Date: Mon, 17 Mar 2014 00:59:04 +0100 Subject: Mouq++ found this --- Configure.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Configure.pl b/Configure.pl index c24cd6b..d9bca6a 100644 --- a/Configure.pl +++ b/Configure.pl @@ -111,7 +111,7 @@ MAIN: { { '$(RAKUDO_DIR)/$(PERL6_' . uc(substr $_, 0, 1) . '_EXE)' } keys %backends; $config{backend_module_install} = join ' ', map - { 'module-install-' . uc(substr $_, 0, 1) } + { 'module-install-' . lc(substr $_, 0, 1) } keys %backends; $config{default_backend_exe} = '$(PERL6_' . uc(substr $default_backend, 0, 1) . -- cgit v1.1 From 7be70fd12493ac438f1f492255c51b00a80ef32a Mon Sep 17 00:00:00 2001 From: Timo Paulssen Date: Mon, 17 Mar 2014 01:55:13 +0100 Subject: fix some more problems --- Configure.pl | 4 ++-- tools/build/Makefile.in | 16 ++++++++-------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/Configure.pl b/Configure.pl index d9bca6a..604d015 100644 --- a/Configure.pl +++ b/Configure.pl @@ -110,8 +110,8 @@ MAIN: { $config{backend_exes} = join ' ', map { '$(RAKUDO_DIR)/$(PERL6_' . uc(substr $_, 0, 1) . '_EXE)' } keys %backends; - $config{backend_module_install} = join ' ', map - { 'module-install-' . lc(substr $_, 0, 1) } + $config{backend_modules_install} = join ' ', map + { 'modules-install-' . lc(substr $_, 0, 1) } keys %backends; $config{default_backend_exe} = '$(PERL6_' . uc(substr $default_backend, 0, 1) . diff --git a/tools/build/Makefile.in b/tools/build/Makefile.in index 25adc43..ac73ab5 100644 --- a/tools/build/Makefile.in +++ b/tools/build/Makefile.in @@ -61,7 +61,7 @@ rakudo-spectest: rakudo rakudo-install: rakudo cd $(RAKUDO_DIR) && $(MAKE) install - $(CP) $(DESTDIR)@default_backend_exe@ $(PERL6_EXE) + $(CP) $(PREFIX_DIR)@default_backend_exe@ $(PERL6_EXE) $(CHMOD) 755 $(PERL6_EXE) @win32_libparrot_copy@ @@ -69,24 +69,24 @@ 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) + $(PERL) tools/build/module-install.pl $(PREFIX_DIR)$(PERL6_P_INSTALL) $(PREFIX_DIR)$(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) modules/ufo/bin/ufo-p modules/panda/bin/panda-p modules/doc/bin/p6doc-p + $(PERL) tools/build/bin-install.pl $(PERL6_P_INSTALL) $(PREFIX_DIR)$(PARROT_BIN_DIR) modules/ufo/bin/ufo modules/panda/bin/panda modules/doc/bin/p6doc 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) + $(PERL) tools/build/module-install.pl $(PREFIX_DIR)$(PERL6_J_INSTALL) $(PREFIX_DIR)$(PERL6_J_LANG_DIR)/lib jar jar $(MODULES) @echo "== Installing binaries for JVM" - $(PERL) tools/build/bin-install.pl $(PERL6_J_INSTALL) $(DESTDIR)$(JVM_BIN_DIR) modules/ufo/bin/ufo-j modules/panda/bin/panda-j modules/doc/bin/p6doc-j + $(PERL) tools/build/bin-install.pl $(PERL6_J_INSTALL) $(PREFIX_DIR)$(JVM_BIN_DIR) modules/ufo/bin/ufo modules/panda/bin/panda modules/doc/bin/p6doc modules-install-m: @echo "== Installing modules for MoarVM" - $(PERL) tools/build/module-install.pl $(DESTDIR)$(PERL6_M_INSTALL) $(DESTDIR)$(PERL6_M_LANG_DIR)/lib moarvm mbc $(MODULES) + $(PERL) tools/build/module-install.pl $(PREFIX_DIR)$(PERL6_M_INSTALL) $(PREFIX_DIR)$(PERL6_M_LANG_DIR)/lib moarvm mbc $(MODULES) @echo "== Installing binaries for MoarVM" - $(PERL) tools/build/bin-install.pl $(PERL6_M_INSTALL) $(DESTDIR)$(MOAR_BIN_DIR) modules/ufo/bin/ufo-m modules/panda/bin/panda-m modules/doc/bin/p6doc-m + $(PERL) tools/build/bin-install.pl $(PERL6_M_INSTALL) $(PREFIX_DIR)$(MOAR_BIN_DIR) modules/ufo/bin/ufo modules/panda/bin/panda modules/doc/bin/p6doc modules-test: - $(PERL) tools/build/modules-test.pl $(CURDIR) $(DESTDIR)$(PERL6_INSTALL) modules/MODULES.txt + $(PERL) tools/build/modules-test.pl $(CURDIR) $(PREFIX_DIR)$(PERL6_INSTALL) modules/MODULES.txt install: rakudo-install modules-install -- cgit v1.1 From 786ece4752468ddedd333ac5ee42de992848fa47 Mon Sep 17 00:00:00 2001 From: Mouq Date: Sun, 16 Mar 2014 21:15:24 -0400 Subject: fix some less problems DESTDIR should still be there, by de facto Makefile law, AFAICT --- tools/build/Makefile.in | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/tools/build/Makefile.in b/tools/build/Makefile.in index ac73ab5..27e1199 100644 --- a/tools/build/Makefile.in +++ b/tools/build/Makefile.in @@ -16,10 +16,10 @@ PARROT_VERSION = @versiondir@ PARROT_LIB_DIR = @libdir@$(PARROT_VERSION) # JVM install location -JVM_BIN_DIR = $(PREFIX)/bin +JVM_BIN_DIR = $(PREFIX_DIR)/bin # MoarVM install location -MOAR_BIN_DIR = $(PREFIX)/bin +MOAR_BIN_DIR = $(PREFIX_DIR)/bin EXE = @exe@ BAT = @bat@ @@ -34,11 +34,11 @@ 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)/languages/perl6 +PERL6_J_LANG_DIR = $(PREFIX_DIR)/languages/perl6 PERL6_J_INSTALL = $(JVM_BIN_DIR)/$(PERL6_J_EXE) PERL6_M_EXE = perl6-m$(BAT) -PERL6_M_LANG_DIR = $(PREFIX)/languages/perl6 +PERL6_M_LANG_DIR = $(PREFIX_DIR)/languages/perl6 PERL6_M_INSTALL = $(MOAR_BIN_DIR)/$(PERL6_M_EXE) PERL6_EXE = perl6$(EXE) @@ -61,7 +61,7 @@ rakudo-spectest: rakudo rakudo-install: rakudo cd $(RAKUDO_DIR) && $(MAKE) install - $(CP) $(PREFIX_DIR)@default_backend_exe@ $(PERL6_EXE) + $(CP) $(DESTDIR)@default_backend_exe@ $(PERL6_EXE) $(CHMOD) 755 $(PERL6_EXE) @win32_libparrot_copy@ @@ -69,24 +69,24 @@ modules-install: @backend_modules_install@ modules-install-p: @echo "== Installing modules for Parrot" - $(PERL) tools/build/module-install.pl $(PREFIX_DIR)$(PERL6_P_INSTALL) $(PREFIX_DIR)$(PERL6_P_LANG_DIR)/lib pir pir $(MODULES) + $(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) $(PREFIX_DIR)$(PARROT_BIN_DIR) 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) modules/ufo/bin/ufo-p modules/panda/bin/panda-p modules/doc/bin/p6doc-p modules-install-j: @echo "== Installing modules for JVM" - $(PERL) tools/build/module-install.pl $(PREFIX_DIR)$(PERL6_J_INSTALL) $(PREFIX_DIR)$(PERL6_J_LANG_DIR)/lib jar jar $(MODULES) + $(PERL) tools/build/module-install.pl $(DESTDIR)$(PERL6_J_INSTALL) $(DESTDIR)$(PERL6_J_LANG_DIR)/lib jar jar $(MODULES) @echo "== Installing binaries for JVM" - $(PERL) tools/build/bin-install.pl $(PERL6_J_INSTALL) $(PREFIX_DIR)$(JVM_BIN_DIR) modules/ufo/bin/ufo modules/panda/bin/panda modules/doc/bin/p6doc + $(PERL) tools/build/bin-install.pl $(PERL6_J_INSTALL) $(DESTDIR)$(JVM_BIN_DIR) modules/ufo/bin/ufo-j modules/panda/bin/panda-j modules/doc/bin/p6doc-j modules-install-m: @echo "== Installing modules for MoarVM" - $(PERL) tools/build/module-install.pl $(PREFIX_DIR)$(PERL6_M_INSTALL) $(PREFIX_DIR)$(PERL6_M_LANG_DIR)/lib moarvm mbc $(MODULES) + $(PERL) tools/build/module-install.pl $(DESTDIR)$(PERL6_M_INSTALL) $(DESTDIR)$(PERL6_M_LANG_DIR)/lib moarvm mbc $(MODULES) @echo "== Installing binaries for MoarVM" - $(PERL) tools/build/bin-install.pl $(PERL6_M_INSTALL) $(PREFIX_DIR)$(MOAR_BIN_DIR) modules/ufo/bin/ufo modules/panda/bin/panda modules/doc/bin/p6doc + $(PERL) tools/build/bin-install.pl $(PERL6_M_INSTALL) $(DESTDIR)$(MOAR_BIN_DIR) modules/ufo/bin/ufo-m modules/panda/bin/panda-m modules/doc/bin/p6doc-m modules-test: - $(PERL) tools/build/modules-test.pl $(CURDIR) $(PREFIX_DIR)$(PERL6_INSTALL) modules/MODULES.txt + $(PERL) tools/build/modules-test.pl $(CURDIR) $(DESTDIR)$(PERL6_INSTALL) modules/MODULES.txt install: rakudo-install modules-install -- cgit v1.1 From 4a394218f093b51c8137904488cbae4188d68ced Mon Sep 17 00:00:00 2001 From: Mouq Date: Sun, 16 Mar 2014 23:14:04 -0400 Subject: Let ufo, panda, and p6doc figure out what they're running on --- tools/build/Makefile.in | 6 +++--- tools/build/bin-install.pl | 10 +++++++++- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/tools/build/Makefile.in b/tools/build/Makefile.in index 27e1199..1a4928f 100644 --- a/tools/build/Makefile.in +++ b/tools/build/Makefile.in @@ -71,19 +71,19 @@ 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) modules/ufo/bin/ufo-p modules/panda/bin/panda-p modules/doc/bin/p6doc-p + $(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 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) @echo "== Installing binaries for JVM" - $(PERL) tools/build/bin-install.pl $(PERL6_J_INSTALL) $(DESTDIR)$(JVM_BIN_DIR) modules/ufo/bin/ufo-j modules/panda/bin/panda-j modules/doc/bin/p6doc-j + $(PERL) tools/build/bin-install.pl $(PERL6_J_INSTALL) $(DESTDIR)$(JVM_BIN_DIR) j modules/ufo/bin/ufo modules/panda/bin/panda modules/doc/bin/p6doc modules-install-m: @echo "== Installing modules for MoarVM" $(PERL) tools/build/module-install.pl $(DESTDIR)$(PERL6_M_INSTALL) $(DESTDIR)$(PERL6_M_LANG_DIR)/lib moarvm mbc $(MODULES) @echo "== Installing binaries for MoarVM" - $(PERL) tools/build/bin-install.pl $(PERL6_M_INSTALL) $(DESTDIR)$(MOAR_BIN_DIR) modules/ufo/bin/ufo-m modules/panda/bin/panda-m modules/doc/bin/p6doc-m + $(PERL) tools/build/bin-install.pl $(PERL6_M_INSTALL) $(DESTDIR)$(MOAR_BIN_DIR) m modules/ufo/bin/ufo modules/panda/bin/panda modules/doc/bin/p6doc modules-test: $(PERL) tools/build/modules-test.pl $(CURDIR) $(DESTDIR)$(PERL6_INSTALL) modules/MODULES.txt diff --git a/tools/build/bin-install.pl b/tools/build/bin-install.pl index 1c71cea..1b47942 100644 --- a/tools/build/bin-install.pl +++ b/tools/build/bin-install.pl @@ -4,7 +4,7 @@ use strict; use warnings; use File::Spec; -my ($p6bin, $dest, @files) = @ARGV; +my ($p6bin, $dest, $post, @files) = @ARGV; die "Usage: $0 " unless $p6bin && $dest; @@ -25,4 +25,12 @@ for my $filename (@files) { close $OUT or die "Error while closing file '$dest/$basename': $!"; close $IN; chmod 0755, "$dest/$basename"; + open my $ALIAS, '>', "$dest/$basename-$post" + or die "Cannot write file '$dest/$basename-$post' for installing it: $!"; + printf { $ALIAS } <<'EOA', $p6bin, $dest, $basename; +#!/bin/sh +exec %s %s/%s "$@" +EOA + close $ALIAS or die "Error while closing file '$dest/$basename-$post': $!"; + chmod 0755, "$dest/$basename-$post"; } -- cgit v1.1 From 469f8c06bf29f0543efd73a993567de66bf27efc Mon Sep 17 00:00:00 2001 From: Mouq Date: Sun, 16 Mar 2014 23:27:51 -0400 Subject: Update MIME::Base64 --- modules/Perl6-MIME-Base64 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/Perl6-MIME-Base64 b/modules/Perl6-MIME-Base64 index 76fd9de..9c39b28 160000 --- a/modules/Perl6-MIME-Base64 +++ b/modules/Perl6-MIME-Base64 @@ -1 +1 @@ -Subproject commit 76fd9decc7c1445390b0ab5a1296e9d244f8e1fd +Subproject commit 9c39b28b4882dffe2c7fb8989aab7fcea3cc9531 -- cgit v1.1 From ab2d701649ef37f8ecc3477ab5be08df498f366f Mon Sep 17 00:00:00 2001 From: jnthn Date: Mon, 17 Mar 2014 18:11:13 +0100 Subject: Actually take/use the output extension. --- tools/build/module-install.pl | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tools/build/module-install.pl b/tools/build/module-install.pl index ea22812..f6e06e0 100644 --- a/tools/build/module-install.pl +++ b/tools/build/module-install.pl @@ -9,6 +9,7 @@ use File::Basename; my $perl6bin = shift @ARGV; my $perl6lib = shift @ARGV; +my $compext = shift @ARGV; my $comptarget = shift @ARGV; my @pmfiles; @@ -77,7 +78,7 @@ do { chdir 'rakudo'; foreach my $pm (@pmfiles) { my $out = $pm; - $out =~ s/\.pm6?$/.$comptarget/; + $out =~ s/\.pm6?$/.$compext/; my @cmd = ($perl6bin, "--target=$comptarget", "--output=$out", $pm); print join(' ', @cmd), "\n"; system(@cmd); -- cgit v1.1 From 7ef34d18ad0507ae58c79ccbd137e8440e83cdb1 Mon Sep 17 00:00:00 2001 From: Tobias Leich Date: Sat, 29 Mar 2014 11:44:56 +0100 Subject: support modules-test for all backends --- Configure.pl | 3 +++ tools/build/Makefile.in | 12 ++++++++++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/Configure.pl b/Configure.pl index 604d015..0611b5f 100644 --- a/Configure.pl +++ b/Configure.pl @@ -113,6 +113,9 @@ MAIN: { $config{backend_modules_install} = join ' ', map { 'modules-install-' . lc(substr $_, 0, 1) } keys %backends; + $config{backend_modules_test} = join ' ', map + { 'modules-test-' . lc(substr $_, 0, 1) } + keys %backends; $config{default_backend_exe} = '$(PERL6_' . uc(substr $default_backend, 0, 1) . '_INSTALL)'; diff --git a/tools/build/Makefile.in b/tools/build/Makefile.in index 1a4928f..d3063a9 100644 --- a/tools/build/Makefile.in +++ b/tools/build/Makefile.in @@ -85,8 +85,16 @@ modules-install-m: @echo "== Installing binaries for MoarVM" $(PERL) tools/build/bin-install.pl $(PERL6_M_INSTALL) $(DESTDIR)$(MOAR_BIN_DIR) m modules/ufo/bin/ufo modules/panda/bin/panda modules/doc/bin/p6doc -modules-test: - $(PERL) tools/build/modules-test.pl $(CURDIR) $(DESTDIR)$(PERL6_INSTALL) modules/MODULES.txt +modules-test: @backend_modules_test@ + +modules-test-p: + $(PERL) tools/build/modules-test.pl $(CURDIR) $(DESTDIR)$(PARROT_BIN_DIR) modules/MODULES.txt + +modules-test-j: + $(PERL) tools/build/modules-test.pl $(CURDIR) $(DESTDIR)$(JVM_BIN_DIR) modules/MODULES.txt + +modules-test-m: + $(PERL) tools/build/modules-test.pl $(CURDIR) $(DESTDIR)$(PERL6_M_INSTALL) modules/MODULES.txt install: rakudo-install modules-install -- cgit v1.1 From a5ffea1cd34e714e500ed9cc7fe6ea2735dbe98a Mon Sep 17 00:00:00 2001 From: Tobias Leich Date: Sat, 29 Mar 2014 13:11:41 +0100 Subject: fix modules testing by using correct -j/-p runner --- tools/build/Makefile.in | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/build/Makefile.in b/tools/build/Makefile.in index d3063a9..961877e 100644 --- a/tools/build/Makefile.in +++ b/tools/build/Makefile.in @@ -88,10 +88,10 @@ modules-install-m: modules-test: @backend_modules_test@ modules-test-p: - $(PERL) tools/build/modules-test.pl $(CURDIR) $(DESTDIR)$(PARROT_BIN_DIR) modules/MODULES.txt + $(PERL) tools/build/modules-test.pl $(CURDIR) $(DESTDIR)$(PERL6_P_INSTALL) modules/MODULES.txt modules-test-j: - $(PERL) tools/build/modules-test.pl $(CURDIR) $(DESTDIR)$(JVM_BIN_DIR) modules/MODULES.txt + $(PERL) tools/build/modules-test.pl $(CURDIR) $(DESTDIR)$(PERL6_J_INSTALL) modules/MODULES.txt modules-test-m: $(PERL) tools/build/modules-test.pl $(CURDIR) $(DESTDIR)$(PERL6_M_INSTALL) modules/MODULES.txt -- cgit v1.1 From 90eaf28ad6af34f3fd46663ed131bcfea811fe98 Mon Sep 17 00:00:00 2001 From: Andrew Egeler Date: Sat, 29 Mar 2014 12:19:02 -0400 Subject: Require file extension to be at end of filename --- tools/build/module-install.pl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/build/module-install.pl b/tools/build/module-install.pl index f6e06e0..b6be9c7 100644 --- a/tools/build/module-install.pl +++ b/tools/build/module-install.pl @@ -24,14 +24,14 @@ while (<>) { find({ no_chdir=>1, wanted => \&libcopy }, $mlib); sub libcopy { - return unless /\.pm6?|\.pod/; + return unless /\.pm6?$|\.pod$/; my $source = $File::Find::name; my $target = $source; $target =~ s/\Q$mlib\E/$perl6lib/; print "$source => $target\n"; mkpath dirname($target); copy($source, $target) or die "copy failed: $!\n"; - push @mod_pms, $target if $target =~ /\.pm6?/; + push @mod_pms, $target if $target =~ /\.pm6?$/; } my %usages_of; -- cgit v1.1