libreoffice/turn-script-providers-into-extensions.patch

396 lines
14 KiB
Diff

diff --git a/scp2/source/ooo/file_ooo.scp b/scp2/source/ooo/file_ooo.scp
index d052261..0eb090c 100644
--- a/scp2/source/ooo/file_ooo.scp
+++ b/scp2/source/ooo/file_ooo.scp
@@ -453,10 +453,6 @@ UNO_JAR_FILE( gid_File_Jar_Lucenehelpwrapper, LuceneHelpWrapper )
#endif
#ifdef SOLAR_JAVA
-STD_JAR_FILE( gid_File_Jar_Js, js )
-#endif
-
-#ifdef SOLAR_JAVA
#ifndef MACOSX
@@ -501,9 +497,7 @@ End
#ifdef SOLAR_JAVA
UNO_JAR_FILE( gid_File_Jar_Scriptframework, ScriptFramework )
-UNO_JAR_FILE( gid_File_Jar_Scriptproviderforbeanshell, ScriptProviderForBeanShell )
UNO_JAR_FILE( gid_File_Jar_Scriptproviderforjava, ScriptProviderForJava )
-UNO_JAR_FILE( gid_File_Jar_Scriptproviderforjavascript, ScriptProviderForJavaScript )
#endif
#ifdef SOLAR_JAVA
diff --git a/scp2/source/ooo/module_hidden_ooo.scp b/scp2/source/ooo/module_hidden_ooo.scp
index 5ffe87a..4a4b2ff 100644
--- a/scp2/source/ooo/module_hidden_ooo.scp
+++ b/scp2/source/ooo/module_hidden_ooo.scp
@@ -91,7 +91,6 @@ Module gid_Module_Root_Files_3
gid_File_Jar_Hsqldb,
gid_File_Jar_Hsqldb_Sdbc,
gid_File_Jar_Accessbridge,
- gid_File_Jar_Js,
gid_File_Jar_Officebean,
gid_File_Jar_Report,
gid_File_Jar_Table,
@@ -104,9 +103,7 @@ Module gid_Module_Root_Files_3
gid_File_Jar_Commonwizards,
gid_File_Jar_Sandbox,
gid_File_Jar_Scriptframework,
- gid_File_Jar_Scriptproviderforbeanshell,
gid_File_Jar_Scriptproviderforjava,
- gid_File_Jar_Scriptproviderforjavascript,
gid_File_Jar_Xml_Apis,
gid_File_Jar_Bsh,
gid_File_Jar_Classes,
diff --git a/scp2/source/python/file_python.scp b/scp2/source/python/file_python.scp
index e586876..0876b53 100644
--- a/scp2/source/python/file_python.scp
+++ b/scp2/source/python/file_python.scp
@@ -104,18 +104,6 @@
#endif
#endif
-// Scripting Framework Python script proxy
-
-#ifndef AIX
-File gid_File_Py_Pythonscript
- TXT_FILE_BODY;
- Dir = gid_Dir_Program;
- Name = "pythonscript.py";
- RegistryID = gid_Starregistry_Services_Rdb;
- Styles = (PACKED,UNO_COMPONENT);
-End
-#endif
-
//Scripting Framework Python example scripts
File gid_File_Scripts_Python
diff --git a/scp2/source/python/module_python.scp b/scp2/source/python/module_python.scp
index 3abeec2..d32f6f6 100644
--- a/scp2/source/python/module_python.scp
+++ b/scp2/source/python/module_python.scp
@@ -32,7 +32,7 @@
MOD_NAME_DESC ( MODULE_OPTIONAL_PYTHON );
ParentID = gid_Module_Optional;
Sortkey = "750";
- Files = (gid_File_Pyuno,gid_File_Lib_Pyuno,gid_File_Lib_Pythonloader,gid_File_Py_Unohelper,gid_File_Py_Officehelper,gid_File_Py_Uno,gid_File_Py_Pythonloader,gid_File_Py_Python_Core,gid_File_Py_Python_Bin,gid_File_Lib_Python_So,gid_Shortcut_Lib_Python_So,gid_File_Lib_Python_So_Brand, gid_File_Py_Scriptprovider,gid_File_Py_Pythonscript,gid_File_Scripts_Python,gid_File_Share_Registry_Pyuno_Xcd);
+ Files = (gid_File_Pyuno,gid_File_Lib_Pyuno,gid_File_Lib_Pythonloader,gid_File_Py_Unohelper,gid_File_Py_Officehelper,gid_File_Py_Uno,gid_File_Py_Pythonloader,gid_File_Py_Python_Core,gid_File_Py_Python_Bin,gid_File_Lib_Python_So,gid_Shortcut_Lib_Python_So,gid_File_Lib_Python_So_Brand,gid_File_Scripts_Python,gid_File_Share_Registry_Pyuno_Xcd);
Minimal = NO;
Default = YES;
Styles = ( );
diff --git a/scripting/prj/build.lst b/scripting/prj/build.lst
index 7d51621..81a8512 100755
--- a/scripting/prj/build.lst
+++ b/scripting/prj/build.lst
@@ -12,3 +12,5 @@ tc scripting\java nmake - all tc1_scriptingjava tc1_scriptingprovider tc1_s
tc scripting\examples\java nmake - all tc1_scriptingexamplesjava tc1_scriptingjava NULL
tc scripting\examples nmake - all tc1_scriptingexamples tc1_scriptingexamplesjava tc1_inc NULL
tc scripting\util nmake - all tc1_scriptingutil tc1_scriptingprovider tc1_scriptingprotocolhandler tc1_scriptingbasprov tc1_scriptingstringresource tc1_scriptingvbaevents tc1_scriptingpyprov tc1_scriptingjava tc1_scriptingexamplesjava tc1_scriptingexamples NULL
+tc scripting\util\provider\javascript nmake - all tc1_scriptingjsprov tc1_scriptingjava NULL
+tc scripting\util\provider\beanshell nmake - all tc1_scriptingbshprov tc1_scriptingjava NULL
diff --git a/scripting/prj/d.lst b/scripting/prj/d.lst
index ef216fe..30d5e1c 100644
--- a/scripting/prj/d.lst
+++ b/scripting/prj/d.lst
@@ -15,3 +15,6 @@ mkdir: %_DEST%\bin%_EXT%\pyuno
..\source\storage\storage.xml %_DEST%\xml%_EXT%\storage.xml
..\%__SRC%\lib\lib*static*.dylib %_DEST%\lib%_EXT%\lib*static*.dylib
+
+# Extensions
+..\%__SRC%\bin\*.oxt %_DEST%\bin%_EXT%\*.oxt
diff --git a/scripting/source/pyprov/description.xml b/scripting/source/pyprov/description.xml
new file mode 100644
index 0000000..1fe0a3d
--- /dev/null
+++ b/scripting/source/pyprov/description.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0"?>
+<description
+ xmlns="http://openoffice.org/extensions/description/2006"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:dep="http://openoffice.org/extensions/description/2006">
+
+ <identifier value="com.sun.star.script.provider.ScriptProviderForPython"/>
+
+ <dependencies>
+ <OpenOffice.org-minimal-version value="3.0" dep:name="OpenOffice.org 3.0"/>
+ </dependencies>
+
+ <version value="3.3.0"/>
+
+ <publisher>
+ <name xlink:href="http://www.documentfoundation.org" lang="en">The
+ Document Foundation</name>
+ </publisher>
+
+ <display-name>
+ <name lang="en">Script provider for Python</name>
+ </display-name>
+
+</description>
diff --git a/scripting/source/pyprov/makefile.mk b/scripting/source/pyprov/makefile.mk
index 3c02785..2a63d9f 100644
--- a/scripting/source/pyprov/makefile.mk
+++ b/scripting/source/pyprov/makefile.mk
@@ -39,11 +39,26 @@ TARGET=pyprov
# --- Targets ------------------------------------------------------
ALL : ALLTAR \
- $(DLLDEST)$/pythonscript.py \
$(DLLDEST)$/officehelper.py \
$(DLLDEST)$/mailmerge.py
$(DLLDEST)$/%.py: %.py
cp $? $@
-.INCLUDE : target.mk
+# scripting provider extension
+.IF "$(L10N_framework)"==""
+
+EXTENSIONNAME:=ScriptProviderForPython
+EXTENSION_ZIPNAME:=script-provider-for-python
+
+COMPONENT_FILES=$(EXTENSIONDIR)$/pythonscript.py
+
+.INCLUDE : extension_pre.mk
+.INCLUDE : target.mk
+.INCLUDE : extension_post.mk
+
+.ELSE
+
+.INCLUDE : target.mk
+
+.ENDIF
diff --git a/scripting/source/pyprov/manifest.xml b/scripting/source/pyprov/manifest.xml
new file mode 100644
index 0000000..7e4e045
--- /dev/null
+++ b/scripting/source/pyprov/manifest.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE manifest:manifest PUBLIC "-//OpenOffice.org//DTD Manifest 1.0//EN" "Manifest.dtd">
+<manifest:manifest xmlns:manifest="http://openoffice.org/2001/manifest">
+ <manifest:file-entry
+ manifest:media-type="application/vnd.sun.star.uno-component;type=python"
+ manifest:full-path="pythonscript.py"/>
+</manifest:manifest>
diff --git a/scripting/util/provider/beanshell/description.xml b/scripting/util/provider/beanshell/description.xml
new file mode 100644
index 0000000..6b05318
--- /dev/null
+++ b/scripting/util/provider/beanshell/description.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0"?>
+<description
+ xmlns="http://openoffice.org/extensions/description/2006"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:dep="http://openoffice.org/extensions/description/2006">
+
+ <identifier value="com.sun.star.script.provider.ScriptProviderForBeanShell"/>
+
+ <dependencies>
+ <OpenOffice.org-minimal-version value="3.0" dep:name="OpenOffice.org 3.0"/>
+ </dependencies>
+
+ <version value="3.3.0"/>
+
+ <publisher>
+ <name xlink:href="http://www.documentfoundation.org" lang="en">The
+ Document Foundation</name>
+ </publisher>
+
+ <display-name>
+ <name lang="en">Script provider for BeanShell</name>
+ </display-name>
+
+</description>
diff --git a/scripting/util/provider/beanshell/makefile.mk b/scripting/util/provider/beanshell/makefile.mk
new file mode 100644
index 0000000..7e16329
--- /dev/null
+++ b/scripting/util/provider/beanshell/makefile.mk
@@ -0,0 +1,48 @@
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+# http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# The Initial Developer of the Original Code is
+# Red Hat, Inc.
+# Portions created by the Initial Developer are Copyright (C) 2010 the
+# Initial Developer. All Rights Reserved.
+#
+# Contributor(s): David Tardon <dtardon@redhat.com>
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+PRJ=..$/..$/..
+
+PRJNAME=scripting
+TARGET=bshprov
+
+.INCLUDE : settings.mk
+
+.IF "$(L10N_framework)"=="" && "$(SOLAR_JAVA)"!=""
+
+EXTENSIONNAME:=ScriptProviderForBeanShell
+EXTENSION_ZIPNAME:=script-provider-for-beanshell
+
+COMPONENT_JARFILES=$(EXTENSIONDIR)$/$(EXTENSIONNAME).jar
+
+.INCLUDE : extension_pre.mk
+.INCLUDE : target.mk
+.INCLUDE : extension_post.mk
+
+.ELSE
+
+.INCLUDE : target.mk
+
+.ENDIF
diff --git a/scripting/util/provider/beanshell/manifest.xml b/scripting/util/provider/beanshell/manifest.xml
new file mode 100644
index 0000000..da8e620
--- /dev/null
+++ b/scripting/util/provider/beanshell/manifest.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE manifest:manifest PUBLIC "-//OpenOffice.org//DTD Manifest 1.0//EN" "Manifest.dtd">
+<manifest:manifest xmlns:manifest="http://openoffice.org/2001/manifest">
+ <manifest:file-entry
+ manifest:media-type="application/vnd.sun.star.uno-component;type=java"
+ manifest:full-path="ScriptProviderForBeanShell.jar"/>
+</manifest:manifest>
diff --git a/scripting/util/provider/javascript/description.xml b/scripting/util/provider/javascript/description.xml
new file mode 100644
index 0000000..58f0478
--- /dev/null
+++ b/scripting/util/provider/javascript/description.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0"?>
+<description
+ xmlns="http://openoffice.org/extensions/description/2006"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:dep="http://openoffice.org/extensions/description/2006">
+
+ <identifier value="com.sun.star.script.provider.ScriptProviderForJavaScript"/>
+
+ <dependencies>
+ <OpenOffice.org-minimal-version value="3.0" dep:name="OpenOffice.org 3.0"/>
+ </dependencies>
+
+ <version value="3.3.0"/>
+
+ <publisher>
+ <name xlink:href="http://www.documentfoundation.org" lang="en">The
+ Document Foundation</name>
+ </publisher>
+
+ <display-name>
+ <name lang="en">Script provider for JavaScript</name>
+ </display-name>
+
+</description>
diff --git a/scripting/util/provider/javascript/makefile.mk b/scripting/util/provider/javascript/makefile.mk
new file mode 100644
index 0000000..a99096a
--- /dev/null
+++ b/scripting/util/provider/javascript/makefile.mk
@@ -0,0 +1,55 @@
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+# http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# The Initial Developer of the Original Code is
+# Red Hat, Inc.
+# Portions created by the Initial Developer are Copyright (C) 2010 the
+# Initial Developer. All Rights Reserved.
+#
+# Contributor(s): David Tardon <dtardon@redhat.com>
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+PRJ=..$/..$/..
+
+PRJNAME=scripting
+TARGET=jsprov
+
+.INCLUDE : settings.mk
+
+.IF "$(L10N_framework)"=="" && "$(SOLAR_JAVA)"!=""
+
+EXTENSIONNAME:=ScriptProviderForJavaScript
+EXTENSION_ZIPNAME:=script-provider-for-javascript
+
+COMPONENT_JARFILES=$(EXTENSIONDIR)$/$(EXTENSIONNAME).jar
+EXTENSION_PACKDEPS=$(SOLARBINDIR)$/js.jar
+
+.INCLUDE : extension_pre.mk
+.INCLUDE : target.mk
+.INCLUDE : extension_post.mk
+
+ALLTAR : $(EXTENSIONDIR)$/js.jar
+
+$(EXTENSIONDIR)$/js.jar : $(SOLARBINDIR)$/js.jar
+ @@-$(MKDIRHIER) $(@:d)
+ $(COMMAND_ECHO)$(COPY) $< $@
+
+.ELSE
+
+.INCLUDE : target.mk
+
+.ENDIF
diff --git a/scripting/util/provider/javascript/manifest.xml b/scripting/util/provider/javascript/manifest.xml
new file mode 100644
index 0000000..4c61747
--- /dev/null
+++ b/scripting/util/provider/javascript/manifest.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE manifest:manifest PUBLIC "-//OpenOffice.org//DTD Manifest 1.0//EN" "Manifest.dtd">
+<manifest:manifest xmlns:manifest="http://openoffice.org/2001/manifest">
+ <manifest:file-entry
+ manifest:media-type="application/vnd.sun.star.uno-component;type=java"
+ manifest:full-path="js.jar"/>
+ <manifest:file-entry
+ manifest:media-type="application/vnd.sun.star.uno-component;type=java"
+ manifest:full-path="ScriptProviderForJavaScript.jar"/>
+</manifest:manifest>
diff --git a/instsetoo_native/util/makefile.mk b/instsetoo_native/util/makefile.mk
--- a/instsetoo_native/util/makefile.mk
+++ b/instsetoo_native/util/makefile.mk
@@ -72,7 +72,6 @@ LOCALPYFILES= \
$(BIN)$/uno.py \
$(BIN)$/unohelper.py \
$(BIN)$/pythonloader.py \
- $(BIN)$/pythonscript.py \
$(BIN)$/officehelper.py \
$(BIN)$/mailmerge.py