From 96441722e1253618b7739713cb19f6425e0c919a Mon Sep 17 00:00:00 2001 From: Keri Harris Date: Sun, 9 Oct 2016 11:27:14 +0200 Subject: [PATCH] dev-lang/tuprolog: version bump Package-Manager: portage-2.3.0 --- dev-lang/tuprolog/Manifest | 1 + dev-lang/tuprolog/files/build-3.0.0.xml | 110 ++++++++++++++ ...uprolog-3.0.0-no-dynamic-object-test.patch | 20 +++ .../files/tuprolog-3.0.0-no-ikvm.patch | 137 ++++++++++++++++++ .../tuprolog-3.0.0-oolibrary-unit-test.patch | 11 ++ dev-lang/tuprolog/tuprolog-3.0.0.ebuild | 67 +++++++++ 6 files changed, 346 insertions(+) create mode 100644 dev-lang/tuprolog/files/build-3.0.0.xml create mode 100644 dev-lang/tuprolog/files/tuprolog-3.0.0-no-dynamic-object-test.patch create mode 100644 dev-lang/tuprolog/files/tuprolog-3.0.0-no-ikvm.patch create mode 100644 dev-lang/tuprolog/files/tuprolog-3.0.0-oolibrary-unit-test.patch create mode 100644 dev-lang/tuprolog/tuprolog-3.0.0.ebuild diff --git a/dev-lang/tuprolog/Manifest b/dev-lang/tuprolog/Manifest index 99ab7861c14a..782017bfe850 100644 --- a/dev-lang/tuprolog/Manifest +++ b/dev-lang/tuprolog/Manifest @@ -2,3 +2,4 @@ DIST 2p-2.4.0.zip 2421675 SHA256 f674b282bd7bc60e92ea417f8766e635979366d84d48634 DIST tuprolog-2.7.2.tar.gz 9104934 SHA256 8b0c653d3c9d701197f13d8dec6e45548565cddfd052a5bec9578f4e6a50f21e SHA512 c327893e0fcf777b6ad8951b3baf88bc9527bf88e9d06ac54af04e777e6c0fc255b15f492c2cf483859d3a1966897d5969e1496370b88287b96e83d92babc722 WHIRLPOOL cf5082d0ca07f8bc59e678c27b1fb8aaa8879f6b15dc887949cb61760dfd721ba4a6fd5b05fb979ea94e6ab607dfcff5707be47d5ac657623556426e734ca395 DIST tuprolog-2.9.0.tar.gz 4841110 SHA256 e789c7f1777a4f57698ac4756d03574f8fd5be4cebb1d5226722c35df75e163f SHA512 be15c99c40f750f3d1d4b70ae7ced9fe3792e8747876b6190ec1a01dd287e0fa34f88671f99f9e3fd7249e6fd44da7c4dadce0cd111b44b24e0e43d31c85165e WHIRLPOOL ada10ff775dc5e55d5c55c4dc920f5a4e7f8654891a10cf815734649e384fe6351921b807c54f6a6e8503fcbd0cbd9ee7f1569140bb5eba7e77e4da85f907203 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 diff --git a/dev-lang/tuprolog/files/build-3.0.0.xml b/dev-lang/tuprolog/files/build-3.0.0.xml new file mode 100644 index 000000000000..823c2371d1fd --- /dev/null +++ b/dev-lang/tuprolog/files/build-3.0.0.xml @@ -0,0 +1,110 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dev-lang/tuprolog/files/tuprolog-3.0.0-no-dynamic-object-test.patch b/dev-lang/tuprolog/files/tuprolog-3.0.0-no-dynamic-object-test.patch new file mode 100644 index 000000000000..36e683f8c117 --- /dev/null +++ b/dev-lang/tuprolog/files/tuprolog-3.0.0-no-dynamic-object-test.patch @@ -0,0 +1,20 @@ +--- tuprolog-3.0.0.orig/test/unit/alice/tuprolog/JavaLibraryTestCase.java 2016-10-08 14:34:12.000000000 +0200 ++++ tuprolog-3.0.0/test/unit/alice/tuprolog/JavaLibraryTestCase.java 2016-10-08 17:30:18.525111794 +0200 +@@ -39,7 +39,7 @@ + SolveInfo goal = engine.solve(new Struct("demo", t)); + assertFalse(goal.isSuccess()); + } +- ++/* + public void testDynamicObjectsRetrival() throws PrologException { + Prolog engine = new Prolog(); + OOLibrary lib = (OOLibrary) engine.getLibrary("alice.tuprolog.lib.OOLibrary"); +@@ -53,7 +53,7 @@ + TestCounter counter = (TestCounter) lib.getRegisteredDynamicObject(id); + assertEquals(2, counter.getValue()); + } +- ++*/ + + public void test_java_object() throws PrologException, IOException + { diff --git a/dev-lang/tuprolog/files/tuprolog-3.0.0-no-ikvm.patch b/dev-lang/tuprolog/files/tuprolog-3.0.0-no-ikvm.patch new file mode 100644 index 000000000000..e0ee85c506c2 --- /dev/null +++ b/dev-lang/tuprolog/files/tuprolog-3.0.0-no-ikvm.patch @@ -0,0 +1,137 @@ +diff -urN tuprolog-3.0.0.orig/src/alice/tuprolog/LibraryManager.java tuprolog-3.0.0/src/alice/tuprolog/LibraryManager.java +--- tuprolog-3.0.0.orig/src/alice/tuprolog/LibraryManager.java 2016-10-08 14:33:19.000000000 +0200 ++++ tuprolog-3.0.0/src/alice/tuprolog/LibraryManager.java 2016-10-08 16:49:12.005214951 +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; + } + +-} +\ No newline at end of file ++} +diff -urN tuprolog-3.0.0.orig/src/alice/tuprologx/ide/LibraryManager.java tuprolog-3.0.0/src/alice/tuprologx/ide/LibraryManager.java +--- tuprolog-3.0.0.orig/src/alice/tuprologx/ide/LibraryManager.java 2016-10-08 14:33:19.000000000 +0200 ++++ tuprolog-3.0.0/src/alice/tuprologx/ide/LibraryManager.java 2016-10-08 16:49:12.006214951 +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.0.orig/src/alice/util/AssemblyCustomClassLoader.java tuprolog-3.0.0/src/alice/util/AssemblyCustomClassLoader.java +--- tuprolog-3.0.0.orig/src/alice/util/AssemblyCustomClassLoader.java 2016-10-08 14:33:19.000000000 +0200 ++++ tuprolog-3.0.0/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); +- } +-} +\ No newline at end of file +diff -urN tuprolog-3.0.0.orig/src/alice/util/proxyGenerator/Generator.java tuprolog-3.0.0/src/alice/util/proxyGenerator/Generator.java +--- tuprolog-3.0.0.orig/src/alice/util/proxyGenerator/Generator.java 2016-10-08 14:33:19.000000000 +0200 ++++ tuprolog-3.0.0/src/alice/util/proxyGenerator/Generator.java 2016-10-08 17:03:17.816179576 +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.0-oolibrary-unit-test.patch b/dev-lang/tuprolog/files/tuprolog-3.0.0-oolibrary-unit-test.patch new file mode 100644 index 000000000000..f9c13aecb9e7 --- /dev/null +++ b/dev-lang/tuprolog/files/tuprolog-3.0.0-oolibrary-unit-test.patch @@ -0,0 +1,11 @@ +--- tuprolog-3.0.0.orig/test/unit/alice/tuprolog/PrologTestCase.java 2016-10-08 14:34:12.000000000 +0200 ++++ tuprolog-3.0.0/test/unit/alice/tuprolog/PrologTestCase.java 2016-10-08 17:43:28.339078761 +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.0.ebuild b/dev-lang/tuprolog/tuprolog-3.0.0.ebuild new file mode 100644 index 000000000000..c91085154a01 --- /dev/null +++ b/dev-lang/tuprolog/tuprolog-3.0.0.ebuild @@ -0,0 +1,67 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +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}-no-dynamic-object-test.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 +} -- 2.26.2