From fad2050774dddbde79936890651b6c5943080d04 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Euzenat?= <Jerome.Euzenat@inria.fr>
Date: Thu, 26 May 2005 14:45:51 +0000
Subject: [PATCH] - ontoalign is now divided in three jars (align, procalign,
 alignwn) - ithere has been a lot of clean up in lib - there has been quite
 some clean up in ling

---
 build.xml              |  12 ++++++++----
 distrib/MANIFEST-pr.MF |   4 ++++
 distrib/MANIFEST-wn.MF |   4 ++++
 distrib/MANIFEST.MF    |   3 +--
 distrib/README.TXT     |   4 ++--
 lib/procalign.jar      | Bin 87273 -> 77905 bytes
 6 files changed, 19 insertions(+), 8 deletions(-)
 create mode 100644 distrib/MANIFEST-pr.MF
 create mode 100644 distrib/MANIFEST-wn.MF

diff --git a/build.xml b/build.xml
index 6b4a8bc7..62d72cc4 100644
--- a/build.xml
+++ b/build.xml
@@ -69,14 +69,18 @@
     <echo message="Jarchiving..."/>
     <copy file="distrib/LICENSE.TXT" tofile="classes/LICENSE.TXT" filtering="true"/>
     <delete file="lib/align.jar"/>
-    <jar jarfile="lib/align.jar">
+    <jar jarfile="lib/align.jar" manifest="distrib/MANIFEST.MF">
       <fileset dir="classes" includes="org/**/*.class"/>
       <fileset dir="classes" includes="LICENSE.TXT"/>
     </jar>
     <delete file="lib/procalign.jar"/>
-    <jar jarfile="lib/procalign.jar" manifest="distrib/MANIFEST.MF">
-      <fileset dir="classes" includes="fr/**/*.class"/>
-      <!--fileset dir="resources" includes="*.properties"/-->
+    <jar jarfile="lib/procalign.jar" manifest="distrib/MANIFEST-pr.MF">
+      <fileset dir="classes" includes="fr/**/*.class" excludes="fr/inrialpes/exmo/align/ling/**/*.class"/>
+      <fileset dir="classes" includes="LICENSE.TXT"/>
+    </jar>
+    <delete file="lib/alignwn.jar"/>
+    <jar jarfile="lib/alignwn.jar" manifest="distrib/MANIFEST-wn.MF">
+      <fileset dir="classes" includes="fr/inrialpes/exmo/align/ling/**/*.class"/>
       <fileset dir="classes" includes="LICENSE.TXT"/>
     </jar>
   </target>
diff --git a/distrib/MANIFEST-pr.MF b/distrib/MANIFEST-pr.MF
new file mode 100644
index 00000000..976994e7
--- /dev/null
+++ b/distrib/MANIFEST-pr.MF
@@ -0,0 +1,4 @@
+Manifest-Version: 1.0
+Created-By: Jerome.Euzenat@inrialpes.fr 
+Class-Path: api.jar impl.jar io.jar rdfparser.jar getopt.jar commons-logging.jar log4j.jar rdfapi.jar align.jar procalign.jar
+Main-Class: fr/inrialpes/exmo/align/util/Procalign
diff --git a/distrib/MANIFEST-wn.MF b/distrib/MANIFEST-wn.MF
new file mode 100644
index 00000000..13c629cc
--- /dev/null
+++ b/distrib/MANIFEST-wn.MF
@@ -0,0 +1,4 @@
+Manifest-Version: 1.0
+Created-By: Jerome.Euzenat@inrialpes.fr 
+Class-Path: api.jar impl.jar io.jar rdfparser.jar jwnl.jar getopt.jar commons-logging.jar log4j.jar rdfapi.jar align.jar procalign.jar alignwn.jar
+Main-Class: fr/inrialpes/exmo/align/util/Procalign
diff --git a/distrib/MANIFEST.MF b/distrib/MANIFEST.MF
index cf807956..d25b20d2 100644
--- a/distrib/MANIFEST.MF
+++ b/distrib/MANIFEST.MF
@@ -1,4 +1,3 @@
 Manifest-Version: 1.0
 Created-By: Jerome.Euzenat@inrialpes.fr 
-Class-Path: api.jar examples.jar impl.jar io.jar owltest.jar rdfparser.jar jwnl.jar dig.jar getopt.jar inference.jar commons-logging.jar log4j.jar rdfapi.jar validation.jar align.jar procalign.jar
-Main-Class: fr/inrialpes/exmo/align/util/Procalign
+Class-Path: api.jar impl.jar io.jar rdfparser.jar getopt.jar commons-logging.jar log4j.jar rdfapi.jar align.jar
diff --git a/distrib/README.TXT b/distrib/README.TXT
index f4a3f089..6da81681 100644
--- a/distrib/README.TXT
+++ b/distrib/README.TXT
@@ -1,7 +1,7 @@
 Ontology alignment API and implementation, version @VERS@
 @DATE@
 
-Copyright (C) 2003-2004 INRIA Rhône-Alpes.
+Copyright (C) 2003-2005 INRIA Rhône-Alpes.
 Copyright (C) 2004 Université de Montréal.
 
 This program is free software; you can redistribute it and/or
@@ -63,7 +63,7 @@ Using with JWNL (Wordnet)
 - jwnl.jar commons-logging.jar must be in lib.
 - file_properties.xml must be in current directory
 
-$ java -jar lib/procalign.jar file://localhost$CWD/rdf/edu.umbc.ebiquity.publication.owl file://localhost$CWD/rdf/edu.mit.visus.bibtex.owl -i fr.inrialpes.exmo.align.ling.JWNLAlignmentTest -o aligns/JWNL.owl
+$ java -jar lib/alignwn.jar file://localhost$CWD/rdf/edu.umbc.ebiquity.publication.owl file://localhost$CWD/rdf/edu.mit.visus.bibtex.owl -i fr.inrialpes.exmo.align.ling.JWNLAlignmentTest -o aligns/JWNL.owl
 
 LAST RELEASE
 ------------
diff --git a/lib/procalign.jar b/lib/procalign.jar
index d2c18ca7dda62e1c77967dbb418b33787320c20a..57d257fc30ffc022cae14b0223fa5ba66e6bb81e 100644
GIT binary patch
delta 2622
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
X=dx`nYPd_WuoKAEfrM1+VROiTF|Yr0

delta 11831
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
G0Qf%_A%c$p

-- 
GitLab