diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2013-12-10 12:29:11 +0100 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2013-12-10 12:41:36 +0100 |
commit | 87dd1780a31de9ea1df70a8511c262ff252bf99a (patch) | |
tree | 9ccced4eb8800b6afb1e7466ea2d1465c7d9420c | |
parent | 6e89666b4e23189dcaa8fdb308e1b48015d6875b (diff) |
Get rid of $(share_subdir_name) again
Quoting 56211a166ab25d80de84c2cccce22be15a9be051 "fdo#72394 Don't endlessly
expand $(share_subdir_name) into itself":
* The compile-time variable LIBO_SHARE_FOLDER should not end up as a runtime
framework path variable, esp. since accidentally re-substituting it for
"share" segments in unrelated URLs like <file:///export/share/for-all> does
not make sense. ac4e19f9085dbd0103c7336a5318aa1e55b3e3e0 "fdo#68552: Don't
(attempt to) do run-time expansion of build-time parameters" had already
attempted a fix for that, but it had to be reverted again with
791a8b96f754798192875da287c84f8cfa4e533e because it "Unfortunately does not
work if BUILDDIR is different from SRCDIR."
So this time fix it not via configure-expanded *.in files, but via xsltproc
(for officecfg/registry/ files) and sed (for wizards/soruce/configshare files).
The changes to officecfg/util/alllang.xsl will replace @LIBO_SHARE_FOLDER@ only
in oor:name attribues (and in <value> text), not in any other attributes,
because I have no idea how to write that generically in XSLT and it happens to
be only needed in oor:name for now.
Change-Id: Iec78eb70dcbf1a5bbabf4e42f21c44dc65c3e438
-rw-r--r-- | framework/inc/services/substitutepathvars.hxx | 1 | ||||
-rw-r--r-- | framework/source/services/substitutepathvars.cxx | 9 | ||||
-rw-r--r-- | officecfg/registry/data/org/openoffice/Office/Paths.xcu | 24 | ||||
-rw-r--r-- | officecfg/registry/data/org/openoffice/Office/WebWizard.xcu | 4 | ||||
-rw-r--r-- | officecfg/registry/schema/org/openoffice/Office/Common.xcs | 42 | ||||
-rw-r--r-- | officecfg/util/alllang.xsl | 55 | ||||
-rw-r--r-- | officecfg/util/schema_trim.xsl | 40 | ||||
-rw-r--r-- | solenv/gbuild/Configuration.mk | 4 | ||||
-rw-r--r-- | wizards/CustomTarget_share.mk | 25 | ||||
-rw-r--r-- | wizards/Module_wizards.mk | 1 | ||||
-rw-r--r-- | wizards/Package_share.mk | 2 | ||||
-rw-r--r-- | wizards/source/configshare/dialog.xlc | 18 | ||||
-rw-r--r-- | wizards/source/configshare/script.xlc | 18 |
13 files changed, 174 insertions, 69 deletions
diff --git a/framework/inc/services/substitutepathvars.hxx b/framework/inc/services/substitutepathvars.hxx index ba0e34b37a82..cda8321bbe67 100644 --- a/framework/inc/services/substitutepathvars.hxx +++ b/framework/inc/services/substitutepathvars.hxx @@ -177,7 +177,6 @@ enum PreDefVariable PREDEFVAR_BASEINSTURL, PREDEFVAR_USERDATAURL, PREDEFVAR_BRANDBASEURL, - PREDEFVAR_SHARE_SUBDIR_NAME, PREDEFVAR_COUNT }; diff --git a/framework/source/services/substitutepathvars.cxx b/framework/source/services/substitutepathvars.cxx index ac2dc08784df..1be48e8e4f1d 100644 --- a/framework/source/services/substitutepathvars.cxx +++ b/framework/source/services/substitutepathvars.cxx @@ -104,7 +104,6 @@ #define VARIABLE_BASEINSTURL "$(baseinsturl)" #define VARIABLE_USERDATAURL "$(userdataurl)" #define VARIABLE_BRANDBASEURL "$(brandbaseurl)" -#define VARIABLE_SHARE_SUBDIR_NAME "$(share_subdir_name)" using namespace com::sun::star::uno; using namespace com::sun::star::beans; @@ -194,8 +193,7 @@ static const FixedVariable aFixedVarTable[] = // New variable of hierachy service (#i32656#) { VARIABLE_BASEINSTURL, PREDEFVAR_BASEINSTURL, REPLACELENGTH_BASEINSTURL,true }, { VARIABLE_USERDATAURL, PREDEFVAR_USERDATAURL, REPLACELENGTH_USERDATAURL,true }, - { VARIABLE_BRANDBASEURL,PREDEFVAR_BRANDBASEURL, RTL_CONSTASCII_LENGTH(VARIABLE_BRANDBASEURL), true }, - { VARIABLE_SHARE_SUBDIR_NAME,PREDEFVAR_SHARE_SUBDIR_NAME, RTL_CONSTASCII_LENGTH(VARIABLE_SHARE_SUBDIR_NAME), false } + { VARIABLE_BRANDBASEURL,PREDEFVAR_BRANDBASEURL, RTL_CONSTASCII_LENGTH(VARIABLE_BRANDBASEURL), true } }; //_________________________________________________________________________________________________________________ @@ -992,8 +990,7 @@ throw ( RuntimeException ) bool bMatch = true; if ( pIterFixed->eVariable == PREDEFVAR_LANG || pIterFixed->eVariable == PREDEFVAR_LANGID || - pIterFixed->eVariable == PREDEFVAR_VLANG || - pIterFixed->eVariable == PREDEFVAR_SHARE_SUBDIR_NAME ) + pIterFixed->eVariable == PREDEFVAR_VLANG ) { // Special path variables as they can occur in the middle of a path. Only match if they // describe a whole directory and not only a substring of a directory! @@ -1111,8 +1108,6 @@ void SubstitutePathVariables::SetPredefinedPathVariables( PredefinedPathVariable rtl::Bootstrap::expandMacros( aPreDefPathVariables.m_FixedVar[PREDEFVAR_BRANDBASEURL]); - aPreDefPathVariables.m_FixedVar[PREDEFVAR_SHARE_SUBDIR_NAME] = rtl::OUString(LIBO_SHARE_FOLDER); - // Get inspath and userpath from bootstrap mechanism in every case as file URL ::utl::Bootstrap::PathStatus aState; OUString sVal ; diff --git a/officecfg/registry/data/org/openoffice/Office/Paths.xcu b/officecfg/registry/data/org/openoffice/Office/Paths.xcu index ace000205363..4b5ec7dd2f8f 100644 --- a/officecfg/registry/data/org/openoffice/Office/Paths.xcu +++ b/officecfg/registry/data/org/openoffice/Office/Paths.xcu @@ -26,7 +26,7 @@ </node> <node oor:name="AutoCorrect" oor:op="fuse" oor:mandatory="true"> <node oor:name="InternalPaths"> - <node oor:name="$(insturl)/$(share_subdir_name)/autocorr" oor:op="fuse"/> + <node oor:name="$(insturl)/@LIBO_SHARE_FOLDER@/autocorr" oor:op="fuse"/> </node> <prop oor:name="WritePath"> <value>$(userurl)/autocorr</value> @@ -34,7 +34,7 @@ </node> <node oor:name="AutoText" oor:op="fuse" oor:mandatory="true"> <node oor:name="InternalPaths"> - <node oor:name="$(insturl)/$(share_subdir_name)/autotext/$(vlang)" oor:op="fuse"/> + <node oor:name="$(insturl)/@LIBO_SHARE_FOLDER@/autotext/$(vlang)" oor:op="fuse"/> </node> <prop oor:name="WritePath"> <value>$(userurl)/autotext</value> @@ -52,7 +52,7 @@ </node> <node oor:name="Basic" oor:op="fuse" oor:mandatory="true"> <node oor:name="InternalPaths"> - <node oor:name="$(insturl)/$(share_subdir_name)/basic" oor:op="fuse"/> + <node oor:name="$(insturl)/@LIBO_SHARE_FOLDER@/basic" oor:op="fuse"/> </node> <prop oor:name="WritePath"> <value>$(userurl)/basic</value> @@ -60,12 +60,12 @@ </node> <node oor:name="Bitmap" oor:op="fuse" oor:mandatory="true"> <node oor:name="InternalPaths"> - <node oor:name="$(insturl)/$(share_subdir_name)/config/symbol" oor:op="fuse"/> + <node oor:name="$(insturl)/@LIBO_SHARE_FOLDER@/config/symbol" oor:op="fuse"/> </node> </node> <node oor:name="Config" oor:op="fuse" oor:mandatory="true"> <node oor:name="InternalPaths"> - <node oor:name="$(insturl)/$(share_subdir_name)/config" oor:op="fuse"/> + <node oor:name="$(insturl)/@LIBO_SHARE_FOLDER@/config" oor:op="fuse"/> </node> </node> <node oor:name="Favorite" oor:op="fuse" oor:mandatory="true"> @@ -80,7 +80,7 @@ </node> <node oor:name="Gallery" oor:op="fuse" oor:mandatory="true"> <node oor:name="InternalPaths"> - <node oor:name="$(insturl)/$(share_subdir_name)/gallery" oor:op="fuse"/> + <node oor:name="$(insturl)/@LIBO_SHARE_FOLDER@/gallery" oor:op="fuse"/> </node> <prop oor:name="WritePath"> <value>$(userurl)/gallery</value> @@ -103,8 +103,8 @@ </node> <node oor:name="Linguistic" oor:op="fuse" oor:mandatory="true"> <node oor:name="InternalPaths"> - <node oor:name="$(insturl)/$(share_subdir_name)/dict" oor:op="fuse"/> - <node oor:name="$(insturl)/$(share_subdir_name)/dict/ooo" oor:op="fuse"/> + <node oor:name="$(insturl)/@LIBO_SHARE_FOLDER@/dict" oor:op="fuse"/> + <node oor:name="$(insturl)/@LIBO_SHARE_FOLDER@/dict/ooo" oor:op="fuse"/> </node> <prop oor:name="UserPaths"> <value>$(userurl)/wordbook</value> @@ -112,7 +112,7 @@ </node> <node oor:name="Dictionary" oor:op="fuse" oor:mandatory="true"> <node oor:name="InternalPaths"> - <node oor:name="$(insturl)/$(share_subdir_name)/wordbook" oor:op="fuse"/> + <node oor:name="$(insturl)/@LIBO_SHARE_FOLDER@/wordbook" oor:op="fuse"/> </node> <prop oor:name="WritePath"> <value>$(userurl)/wordbook</value> @@ -135,7 +135,7 @@ </node> <node oor:name="Fingerprint" oor:op="fuse" oor:mandatory="true"> <node oor:name="InternalPaths"> - <node install:module="internallibexttextcatdata" oor:name="$(insturl)/$(share_subdir_name)/fingerprint" oor:op="fuse"/> + <node install:module="internallibexttextcatdata" oor:name="$(insturl)/@LIBO_SHARE_FOLDER@/fingerprint" oor:op="fuse"/> <node install:module="externallibexttextcatdata" oor:name="${SYSTEM_LIBEXTTEXTCAT_DATA}" oor:op="fuse"/> </node> </node> @@ -158,7 +158,7 @@ </node> <node oor:name="Template" oor:op="fuse" oor:mandatory="true"> <node oor:name="InternalPaths"> - <node oor:name="$(insturl)/$(share_subdir_name)/template/$(vlang)" oor:op="fuse"/> + <node oor:name="$(insturl)/@LIBO_SHARE_FOLDER@/template/$(vlang)" oor:op="fuse"/> </node> <prop oor:name="WritePath"> <value>$(userurl)/template</value> @@ -166,7 +166,7 @@ </node> <node oor:name="UIConfig" oor:op="fuse" oor:mandatory="true"> <node oor:name="InternalPaths"> - <node oor:name="$(insturl)/$(share_subdir_name)/config" oor:op="fuse"/> + <node oor:name="$(insturl)/@LIBO_SHARE_FOLDER@/config" oor:op="fuse"/> </node> </node> <node oor:name="UserConfig" oor:op="fuse" oor:mandatory="true"> diff --git a/officecfg/registry/data/org/openoffice/Office/WebWizard.xcu b/officecfg/registry/data/org/openoffice/Office/WebWizard.xcu index 70f0f097d9f2..3861af800175 100644 --- a/officecfg/registry/data/org/openoffice/Office/WebWizard.xcu +++ b/officecfg/registry/data/org/openoffice/Office/WebWizard.xcu @@ -1241,12 +1241,12 @@ <node oor:name="BackgroundImages"> <node oor:name="1" oor:op="replace"> <prop oor:name="Href"> - <value>$(inst)/$(share_subdir_name)/gallery/www-back/</value> + <value>$(inst)/@LIBO_SHARE_FOLDER@/gallery/www-back/</value> </prop> </node> <node oor:name="2" oor:op="replace"> <prop oor:name="Href"> - <value>$(inst)/$(share_subdir_name)/gallery/surface</value> + <value>$(inst)/@LIBO_SHARE_FOLDER@/gallery/surface</value> </prop> </node> <node oor:name="3" oor:op="replace"> diff --git a/officecfg/registry/schema/org/openoffice/Office/Common.xcs b/officecfg/registry/schema/org/openoffice/Office/Common.xcs index 1c9081b51c14..069a12870ebe 100644 --- a/officecfg/registry/schema/org/openoffice/Office/Common.xcs +++ b/officecfg/registry/schema/org/openoffice/Office/Common.xcs @@ -1529,7 +1529,7 @@ <desc>Specifies the settings of the AutoCorrect dialog.</desc> </info> <value> - <it>$(insturl)/$(share_subdir_name)/autocorr</it> + <it>$(insturl)/@LIBO_SHARE_FOLDER@/autocorr</it> <it>$(userurl)/autocorr</it> </value> </prop> @@ -1539,7 +1539,7 @@ modules.</desc> </info> <value> - <it>$(insturl)/$(share_subdir_name)/autotext/$(vlang)</it> + <it>$(insturl)/@LIBO_SHARE_FOLDER@/autotext/$(vlang)</it> <it>$(userurl)/autotext</it> </value> </prop> @@ -1555,7 +1555,7 @@ AutoPilots.</desc> </info> <value> - <it>$(insturl)/$(share_subdir_name)/basic</it> + <it>$(insturl)/@LIBO_SHARE_FOLDER@/basic</it> <it>$(userurl)/basic</it> </value> </prop> @@ -1564,20 +1564,20 @@ <desc>Contains the bitmap files which can be used for menu and toolbar icons.</desc> </info> - <value>$(insturl)/$(share_subdir_name)/config/symbol</value> + <value>$(insturl)/@LIBO_SHARE_FOLDER@/config/symbol</value> </prop> <prop oor:name="Config" oor:type="xs:string" oor:nillable="false"> <info> <desc>Contains the configuration files. This value cannot be changed through the user interface.</desc> </info> - <value>$(insturl)/$(share_subdir_name)/config</value> + <value>$(insturl)/@LIBO_SHARE_FOLDER@/config</value> </prop> <prop oor:name="Dictionary" oor:type="xs:string" oor:nillable="false"> <info> <desc>Contains the provided dictionaries.</desc> </info> - <value>$(insturl)/$(share_subdir_name)/wordbook</value> + <value>$(insturl)/@LIBO_SHARE_FOLDER@/wordbook</value> </prop> <prop oor:name="Favorite" oor:type="xs:string" oor:nillable="false"> <info> @@ -1598,7 +1598,7 @@ and multimedia files.</desc> </info> <value> - <it>$(insturl)/$(share_subdir_name)/gallery</it> + <it>$(insturl)/@LIBO_SHARE_FOLDER@/gallery</it> <it>$(userurl)/gallery</it> </value> </prop> @@ -1620,7 +1620,7 @@ <desc>Contains the files that are necessary for the spellcheck.</desc> </info> - <value>$(insturl)/$(share_subdir_name)/dict</value> + <value>$(insturl)/@LIBO_SHARE_FOLDER@/dict</value> </prop> <prop oor:name="Module" oor:type="xs:string" oor:nillable="false"> <info> @@ -1665,8 +1665,8 @@ sub-folders.</desc> </info> <value> - <it>$(insturl)/$(share_subdir_name)/template/$(vlang)</it> - <it>$(insturl)/$(share_subdir_name)/template/common</it> + <it>$(insturl)/@LIBO_SHARE_FOLDER@/template/$(vlang)</it> + <it>$(insturl)/@LIBO_SHARE_FOLDER@/template/common</it> <it>$(userurl)/template</it> </value> </prop> @@ -1677,7 +1677,7 @@ merged from UserConfig and from these folders.</desc> </info> <value> - <it>$(insturl)/$(share_subdir_name)/config</it> + <it>$(insturl)/@LIBO_SHARE_FOLDER@/config</it> </value> </prop> <prop oor:name="UserConfig" oor:type="xs:string" oor:nillable="false"> @@ -1720,7 +1720,7 @@ AutoCorrect dialog.</desc> </info> <value> - <it>$(insturl)/$(share_subdir_name)/autocorr</it> + <it>$(insturl)/@LIBO_SHARE_FOLDER@/autocorr</it> <it>$(userurl)/autocorr</it> </value> </prop> @@ -1730,7 +1730,7 @@ located.</desc> </info> <value> - <it>$(insturl)/$(share_subdir_name)/autotext/$(vlang)</it> + <it>$(insturl)/@LIBO_SHARE_FOLDER@/autotext/$(vlang)</it> <it>$(userurl)/autotext</it> </value> </prop> @@ -1747,7 +1747,7 @@ the AutoPilots, are located.</desc> </info> <value> - <it>$(insturl)/$(share_subdir_name)/basic</it> + <it>$(insturl)/@LIBO_SHARE_FOLDER@/basic</it> <it>$(userurl)/basic</it> </value> </prop> @@ -1756,21 +1756,21 @@ <desc>Specifies the default directory where the bitmap files, which can be used for the menu and toolbar icons, are located.</desc> </info> - <value>$(insturl)/$(share_subdir_name)/config/symbol</value> + <value>$(insturl)/@LIBO_SHARE_FOLDER@/config/symbol</value> </prop> <prop oor:name="Config" oor:type="xs:string" oor:nillable="false"> <info> <desc>Specifies the default directory where the configuration files are stored.</desc> </info> - <value>$(insturl)/$(share_subdir_name)/config</value> + <value>$(insturl)/@LIBO_SHARE_FOLDER@/config</value> </prop> <prop oor:name="Dictionary" oor:type="xs:string" oor:nillable="false"> <info> <desc>Specifies the default directory where the provided dictionaries are located.</desc> </info> - <value>$(insturl)/$(share_subdir_name)/wordbook/$(vlang)</value> + <value>$(insturl)/@LIBO_SHARE_FOLDER@/wordbook/$(vlang)</value> </prop> <prop oor:name="Favorite" oor:type="xs:string" oor:nillable="false"> <info> @@ -1792,7 +1792,7 @@ multimedia files are located.</desc> </info> <value> - <it>$(insturl)/$(share_subdir_name)/gallery</it> + <it>$(insturl)/@LIBO_SHARE_FOLDER@/gallery</it> <it>$(userurl)/gallery</it> </value> </prop> @@ -1815,7 +1815,7 @@ <desc>Specifies the default directory where the files that are necessary for the spellcheck are saved.</desc> </info> - <value>$(insturl)/$(share_subdir_name)/dict</value> + <value>$(insturl)/@LIBO_SHARE_FOLDER@/dict</value> </prop> <prop oor:name="Module" oor:type="xs:string" oor:nillable="false"> <info> @@ -1853,8 +1853,8 @@ are located in folders and sub-folders.</desc> </info> <value> - <it>$(insturl)/$(share_subdir_name)/template/$(vlang)</it> - <it>$(insturl)/$(share_subdir_name)/template/common</it> + <it>$(insturl)/@LIBO_SHARE_FOLDER@/template/$(vlang)</it> + <it>$(insturl)/@LIBO_SHARE_FOLDER@/template/common</it> <it>$(userurl)/template</it> </value> </prop> diff --git a/officecfg/util/alllang.xsl b/officecfg/util/alllang.xsl index 252a0beefe66..31b53bccd853 100644 --- a/officecfg/util/alllang.xsl +++ b/officecfg/util/alllang.xsl @@ -34,6 +34,8 @@ <xsl:param name="schemaRoot">.</xsl:param> <xsl:param name="fallback-locale">en-US</xsl:param> +<xsl:param name="LIBO_SHARE_FOLDER"/> + <xsl:variable name="schemaRootURL"> <xsl:value-of select="$schemaRoot"/> </xsl:variable> @@ -91,7 +93,7 @@ <xsl:if test="@xml:lang=$locale and not(@install:module)"> <xsl:copy> <xsl:apply-templates select = "@*" mode="locale"/> - <xsl:copy-of select="node()"/> + <xsl:apply-templates select="node()"/> </xsl:copy> </xsl:if> </xsl:template> @@ -265,8 +267,7 @@ <xsl:when test="not($module) and ancestor-or-self::*/@install:module"/> <xsl:otherwise> <xsl:copy> - <xsl:apply-templates select = "@*"/> - <xsl:copy-of select="node()"/> + <xsl:apply-templates select = "@*|node()"/> </xsl:copy> </xsl:otherwise> </xsl:choose> @@ -275,12 +276,17 @@ <xsl:template match="value" mode="fallback-locale"> <xsl:if test="@xml:lang=$fallback-locale and not(@install:module)"> <xsl:copy> - <xsl:apply-templates select = "@*"/> - <xsl:copy-of select="node()"/> + <xsl:apply-templates select = "@*|node()"/> </xsl:copy> </xsl:if> </xsl:template> + <xsl:template match ="it|unicode"> + <xsl:copy> + <xsl:apply-templates select = "@*|node()"/> + </xsl:copy> + </xsl:template> + <xsl:template match = "@*"> <xsl:copy/> </xsl:template> @@ -333,4 +339,43 @@ <xsl:value-of select="$fileURL"/> </xsl:template> + <xsl:template match="@oor:name"> + <xsl:attribute name="oor:name"> + <xsl:call-template name="replace"> + <xsl:with-param name="input" select="current()"/> + <xsl:with-param name="pattern" select="'@LIBO_SHARE_FOLDER@'"/> + <xsl:with-param name="replace" select="$LIBO_SHARE_FOLDER"/> + </xsl:call-template> + </xsl:attribute> + </xsl:template> + + <xsl:template match="text()"> + <xsl:call-template name="replace"> + <xsl:with-param name="input" select="current()"/> + <xsl:with-param name="pattern" select="'@LIBO_SHARE_FOLDER@'"/> + <xsl:with-param name="replace" select="$LIBO_SHARE_FOLDER"/> + </xsl:call-template> + </xsl:template> + + <xsl:template name="replace"> + <xsl:param name="input"/> + <xsl:param name="pattern"/> + <xsl:param name="replace"/> + <xsl:choose> + <xsl:when test="contains($input, $pattern)"> + <xsl:value-of select="substring-before($input, $pattern)"/> + <xsl:value-of select="$replace"/> + <xsl:call-template name="replace"> + <xsl:with-param + name="input" select="substring-after($input, $pattern)"/> + <xsl:with-param name="pattern" select="$pattern"/> + <xsl:with-param name="replace" select="$replace"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$input"/> + </xsl:otherwise> + </xsl:choose> + </xsl:template> + </xsl:transform> diff --git a/officecfg/util/schema_trim.xsl b/officecfg/util/schema_trim.xsl index 4f75348b2ecb..79b3c5c8cb4f 100644 --- a/officecfg/util/schema_trim.xsl +++ b/officecfg/util/schema_trim.xsl @@ -23,6 +23,8 @@ xmlns:oor="http://openoffice.org/2001/registry" version="1.0"> + <xsl:param name="LIBO_SHARE_FOLDER"/> + <!-- Get the correct format --> <xsl:output method="xml" indent="yes"/> <xsl:namespace-alias stylesheet-prefix="xs" result-prefix="xs"></xsl:namespace-alias> @@ -68,9 +70,43 @@ <!-- copy all other values with content --> <xsl:template match="value"> <xsl:copy> - <xsl:apply-templates select="@*"/> - <xsl:copy-of select="node()"/> + <xsl:apply-templates select="@*|node()"/> </xsl:copy> </xsl:template> + <xsl:template match ="it|unicode"> + <xsl:copy> + <xsl:apply-templates select = "@*|node()"/> + </xsl:copy> + </xsl:template> + + <xsl:template match="text()"> + <xsl:call-template name="replace"> + <xsl:with-param name="input" select="current()"/> + <xsl:with-param name="pattern" select="'@LIBO_SHARE_FOLDER@'"/> + <xsl:with-param name="replace" select="$LIBO_SHARE_FOLDER"/> + </xsl:call-template> + </xsl:template> + + <xsl:template name="replace"> + <xsl:param name="input"/> + <xsl:param name="pattern"/> + <xsl:param name="replace"/> + <xsl:choose> + <xsl:when test="contains($input, $pattern)"> + <xsl:value-of select="substring-before($input, $pattern)"/> + <xsl:value-of select="$replace"/> + <xsl:call-template name="replace"> + <xsl:with-param + name="input" select="substring-after($input, $pattern)"/> + <xsl:with-param name="pattern" select="$pattern"/> + <xsl:with-param name="replace" select="$replace"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$input"/> + </xsl:otherwise> + </xsl:choose> + </xsl:template> + </xsl:transform> diff --git a/solenv/gbuild/Configuration.mk b/solenv/gbuild/Configuration.mk index ae671b7ac3a8..06aa8a174816 100644 --- a/solenv/gbuild/Configuration.mk +++ b/solenv/gbuild/Configuration.mk @@ -84,6 +84,7 @@ $(call gb_Helper_abbreviate_dirs,\ $(3) && \ $(gb_Configuration_XSLTCOMMAND) --nonet \ -o $(1) \ + --stringparam LIBO_SHARE_FOLDER $(LIBO_SHARE_FOLDER) \ $(gb_XcsTarget_XSLT_SchemaTrim) \ $(3)) endef @@ -120,6 +121,7 @@ $(call gb_Helper_abbreviate_dirs,\ -o $(1) \ --stringparam xcs $(call gb_XcsTarget_for_XcuTarget,$(XCUFILE)) \ $(gb_Configuration__stringparam_schemaRoot) \ + --stringparam LIBO_SHARE_FOLDER $(LIBO_SHARE_FOLDER) \ --path $(SRCDIR)/officecfg/registry \ $(gb_XcuTarget_XSLT_AllLang) \ $(3)) @@ -155,6 +157,7 @@ $(call gb_Helper_abbreviate_dirs,\ --stringparam xcs $(4) \ $(gb_Configuration__stringparam_schemaRoot) \ --stringparam module $(notdir $(subst -,/,$(basename $(notdir $(2))))) \ + --stringparam LIBO_SHARE_FOLDER $(LIBO_SHARE_FOLDER) \ $(gb_XcuTarget_XSLT_AllLang) \ $(3)) endef @@ -251,6 +254,7 @@ $(call gb_Helper_abbreviate_dirs,\ --stringparam xcs $(call gb_XcsTarget_for_XcuTarget,$(XCUFILE)) \ $(gb_Configuration__stringparam_schemaRoot) \ --stringparam locale $(word 2,$(subst /, ,$(2))) \ + --stringparam LIBO_SHARE_FOLDER $(LIBO_SHARE_FOLDER) \ --path $(SRCDIR)/officecfg/registry \ $(gb_XcuTarget_XSLT_AllLang) \ $(3)) diff --git a/wizards/CustomTarget_share.mk b/wizards/CustomTarget_share.mk new file mode 100644 index 000000000000..43d1811d7a13 --- /dev/null +++ b/wizards/CustomTarget_share.mk @@ -0,0 +1,25 @@ +# -*- 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_CustomTarget_CustomTarget,wizards/share)) + +$(call gb_CustomTarget_get_target,wizards/share): \ + $(call gb_CustomTarget_get_workdir,wizards/share)/dialog.xlc \ + $(call gb_CustomTarget_get_workdir,wizards/share)/script.xlc + +$(call gb_CustomTarget_get_workdir,wizards/share)/%.xlc: \ + $(SRCDIR)/wizards/source/configshare/%.xlc \ + | $(call gb_CustomTarget_get_workdir,wizards/share)/.dir + $(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),SED,1) + sed -e 's/@LIBO_SHARE_FOLDER@/$(LIBO_SHARE_FOLDER)/' $< > $@ + +# vim:set shiftwidth=4 tabstop=4 noexpandtab: + + +# vim: set noet sw=4 ts=4: diff --git a/wizards/Module_wizards.mk b/wizards/Module_wizards.mk index 652033de0a33..a67109cbcafd 100644 --- a/wizards/Module_wizards.mk +++ b/wizards/Module_wizards.mk @@ -20,6 +20,7 @@ $(eval $(call gb_Module_Module,wizards)) $(eval $(call gb_Module_add_targets,wizards,\ + CustomTarget_share \ Package_access2base \ Package_depot \ Package_euro \ diff --git a/wizards/Package_share.mk b/wizards/Package_share.mk index b24affad3720..b986041e04ea 100644 --- a/wizards/Package_share.mk +++ b/wizards/Package_share.mk @@ -17,7 +17,7 @@ # the License at http://www.apache.org/licenses/LICENSE-2.0 . # -$(eval $(call gb_Package_Package,wizards_basicshare,$(SRCDIR)/wizards/source/configshare)) +$(eval $(call gb_Package_Package,wizards_basicshare,$(call gb_CustomTarget_get_workdir,wizards/share))) $(eval $(call gb_Package_add_files,wizards_basicshare,$(LIBO_SHARE_FOLDER)/basic,\ dialog.xlc \ diff --git a/wizards/source/configshare/dialog.xlc b/wizards/source/configshare/dialog.xlc index 0bcbe9da27a2..89647f648b69 100644 --- a/wizards/source/configshare/dialog.xlc +++ b/wizards/source/configshare/dialog.xlc @@ -1,13 +1,13 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE library:libraries PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "libraries.dtd"> <library:libraries xmlns:library="http://openoffice.org/2000/library" xmlns:xlink="http://www.w3.org/1999/xlink"> - <library:library library:name="FormWizard" xlink:href="$(INST)/$(SHARE_SUBDIR_NAME)/basic/FormWizard/dialog.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> - <library:library library:name="Template" xlink:href="$(INST)/$(SHARE_SUBDIR_NAME)/basic/Template/dialog.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> - <library:library library:name="Tools" xlink:href="$(INST)/$(SHARE_SUBDIR_NAME)/basic/Tools/dialog.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> - <library:library library:name="Gimmicks" xlink:href="$(INST)/$(SHARE_SUBDIR_NAME)/basic/Gimmicks/dialog.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> - <library:library library:name="ImportWizard" xlink:href="$(INST)/$(SHARE_SUBDIR_NAME)/basic/ImportWizard/dialog.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> - <library:library library:name="Euro" xlink:href="$(INST)/$(SHARE_SUBDIR_NAME)/basic/Euro/dialog.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> - <library:library library:name="Depot" xlink:href="$(INST)/$(SHARE_SUBDIR_NAME)/basic/Depot/dialog.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> - <library:library library:name="ScriptBindingLibrary" xlink:href="$(INST)/$(SHARE_SUBDIR_NAME)/basic/ScriptBindingLibrary/dialog.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> - <library:library library:name="Access2Base" xlink:href="$(INST)/$(SHARE_SUBDIR_NAME)/basic/Access2Base/dialog.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> + <library:library library:name="FormWizard" xlink:href="$(INST)/@LIBO_SHARE_FOLDER@/basic/FormWizard/dialog.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> + <library:library library:name="Template" xlink:href="$(INST)/@LIBO_SHARE_FOLDER@/basic/Template/dialog.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> + <library:library library:name="Tools" xlink:href="$(INST)/@LIBO_SHARE_FOLDER@/basic/Tools/dialog.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> + <library:library library:name="Gimmicks" xlink:href="$(INST)/@LIBO_SHARE_FOLDER@/basic/Gimmicks/dialog.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> + <library:library library:name="ImportWizard" xlink:href="$(INST)/@LIBO_SHARE_FOLDER@/basic/ImportWizard/dialog.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> + <library:library library:name="Euro" xlink:href="$(INST)/@LIBO_SHARE_FOLDER@/basic/Euro/dialog.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> + <library:library library:name="Depot" xlink:href="$(INST)/@LIBO_SHARE_FOLDER@/basic/Depot/dialog.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> + <library:library library:name="ScriptBindingLibrary" xlink:href="$(INST)/@LIBO_SHARE_FOLDER@/basic/ScriptBindingLibrary/dialog.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> + <library:library library:name="Access2Base" xlink:href="$(INST)/@LIBO_SHARE_FOLDER@/basic/Access2Base/dialog.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> </library:libraries> diff --git a/wizards/source/configshare/script.xlc b/wizards/source/configshare/script.xlc index d42fa2e2533a..69dbb2832db3 100644 --- a/wizards/source/configshare/script.xlc +++ b/wizards/source/configshare/script.xlc @@ -1,13 +1,13 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE library:libraries PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "libraries.dtd"> <library:libraries xmlns:library="http://openoffice.org/2000/library" xmlns:xlink="http://www.w3.org/1999/xlink"> - <library:library library:name="FormWizard" xlink:href="$(INST)/$(SHARE_SUBDIR_NAME)/basic/FormWizard/script.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> - <library:library library:name="Template" xlink:href="$(INST)/$(SHARE_SUBDIR_NAME)/basic/Template/script.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> - <library:library library:name="Tools" xlink:href="$(INST)/$(SHARE_SUBDIR_NAME)/basic/Tools/script.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> - <library:library library:name="Gimmicks" xlink:href="$(INST)/$(SHARE_SUBDIR_NAME)/basic/Gimmicks/script.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> - <library:library library:name="ImportWizard" xlink:href="$(INST)/$(SHARE_SUBDIR_NAME)/basic/ImportWizard/script.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> - <library:library library:name="Euro" xlink:href="$(INST)/$(SHARE_SUBDIR_NAME)/basic/Euro/script.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> - <library:library library:name="Depot" xlink:href="$(INST)/$(SHARE_SUBDIR_NAME)/basic/Depot/script.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> - <library:library library:name="ScriptBindingLibrary" xlink:href="$(INST)/$(SHARE_SUBDIR_NAME)/basic/ScriptBindingLibrary/script.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> - <library:library library:name="Access2Base" xlink:href="$(INST)/$(SHARE_SUBDIR_NAME)/basic/Access2Base/script.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> + <library:library library:name="FormWizard" xlink:href="$(INST)/@LIBO_SHARE_FOLDER@/basic/FormWizard/script.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> + <library:library library:name="Template" xlink:href="$(INST)/@LIBO_SHARE_FOLDER@/basic/Template/script.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> + <library:library library:name="Tools" xlink:href="$(INST)/@LIBO_SHARE_FOLDER@/basic/Tools/script.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> + <library:library library:name="Gimmicks" xlink:href="$(INST)/@LIBO_SHARE_FOLDER@/basic/Gimmicks/script.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> + <library:library library:name="ImportWizard" xlink:href="$(INST)/@LIBO_SHARE_FOLDER@/basic/ImportWizard/script.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> + <library:library library:name="Euro" xlink:href="$(INST)/@LIBO_SHARE_FOLDER@/basic/Euro/script.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> + <library:library library:name="Depot" xlink:href="$(INST)/@LIBO_SHARE_FOLDER@/basic/Depot/script.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> + <library:library library:name="ScriptBindingLibrary" xlink:href="$(INST)/@LIBO_SHARE_FOLDER@/basic/ScriptBindingLibrary/script.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> + <library:library library:name="Access2Base" xlink:href="$(INST)/@LIBO_SHARE_FOLDER@/basic/Access2Base/script.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/> </library:libraries> |