diff options
Diffstat (limited to 'dev-lang/tuprolog')
-rw-r--r-- | dev-lang/tuprolog/Manifest | 15 | ||||
-rw-r--r-- | dev-lang/tuprolog/files/build-2.9.2.xml | 110 | ||||
-rw-r--r-- | dev-lang/tuprolog/files/build-3.0.1.xml | 110 | ||||
-rw-r--r-- | dev-lang/tuprolog/files/build-3.1.0.xml | 110 | ||||
-rw-r--r-- | dev-lang/tuprolog/files/tuprolog-2.9.2-no-dynamic-object-test.patch | 20 | ||||
-rw-r--r-- | dev-lang/tuprolog/files/tuprolog-2.9.2-no-ikvm.patch | 116 | ||||
-rw-r--r-- | dev-lang/tuprolog/files/tuprolog-3.0.1-no-ikvm.patch | 137 | ||||
-rw-r--r-- | dev-lang/tuprolog/files/tuprolog-3.0.1-oolibrary-unit-test.patch | 12 | ||||
-rw-r--r-- | dev-lang/tuprolog/files/tuprolog-3.1.0-no-ikvm.patch | 137 | ||||
-rw-r--r-- | dev-lang/tuprolog/metadata.xml | 11 | ||||
-rw-r--r-- | dev-lang/tuprolog/tuprolog-2.9.2.ebuild | 64 | ||||
-rw-r--r-- | dev-lang/tuprolog/tuprolog-3.0.1.ebuild | 65 | ||||
-rw-r--r-- | dev-lang/tuprolog/tuprolog-3.1.0.ebuild | 64 |
13 files changed, 971 insertions, 0 deletions
diff --git a/dev-lang/tuprolog/Manifest b/dev-lang/tuprolog/Manifest new file mode 100644 index 000000000000..73a15276f1db --- /dev/null +++ b/dev-lang/tuprolog/Manifest @@ -0,0 +1,15 @@ +AUX build-2.9.2.xml 2863 BLAKE2B f7c86965edbe1ba6d332b170caab1db5d872174b3b014d25dda12681e8183de1d5de9c3a3a2595d7e6ebd3f44528703f0f7478aa1e4f0fc6b24d182a51f3a88f SHA512 ca4dd0b76ae5a503a07f4c660f8715ff38b1c8e582de52928dad040f42a5fb7a9c774e039d9b7ca4b310b29241da6ab6b43115d741ed6dfbcc8538e384a05673 +AUX build-3.0.1.xml 2968 BLAKE2B e403d134a62504c396842f2fad71cf2aec1786c5d7902d7d08398894eb0dfe709617ae137b2249cf81d5c82f14707364b072990b1cc695b9deb49f6cffb96377 SHA512 4e65ba93141f8c47b2be9f534b05be3c4fa33428df73a23148b8f0f675f617071ad6c14c8aaa1f1ed6de03832f3e26b0b065b2f67834199244fbe55b398f0f20 +AUX build-3.1.0.xml 2968 BLAKE2B e403d134a62504c396842f2fad71cf2aec1786c5d7902d7d08398894eb0dfe709617ae137b2249cf81d5c82f14707364b072990b1cc695b9deb49f6cffb96377 SHA512 4e65ba93141f8c47b2be9f534b05be3c4fa33428df73a23148b8f0f675f617071ad6c14c8aaa1f1ed6de03832f3e26b0b065b2f67834199244fbe55b398f0f20 +AUX tuprolog-2.9.2-no-dynamic-object-test.patch 758 BLAKE2B 8e4ed5b4a5a12e6140c5bdf4074a02061cc82c50b29dfa7d09fc4b2b44b7a6b580abda565d1c1615ae864fcc7fc6a86b6d71e69e3eabec00e2bf92800da06ee8 SHA512 bbaef70b751fe049680826fb82dc46a339f88d7b8062df0865fddb15de2c991939e7e2fae0f889db0c72d802790287487f442316ad6c9e7fa7276b30083b7365 +AUX tuprolog-2.9.2-no-ikvm.patch 3929 BLAKE2B 0a6ec1d96c71762fee02b5701e2c445b000fae37eb335ed2a3fecdaabd4f28fbe894b2768a0c01e298accc267ff233e413370e7e744009b364b8b4888635b71f SHA512 a90b55f74841271a6ae9f4143203a9920adee9f7ab32c814d41f8830b7310919fcf035361f87fcd1ba7f7f0f0efe0c0a29ddff704c0d4d14ed2a41b4f7574a74 +AUX tuprolog-3.0.1-no-ikvm.patch 4844 BLAKE2B 6518c8821ef06f5b99de779d139b4d23e9e1458622edc267b237e7cb83d64164cd27a321d751423cbd0403a3666096322e80d0fdc6300df51a3ab54d4c1d9412 SHA512 c018d9028a9a4aea6c36057ac2d8b46d41da4961570fff491521c7b6bb816653db54a9e2a1049bd037aede7fa00262089f3787cad4a1e10836aa4f7442c727cd +AUX tuprolog-3.0.1-oolibrary-unit-test.patch 762 BLAKE2B 615eb657e9c40a4cec568ae1a8b1868eaaa94d7911386099b65f06dd8002f9d77bce675f79c03db0c900f4b7fb10149b95aa328c582674fefe94ec7af8996d9d SHA512 54e3e9ef7ecc5ff27e687067a057e0c66f37e4d5f268d670210df89435333f7e303e640e12a4afd3c7906e3c52cd2de2466dc81b6cd2113aeb2ee0c7b5ad7a88 +AUX tuprolog-3.1.0-no-ikvm.patch 4862 BLAKE2B c5e49ecc13f923157a9287ece06b1ecf1c8a418e449cc9f73ca6a5c2f2bbc7ec567b76ba04a43c6f42fce381941c1f5ee3897a6df20d6600e8d00c550100f9f2 SHA512 ceb45121b4bec54cdd26683ce1e7a63baea9d5c899cd5993d51cbaf8fdbc4b9138f926e164e1dd96eafb2af6b2112c44bf15b1f79c6b9096ac028e02c2dab1a0 +DIST tuprolog-2.9.2.tar.gz 6262268 BLAKE2B 39bbc4dcb2336a713f47252ff6f7d00f15aa0072c4864c2d3e453ec43b2c646f9cdc7a69444e21d9cc20ba283ddee5fd980855811f8f80ba4afe7c37cdd47317 SHA512 831c7390fe33fc57cb01d4b1d61485ac5df1aa8ebf386d5aae5c5d32f7677d46aa5aa6cc0eb1d3bb79989a54f8484ad8b97754b7f75fc21af6116ae170a28316 +DIST tuprolog-3.0.1.tar.gz 6326591 BLAKE2B a051eb3f22c01e1c269b167fa7d1daec6e4818229e2035c1140401c38094c53451ea720638adaa6d6fda0ea70daf6f5f1bc9ea84f1e4ba9de9f00ca83529697c SHA512 56fa96f717b5c8e56fd2979f2953744964d844e5abf215456e31309d3d92bde142f9bff55e6442b6de55f219c7f143a275ccf89359ff2f2944459bbc94770afa +DIST tuprolog-3.1.0.tar.gz 7201383 BLAKE2B 9d8b610240611cd5b3d0dae104a44c72bb5e7c0512e4dbf3e178204d9d36e461219cd869ca1e16e3054ca3e1ee34d3b2c6fa5c659df16f54e3266c7c826af8d6 SHA512 1093e29a79964cb3991326da14f020cdc8ff64f2444c84dbb6b22aa5c4ecbf48f74dbc26af0af949ccc31020573ce5908684af794db4654fb475efa697a82cbf +EBUILD tuprolog-2.9.2.ebuild 1277 BLAKE2B cfa11fb1920d066ca918328a048beb47a76dac97b7f3e2313cccdfcbed79dfbab71809bb3fa2fbea289955263727af42a430074320ee1f0a1f47c62d92d5a6cb SHA512 e54de1e3cc8dbace872cf4f06bb07318c63e9cedbda8569d0e3e76aee013af2cd94ff606fae66e95074dc55776564ca53c76ea5366343993eb737208b243e20d +EBUILD tuprolog-3.0.1.ebuild 1325 BLAKE2B 749b1347f9b21ba1a242121c2a0f6e993189fd3018a22cd208e2cbe6d65a45acfe2fa7f4a44b33cdcd56c9e9553f586085a0ea0698169b12fcb290ba064b76bd SHA512 65c6d6117900555181ccad3bdf6a13dbff505ff47e6c925b3020589043ff7c3bf6a60c17abc5433a2c8a378662c1d575962220f591e80f8d44e5a1ae907d8053 +EBUILD tuprolog-3.1.0.ebuild 1272 BLAKE2B 586ac94592d5d60f3b3aa16eca70acff2e169caf67c332e69bf2f60b692342596ab231974d1d24b4572b79751fcc6034d08689e1eaa4eb560f5bfa35a9946dc4 SHA512 bdaf84e58746284867230509ae2e97351e328f8dbc053aa36f45b009160a4e3b15667b6a3265e8d7a7b9c32cd5bbce35a038014fc0580196dfe004a2129014fa +MISC metadata.xml 318 BLAKE2B bbdb9dc3b4feafc27fa6fae1b0740bde801196a214bb96f5815a2a274c89d6208c158c2616e40f17fbef4f8becd03b686410a3ee7b8253cceb70b80bc4b03c5f SHA512 6a43476b9ed9a343488c8a80908e8b4fcb96c75d9a3e6b6c05c22d8ffb87f5c8df8a3cfd2db5297f60236d6740ab0770e68e1acb4c457398a280df9dc4c266a9 diff --git a/dev-lang/tuprolog/files/build-2.9.2.xml b/dev-lang/tuprolog/files/build-2.9.2.xml new file mode 100644 index 000000000000..823c2371d1fd --- /dev/null +++ b/dev-lang/tuprolog/files/build-2.9.2.xml @@ -0,0 +1,110 @@ +<?xml version="1.0" ?><project default="jar" name="tuprolog"> + + <!-- some properties --> + <property name="src.dir" value="src"/> + <property name="build.dir" value="build"/> + <property name="docs.dir" value="docs"/> + <property name="dist.dir" value="dist"/> + <property name="test.dir" value="test"/> + <property name="test.build.dir" value="test.build"/> + <property name="jarfile" value="${ant.project.name}.jar"/> + <property file="build.properties"/> + + <path id="compile.classpath"> + <fileset dir="lib" includes="*.jar"/> + <pathelement path="${gentoo.classpath}"/> + </path> + + <!-- init --> + <target name="init"> + <tstamp/> + <mkdir dir="${dist.dir}"/> + <mkdir dir="${build.dir}"/> + <mkdir dir="${docs.dir}"/> + <mkdir dir="${test.build.dir}"/> + </target> + + <!-- compile everything --> + <target depends="init" name="compile"> + <javac deprecation="off" + destdir="${build.dir}" + encoding="ISO-8859-1" + srcdir="${src.dir}" + target="1.7"> + <classpath> + <path refid="compile.classpath"/> + </classpath> + </javac> + <copy todir="${build.dir}"> + <fileset dir="${src.dir}"> + <exclude name="**/*.java"/> + </fileset> + </copy> + </target> + + <!-- build the jar file --> + <target depends="compile" name="jar"> + <jar basedir="${build.dir}" jarfile="${dist.dir}/${jarfile}"/> + <jar basedir="${build.dir}" jarfile="${dist.dir}/2p.jar"> + <manifest> + <attribute name="Main-Class" value="alice.tuprologx.ide.GUILauncher"/> + <attribute name="Class-Path" value="."/> + </manifest> + <zipgroupfileset dir="lib" includes="*.jar"/> + </jar> + </target> + + <!-- generate javadocs --> + <target depends="init" name="javadoc"> + <javadoc + author="false" + destdir="${docs.dir}" + encoding="ISO-8859-1" + breakiterator="yes" + packagenames="alice.*" + sourcepath="${src.dir}" + use="true" + version="true" + verbose="no" + windowtitle="${ant.project.name} API"> + <classpath> + <path refid="compile.classpath"/> + </classpath> + </javadoc> + </target> + + <!-- clean up --> + <target name="clean"> + <delete dir="${build.dir}"/> + <delete dir="${dist.dir}"/> + <delete dir="${docs.dir}"/> + <delete dir="${test.build.dir}"/> + </target> + + <!-- run testsuite --> + <target name="test"> + <path id="dist.classpath"> + <fileset dir="${dist.dir}"> + <include name="*.jar"/> + </fileset> + </path> + <javac classpathref="dist.classpath" + deprecation="off" + destdir="${test.build.dir}" + encoding="ISO-8859-1" + srcdir="${test.dir}/unit" + target="1.7"/> + <junit haltonfailure="on" showoutput="no" printsummary="yes"> + <classpath> + <path refid="dist.classpath"/> + <pathelement path="${test.build.dir}"/> + </classpath> + <formatter type="xml"/> + <batchtest todir="${test.build.dir}"> + <fileset dir="${test.build.dir}"> + <include name="**/*TestCase.class"/> + </fileset> + </batchtest> + </junit> + </target> +</project> 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..3b6f5818eaa6 --- /dev/null +++ b/dev-lang/tuprolog/files/build-3.0.1.xml @@ -0,0 +1,110 @@ +<?xml version="1.0" ?><project default="jar" name="tuprolog"> + + <!-- some properties --> + <property name="src.dir" value="src"/> + <property name="build.dir" value="build"/> + <property name="docs.dir" value="docs"/> + <property name="dist.dir" value="dist"/> + <property name="test.dir" value="test"/> + <property name="test.build.dir" value="test.build"/> + <property name="jarfile" value="${ant.project.name}.jar"/> + <property file="build.properties"/> + + <path id="compile.classpath"> + <fileset dir="lib" includes="*.jar"/> + <pathelement path="${gentoo.classpath}"/> + </path> + + <!-- init --> + <target name="init"> + <tstamp/> + <mkdir dir="${dist.dir}"/> + <mkdir dir="${build.dir}"/> + <mkdir dir="${docs.dir}"/> + <mkdir dir="${test.build.dir}"/> + </target> + + <!-- compile everything --> + <target depends="init" name="compile"> + <javac deprecation="off" + destdir="${build.dir}" + encoding="ISO-8859-1" + srcdir="${src.dir}" + source="1.8" + target="1.8"> + <classpath> + <path refid="compile.classpath"/> + </classpath> + </javac> + <copy todir="${build.dir}"> + <fileset dir="${src.dir}"> + <exclude name="**/*.java"/> + </fileset> + </copy> + </target> + + <!-- build the jar file --> + <target depends="compile" name="jar"> + <jar basedir="${build.dir}" jarfile="${dist.dir}/${jarfile}"/> + <jar basedir="${build.dir}" jarfile="${dist.dir}/2p.jar"> + <manifest> + <attribute name="Main-Class" value="alice.tuprologx.ide.GUILauncher"/> + <attribute name="Class-Path" value="."/> + </manifest> + <zipgroupfileset dir="lib" includes="*.jar"/> + </jar> + </target> + + <!-- generate javadocs --> + <target depends="init" name="javadoc"> + <javadoc + author="false" + destdir="${docs.dir}" + encoding="ISO-8859-1" + breakiterator="yes" + packagenames="alice.*" + sourcepath="${src.dir}" + use="true" + version="true" + verbose="no" + windowtitle="${ant.project.name} API"> + <classpath> + <path refid="compile.classpath"/> + </classpath> + </javadoc> + </target> + + <!-- clean up --> + <target name="clean"> + <delete dir="${build.dir}"/> + <delete dir="${dist.dir}"/> + <delete dir="${docs.dir}"/> + <delete dir="${test.build.dir}"/> + </target> + + <!-- run testsuite --> + <target name="test"> + <path id="dist.classpath"> + <fileset dir="${dist.dir}"> + <include name="*.jar"/> + </fileset> + </path> + <javac classpathref="dist.classpath" + deprecation="off" + destdir="${test.build.dir}" + encoding="ISO-8859-1" + srcdir="${test.dir}/unit" + source="1.8" + target="1.8"/> + <junit fork="yes" failureproperty="test.failed" printsummary="yes"> + <classpath> + <path refid="dist.classpath"/> + <pathelement path="${test.build.dir}"/> + </classpath> + <formatter type="xml"/> + <test name="alice.tuprolog.TuPrologTestSuite" todir="${test.build.dir}"/> + <test name="alice.tuprolog.ExceptionsTestSuite" todir="${test.build.dir}"/> + </junit> + <fail message="Test failure(s) detected" if="test.failed" /> + </target> +</project> diff --git a/dev-lang/tuprolog/files/build-3.1.0.xml b/dev-lang/tuprolog/files/build-3.1.0.xml new file mode 100644 index 000000000000..3b6f5818eaa6 --- /dev/null +++ b/dev-lang/tuprolog/files/build-3.1.0.xml @@ -0,0 +1,110 @@ +<?xml version="1.0" ?><project default="jar" name="tuprolog"> + + <!-- some properties --> + <property name="src.dir" value="src"/> + <property name="build.dir" value="build"/> + <property name="docs.dir" value="docs"/> + <property name="dist.dir" value="dist"/> + <property name="test.dir" value="test"/> + <property name="test.build.dir" value="test.build"/> + <property name="jarfile" value="${ant.project.name}.jar"/> + <property file="build.properties"/> + + <path id="compile.classpath"> + <fileset dir="lib" includes="*.jar"/> + <pathelement path="${gentoo.classpath}"/> + </path> + + <!-- init --> + <target name="init"> + <tstamp/> + <mkdir dir="${dist.dir}"/> + <mkdir dir="${build.dir}"/> + <mkdir dir="${docs.dir}"/> + <mkdir dir="${test.build.dir}"/> + </target> + + <!-- compile everything --> + <target depends="init" name="compile"> + <javac deprecation="off" + destdir="${build.dir}" + encoding="ISO-8859-1" + srcdir="${src.dir}" + source="1.8" + target="1.8"> + <classpath> + <path refid="compile.classpath"/> + </classpath> + </javac> + <copy todir="${build.dir}"> + <fileset dir="${src.dir}"> + <exclude name="**/*.java"/> + </fileset> + </copy> + </target> + + <!-- build the jar file --> + <target depends="compile" name="jar"> + <jar basedir="${build.dir}" jarfile="${dist.dir}/${jarfile}"/> + <jar basedir="${build.dir}" jarfile="${dist.dir}/2p.jar"> + <manifest> + <attribute name="Main-Class" value="alice.tuprologx.ide.GUILauncher"/> + <attribute name="Class-Path" value="."/> + </manifest> + <zipgroupfileset dir="lib" includes="*.jar"/> + </jar> + </target> + + <!-- generate javadocs --> + <target depends="init" name="javadoc"> + <javadoc + author="false" + destdir="${docs.dir}" + encoding="ISO-8859-1" + breakiterator="yes" + packagenames="alice.*" + sourcepath="${src.dir}" + use="true" + version="true" + verbose="no" + windowtitle="${ant.project.name} API"> + <classpath> + <path refid="compile.classpath"/> + </classpath> + </javadoc> + </target> + + <!-- clean up --> + <target name="clean"> + <delete dir="${build.dir}"/> + <delete dir="${dist.dir}"/> + <delete dir="${docs.dir}"/> + <delete dir="${test.build.dir}"/> + </target> + + <!-- run testsuite --> + <target name="test"> + <path id="dist.classpath"> + <fileset dir="${dist.dir}"> + <include name="*.jar"/> + </fileset> + </path> + <javac classpathref="dist.classpath" + deprecation="off" + destdir="${test.build.dir}" + encoding="ISO-8859-1" + srcdir="${test.dir}/unit" + source="1.8" + target="1.8"/> + <junit fork="yes" failureproperty="test.failed" printsummary="yes"> + <classpath> + <path refid="dist.classpath"/> + <pathelement path="${test.build.dir}"/> + </classpath> + <formatter type="xml"/> + <test name="alice.tuprolog.TuPrologTestSuite" todir="${test.build.dir}"/> + <test name="alice.tuprolog.ExceptionsTestSuite" todir="${test.build.dir}"/> + </junit> + <fail message="Test failure(s) detected" if="test.failed" /> + </target> +</project> diff --git a/dev-lang/tuprolog/files/tuprolog-2.9.2-no-dynamic-object-test.patch b/dev-lang/tuprolog/files/tuprolog-2.9.2-no-dynamic-object-test.patch new file mode 100644 index 000000000000..0416258e9e14 --- /dev/null +++ b/dev-lang/tuprolog/files/tuprolog-2.9.2-no-dynamic-object-test.patch @@ -0,0 +1,20 @@ +--- tuprolog-2.9.2.orig/test/unit/alice/tuprolog/JavaLibraryTestCase.java 2015-02-27 14:02:49.000000000 +0100 ++++ tuprolog-2.9.2/test/unit/alice/tuprolog/JavaLibraryTestCase.java 2016-02-17 15:24:47.000000000 +0100 +@@ -39,7 +39,7 @@ + SolveInfo goal = engine.solve(new Struct("demo", t));
+ assertFalse(goal.isSuccess());
+ }
+-
++/*
+ public void testDynamicObjectsRetrival() throws PrologException {
+ Prolog engine = new Prolog();
+ JavaLibrary lib = (JavaLibrary) engine.getLibrary("alice.tuprolog.lib.JavaLibrary");
+@@ -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-2.9.2-no-ikvm.patch b/dev-lang/tuprolog/files/tuprolog-2.9.2-no-ikvm.patch new file mode 100644 index 000000000000..d94dc66bbac5 --- /dev/null +++ b/dev-lang/tuprolog/files/tuprolog-2.9.2-no-ikvm.patch @@ -0,0 +1,116 @@ +diff -urN tuprolog-2.9.0.orig/src/alice/tuprolog/LibraryManager.java tuprolog-2.9.0/src/alice/tuprolog/LibraryManager.java +--- tuprolog-2.9.0.orig/src/alice/tuprolog/LibraryManager.java 2014-09-29 18:14:21.000000000 +0200 ++++ tuprolog-2.9.0/src/alice/tuprolog/LibraryManager.java 2015-01-11 14:48:57.000000000 +0100 +@@ -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-2.9.0.orig/src/alice/tuprologx/ide/LibraryManager.java tuprolog-2.9.0/src/alice/tuprologx/ide/LibraryManager.java +--- tuprolog-2.9.0.orig/src/alice/tuprologx/ide/LibraryManager.java 2014-09-29 18:14:21.000000000 +0200 ++++ tuprolog-2.9.0/src/alice/tuprologx/ide/LibraryManager.java 2015-01-11 14:46:23.000000000 +0100 +@@ -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-2.9.0.orig/src/alice/util/AssemblyCustomClassLoader.java tuprolog-2.9.0/src/alice/util/AssemblyCustomClassLoader.java +--- tuprolog-2.9.0.orig/src/alice/util/AssemblyCustomClassLoader.java 2014-09-29 18:14:21.000000000 +0200 ++++ tuprolog-2.9.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 --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/files/tuprolog-3.1.0-no-ikvm.patch b/dev-lang/tuprolog/files/tuprolog-3.1.0-no-ikvm.patch new file mode 100644 index 000000000000..eb20dacd4430 --- /dev/null +++ b/dev-lang/tuprolog/files/tuprolog-3.1.0-no-ikvm.patch @@ -0,0 +1,137 @@ +diff -urN tuprolog-3.1.0.orig/src/alice/tuprolog/LibraryManager.java tuprolog-3.1.0/src/alice/tuprolog/LibraryManager.java +--- tuprolog-3.1.0.orig/src/alice/tuprolog/LibraryManager.java 2017-10-08 17:06:55.710627376 +0200 ++++ tuprolog-3.1.0/src/alice/tuprolog/LibraryManager.java 2017-10-08 17:18:20.817598723 +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.1.0.orig/src/alice/tuprologx/ide/LibraryManager.java tuprolog-3.1.0/src/alice/tuprologx/ide/LibraryManager.java +--- tuprolog-3.1.0.orig/src/alice/tuprologx/ide/LibraryManager.java 2017-10-08 17:06:55.796627373 +0200 ++++ tuprolog-3.1.0/src/alice/tuprologx/ide/LibraryManager.java 2017-10-08 17:20:18.378593806 +0200 +@@ -19,7 +19,7 @@ +
+ import alice.tuprolog.*;
+ import alice.tuprolog.InvalidLibraryException;
+-import alice.util.AssemblyCustomClassLoader;
++//import alice.util.AssemblyCustomClassLoader;
+
+ import java.io.File;
+ import java.net.URL;
+@@ -27,7 +27,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.
+@@ -156,10 +156,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.1.0.orig/src/alice/util/AssemblyCustomClassLoader.java tuprolog-3.1.0/src/alice/util/AssemblyCustomClassLoader.java +--- tuprolog-3.1.0.orig/src/alice/util/AssemblyCustomClassLoader.java 2017-10-08 17:06:55.863627370 +0200 ++++ tuprolog-3.1.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);
+- }
+-} +\ Manca newline alla fine del file +diff -urN tuprolog-3.1.0.orig/src/alice/util/proxyGenerator/Generator.java tuprolog-3.1.0/src/alice/util/proxyGenerator/Generator.java +--- tuprolog-3.1.0.orig/src/alice/util/proxyGenerator/Generator.java 2017-10-08 17:06:55.877627369 +0200 ++++ tuprolog-3.1.0/src/alice/util/proxyGenerator/Generator.java 2017-10-08 17:18:20.819598723 +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/metadata.xml b/dev-lang/tuprolog/metadata.xml new file mode 100644 index 000000000000..fe29a2cf16ab --- /dev/null +++ b/dev-lang/tuprolog/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>prolog@gentoo.org</email> + <name>Prolog</name> + </maintainer> + <upstream> + <remote-id type="sourceforge">tuprolog</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-lang/tuprolog/tuprolog-2.9.2.ebuild b/dev-lang/tuprolog/tuprolog-2.9.2.ebuild new file mode 100644 index 000000000000..7de1440cd339 --- /dev/null +++ b/dev-lang/tuprolog/tuprolog-2.9.2.ebuild @@ -0,0 +1,64 @@ +# 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" +SLOT="0" +KEYWORDS="amd64 x86" +IUSE="doc examples test" + +RDEPEND=">=virtual/jdk-1.7:= + dev-java/javassist:3" + +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" + +src_prepare() { + epatch "${FILESDIR}"/${P}-no-ikvm.patch + epatch "${FILESDIR}"/${P}-no-dynamic-object-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 +} 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..e33e5e5b7142 --- /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.8:= + 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 +} diff --git a/dev-lang/tuprolog/tuprolog-3.1.0.ebuild b/dev-lang/tuprolog/tuprolog-3.1.0.ebuild new file mode 100644 index 000000000000..3da80e1506c2 --- /dev/null +++ b/dev-lang/tuprolog/tuprolog-3.1.0.ebuild @@ -0,0 +1,64 @@ +# 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.8:= + 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 + + 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 +} |