Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 432028 Details for
Bug 580732
dev-lang/moarvm: version bump to 2016.04
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
0003-dev-lang-nqp-revbump-to-2016.04.patch
0003-dev-lang-nqp-revbump-to-2016.04.patch (text/plain), 12.24 KB, created by
M. B.
on 2016-04-26 06:06:31 UTC
(
hide
)
Description:
0003-dev-lang-nqp-revbump-to-2016.04.patch
Filename:
MIME Type:
Creator:
M. B.
Created:
2016-04-26 06:06:31 UTC
Size:
12.24 KB
patch
obsolete
>From bd78d18da01fada54df8579a16cfe51859cad0a9 Mon Sep 17 00:00:00 2001 >From: "Marshall Brewer (Gentoo Key)" <tomboy64@sina.cn> >Date: Fri, 22 Apr 2016 05:21:48 +0200 >Subject: [PATCH 3/4] dev-lang/nqp: revbump to 2016.04 > >- Copyright adjusted >- Tests re-enabled >- EAPI6 enabled >- multi-threaded compilation re-enabled >- multi-threaded testing re-enabled > >Package-Manager: portage-2.2.28 >--- > dev-lang/nqp/Manifest | 1 + > dev-lang/nqp/files/enable-external-jars.patch | 210 ++++++++++++++++++++++++++ > dev-lang/nqp/nqp-2016.04.ebuild | 72 +++++++++ > 3 files changed, 283 insertions(+) > create mode 100644 dev-lang/nqp/files/enable-external-jars.patch > create mode 100644 dev-lang/nqp/nqp-2016.04.ebuild > >diff --git a/dev-lang/nqp/Manifest b/dev-lang/nqp/Manifest >index fe18590..31cdb1c 100644 >--- a/dev-lang/nqp/Manifest >+++ b/dev-lang/nqp/Manifest >@@ -1,3 +1,4 @@ > DIST nqp-2016.01.tar.gz 5117110 SHA256 87875120af7167093643f2a35869d66a61f735220a9348627ba89cf294387c8b SHA512 e79668f7f5f3679fe3b93f63e1151da1eab109ef4acc6f8ae3da3d9e5c3da814440dd43279978b1a13f30647d7c52bda5575b02f366bd928965b06b47c6d6d91 WHIRLPOOL d2369417707332d8bc045f6f93da81e1301ec2599f197664d80e6edeefc1bc7a2147ad3b7e893eef0fb6b96adf2f68f5ab44b948801e266e68d99552253abeda > DIST nqp-2016.02.tar.gz 5121833 SHA256 051ddd4bab8f73a688836d896340320ff7043a6ecbd5c53be099249e75e33b8d SHA512 9a3233e351ebdf73ed27d3eade2052936d1a49ea95d32a8176e426e7126c720e4a3f69dedc4067925272293329b08ab397f6a7523b9e4129952847fbd86fcf0d WHIRLPOOL 1bad2dc420d59f07c3d9b8d9dcc78d51a772ed2672419fc53e427c68e24fce5645a0dcfd4a4e138e6333f9e909297b49fafe190e6dc763cca8e52dce20309ec5 > DIST nqp-2016.03.tar.gz 5126687 SHA256 50731983cfc0800015bf73a2174000f5631ad09b551ff190153fba00a448067f SHA512 707701e22752cb43b0694c8c57ec834cfee3d2a50c2b6ae3ee36af5881728c94ae1d03d07c624367edb6cf58bba18abd26dcc18656b0483f4f979db5dd26a07e WHIRLPOOL 364abefc3d7b005b89fd3a3180e66971dbc56851377b93e38d2a8b2ed546121ec730628e0f93947f77e8f12346d64e60b4af8ffa720dc0a05810fae846b262a4 >+DIST nqp-2016.04.tar.gz 5156494 SHA256 9176422eb2a99db24ab520bc78686f3a2c008ba73bf8c7091a790985f5061019 SHA512 5dcb685a90b26fee3e8dac3ca24da11bd967d034b5328232d18d9db37e27645b57259cabf54ef8e10b3ac508b1aa784072f0a9542d30168d3017f86e610c3cee WHIRLPOOL 0711e1471740b0ed181f9e4504f810a084056e74650c0ffb1c6c17e2976b2c1facb6a7e73df5d991d9ffe43f055fe844f0756dbd816375708b4d499a0f7a9162 >diff --git a/dev-lang/nqp/files/enable-external-jars.patch b/dev-lang/nqp/files/enable-external-jars.patch >new file mode 100644 >index 0000000..dbb35c4 >--- /dev/null >+++ b/dev-lang/nqp/files/enable-external-jars.patch >@@ -0,0 +1,210 @@ >+diff --git a/Configure.pl b/Configure.pl >+index 2064ac8..73e2d27 100755 >+--- a/Configure.pl >++++ b/Configure.pl >+@@ -34,6 +34,7 @@ MAIN: { >+ 'no-clean', >+ 'with-parrot=s', 'gen-parrot:s', 'parrot-config=s', 'parrot-option=s@', >+ 'with-moar=s', 'gen-moar:s', 'moar-option=s@', >++ 'with-asm=s', 'with-asm-tree=s', 'with-jline=s', 'with-jna=s', >+ 'make-install!', 'makefile-timing!', >+ 'git-protocol=s', >+ 'git-depth=s', 'git-reference=s',); >+@@ -50,6 +51,49 @@ MAIN: { >+ "Use --prefix to specify a directory in which parrot is installed."; >+ } >+ >++ if ($options{'with-asm'}) { >++ if ($options{'with-asm'} ne '-') { >++ $config{'asm'} = $options{'with-asm'}; >++ } >++ } else { >++ $config{'asm'} = "3rdparty/asm/asm-4.1.jar"; >++ } >++ if ($options{'with-asm-tree'}) { >++ if ($options{'with-asm-tree'} ne '-') { >++ $config{'asmtree'} = $options{'with-asm-tree'}; >++ } >++ } else { >++ $config{'asmtree'} = "3rdparty/asm/asm-tree-4.1.jar"; >++ } >++ if ($options{'with-jline'}) { >++ if ($options{'with-jline'} ne '-') { >++ $config{'jline'} = $options{'with-jline'}; >++ } >++ } else { >++ $config{'jline'} = "3rdparty/jline/jline-1.0.jar"; >++ } >++ if ($options{'with-jna'}) { >++ if ($options{'with-jna'} ne '-') { >++ $config{'jna'} = $options{'with-jna'}; >++ } >++ } else { >++ $config{'jna'} = "3rdparty/jna/jna.jar"; >++ } >++ >++ if ($^O eq 'MSWin32') { >++ $config{'asmfile'} = $config{'asm'} =~ s/.*\\//r; >++ $config{'jlinefile'} = $config{'jline'} =~ s/.*\\//r; >++ } else { >++ $config{'asmfile'} = $config{'asm'} =~ s/.*\///r; >++ $config{'jlinefile'} = $config{'jline'} =~ s/.*\///r; >++ } >++ >++ fill_template_file( >++ 'tools/build/install-jvm-runner.pl.in', >++ 'tools/build/install-jvm-runner.pl', >++ %config, >++ ); >++ >+ my $default_backend; >+ my @backends; >+ my %backends; >+@@ -357,6 +401,11 @@ General Options: >+ --gen-moar Download and build a copy of MoarVM to use >+ --moar-option='--option=value' >+ Options to pass to MoarVM configuration for --gen-moar >++ --with-asm='/path/to/jar' >++ --with-asm-tree='/path/to/jar' >++ --with-jline='/path/to/jar' >++ --with-jna='/path/to/jar' >++ Provide paths to already installed jars >+ --git-protocol={ssh,https,git} >+ Protocol to use for git clone. Default: https >+ --make-install Immediately run `MAKE install` after configuring >+diff --git a/tools/build/Makefile-JVM.in b/tools/build/Makefile-JVM.in >+index 27959ad..c19965a 100644 >+--- a/tools/build/Makefile-JVM.in >++++ b/tools/build/Makefile-JVM.in >+@@ -2,7 +2,6 @@ BAT = @bat@ >+ JAVA = java >+ JAVAC = javac >+ JAR = jar >+-ASM = 3rdparty/asm/ >+ J_RUNNER = nqp-j$(BAT) >+ >+ NQP_JAR_DIR = $(NQP_LANG_DIR)/runtime >+@@ -18,7 +17,11 @@ RUNTIME_JAVAS = \ >+ >+ RUNTIME_JAR = nqp-runtime.jar >+ >+-THIRDPARTY_JARS = $(ASM)asm-4.1.jar@cpsep@$(ASM)asm-tree-4.1.jar@cpsep@3rdparty/jline/jline-1.0.jar@cpsep@3rdparty/jna/jna.jar >++ASM = @asm@ >++ASMTREE = @asmtree@ >++JLINE = @jline@ >++JNA = @jna@ >++THIRDPARTY_JARS = $(ASM)@cpsep@$(ASMTREE)@cpsep@$(JLINE)@cpsep@$(JNA) >+ J_STAGE0 = src/vm/jvm/stage0 >+ J_STAGE1 = $(JVM_BUILD_DIR)/stage1 >+ J_STAGE2 = $(JVM_BUILD_DIR)/stage2 >+@@ -80,8 +83,8 @@ j-install: j-all >+ $(MKPATH) $(DESTDIR)$(BIN_DIR) >+ $(MKPATH) $(DESTDIR)$(NQP_JAR_DIR) >+ $(MKPATH) $(DESTDIR)$(NQP_LIB_DIR) >+- $(CP) 3rdparty/asm/asm-4.1.jar 3rdparty/asm/asm-tree-4.1.jar $(DESTDIR)$(NQP_JAR_DIR) >+- $(CP) 3rdparty/jline/jline-1.0.jar 3rdparty/jna/jna.jar $(DESTDIR)$(NQP_JAR_DIR) >++ $(CP) $(ASM) $(ASMTREE) $(DESTDIR)$(NQP_JAR_DIR) >++ $(CP) $(JLINE) $(JNA) $(DESTDIR)$(NQP_JAR_DIR) >+ $(CP) $(RUNTIME_JAR) $(DESTDIR)$(NQP_JAR_DIR) >+ $(CP) $(NQP_MO_JAR) $(MODULE_LOADER_JAR) $(DESTDIR)$(NQP_LIB_DIR) >+ $(CP) $(CORE_SETTING_JAR) $(QASTNODE_JAR) $(QREGEX_JAR) $(DESTDIR)$(NQP_LIB_DIR) >+diff --git a/tools/build/install-jvm-runner.pl b/tools/build/install-jvm-runner.pl >+deleted file mode 100644 >+index 14541d6..0000000 >+--- a/tools/build/install-jvm-runner.pl >++++ /dev/null >+@@ -1,44 +0,0 @@ >+-#!/usr/bin/perl >+-# Copyright (C) 2013, The Perl Foundation. >+- >+-use strict; >+-use warnings; >+-use 5.008; >+-use File::Spec; >+- >+-my ($destdir, $prefix) = @ARGV; >+-my $realpath = $destdir.$prefix; >+- >+-unless (File::Spec->file_name_is_absolute($prefix)) { >+- $prefix = File::Spec->rel2abs($prefix); >+-} >+- >+-if ($^O eq 'MSWin32') { >+- my $jar_dir = File::Spec->catfile($prefix, 'share', 'nqp', 'runtime'); >+- my $lib_dir = File::Spec->catfile($prefix, 'share', 'nqp', 'lib'); >+- my $install_to = File::Spec->catfile($realpath, 'bin', 'nqp-j.bat'); >+- >+- open my $fh, ">", $install_to >+- or die "Could not open $install_to: $!"; >+- print $fh '@java -Xss1m -Xmx512m -Xbootclasspath/a:' . $jar_dir . '\\nqp-runtime.jar;' . >+- "$jar_dir\\asm-4.1.jar;$jar_dir\\jline-1.0.jar;$lib_dir\\nqp.jar -cp $lib_dir nqp %*\n"; >+- close $fh >+- or die "Could not close $install_to: $!"; >+-} >+-else { >+- my $nqp_dir = File::Spec->catfile($prefix, qw/share nqp/); >+- my $jar_dir = File::Spec->catfile('${NQP_DIR}', 'runtime'); >+- my $lib_dir = File::Spec->catfile('${NQP_DIR}', 'lib'); >+- my $jars = "$jar_dir/nqp-runtime.jar:$jar_dir/asm-4.1.jar:$jar_dir/jline-1.0.jar:$lib_dir/nqp.jar"; >+- my $install_to = File::Spec->catfile($realpath, 'bin', 'nqp-j'); >+- >+- open my $fh, ">", $install_to >+- or die "Could not open $install_to: $!"; >+- print $fh "#!/bin/sh\n"; >+- print $fh ": \${NQP_DIR:=\"$nqp_dir\"}\n"; >+- print $fh ": \${NQP_JARS:=\"$jars\"}\n"; >+- print $fh "exec java -Xss1m -Xmx512m -Xbootclasspath/a:\${NQP_JARS} -cp $lib_dir nqp \"\$\@\"\n"; >+- close $fh >+- or die "Could not close $install_to: $!"; >+- chmod 0755, $install_to; >+-} >+diff --git a/tools/build/install-jvm-runner.pl.in b/tools/build/install-jvm-runner.pl.in >+new file mode 100644 >+index 0000000..92a1109 >+--- /dev/null >++++ b/tools/build/install-jvm-runner.pl.in >+@@ -0,0 +1,44 @@ >++#!/usr/bin/perl >++# Copyright (C) 2013, The Perl Foundation. >++ >++use strict; >++use warnings; >++use 5.008; >++use File::Spec; >++ >++my ($destdir, $prefix) = @ARGV; >++my $realpath = $destdir.$prefix; >++ >++unless (File::Spec->file_name_is_absolute($prefix)) { >++ $prefix = File::Spec->rel2abs($prefix); >++} >++ >++if ($^O eq 'MSWin32') { >++ my $jar_dir = File::Spec->catfile($prefix, 'share', 'nqp', 'runtime'); >++ my $lib_dir = File::Spec->catfile($prefix, 'share', 'nqp', 'lib'); >++ my $install_to = File::Spec->catfile($realpath, 'bin', 'nqp-j.bat'); >++ >++ open my $fh, ">", $install_to >++ or die "Could not open $install_to: $!"; >++ print $fh '@java -Xss1m -Xmx512m -Xbootclasspath/a:' . $jar_dir . '\\nqp-runtime.jar;' . >++ "$jar_dir\\@asmfile@;$jar_dir\\@jlinefile@;$lib_dir\\nqp.jar -cp $lib_dir nqp %*\n"; >++ close $fh >++ or die "Could not close $install_to: $!"; >++} >++else { >++ my $nqp_dir = File::Spec->catfile($prefix, qw/share nqp/); >++ my $jar_dir = File::Spec->catfile('${NQP_DIR}', 'runtime'); >++ my $lib_dir = File::Spec->catfile('${NQP_DIR}', 'lib'); >++ my $jars = "$jar_dir/nqp-runtime.jar:$jar_dir/@asmfile@:$jar_dir/@jlinefile@:$lib_dir/nqp.jar"; >++ my $install_to = File::Spec->catfile($realpath, 'bin', 'nqp-j'); >++ >++ open my $fh, ">", $install_to >++ or die "Could not open $install_to: $!"; >++ print $fh "#!/bin/sh\n"; >++ print $fh ": \${NQP_DIR:=\"$nqp_dir\"}\n"; >++ print $fh ": \${NQP_JARS:=\"$jars\"}\n"; >++ print $fh "exec java -Xss1m -Xmx512m -Xbootclasspath/a:\${NQP_JARS} -cp $lib_dir nqp \"\$\@\"\n"; >++ close $fh >++ or die "Could not close $install_to: $!"; >++ chmod 0755, $install_to; >++} >diff --git a/dev-lang/nqp/nqp-2016.04.ebuild b/dev-lang/nqp/nqp-2016.04.ebuild >new file mode 100644 >index 0000000..afd9dfe >--- /dev/null >+++ b/dev-lang/nqp/nqp-2016.04.ebuild >@@ -0,0 +1,72 @@ >+# Copyright 1999-2016 Gentoo Foundation >+# Distributed under the terms of the GNU General Public License v2 >+# $Id$ >+ >+EAPI=6 >+ >+inherit java-pkg-2 >+ >+DESCRIPTION="Not Quite Perl, a Perl 6 bootstrapping compiler" >+HOMEPAGE="http://rakudo.org/" >+SRC_URI="https://github.com/perl6/${PN}/tarball/${PV} -> ${P}.tar.gz" >+ >+LICENSE="Artistic-2" >+SLOT="0" >+KEYWORDS="~x86 ~amd64" >+IUSE="doc java +moar" >+REQUIRED_USE="|| ( java moar )" >+ >+RDEPEND=" >+ java? ( >=virtual/jre-1.7:* >+ dev-java/asm:4 >+ dev-java/jline:0 ) >+ moar? ( ~dev-lang/moarvm-${PV} ) >+ dev-libs/libffi" >+DEPEND="${RDEPEND} >+ java? ( >=virtual/jdk-1.7:* ) >+ dev-lang/perl" >+S="${WORKDIR}/perl6-nqp" >+PATCHES=( "${FILESDIR}/enable-external-jars.patch" ) >+ >+pkg_setup() { >+ use java && java-pkg-2_pkg_setup >+} >+ >+src_prepare() { >+ eapply "${PATCHES[@]}" >+ eapply_user >+ use java && java-pkg-2_src_prepare >+} >+ >+src_unpack() { >+ unpack ${A} >+ mv "${WORKDIR}/perl6-nqp-"* "${WORKDIR}/perl6-nqp" || die >+} >+ >+src_configure() { >+ # 2016.04 doesn't like our jna-3.4.1 >+ local backends >+ use java && backends+="jvm," >+ use moar && backends+="moar" >+ local myconfargs=( >+ "--backend=${backends}" >+ "--with-asm=$(echo $(java-pkg_getjars asm-4) | tr : '\n' | grep '/asm\.jar$')" >+ "--with-asm-tree=$(echo $(java-pkg_getjars asm-4) | tr : '\n' | grep '/asm-tree\.jar$')" >+ "--with-jline=$(echo $(java-pkg_getjars jline) | tr : '\n' | grep '/jline\.jar$')" >+ "--prefix=/usr" ) >+ perl Configure.pl "${myconfargs[@]}" || die >+} >+ >+src_compile() { >+ emake >+} >+ >+src_install() { >+ emake DESTDIR="${ED}" install || die >+ >+ dodoc CREDITS README.pod || die >+ >+ if use doc; then >+ dodoc -r docs/* || die >+ fi >+} >-- >2.8.1 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 580732
:
431442
|
431450
|
431590
|
431592
|
432024
|
432026
|
432028
|
432030
|
432200
|
432440
|
433222
|
433650