Skip to content

Commit

Permalink
Don't litter a folder structure outside the build directory on JVM
Browse files Browse the repository at this point in the history
This fix has been part of the moar backend for some time and is now also
added to the JVM backend.
  • Loading branch information
patrickbkr committed Aug 27, 2020
1 parent eab3e1c commit 5a40482
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 10 deletions.
11 changes: 8 additions & 3 deletions tools/build/create-jvm-runner.pl
Expand Up @@ -8,9 +8,9 @@
use File::Copy 'cp';
use Cwd 'abs_path';

my $USAGE = "Usage: $0 <type> <destdir> <prefix> <nqp-home> <rakudo-home> <third party jars>\n";
my $USAGE = "Usage: $0 <type> <basedir> <destdir> <prefix> <nqp-home> <rakudo-home> <third party jars>\n";

my ($type, $destdir, $prefix, $static_nqp_home, $static_rakudo_home, $thirdpartyjars) = @ARGV
my ($type, $basedir, $destdir, $prefix, $static_nqp_home, $static_rakudo_home, $thirdpartyjars) = @ARGV
or die $USAGE;

my $relocatable = $static_nqp_home eq '' && $static_rakudo_home eq '';
Expand Down Expand Up @@ -120,12 +120,17 @@
else {
my $nqp_home = File::Spec->catdir(abs_path($prefix), 'share', 'nqp');

# Hack: Explicitly set a dummy RAKUDO_HOME, so the autogenerated
# CompUnitRepo folder structure does not end up in the build directories
# parent folder.
my $rakudo_home = "$basedir/gen/build_rakudo_home";

$preamble = join("\n",
$preamble_unix,
"$NQP_LIB",
"NQP_HOME=\"$nqp_home\"",
": \${NQP_JARS:=\"$nqpjars\"}",
": \${RAKUDO_HOME:=\"$prefix\"}",
"RAKUDO_HOME=\"$rakudo_home\"",
": \${RAKUDO_JARS:=\"$rakudo_jars\"}",
"exec "
);
Expand Down
14 changes: 7 additions & 7 deletions tools/templates/jvm/Makefile.in
Expand Up @@ -43,9 +43,9 @@ $(RUNTIME_JAR): $(RUNTIME_JAVAS)
$(NOECHO)$(JAVAC) --release 9 -cp @q($(BLD_NQP_JARS))@ -g -d bin -encoding UTF8 $(RUNTIME_JAVAS)
$(NOECHO)$(JAR) cf0 rakudo-runtime.jar -C bin@slash@ .

$(J_RUNNER): @@script(create-jvm-runner.pl)@@
$(J_RUNNER): @@script(create-jvm-runner.pl)@@
@echo(+++ Setting up $@)@
$(NOECHO)$(PERL5) @shquot(@script(create-jvm-runner.pl)@)@ dev . . @q(@static_nqp_home@)@ @q(@static_rakudo_home@)@ @q($(NQP_JARS))@
$(NOECHO)$(PERL5) @shquot(@script(create-jvm-runner.pl)@)@ dev @q($(BASE_DIR))@ . . @q(@static_nqp_home@)@ @q(@static_rakudo_home@)@ @q($(NQP_JARS))@

@backend_prefix@-runner-default: @backend_prefix@-all
@echo(+++ Setting up @uc(@backend@)@ runner)@
Expand All @@ -54,7 +54,7 @@ $(J_RUNNER): @@script(create-jvm-runner.pl)@@

@bpm(DEBUG_RUNNER)@: @@script(create-jvm-runner.pl)@@ @bsm(RAKUDO_DEBUG)@
@echo(+++ Setting up $@)@
$(NOECHO)$(PERL5) @shquot(@script(create-jvm-runner.pl)@)@ dev-debug . . @q(@static_nqp_home@)@ @q(@static_rakudo_home@)@ @q($(NQP_JARS))@
$(NOECHO)$(PERL5) @shquot(@script(create-jvm-runner.pl)@)@ dev-debug @q($(BASE_DIR))@ . . @q(@static_nqp_home@)@ @q(@static_rakudo_home@)@ @q($(NQP_JARS))@

eval-client.pl:
@echo(+++ Setting up $@)@
Expand Down Expand Up @@ -82,16 +82,16 @@ eval-client.pl:
sometests: @backend_prefix@-all
@$(J_HARNESS5_WITH_FUDGE) $(TESTFILES)

@backend_prefix@-runner-default-install: @backend_prefix@-install
@backend_prefix@-runner-default-install: @backend_prefix@-install @@script(create-jvm-runner.pl)@@
@echo(+++ Installing @uc(@backend@)@ launcher)@
$(NOECHO)$(PERL5) @shquot(@script(create-jvm-runner.pl)@)@ install @q($(DESTDIR))@ @q($(PREFIX))@ @q(@static_nqp_home@)@ @q(@static_rakudo_home@)@ @q($(NQP_JARS))@
$(NOECHO)$(PERL5) @shquot(@script(create-jvm-runner.pl)@)@ install @q($(BASE_DIR))@ @q($(DESTDIR))@ @q($(PREFIX))@ @q(@static_nqp_home@)@ @q(@static_rakudo_home@)@ @q($(NQP_JARS))@
$(NOECHO)$(CP) @nfpq($(DESTDIR)$(PREFIX)/bin/rakudo-j$(J_BAT))@ @nfpq($(DESTDIR)$(PREFIX)/bin/rakudo$(J_BAT))@
$(NOECHO)$(CHMOD) 755 @nfpq($(DESTDIR)$(PREFIX)/bin/rakudo$(J_BAT))@

@backend_prefix@-install-main:: $(RUNTIME_JAR) @@script(create-jvm-runner.pl)@@
$(NOECHO)$(CP) $(RUNTIME_JAR) @nfpq($(DESTDIR)$(RAKUDO_HOME)/runtime)@
$(NOECHO)$(PERL5) @shquot(@script(create-jvm-runner.pl)@)@ install @q($(DESTDIR))@ @q($(PREFIX))@ @q(@static_nqp_home@)@ @q($(NQP_PREFIX))@ @q($(NQP_JARS))@
$(NOECHO)$(PERL5) @shquot(@script(create-jvm-runner.pl)@)@ install-debug @q($(DESTDIR))@ @q($(PREFIX))@ @q(@static_nqp_home@)@ @q($(NQP_PREFIX))@ @q($(NQP_JARS))@
$(NOECHO)$(PERL5) @shquot(@script(create-jvm-runner.pl)@)@ install @q($(BASE_DIR))@ @q($(DESTDIR))@ @q($(PREFIX))@ @q(@static_nqp_home@)@ @q($(NQP_PREFIX))@ @q($(NQP_JARS))@
$(NOECHO)$(PERL5) @shquot(@script(create-jvm-runner.pl)@)@ install-debug @q($(BASE_DIR))@ @q($(DESTDIR))@ @q($(PREFIX))@ @q(@static_nqp_home@)@ @q($(NQP_PREFIX))@ @q($(NQP_JARS))@

## cleaning
@backend_prefix@-clean:
Expand Down

0 comments on commit 5a40482

Please sign in to comment.