summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2012-11-30 10:23:23 +0100
committerStephan Bergmann <sbergman@redhat.com>2012-11-30 10:28:25 +0100
commit1f3496e204cd305264d27a362f34fdcb6fa5f693 (patch)
treed2f7b1fd68980d32e8580e2fa1af163c39ab4f18
parentcf1612dc836c161e70478d6e797ff0fe35e4ed10 (diff)
Turn Python Scripting Provider from bundled extension to plain code
To avoid unnecessary confusion between the newly plain code and any instance of the old extension still installed (per-user or shared), I renamed the UNO implementation identifier org.openoffice.pyuno.LanguageScriptProviderForPython to org.libreoffice.pyuno.LanguageScriptProviderForPython. Also, existing installations of the extension are explicitly not migrated to new user profiles. Change-Id: Id3dd66ba5e52e0962f7ad0ccb5e4ad5b0bec97fa
-rw-r--r--configure.ac2
-rw-r--r--officecfg/registry/data/org/openoffice/Setup.xcu1
-rw-r--r--scp2/source/extensions/directory_extensions.scp11
-rw-r--r--scp2/source/extensions/file_extensions.scp17
-rw-r--r--scp2/source/extensions/module_extensions.scp5
-rw-r--r--scripting/Extension_ScriptProviderForPython.mk36
-rw-r--r--scripting/Module_scripting.mk3
-rw-r--r--scripting/Package_scriptproviderforpython.mk15
-rw-r--r--scripting/source/pyprov/META-INF/manifest.xml24
-rw-r--r--scripting/source/pyprov/description-en-US.txt1
-rw-r--r--scripting/source/pyprov/description.xml44
-rwxr-xr-xscripting/source/pyprov/pythonscript.py2
-rw-r--r--scripting/source/pyprov/scriptproviderforpython.rdb (renamed from scripting/source/pyprov/components.rdb)14
13 files changed, 43 insertions, 132 deletions
diff --git a/configure.ac b/configure.ac
index 4b518314018a..4cfcb92c7e13 100644
--- a/configure.ac
+++ b/configure.ac
@@ -10182,7 +10182,7 @@ dnl Scripting provider for Python extension?
dnl We always provide this unless we have disabled Python completely
if test $enable_python = no; then
ENABLE_SCRIPTING_PYTHON=NO
- SCPDEFS="$SCPDEFS -DWITHOUT_EXTENSION_SCRIPTING_PYTHON"
+ SCPDEFS="$SCPDEFS -DWITHOUT_SCRIPTING_PYTHON"
else
ENABLE_SCRIPTING_PYTHON=YES
fi
diff --git a/officecfg/registry/data/org/openoffice/Setup.xcu b/officecfg/registry/data/org/openoffice/Setup.xcu
index 05ddaac869ff..da0c62e79d54 100644
--- a/officecfg/registry/data/org/openoffice/Setup.xcu
+++ b/officecfg/registry/data/org/openoffice/Setup.xcu
@@ -798,6 +798,7 @@
<!-- arguably, dropping PDFImport extensions should be
conditional on having in-core PDF import actually built
and installed -->
+ <it>com.sun.star.script.provider.ScriptProviderForPython</it>
</value>
</prop>
</node>
diff --git a/scp2/source/extensions/directory_extensions.scp b/scp2/source/extensions/directory_extensions.scp
index 9d3a018647fe..eb3a08e3e5da 100644
--- a/scp2/source/extensions/directory_extensions.scp
+++ b/scp2/source/extensions/directory_extensions.scp
@@ -226,15 +226,4 @@ End
#endif
-/* ** Script provider for Python ** */
-
-#ifndef WITHOUT_EXTENSION_SCRIPTING_PYTHON
-
-Directory gid_Brand_Dir_Share_Extensions_Script_Provider_For_Python
- ParentID = gid_Brand_Dir_Share_Extensions;
- DosName = "script-provider-for-python";
-End
-
-#endif
-
#endif
diff --git a/scp2/source/extensions/file_extensions.scp b/scp2/source/extensions/file_extensions.scp
index 24b2e77bce06..763312515939 100644
--- a/scp2/source/extensions/file_extensions.scp
+++ b/scp2/source/extensions/file_extensions.scp
@@ -297,13 +297,20 @@ End
/* ** Script provider for Python ** */
-#ifndef WITHOUT_EXTENSION_SCRIPTING_PYTHON
+#ifndef WITHOUT_SCRIPTING_PYTHON
-File gid_File_Oxt_Script_Provider_For_Python
+File gid_File_Py_Pythonscript
TXT_FILE_BODY;
- Styles = (PACKED, ARCHIVE);
- Dir = gid_Brand_Dir_Share_Extensions_Script_Provider_For_Python;
- Name = "script-provider-for-python.oxt";
+ Dir = gid_Brand_Dir_Program;
+ Name = "pythonscript.py";
+ Styles = (PACKED);
+End
+
+File gid_File_Rdb_Scriptproviderforpython
+ TXT_FILE_BODY;
+ Dir = gid_Brand_Dir_Program_Services;
+ Name = "scriptproviderforpython.rdb";
+ Styles = (PACKED);
End
#endif
diff --git a/scp2/source/extensions/module_extensions.scp b/scp2/source/extensions/module_extensions.scp
index 37558c30e558..17c77109563a 100644
--- a/scp2/source/extensions/module_extensions.scp
+++ b/scp2/source/extensions/module_extensions.scp
@@ -334,14 +334,15 @@ End
/* ** Script provider for Python ** */
-#ifndef WITHOUT_EXTENSION_SCRIPTING_PYTHON
+#ifndef WITHOUT_SCRIPTING_PYTHON
Module gid_Module_Optional_Extensions_Script_Provider_For_Python
PackageInfo = "packinfo_extensions.txt";
MOD_NAME_DESC(MODULE_OPTIONAL_EXTENSIONS_SCRIPT_PROVIDER_FOR_PYTHON);
ParentID = gid_Module_Optional_Extensions;
Files = (
- gid_File_Oxt_Script_Provider_For_Python );
+ gid_File_Py_Pythonscript,
+ gid_File_Rdb_Scriptproviderforpython );
Minimal = NO;
Default = YES;
Styles = ( );
diff --git a/scripting/Extension_ScriptProviderForPython.mk b/scripting/Extension_ScriptProviderForPython.mk
deleted file mode 100644
index 4c4b043671ab..000000000000
--- a/scripting/Extension_ScriptProviderForPython.mk
+++ /dev/null
@@ -1,36 +0,0 @@
-# -*- Mode: makefile; tab-width: 4; indent-tabs-mode: t -*-
-# 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 or as specified alternatively below. 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
-# Matúš Kukan <matus.kukan@gmail.com>
-# Portions created by the Initial Developer are Copyright (C) 2011 the
-# Initial Developer. All Rights Reserved.
-#
-# Major Contributor(s):
-#
-# For minor contributions see the git repository.
-#
-# 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.
-
-$(eval $(call gb_Extension_Extension,script-provider-for-python,scripting/source/pyprov))
-
-$(eval $(call gb_Extension_add_file,script-provider-for-python,pythonscript.py,\
- $(SRCDIR)/scripting/source/pyprov/pythonscript.py))
-$(eval $(call gb_Extension_add_file,script-provider-for-python,components.rdb,\
- $(SRCDIR)/scripting/source/pyprov/components.rdb))
-
-# vim: set noet sw=4 ts=4:
diff --git a/scripting/Module_scripting.mk b/scripting/Module_scripting.mk
index bf385cd78c46..3243ba9a73db 100644
--- a/scripting/Module_scripting.mk
+++ b/scripting/Module_scripting.mk
@@ -48,7 +48,8 @@ $(eval $(call gb_Module_add_targets,scripting,\
Zip_ScriptsJava \
) \
$(if $(filter $(ENABLE_SCRIPTING_PYTHON),YES),\
- Extension_ScriptProviderForPython) \
+ Package_scriptproviderforpython \
+ ) \
Library_basprov \
Library_dlgprov \
Library_protocolhandler \
diff --git a/scripting/Package_scriptproviderforpython.mk b/scripting/Package_scriptproviderforpython.mk
new file mode 100644
index 000000000000..641c3cbc3910
--- /dev/null
+++ b/scripting/Package_scriptproviderforpython.mk
@@ -0,0 +1,15 @@
+# -*- 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_Package_Package,scriptproviderforpython,$(SRCDIR)/scripting/source/pyprov))
+
+$(eval $(call gb_Package_add_file,scriptproviderforpython,xml/scriptproviderforpython.rdb,scriptproviderforpython.rdb))
+$(eval $(call gb_Package_add_file,scriptproviderforpython,bin/pythonscript.py,pythonscript.py))
+
+# vim: set noet sw=4 ts=4:
diff --git a/scripting/source/pyprov/META-INF/manifest.xml b/scripting/source/pyprov/META-INF/manifest.xml
deleted file mode 100644
index 7a8f084277a6..000000000000
--- a/scripting/source/pyprov/META-INF/manifest.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE manifest:manifest PUBLIC "-//OpenOffice.org//DTD Manifest 1.0//EN" "Manifest.dtd">
-<!--
- * 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/.
- *
- * This file incorporates work covered by the following license notice:
- *
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed
- * with this work for additional information regarding copyright
- * ownership. The ASF licenses this file to you under the Apache
- * License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0 .
--->
-<manifest:manifest xmlns:manifest="http://openoffice.org/2001/manifest">
- <manifest:file-entry
- manifest:media-type="application/vnd.sun.star.uno-components"
- manifest:full-path="components.rdb"/>
-</manifest:manifest>
diff --git a/scripting/source/pyprov/description-en-US.txt b/scripting/source/pyprov/description-en-US.txt
deleted file mode 100644
index 7e60ea0aba5f..000000000000
--- a/scripting/source/pyprov/description-en-US.txt
+++ /dev/null
@@ -1 +0,0 @@
-Add support for Python via the Scripting Framework to enable Python scripts in the user and share directories of a LibreOffice installation, and also in loaded documents.
diff --git a/scripting/source/pyprov/description.xml b/scripting/source/pyprov/description.xml
deleted file mode 100644
index d3b5cb64f6dd..000000000000
--- a/scripting/source/pyprov/description.xml
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0"?>
-<!--
- * 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/.
- *
- * This file incorporates work covered by the following license notice:
- *
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed
- * with this work for additional information regarding copyright
- * ownership. The ASF licenses this file to you under the Apache
- * License, Version 2.0 (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.apache.org/licenses/LICENSE-2.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.1"/>
-
- <publisher>
- <name xlink:href="http://www.documentfoundation.org" lang="en-US">The Document Foundation</name>
- </publisher>
-
- <display-name>
- <name lang="en-US">Script provider for Python</name>
- </display-name>
-
- <extension-description>
- <src xlink:href="description-en-US.txt" lang="en-US"/>
- </extension-description>
-
-</description>
diff --git a/scripting/source/pyprov/pythonscript.py b/scripting/source/pyprov/pythonscript.py
index 78c622640fef..dcf05d4f9b7c 100755
--- a/scripting/source/pyprov/pythonscript.py
+++ b/scripting/source/pyprov/pythonscript.py
@@ -137,7 +137,7 @@ CALLABLE_CONTAINER_NAME = "g_exportedScripts"
# pythonloader looks for a static g_ImplementationHelper variable
g_ImplementationHelper = unohelper.ImplementationHelper()
-g_implName = "org.openoffice.pyuno.LanguageScriptProviderFor"+LANGUAGENAME
+g_implName = "org.libreoffice.pyuno.LanguageScriptProviderFor"+LANGUAGENAME
diff --git a/scripting/source/pyprov/components.rdb b/scripting/source/pyprov/scriptproviderforpython.rdb
index 2436cab14260..09a37e4da108 100644
--- a/scripting/source/pyprov/components.rdb
+++ b/scripting/source/pyprov/scriptproviderforpython.rdb
@@ -17,10 +17,12 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
-->
<components xmlns="http://openoffice.org/2010/uno-components">
- <component loader="com.sun.star.loader.Python" uri="./pythonscript.py">
- <implementation name="org.openoffice.pyuno.LanguageScriptProviderForPython">
- <service name="com.sun.star.script.provider.ScriptProviderForPython"/>
- <service name="com.sun.star.script.provider.LanguageScriptProvider"/>
- </implementation>
- </component>
+ <component loader="com.sun.star.loader.Python"
+ uri="vnd.openoffice.pymodule:pythonscript">
+ <implementation
+ name="org.libreoffice.pyuno.LanguageScriptProviderForPython">
+ <service name="com.sun.star.script.provider.ScriptProviderForPython"/>
+ <service name="com.sun.star.script.provider.LanguageScriptProvider"/>
+ </implementation>
+ </component>
</components>