From 567d45ba40bb854218d7c9a59d1c7980c5ca4b63 Mon Sep 17 00:00:00 2001 From: Vadim Belman Date: Wed, 21 Aug 2019 19:42:24 -0400 Subject: [PATCH] Make part of Perl6::Ops backend-independent Generate the module from backend-dependent source and from src/Perl6/Ops.nqp. Note: JS backend build is patched but cannot be tested on my macOS due to nodejs failing to install dependencies. --- src/Perl6/Ops.nqp | 0 tools/build/gen-js-makefile.nqp | 5 ++++- tools/templates/jvm/Makefile.in | 6 +++--- tools/templates/moar/Makefile.in | 6 +++--- 4 files changed, 10 insertions(+), 7 deletions(-) create mode 100644 src/Perl6/Ops.nqp diff --git a/src/Perl6/Ops.nqp b/src/Perl6/Ops.nqp new file mode 100644 index 00000000000..e69de29bb2d diff --git a/tools/build/gen-js-makefile.nqp b/tools/build/gen-js-makefile.nqp index 4082dcaa95a..07ff88d6770 100644 --- a/tools/build/gen-js-makefile.nqp +++ b/tools/build/gen-js-makefile.nqp @@ -91,7 +91,10 @@ my $ModuleLoader-nqp := combine(:sources("src/vm/js/ModuleLoaderVMConfig.nqp src my $Perl6-ModuleLoader := nqp($ModuleLoader-nqp, "$blib/Perl6-ModuleLoader.js"); -my $Perl6-Ops := nqp('src/vm/js/Perl6/Ops.nqp', "$blib/Perl6-Ops.js"); + +my $Ops-nqp := combine(:sources('src/vm/js/Perl6/Ops.nqp src/Perl6/Ops.nqp'), :file); +my $Perl6-Ops := nqp($Ops-nqp, "$blib/Perl6-Ops.js"); + my $Perl6-Pod := nqp('src/Perl6/Pod.nqp', "$blib/Perl6-Pod.js"); my $Perl6-World := nqp('src/Perl6/World.nqp', "$blib/Perl6-World.js", :deps([$Perl6-Ops, $Perl6-Pod, $Perl6-ModuleLoader])); diff --git a/tools/templates/jvm/Makefile.in b/tools/templates/jvm/Makefile.in index f1ac0abf70e..1e0de0b6d2e 100644 --- a/tools/templates/jvm/Makefile.in +++ b/tools/templates/jvm/Makefile.in @@ -100,9 +100,9 @@ $(PERL6_ML_JAR): @nfpl(src/Perl6/ModuleLoader.nqp src/vm/jvm/ModuleLoaderVMConfi $(J_NQP) --module-path=blib --target=jar --output=$(PERL6_ML_JAR) \ @nfpq($(J_BUILD_DIR)/ModuleLoader.nqp)@ -$(PERL6_OPS_JAR): @nfpl(src/vm/jvm/Perl6/Ops.nqp gen/nqp-version)@ - $(J_NQP) --module-path=blib --target=jar --output=$(PERL6_OPS_JAR) \ - @nfp(src/vm/jvm/Perl6/Ops.nqp)@ +$(PERL6_OPS_JAR): @nfpl(src/vm/jvm/Perl6/Ops.nqp src/Perl6/Ops.nqp gen/nqp-version)@ + $(J_NQP) $(J_GEN_CAT) @nfpl(src/vm/jvm/Perl6/Ops.nqp src/Perl6/Ops.nqp )@ > @nfpq($(J_BUILD_DIR)/Perl6-Ops.nqp)@ + $(J_NQP) --module-path=blib --target=jar --output=$(PERL6_OPS_JAR) @nfpq($(J_BUILD_DIR)/Perl6-Ops.nqp)@ $(PERL6_W_JAR): $(PERL6_ML_JAR) $(PERL6_OPS_JAR) $(PERL6_P_JAR) @nfp(src/Perl6/World.nqp)@ $(J_NQP) --module-path=blib --target=jar --output=$(PERL6_W_JAR) \ diff --git a/tools/templates/moar/Makefile.in b/tools/templates/moar/Makefile.in index 9a466063a16..ed2e4b21c96 100644 --- a/tools/templates/moar/Makefile.in +++ b/tools/templates/moar/Makefile.in @@ -152,9 +152,9 @@ $(PERL6_ML_MOAR): @nfp(src/Perl6/ModuleLoader.nqp)@ @nfp(src/vm/moar/ModuleLoade $(M_NQP) --module-path=blib --target=mbc --output=$(PERL6_ML_MOAR) \ @nfpq($(M_BUILD_DIR)/ModuleLoader.nqp)@ -$(PERL6_OPS_MOAR): @nfp(src/vm/moar/Perl6/Ops.nqp)@ $(M_PERL6_OPS_DLL) @nfp(gen/nqp-version)@ - $(M_NQP) --target=mbc --output=$(PERL6_OPS_MOAR) \ - @nfp(src/vm/moar/Perl6/Ops.nqp)@ +$(PERL6_OPS_MOAR): @nfp(src/vm/moar/Perl6/Ops.nqp src/Perl6/Ops.nqp)@ $(M_PERL6_OPS_DLL) @nfp(gen/nqp-version)@ + $(M_NQP) $(M_GEN_CAT) @nfpl(src/vm/moar/Perl6/Ops.nqp src/Perl6/Ops.nqp)@ > @nfpq($(M_BUILD_DIR)/Perl6-Ops.nqp)@ + $(M_NQP) --target=mbc --output=$(PERL6_OPS_MOAR) @nfpq($(M_BUILD_DIR)/Perl6-Ops.nqp)@ $(PERL6_W_MOAR): $(PERL6_ML_MOAR) $(PERL6_OPS_MOAR) $(PERL6_P_MOAR) @nfp(src/Perl6/World.nqp)@ $(M_NQP) --module-path=blib --target=mbc --output=$(PERL6_W_MOAR) \