From 4e0c207dd17da4bad4938f6320b2dce8c92b22c2 Mon Sep 17 00:00:00 2001 From: Keri Harris Date: Wed, 27 Sep 2017 19:39:32 +0200 Subject: dev-lang/tuprolog: version bump Package-Manager: Portage-2.3.8, Repoman-2.3.1 --- dev-lang/tuprolog/Manifest | 1 + dev-lang/tuprolog/files/build-3.0.1.xml | 108 ++++++++++++++++ .../tuprolog/files/tuprolog-3.0.1-no-ikvm.patch | 137 +++++++++++++++++++++ .../files/tuprolog-3.0.1-oolibrary-unit-test.patch | 12 ++ dev-lang/tuprolog/tuprolog-3.0.1.ebuild | 65 ++++++++++ 5 files changed, 323 insertions(+) create mode 100644 dev-lang/tuprolog/files/build-3.0.1.xml create mode 100644 dev-lang/tuprolog/files/tuprolog-3.0.1-no-ikvm.patch create mode 100644 dev-lang/tuprolog/files/tuprolog-3.0.1-oolibrary-unit-test.patch create mode 100644 dev-lang/tuprolog/tuprolog-3.0.1.ebuild (limited to 'dev-lang/tuprolog') diff --git a/dev-lang/tuprolog/Manifest b/dev-lang/tuprolog/Manifest index d771fa540f09..8751d389cc9f 100644 --- a/dev-lang/tuprolog/Manifest +++ b/dev-lang/tuprolog/Manifest @@ -1,2 +1,3 @@ DIST tuprolog-2.9.2.tar.gz 6262268 SHA256 4205dff584b492e10f214c71ce7bc0e81297a915156ca1e10cfac8b34c8c0a6e SHA512 831c7390fe33fc57cb01d4b1d61485ac5df1aa8ebf386d5aae5c5d32f7677d46aa5aa6cc0eb1d3bb79989a54f8484ad8b97754b7f75fc21af6116ae170a28316 WHIRLPOOL 18dceea5e95be3e60b10fa8692970e61d9b16b2f518ac342de271ac7c6cb8313e8e9ca359fb93753d43a2c09780e47f212776ce560f9c2fefdb21d44f3316c77 DIST tuprolog-3.0.0.tar.gz 6275327 SHA256 1c7a423cbd3faa626f8398a48ec6396c2d17431a77b1f22179d713cc76aeeb09 SHA512 7998dadb04b1314d096a33c54d11977534565accb3811b93a22f606fd838d2f9b0a6defe882992977a093832e1565283d3951dcc791809620deb61d3511c02d3 WHIRLPOOL 915a21632a2c86f33de25cc05ec75f3e40b33a0ba80f73219cfab6d06f69af07bc9d143a3d1cd80fbfd27fdeba9d4259f389f1a33704bfac2151403b26424e12 +DIST tuprolog-3.0.1.tar.gz 6326591 SHA256 e4ed2689dd5496175cddcfe299b442d92d580d778a0fd9a4c7beededa20dfbb7 SHA512 56fa96f717b5c8e56fd2979f2953744964d844e5abf215456e31309d3d92bde142f9bff55e6442b6de55f219c7f143a275ccf89359ff2f2944459bbc94770afa WHIRLPOOL 81d8421242ce8308418b7c40b7db6554cdbd92a4966aef4d73c414b675fca9148f5fce52ec2ef2a0c62025eda1c790013fb1b6bd20ac53a16f7be3fc61149004 diff --git a/dev-lang/tuprolog/files/build-3.0.1.xml b/dev-lang/tuprolog/files/build-3.0.1.xml new file mode 100644 index 000000000000..5815bc0d17c5 --- /dev/null +++ b/dev-lang/tuprolog/files/build-3.0.1.xml @@ -0,0 +1,108 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dev-lang/tuprolog/files/tuprolog-3.0.1-no-ikvm.patch b/dev-lang/tuprolog/files/tuprolog-3.0.1-no-ikvm.patch new file mode 100644 index 000000000000..660b22c79341 --- /dev/null +++ b/dev-lang/tuprolog/files/tuprolog-3.0.1-no-ikvm.patch @@ -0,0 +1,137 @@ +diff -urN tuprolog-3.0.1.orig/src/alice/tuprolog/LibraryManager.java tuprolog-3.0.1/src/alice/tuprolog/LibraryManager.java +--- tuprolog-3.0.1.orig/src/alice/tuprolog/LibraryManager.java 2017-09-27 12:31:06.689334505 +0200 ++++ tuprolog-3.0.1/src/alice/tuprolog/LibraryManager.java 2017-09-27 12:50:04.193286931 +0200 +@@ -9,11 +9,11 @@ + import java.net.URL; + import java.net.URLClassLoader; + import java.util.*; +-import cli.System.Reflection.Assembly; ++//import cli.System.Reflection.Assembly; + + import alice.tuprolog.event.LibraryEvent; + import alice.tuprolog.event.WarningEvent; +-import alice.util.AssemblyCustomClassLoader; ++//import alice.util.AssemblyCustomClassLoader; + + /** + * @author Alex Benini +@@ -179,31 +179,7 @@ + } else + // .NET + { +- Assembly asm = null; +- boolean classFound = false; +- className = "cli." +- + className.substring(0, className.indexOf(",")) +- .trim(); +- for (int i = 0; i < paths.length; i++) +- { +- try +- { +- asm = Assembly.LoadFrom(paths[i]); +- loader = new AssemblyCustomClassLoader(asm, urls); +- lib = (Library) Class.forName(className, true, loader).newInstance(); +- if (lib != null) +- { +- classFound = true; +- break; +- } +- } catch (Exception e) +- { +- e.printStackTrace(); +- continue; +- } +- } +- if (!classFound) +- throw new InvalidLibraryException(className, -1, -1); ++ throw new InvalidLibraryException(className, -1, -1); + } + } + +@@ -462,4 +438,4 @@ + return optimizedDirectory; + } + +-} +\ Manca newline alla fine del file ++} +diff -urN tuprolog-3.0.1.orig/src/alice/tuprologx/ide/LibraryManager.java tuprolog-3.0.1/src/alice/tuprologx/ide/LibraryManager.java +--- tuprolog-3.0.1.orig/src/alice/tuprologx/ide/LibraryManager.java 2017-09-27 12:31:06.696334504 +0200 ++++ tuprolog-3.0.1/src/alice/tuprologx/ide/LibraryManager.java 2017-09-27 12:50:04.194286931 +0200 +@@ -18,7 +18,7 @@ + package alice.tuprologx.ide; + + import alice.tuprolog.*; +-import alice.util.AssemblyCustomClassLoader; ++//import alice.util.AssemblyCustomClassLoader; + + import java.io.File; + import java.net.URL; +@@ -26,7 +26,7 @@ + import java.util.ArrayList; + import java.util.Hashtable; + import java.util.StringTokenizer; +-import cli.System.Reflection.Assembly; ++//import cli.System.Reflection.Assembly; + + /** + * A dynamic manager for tuProlog libraries. +@@ -155,10 +155,7 @@ + // .NET + if(System.getProperty("java.vm.name").equals("IKVM.NET")) + { +- Assembly asm = Assembly.LoadFrom(file.getPath()); +- loader = new AssemblyCustomClassLoader(asm, new URL[]{url}); +- libraryClassname = "cli." + libraryClassname.substring(0, +- libraryClassname.indexOf(",")).trim(); ++ throw new InvalidLibraryException(libraryClassname,-1,-1); + } + // JVM + else +diff -urN tuprolog-3.0.1.orig/src/alice/util/AssemblyCustomClassLoader.java tuprolog-3.0.1/src/alice/util/AssemblyCustomClassLoader.java +--- tuprolog-3.0.1.orig/src/alice/util/AssemblyCustomClassLoader.java 2017-09-27 12:31:06.699334504 +0200 ++++ tuprolog-3.0.1/src/alice/util/AssemblyCustomClassLoader.java 1970-01-01 01:00:00.000000000 +0100 +@@ -1,21 +0,0 @@ +-package alice.util; +- +-import java.net.URL; +- +-public class AssemblyCustomClassLoader extends java.net.URLClassLoader +-{ +- public AssemblyCustomClassLoader(cli.System.Reflection.Assembly asm, URL[] urls) +- { +- super(new java.net.URL[0], new ikvm.runtime.AssemblyClassLoader(asm)); +- // explicitly calling addURL() is safer than passing it to the super constructor, +- // because this class loader instance may be used during the URL construction. +- for (URL url : urls) { +- addURL(url); +- } +- } +- +- public void addUrl(URL url) +- { +- addURL(url); +- } +-} +\ Manca newline alla fine del file +diff -urN tuprolog-3.0.1.orig/src/alice/util/proxyGenerator/Generator.java tuprolog-3.0.1/src/alice/util/proxyGenerator/Generator.java +--- tuprolog-3.0.1.orig/src/alice/util/proxyGenerator/Generator.java 2017-09-27 12:31:06.700334504 +0200 ++++ tuprolog-3.0.1/src/alice/util/proxyGenerator/Generator.java 2017-09-27 12:50:04.195286931 +0200 +@@ -1,7 +1,7 @@ + package alice.util.proxyGenerator; + import javax.tools.*; + +-import cli.System.Reflection.Assembly; ++//import cli.System.Reflection.Assembly; + + import java.lang.reflect.*; + import java.util.*; +@@ -29,7 +29,7 @@ + } + + if(System.getProperty("java.vm.name").equals("IKVM.NET")) +- ikvm.runtime.Startup.addBootClassPathAssemby(Assembly.Load("IKVM.OpenJDK.Tools")); ++ throw new UnsupportedOperationException("IKVM.NET not supported!"); + + jc = ToolProvider.getSystemJavaCompiler(); + if (jc == null) { diff --git a/dev-lang/tuprolog/files/tuprolog-3.0.1-oolibrary-unit-test.patch b/dev-lang/tuprolog/files/tuprolog-3.0.1-oolibrary-unit-test.patch new file mode 100644 index 000000000000..9d09ff202b08 --- /dev/null +++ b/dev-lang/tuprolog/files/tuprolog-3.0.1-oolibrary-unit-test.patch @@ -0,0 +1,12 @@ +diff -ur tuprolog-3.0.1.orig/test/unit/alice/tuprolog/PrologTestCase.java tuprolog-3.0.1/test/unit/alice/tuprolog/PrologTestCase.java +--- tuprolog-3.0.1.orig/test/unit/alice/tuprolog/PrologTestCase.java 2017-09-27 12:31:12.908334244 +0200 ++++ tuprolog-3.0.1/test/unit/alice/tuprolog/PrologTestCase.java 2017-09-27 19:30:31.813282027 +0200 +@@ -32,7 +32,7 @@ + assertNotNull(engine.getLibrary("alice.tuprolog.StringLibrary")); + Library javaLibrary = new alice.tuprolog.lib.OOLibrary(); + engine.loadLibrary(javaLibrary); +- assertSame(javaLibrary, engine.getLibrary("alice.tuprolog.lib.JavaLibrary")); ++ assertSame(javaLibrary, engine.getLibrary("alice.tuprolog.lib.OOLibrary")); + } + + public void testGetLibraryWithName() throws InvalidLibraryException { diff --git a/dev-lang/tuprolog/tuprolog-3.0.1.ebuild b/dev-lang/tuprolog/tuprolog-3.0.1.ebuild new file mode 100644 index 000000000000..e0e56ba01614 --- /dev/null +++ b/dev-lang/tuprolog/tuprolog-3.0.1.ebuild @@ -0,0 +1,65 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 + +inherit eutils java-pkg-2 java-ant-2 + +DESCRIPTION="tuProlog is a light-weight Prolog for Internet applications and infrastructures" +HOMEPAGE="http://tuprolog.unibo.it/" +SRC_URI="mirror://gentoo/${P}.tar.gz" + +LICENSE="LGPL-3 BSD" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="doc examples test" + +RDEPEND=">=virtual/jdk-1.7:= + dev-java/javassist:3 + dev-java/commons-lang:3.1" + +DEPEND="${RDEPEND} + dev-java/ant-core + test? ( + dev-java/ant-junit4:0 + dev-java/junit:4 + dev-java/hamcrest-core:1.3 + )" + +S="${WORKDIR}"/${P} + +EANT_GENTOO_CLASSPATH="javassist:3,commons-lang-3.1" + +src_prepare() { + epatch "${FILESDIR}"/${P}-no-ikvm.patch + epatch "${FILESDIR}"/${P}-oolibrary-unit-test.patch + + cp "${FILESDIR}"/build-${PV}.xml "${S}"/build.xml || die +} + +src_compile() { + eant jar $(use_doc) +} + +src_test() { + cd "${S}"/dist + java-pkg_jar-from junit:4 + java-pkg_jar-from hamcrest-core:1.3 + cd "${S}" + ANT_TASKS="ant-junit4" eant test || die "eant test failed" +} + +src_install() { + java-pkg_dojar dist/${PN}.jar + java-pkg_dojar dist/2p.jar + + if use doc ; then + java-pkg_dohtml -r docs/* || die + dodoc doc/tuprolog-guide.pdf + fi + + if use examples ; then + insinto /usr/share/doc/${PF}/examples + doins doc/examples/*.pl + fi +} -- cgit v1.2.3-65-gdbad