aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTimo Paulssen <timonator@perpetuum-immobile.de>2014-03-17 00:52:46 +0100
committerTimo Paulssen <timonator@perpetuum-immobile.de>2014-03-17 00:52:46 +0100
commitae704363e4b1b2d3a5c5ba6d925f4b1904f314c8 (patch)
treef509325074024fdd870b5a18b8dfb1e087205a08
parent3488b6c547b7613c8a9b5e8bf6c6c343bc5c93cb (diff)
baby steps towards tri-module-install.
-rw-r--r--Configure.pl3
-rw-r--r--tools/build/Makefile.in24
-rw-r--r--tools/build/module-install.pl5
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);
}