summaryrefslogtreecommitdiff
path: root/external
diff options
context:
space:
mode:
authorKhaled Hosny <khaledhosny@eglug.org>2013-11-03 20:07:33 +0200
committerDavid Tardon <dtardon@redhat.com>2013-11-04 02:24:39 -0600
commit11d41e980a5e2d5a4f75183af422a99a79692fc4 (patch)
treef7391dc5c36036d69ae568c13f6054d57b7704db /external
parente485e0ffb51ed11325a31fe77e84252be6c9fad9 (diff)
fdo#70393: move languagetool to a subdir of external
Change-Id: I402682f21d16c3069d5b6885bd75998bd2e16b3f Reviewed-on: https://gerrit.libreoffice.org/6544 Reviewed-by: David Tardon <dtardon@redhat.com> Tested-by: David Tardon <dtardon@redhat.com>
Diffstat (limited to 'external')
-rw-r--r--external/Module_external.mk1
-rw-r--r--external/languagetool/ExtensionPackage_LanguageTool.mk14
-rw-r--r--external/languagetool/ExternalProject_languagetool.mk42
-rw-r--r--external/languagetool/JLanguageTool-1.4.0-no-hc.patch22
-rw-r--r--external/languagetool/JLanguageTool-1.7.0.patch141
-rw-r--r--external/languagetool/Makefile7
-rw-r--r--external/languagetool/MessageBox-apichange.patch30
-rw-r--r--external/languagetool/Module_languagetool.mk22
-rw-r--r--external/languagetool/README5
-rw-r--r--external/languagetool/UnpackedTarball_languagetool.mk22
10 files changed, 306 insertions, 0 deletions
diff --git a/external/Module_external.mk b/external/Module_external.mk
index 089a6323979b..2547160110b9 100644
--- a/external/Module_external.mk
+++ b/external/Module_external.mk
@@ -44,6 +44,7 @@ $(eval $(call gb_Module_add_moduledirs,external,\
$(call gb_Helper_optional,ICU,icu) \
$(call gb_Helper_optional,JFREEREPORT,jfreereport) \
$(call gb_Helper_optional,JPEG,jpeg) \
+ $(call gb_Helper_optional,LANGUAGETOOL,languagetool) \
$(call gb_Helper_optional,LCMS2,lcms2) \
$(call gb_Helper_optional,LIBATOMIC_OPS,libatomic_ops) \
$(call gb_Helper_optional,LIBEXTTEXTCAT,libexttextcat) \
diff --git a/external/languagetool/ExtensionPackage_LanguageTool.mk b/external/languagetool/ExtensionPackage_LanguageTool.mk
new file mode 100644
index 000000000000..3b685d707449
--- /dev/null
+++ b/external/languagetool/ExtensionPackage_LanguageTool.mk
@@ -0,0 +1,14 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_ExtensionPackage_ExtensionPackage,LanguageTool,$(call gb_UnpackedTarball_get_dir,languagetool)/dist/LanguageTool.oxt))
+
+$(eval $(call gb_ExtensionPackage_use_external_project,LanguageTool,languagetool))
+
+# vim: set noet sw=4 ts=4:
diff --git a/external/languagetool/ExternalProject_languagetool.mk b/external/languagetool/ExternalProject_languagetool.mk
new file mode 100644
index 000000000000..20ebdf576fec
--- /dev/null
+++ b/external/languagetool/ExternalProject_languagetool.mk
@@ -0,0 +1,42 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_ExternalProject_ExternalProject,languagetool))
+
+$(eval $(call gb_ExternalProject_register_targets,languagetool,\
+ build \
+))
+
+$(eval $(call gb_ExternalProject_use_jars,languagetool,\
+ juh \
+ jurt \
+ ridl \
+ unoil \
+))
+
+$(call gb_ExternalProject_get_state_target,languagetool,build) :
+ cd "$(call gb_UnpackedTarball_get_dir,languagetool)" && \
+ $(ICECREAM_RUN) "$(ANT)" \
+ -q \
+ -f build.xml \
+ -Dbuild.label="build-$(LIBO_VERSION_MAJOR).$(LIBO_VERSION_MINOR).$(LIBO_VERSION_MICRO).$(LIBO_VERSION_PATCH)" \
+ $(if $(filter yes,$(JAVACISGCJ))\
+ ,-Dbuild.compiler=gcj \
+ ,-Dant.build.javac.source=$(JAVA_SOURCE_VER) \
+ -Dant.build.javac.target=$(JAVA_TARGET_VER) \
+ ) \
+ $(if $(debug),-Dbuild.debug="on") \
+ -Dext.ooo.juh.lib="$(call gb_Jar_get_target,juh)" \
+ -Dext.ooo.jurt.lib="$(call gb_Jar_get_target,jurt)" \
+ -Dext.ooo.ridl.lib="$(call gb_Jar_get_target,ridl)" \
+ -Dext.ooo.unoil.lib="$(call gb_Jar_get_target,unoil)" \
+ dist && \
+ touch $@
+
+# vim: set noet sw=4 ts=4:
diff --git a/external/languagetool/JLanguageTool-1.4.0-no-hc.patch b/external/languagetool/JLanguageTool-1.4.0-no-hc.patch
new file mode 100644
index 000000000000..4337ec6eb697
--- /dev/null
+++ b/external/languagetool/JLanguageTool-1.4.0-no-hc.patch
@@ -0,0 +1,22 @@
+--- misc/build/JLanguageTool-1.7.0/build.xml 2012-02-29 22:18:05.118789546 +0100
++++ misc/build/JLanguageTool-1.7.0/build.xml 2012-02-29 22:17:02.385235706 +0100
+@@ -82,7 +82,6 @@
+ <include name="openoffice/Linguistic.xcu"/>
+ <include name="openoffice/description.xml"/>
+ <include name="openoffice/images/dialog.png"/>
+- <include name="openoffice/images/dialogh.png"/>
+ <include name="openoffice/images/LanguageToolBig.png"/>
+ <include name="openoffice/images/LanguageToolSmall.png"/>
+ <include name="openoffice/images/dialog.png"/>
+--- misc/build/JLanguageTool-1.7.0/openoffice/Linguistic.xcu 2011-06-26 20:29:43.000000000 +0200
++++ misc/build/JLanguageTool-1.7.0/openoffice/Linguistic.xcu 2012-02-29 22:17:25.551071099 +0100
+@@ -27,9 +27,6 @@
+ <prop oor:name="SpellAndGrammarDialogImage" oor:type="xs:string">
+ <value>%origin%/images/dialog.png</value>
+ </prop>
+- <prop oor:name="SpellAndGrammarDialogImage_HC" oor:type="xs:string">
+- <value>%origin%/images/dialogh.png</value>
+- </prop>
+ </node>
+ </node>
+ </node>
diff --git a/external/languagetool/JLanguageTool-1.7.0.patch b/external/languagetool/JLanguageTool-1.7.0.patch
new file mode 100644
index 000000000000..782b683af79e
--- /dev/null
+++ b/external/languagetool/JLanguageTool-1.7.0.patch
@@ -0,0 +1,141 @@
+diff -Naur misc/build/JLanguageTool-1.7.0/build.xml misc/build/JLanguageTool-1.7.0_patched/build.xml
+--- misc/build/JLanguageTool-1.7.0/build.xml 2012-06-25 08:22:35.000000000 +0200
++++ misc/build/JLanguageTool-1.7.0_patched/build.xml 2012-06-25 09:27:39.077442000 +0200
+@@ -29,7 +29,9 @@
+ <pathelement location="${ext.CJFtransform.lib}" />
+ <pathelement location="${ext.commons-validator.lib}" />
+ <!-- -->
+- <pathelement location="${ext.ooo.juh.lib}" />
++ <pathelement location="${ext.junit.lib}"/>
++ <!-- -->
++ <pathelement location="${ext.ooo.juh.lib}" />
+ <pathelement location="${ext.ooo.unoil.lib}" />
+ <pathelement location="${ext.ooo.ridl.lib}" />
+ <pathelement location="${ext.ooo.jurt.lib}" />
+@@ -442,11 +444,11 @@
+ <!-- ================================================================== -->
+
+ <target name="dist" depends="ooo-internal" description="Builds one ZIP for both OpenOffice.org and stand-alone use">
+-<zip compress="yes" destfile="${dist.dir}/LanguageTool-${version}.oxt" basedir="${dist.dir}" includes="**" excludes="deploy.sh,undeploy.sh,turn.sh,printlocales.jar" />
++<zip compress="yes" destfile="${dist.dir}/LanguageTool.oxt" basedir="${dist.dir}" includes="**" excludes="deploy.sh,undeploy.sh,turn.sh,printlocales.jar" />
+ </target>
+
+ <target name="fast" depends="ooo-internal" description="like dist, but without ZIP compression (for development only)">
+-<zip compress="no" destfile="${dist.dir}/LanguageTool-${version}.oxt" basedir="${dist.dir}" includes="**" excludes="deploy.sh,undeploy.sh,turn.sh,printlocales.jar" />
++<zip compress="no" destfile="${dist.dir}/LanguageTool.oxt" basedir="${dist.dir}" includes="**" excludes="deploy.sh,undeploy.sh,turn.sh,printlocales.jar" />
+ </target>
+
+ <target name="common" depends="clean,init,build,ooo-build">
+@@ -651,7 +653,6 @@
+ <copy file="${resource.dir}/ast/asturian.dict" todir="${dist.dir}/resource/ast" />
+ <copy file="${resource.dir}/ast/asturian.info" todir="${dist.dir}/resource/ast" />
+
+- <copy file="${resource.dir}/xx/dummy.dict" tofile="${dist.dir}/resource/cs/czech.dict" />
+ <copy todir="${dist.dir}/rules">
+ <fileset dir="src/rules" excludes="CVS" />
+ </copy>
+@@ -678,7 +678,7 @@
+
+ <filter filtersFile="ooolocales.properties" />
+ <copy filtering="true" encoding="${encoding}" todir="${dist.dir}/">
+- <fileset dir="openoffice/" includes="description.xml,*.xcu,Options.xdl,META-INF/**" />
++ <fileset dir="openoffice/" includes="components.rdb,description.xml,*.xcu,Options.xdl,META-INF/**" />
+ </copy>
+ <copy todir="${dist.dir}/">
+ <fileset dir="openoffice/" includes="images/**,help/**" />
+diff -Naur misc/build/JLanguageTool-1.7.0/openoffice/components.rdb misc/build/JLanguageTool-1.7.0_patched/openoffice/components.rdb
+--- misc/build/JLanguageTool-1.7.0/openoffice/components.rdb 1970-01-01 01:00:00.000000000 +0100
++++ misc/build/JLanguageTool-1.7.0_patched/openoffice/components.rdb 2012-06-25 10:26:23.183633100 +0200
+@@ -0,0 +1,9 @@
++<?xml version="1.0"?>
++<components xmlns="http://openoffice.org/2010/uno-components">
++ <component loader="com.sun.star.loader.Java2" uri="./LanguageTool.uno.jar">
++ <implementation name="org.languagetool.openoffice.Main">
++ <service name="com.sun.star.linguistic2.Proofreader"/>
++ <service name="org.languagetool.openoffice.Main"/>
++ </implementation>
++ </component>
++</components>
+diff -Naur misc/build/JLanguageTool-1.7.0/openoffice/META-INF/manifest.xml misc/build/JLanguageTool-1.7.0_patched/openoffice/META-INF/manifest.xml
+--- misc/build/JLanguageTool-1.7.0/openoffice/META-INF/manifest.xml 2012-06-25 08:22:34.000000000 +0200
++++ misc/build/JLanguageTool-1.7.0_patched/openoffice/META-INF/manifest.xml 2012-06-25 09:39:56.751738000 +0200
+@@ -2,8 +2,8 @@
+ <manifest:manifest>
+ <manifest:file-entry manifest:full-path="Addons.xcu"
+ manifest:media-type="application/vnd.sun.star.configuration-data" />
+- <manifest:file-entry manifest:full-path="LanguageTool.uno.jar"
+- manifest:media-type="application/vnd.sun.star.uno-component;type=Java" />
++ <manifest:file-entry manifest:full-path="components.rdb"
++ manifest:media-type="application/vnd.sun.star.uno-components" />
+ <manifest:file-entry
+ manifest:media-type="application/vnd.sun.star.configuration-data"
+ manifest:full-path="Linguistic.xcu" />
+diff -Naur misc/build/JLanguageTool-1.7.0/openoffice/description.xml misc/build/JLanguageTool-1.7.0_patched/openoffice/description.xml
+--- misc/build/JLanguageTool-1.7.0/openoffice/description.xml 2012-06-25 08:22:35.000000000 +0200
++++ misc/build/JLanguageTool-1.7.0_patched/openoffice/description.xml 2012-06-25 10:29:48.520591800 +0200
+@@ -21,7 +21,7 @@
+ <name lang="zh">LanguageTool. 开源的语言检查工具</name>
+ <name lang="br">LanguageTool. Reizher reizhskrivadurel frank.</name>
+ </display-name>
+- <version value="@version@" />
++ <version value="1.7.1" />
+ <release-notes>
+ <src xlink:href="CHANGES.txt" lang="en" />
+ </release-notes>
+diff -Naur misc/build/JLanguageTool-1.7.0/src/java/org/languagetool/gui/Configuration.java misc/build/JLanguageTool-1.7.0_patched/src/java/org/languagetool/gui/Configuration.java
+--- misc/build/JLanguageTool-1.7.0/src/java/org/languagetool/gui/Configuration.java 2012-06-25 08:21:31.000000000 +0200
++++ misc/build/JLanguageTool-1.7.0_patched/src/java/org/languagetool/gui/Configuration.java 2012-06-25 09:31:40.737466400 +0200
+@@ -23,6 +23,7 @@
+ import java.io.FileNotFoundException;
+ import java.io.FileOutputStream;
+ import java.io.IOException;
++import java.lang.ClassLoader;
+ import java.util.*;
+
+ import org.languagetool.Language;
+@@ -142,7 +143,18 @@
+
+ final String motherTongueStr = (String) props.get(MOTHER_TONGUE_CONFIG_KEY);
+ if (motherTongueStr != null) {
+- motherTongue = Language.getLanguageForShortName(motherTongueStr);
++ // FIXME: hack to disable the functionality for JRE 1.5
++ // javax.xml.bind.JAXBException is part of JRE 1.6
++ boolean isJRE15 = false;
++ try {
++ ClassLoader cl = ClassLoader.getSystemClassLoader();
++ cl.loadClass("javax.xml.bind.JAXBException");
++ } catch (ClassNotFoundException e) {
++ isJRE15 = true;
++ }
++ if (!isJRE15) {
++ motherTongue = Language.getLanguageForShortName(motherTongueStr);
++ }
+ }
+
+ final String autoDetectStr = (String) props.get(AUTO_DETECT_CONFIG_KEY);
+diff -Naur misc/build/JLanguageTool-1.7.0/src/java/org/languagetool/openoffice/Main.java misc/build/JLanguageTool-1.7.0_patched/src/java/org/languagetool/openoffice/Main.java
+--- misc/build/JLanguageTool-1.7.0/src/java/org/languagetool/openoffice/Main.java 2012-06-25 08:21:28.000000000 +0200
++++ misc/build/JLanguageTool-1.7.0_patched/src/java/org/languagetool/openoffice/Main.java 2012-06-25 09:36:03.778528700 +0200
+@@ -24,6 +24,7 @@
+ * @author Marcin Miłkowski
+ */
+ import java.io.File;
++import java.lang.ClassLoader;
+ import java.util.ArrayList;
+ import java.util.Arrays;
+ import java.util.Comparator;
+@@ -494,6 +495,14 @@
+ */
+ @Override
+ public final Locale[] getLocales() {
++ // FIXME: hack to disable the functionality for JRE 1.5
++ // javax.xml.bind.JAXBException is part of JRE 1.6
++ try {
++ ClassLoader cl = ClassLoader.getSystemClassLoader();
++ cl.loadClass("javax.xml.bind.JAXBException");
++ } catch (ClassNotFoundException e) {
++ return new Locale[0];
++ }
+ try {
+ int dims = 0;
+ for (final Language element : Language.LANGUAGES) {
diff --git a/external/languagetool/Makefile b/external/languagetool/Makefile
new file mode 100644
index 000000000000..e4968cf85fb6
--- /dev/null
+++ b/external/languagetool/Makefile
@@ -0,0 +1,7 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+
+module_directory:=$(dir $(realpath $(firstword $(MAKEFILE_LIST))))
+
+include $(module_directory)/../../solenv/gbuild/partial_build.mk
+
+# vim: set noet sw=4 ts=4:
diff --git a/external/languagetool/MessageBox-apichange.patch b/external/languagetool/MessageBox-apichange.patch
new file mode 100644
index 000000000000..ceea259b88ac
--- /dev/null
+++ b/external/languagetool/MessageBox-apichange.patch
@@ -0,0 +1,30 @@
+--- misc/build/JLanguageTool-1.7.0/src/java/org/languagetool/openoffice/OOoAboutDialog.java 2013-07-11 13:33:26.681387525 +0100
++++ misc/build/JLanguageTool-1.7.0/src/java/org/languagetool/openoffice/OOoAboutDialog.java 2013-07-11 13:34:46.666424549 +0100
+@@ -19,6 +19,7 @@
+ package org.languagetool.openoffice;
+
+ import com.sun.star.awt.Rectangle;
++import com.sun.star.awt.MessageBoxType;
+ import com.sun.star.awt.XMessageBox;
+ import com.sun.star.awt.XMessageBoxFactory;
+ import com.sun.star.awt.XWindowPeer;
+@@ -49,16 +50,14 @@
+ .getString("guiMenuAbout"));
+ final XMessageBoxFactory messageBoxFactory = (XMessageBoxFactory) UnoRuntime
+ .queryInterface(XMessageBoxFactory.class, winPeer.getToolkit());
+- final Rectangle messageBoxRectangle = new Rectangle();
+ final XMessageBox box = messageBoxFactory
+ .createMessageBox(
+ winPeer,
+- messageBoxRectangle,
+- "infobox",
++ MessageBoxType.INFOBOX,
+ 0,
+ aboutDialogTitle,
+ getAboutText());
+ box.execute();
+ }
+
+-}
+\ No newline at end of file
++}
diff --git a/external/languagetool/Module_languagetool.mk b/external/languagetool/Module_languagetool.mk
new file mode 100644
index 000000000000..0574d55d6856
--- /dev/null
+++ b/external/languagetool/Module_languagetool.mk
@@ -0,0 +1,22 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_Module_Module,languagetool))
+
+ifneq ($(ENABLE_JAVA),)
+ifneq ($(filter LANGUAGETOOL,$(BUILD_TYPE)),)
+$(eval $(call gb_Module_add_targets,languagetool,\
+ ExternalProject_languagetool \
+ ExtensionPackage_LanguageTool \
+ UnpackedTarball_languagetool \
+))
+endif
+endif
+
+# vim: set noet sw=4 ts=4:
diff --git a/external/languagetool/README b/external/languagetool/README
new file mode 100644
index 000000000000..72d70412b641
--- /dev/null
+++ b/external/languagetool/README
@@ -0,0 +1,5 @@
+Style and grammar checker for various languages written in Java, from [http://www.languagetool.org/]
+
+Shipping this is a compile-time option for LibreOffice, but our
+downloadable builds use the light-weight lightproof grammer checker
+instead to avoid the Java bootstrapping performance issues. \ No newline at end of file
diff --git a/external/languagetool/UnpackedTarball_languagetool.mk b/external/languagetool/UnpackedTarball_languagetool.mk
new file mode 100644
index 000000000000..05f9e000b145
--- /dev/null
+++ b/external/languagetool/UnpackedTarball_languagetool.mk
@@ -0,0 +1,22 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_UnpackedTarball_UnpackedTarball,languagetool))
+
+$(eval $(call gb_UnpackedTarball_set_tarball,languagetool,$(LANGUAGETOOL_TARBALL)))
+
+$(eval $(call gb_UnpackedTarball_set_patchlevel,languagetool,3))
+
+$(eval $(call gb_UnpackedTarball_add_patches,languagetool,\
+ external/languagetool/JLanguageTool-1.7.0.patch \
+ external/languagetool/JLanguageTool-1.4.0-no-hc.patch \
+ external/languagetool/MessageBox-apichange.patch \
+))
+
+# vim: set noet sw=4 ts=4: