[145348] trunk/dports/lang/rakudo

mojca at macports.org mojca at macports.org
Tue Feb 2 02:19:52 PST 2016


Revision: 145348
          https://trac.macports.org/changeset/145348
Author:   mojca at macports.org
Date:     2016-02-02 02:19:51 -0800 (Tue, 02 Feb 2016)
Log Message:
-----------
rakudo: upgrade to version 2016.01, fix livecheck, upstream patch for destdir

Modified Paths:
--------------
    trunk/dports/lang/rakudo/Portfile

Added Paths:
-----------
    trunk/dports/lang/rakudo/files/
    trunk/dports/lang/rakudo/files/patch-upstream-fix-destdir.diff

Modified: trunk/dports/lang/rakudo/Portfile
===================================================================
--- trunk/dports/lang/rakudo/Portfile	2016-02-02 10:18:54 UTC (rev 145347)
+++ trunk/dports/lang/rakudo/Portfile	2016-02-02 10:19:51 UTC (rev 145348)
@@ -4,10 +4,7 @@
 PortSystem          1.0
 PortGroup           github 1.0
 
-# the released version has some problems, so we took the latest one
-# github.setup      rakudo rakudo 2015.12
-github.setup        rakudo rakudo 4cf630b
-version             2015.12
+github.setup        rakudo rakudo 2016.01
 description         Perl 6 compiler 
 long_description    Rakudo is a compiler for the Perl 6 language (version 6.c) \
                     Rakudo is built using NQP (Not Quite Perl 6), which in \
@@ -20,14 +17,16 @@
 homepage            http://rakudo.org/
 # master_sites      http://rakudo.org/downloads/rakudo/
 
-checksums           rmd160  06650c03711cf6efb9429d310d36411b42e8cca1 \
-                    sha256  7335273b9ec7249ec44f1c1c0cc80d05399497df9250a03fb4b1ca063c305a47
+checksums           rmd160  f59cba462b502d3a6004f8c437c5290420f56595 \
+                    sha256  67c16b55e748f2dd152c550a1432f00753668b606a793cf44e40215fe2ee4d62
 
 depends_build       port:perl5
 
 depends_lib         port:moarvm \
                     port:nqp
 
+patchfiles          patch-upstream-fix-destdir.diff
+
 configure.cmd       ${prefix}/bin/perl Configure.pl
 configure.args      --prefix=${prefix} \
                     --backends=moar
@@ -38,3 +37,6 @@
 test.run            yes
 # test.target       test spectest
 # other targets: localtest stresstest ...
+
+# we need to avoid '-' in version name, else $version-RC1 is considered newer than the actual release
+livecheck.regex     {archive/([0-9.]+).tar.gz}

Added: trunk/dports/lang/rakudo/files/patch-upstream-fix-destdir.diff
===================================================================
--- trunk/dports/lang/rakudo/files/patch-upstream-fix-destdir.diff	                        (rev 0)
+++ trunk/dports/lang/rakudo/files/patch-upstream-fix-destdir.diff	2016-02-02 10:19:51 UTC (rev 145348)
@@ -0,0 +1,77 @@
+https://github.com/rakudo/rakudo/commit/fb00ed3d71f9407a776c82f03855d1242997878c
+
+From fb00ed3d71f9407a776c82f03855d1242997878c Mon Sep 17 00:00:00 2001
+From: Anthony Parsons <flussence at gmail.com>
+Date: Sat, 26 Dec 2015 19:37:18 +0000
+Subject: [PATCH] Fix `make install` when nqp is distro-installed
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+During the installation process, tools/build/install-core-dist.pl is called to
+precompile the bundled non-CORE.setting libraries such as Test.pm. The way this
+was initially coded, it pulled the install path from NQP's build-time
+configuration, which will be a root-owned filesystem path if NQP was installed
+via a system package manager.
+
+Other parts of the CompUnit code will see these paths don't exist, and attempt
+to helpfully call `mkdir` on them which brings the whole process to a messy end.
+This part usually works fine when building everything from a git checkout,
+because Moar/NQP/Rakudo all default to an installation prefix the user has write
+access to.
+
+This patch fixes that step of the build process by passing the makefile's path
+prefixes to install-core-dist.pl (ensuring precompilation output goes to the
+right place), and modifying it to *only* use that path (ensuring it doesn't try
+to mkdir where it shouldn't). This isn't a 100% solution, but it fixes enough
+to unblock packaging work on a few distros.
+
+Thanks to mst++ for doing almost all of the legwork here, crux++ for an initial
+patch that gave us a few pointers to work from, and nine++ for giving us some
+Boxing Day fun ☺
+---
+ tools/build/Makefile-JVM.in      | 2 +-
+ tools/build/Makefile-Moar.in     | 2 +-
+ tools/build/install-core-dist.pl | 3 ++-
+ 3 files changed, 4 insertions(+), 3 deletions(-)
+
+diff --git a/tools/build/Makefile-JVM.in b/tools/build/Makefile-JVM.in
+index 11e1781..0a30951 100644
+--- tools/build/Makefile-JVM.in.orig
++++ tools/build/Makefile-JVM.in
+@@ -391,7 +391,7 @@ j-install: j-all tools/build/create-jvm-runner.pl tools/build/install-core-dist.
+ 	$(MKPATH) $(DESTDIR)$(PERL6_LANG_DIR)/site/resources
+ 	$(MKPATH) $(DESTDIR)$(PERL6_LANG_DIR)/site/bin
+ 	$(MKPATH) $(DESTDIR)$(PERL6_LANG_DIR)/site/short
+-	. at slash@$(J_RUNNER) tools/build/install-core-dist.pl
++	. at slash@$(J_RUNNER) tools/build/install-core-dist.pl $(DESTDIR)$(PERL6_LANG_DIR)
+ 	$(PERL) tools/build/create-jvm-runner.pl install "$(DESTDIR)" $(PREFIX) $(NQP_PREFIX) $(NQP_JARS)
+ 	$(PERL) tools/build/create-jvm-runner.pl install-debug "$(DESTDIR)" $(PREFIX) $(NQP_PREFIX) $(NQP_JARS)
+ 
+diff --git a/tools/build/Makefile-Moar.in b/tools/build/Makefile-Moar.in
+index 1e586d9..670b89c 100644
+--- tools/build/Makefile-Moar.in.orig
++++ tools/build/Makefile-Moar.in
+@@ -246,7 +246,7 @@ m-install: m-all tools/build/create-moar-runner.pl tools/build/install-core-dist
+ 	$(MKPATH) $(DESTDIR)$(PERL6_LANG_DIR)/site/resources
+ 	$(MKPATH) $(DESTDIR)$(PERL6_LANG_DIR)/site/bin
+ 	$(MKPATH) $(DESTDIR)$(PERL6_LANG_DIR)/site/short
+-	. at slash@$(M_RUNNER) tools/build/install-core-dist.pl
++	. at slash@$(M_RUNNER) tools/build/install-core-dist.pl $(DESTDIR)$(PERL6_LANG_DIR)
+ 	$(PERL) tools/build/create-moar-runner.pl "$(MOAR)" perl6.moarvm $(DESTDIR)$(PREFIX)/bin/perl6-m "$(PERL6_LANG_DIR)/runtime" "" "$(M_LIBPATH)" "$(PERL6_LANG_DIR)/lib" "$(PERL6_LANG_DIR)/runtime"
+ 	$(PERL) tools/build/create-moar-runner.pl "$(MOAR)" perl6-debug.moarvm $(DESTDIR)$(PREFIX)/bin/perl6-debug-m "$(PERL6_LANG_DIR)/runtime" "" "$(M_LIBPATH)" "$(PERL6_LANG_DIR)/lib" "$(PERL6_LANG_DIR)/runtime"
+ 	$(CHMOD) 755 $(DESTDIR)$(PREFIX)/bin/perl6-m$(M_BAT)
+diff --git a/tools/build/install-core-dist.pl b/tools/build/install-core-dist.pl
+index 0990b26..ba14b20 100644
+--- tools/build/install-core-dist.pl.orig
++++ tools/build/install-core-dist.pl
+@@ -9,7 +9,8 @@
+     "experimental"               => "lib/experimental.pm6",
+ ;
+ 
+-CompUnit::RepositoryRegistry.repository-for-name('perl').install(
++PROCESS::<$REPO> := CompUnit::RepositoryRegistry.repository-for-spec("inst#@*ARGS[0]");
++$*REPO.install(
+     Distribution.new(
+         name     => "CORE",
+         auth     => "perl",
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/macports-changes/attachments/20160202/fb014215/attachment-0001.html>


More information about the macports-changes mailing list