[libxslt] Add API versioning and various cleanups
- From: Daniel Veillard <veillard src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [libxslt] Add API versioning and various cleanups
- Date: Wed, 16 Sep 2009 14:19:42 +0000 (UTC)
commit 482e7b7e1215dd78e163a6f6bfc5b8b2a83c990c
Author: Daniel Veillard <veillard redhat com>
Date: Wed Sep 16 16:16:21 2009 +0200
Add API versioning and various cleanups
* doc/symbols.xml doc/syms.xsl doc/checkapisym.xsl libxslt/libxslt.syms:
the new symbol files, checking and stylesheets, based on libxml2 ones
* configure.in doc/Makefile.am libxslt/Makefile.am: modifications needed
to activate the symbol versioning
* doc/libxslt-api.xml doc/libxslt-refs.xml doc/EXSLT/libexslt-api.xml
doc/EXSLT/libexslt-refs.xml: regenerated
* libexslt/crypto.c libxslt/Makefile.am libxslt/keys.c libxslt/variables.c
libxslt/xslt.c libxslt/xsltInternals.h libxslt/xsltlocale.c
libxslt/xsltlocale.h: various cleanups
configure.in | 14 ++
doc/EXSLT/libexslt-api.xml | 2 +-
doc/EXSLT/libexslt-refs.xml | 6 +
doc/Makefile.am | 7 +-
doc/apibuild.py | 3 +-
doc/checkapisym.xsl | 48 +++++
doc/libxslt-api.xml | 93 +++++----
doc/libxslt-refs.xml | 222 ++++++++++++++++++---
doc/symbols.xml | 308 ++++++++++++++++++++++++++++
doc/syms.xsl | 99 +++++++++
libexslt/crypto.c | 11 +-
libxslt/Makefile.am | 13 +-
libxslt/keys.c | 3 +
libxslt/libxslt.syms | 472 +++++++++++++++++++++++++++++++++++++++++++
libxslt/variables.c | 4 +
libxslt/xslt.c | 26 +++
libxslt/xsltInternals.h | 7 -
libxslt/xsltlocale.c | 17 ++
libxslt/xsltlocale.h | 4 +
python/libxsltclass.txt | 1 +
20 files changed, 1285 insertions(+), 75 deletions(-)
---
diff --git a/configure.in b/configure.in
index d230e18..e0f9bd7 100644
--- a/configure.in
+++ b/configure.in
@@ -112,6 +112,8 @@ AC_PROG_CPP
AC_PATH_PROG(RM, rm, /bin/rm)
AC_PATH_PROG(MV, mv, /bin/mv)
AC_PATH_PROG(TAR, tar, /bin/tar)
+AC_PATH_PROG(XMLLINT, xmllint, /usr/bin/xmllint)
+AC_PATH_PROG(XSLTPROC, xsltproc, /usr/bin/xsltproc)
AC_STDC_HEADERS
@@ -121,6 +123,18 @@ AM_PROG_LIBTOOL
AC_CHECK_HEADERS(sys/types.h sys/time.h stdlib.h unistd.h string.h)
+dnl
+dnl if the system support linker version scripts for symbol versioning
+dnl then add it
+dnl
+VERSION_SCRIPT_FLAGS=
+$(/usr/bin/ld --help 2>&1 | grep -- --version-script >/dev/null) && \
+ VERSION_SCRIPT_FLAGS=-Wl,--version-script=
+test "`uname`" == "SunOS" && \
+ VERSION_SCRIPT_FLAGS="-Wl,-M -Wl,"
+AC_SUBST(VERSION_SCRIPT_FLAGS)
+AM_CONDITIONAL([USE_VERSION_SCRIPT], [test -n "$VERSION_SCRIPT_FLAGS"])
+
dnl Look for pthread.h, needed for testThreads
THREAD_LIBS=""
AC_CHECK_HEADER(pthread.h,
diff --git a/doc/EXSLT/libexslt-api.xml b/doc/EXSLT/libexslt-api.xml
index a0625f0..cf02b23 100644
--- a/doc/EXSLT/libexslt-api.xml
+++ b/doc/EXSLT/libexslt-api.xml
@@ -81,7 +81,7 @@
<return type='void'/>
</function>
<function name='exsltCryptoRegister' file='exslt'>
- <info></info>
+ <info>Registers the EXSLT - Crypto module</info>
<return type='void'/>
</function>
<function name='exsltDateRegister' file='exslt'>
diff --git a/doc/EXSLT/libexslt-refs.xml b/doc/EXSLT/libexslt-refs.xml
index 629ca70..7279e06 100644
--- a/doc/EXSLT/libexslt-refs.xml
+++ b/doc/EXSLT/libexslt-refs.xml
@@ -114,6 +114,9 @@
<word name='Common'>
<ref name='exsltCommonRegister'/>
</word>
+ <word name='Crypto'>
+ <ref name='exsltCryptoRegister'/>
+ </word>
</letter>
<letter name='D'>
<word name='Dates'>
@@ -134,6 +137,7 @@
<ref name='EXSLT_SETS_NAMESPACE'/>
<ref name='EXSLT_STRINGS_NAMESPACE'/>
<ref name='exsltCommonRegister'/>
+ <ref name='exsltCryptoRegister'/>
<ref name='exsltDateRegister'/>
<ref name='exsltDynRegister'/>
<ref name='exsltFuncRegister'/>
@@ -169,6 +173,7 @@
<letter name='R'>
<word name='Registers'>
<ref name='exsltCommonRegister'/>
+ <ref name='exsltCryptoRegister'/>
<ref name='exsltDateRegister'/>
<ref name='exsltDynRegister'/>
<ref name='exsltFuncRegister'/>
@@ -260,6 +265,7 @@
</word>
<word name='module'>
<ref name='exsltCommonRegister'/>
+ <ref name='exsltCryptoRegister'/>
<ref name='exsltDateRegister'/>
<ref name='exsltDynRegister'/>
<ref name='exsltFuncRegister'/>
diff --git a/doc/Makefile.am b/doc/Makefile.am
index 515dfba..d8aaf2b 100644
--- a/doc/Makefile.am
+++ b/doc/Makefile.am
@@ -32,6 +32,9 @@ EXTRA_DIST = \
EXSLT/libexslt-refs.xml \
libxslt-api.xml \
libxslt-refs.xml \
+ symbols.xml \
+ checkapisym.xsl \
+ syms.xsl \
libxslt.xsa \
newapi.xsl \
news.xsl \
@@ -137,10 +140,12 @@ EXSLT/html/index.html: EXSLT/libexslt-api.xml \
libxslt-api.xml libxslt-refs.xml EXSLT/libexslt-api.xml \
- EXSLT/libexslt-refs.xml: $(srcdir)/apibuild.py $(top_srcdir)/libxslt/*.h \
+ EXSLT/libexslt-refs.xml ../libxslt/libxslt.syms : $(srcdir)/apibuild.py $(top_srcdir)/libxslt/*.h \
$(top_srcdir)/libxslt/*.c $(top_srcdir)/libexslt/*.h \
$(top_srcdir)/libexslt/*.c
-($(srcdir)/apibuild.py)
+ ($(XSLTPROC) checkapisym.xsl libxslt-api.xml)
+ ($(XSLTPROC) -o ../libxslt/libxslt.syms syms.xsl symbols.xml)
xsltproc.1: xsltproc.xml
-@(xsltproc --nonet xsltproc.xml)
diff --git a/doc/apibuild.py b/doc/apibuild.py
index e512cd7..df1d66b 100755
--- a/doc/apibuild.py
+++ b/doc/apibuild.py
@@ -45,7 +45,8 @@ ignored_words = {
"ATTRIBUTE_UNUSED": (0, "macro keyword"),
"LIBEXSLT_PUBLIC": (0, "macro keyword"),
"X_IN_Y": (5, "macro function builder"),
- "XSLT_ITEM_COMMON_FIELDS": (0, "Special macro")
+ "XSLT_ITEM_COMMON_FIELDS": (0, "Special macro"),
+ "CALLBACK": (0, "macro keyword"),
}
def escape(raw):
diff --git a/doc/checkapisym.xsl b/doc/checkapisym.xsl
new file mode 100644
index 0000000..8591393
--- /dev/null
+++ b/doc/checkapisym.xsl
@@ -0,0 +1,48 @@
+<?xml version="1.0"?>
+<!-- This stylesheet is used to check that symbols exported
+ from libxml2-api.xml are also present in the symbol file
+ symbols.xml which is used to generate libxml2.syms setting
+ up the allowed access point to the shared libraries -->
+
+
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ version="1.0">
+ <xsl:output method="text" encoding="UTF-8"/>
+
+ <xsl:variable name="syms" select="document('symbols.xml')"/>
+
+ <xsl:template match="/">
+ <xsl:message terminate="no">
+ <xsl:text>Looking for functions in symbols.xml</xsl:text>
+ </xsl:message>
+ <xsl:apply-templates select="/api/symbols/function"/>
+ <xsl:message terminate="no">
+ <xsl:text>Found </xsl:text>
+ <xsl:value-of select="count(/api/symbols/function)"/>
+ <xsl:text> functions</xsl:text>
+ </xsl:message>
+ <xsl:message terminate="no">
+ <xsl:text>Looking for variables in symbols.xml</xsl:text>
+ </xsl:message>
+ <xsl:apply-templates select="/api/symbols/variable"/>
+ <xsl:message terminate="no">
+ <xsl:text>Found </xsl:text>
+ <xsl:value-of select="count(/api/symbols/variable)"/>
+ <xsl:text> variables</xsl:text>
+ </xsl:message>
+ </xsl:template>
+
+ <xsl:template match="function|variable">
+ <xsl:variable name="name" select="@name"/>
+ <xsl:variable name="symbol"
+ select="$syms/symbols/release/symbol[. = $name]"/>
+ <xsl:if test="string($symbol) != $name">
+ <xsl:message terminate="yes">
+ <xsl:text>Failed to find export in symbols.xml: </xsl:text>
+ <xsl:value-of select="$name"/>
+ </xsl:message>
+ </xsl:if>
+ </xsl:template>
+
+</xsl:stylesheet>
+
diff --git a/doc/libxslt-api.xml b/doc/libxslt-api.xml
index b35515f..330760d 100644
--- a/doc/libxslt-api.xml
+++ b/doc/libxslt-api.xml
@@ -39,7 +39,7 @@
<exports symbol='xsltGetExtData' type='function'/>
<exports symbol='xsltStyleGetExtData' type='function'/>
<exports symbol='xsltStyleExtInitFunction' type='function'/>
- <exports symbol='xsltExtFunctionLookup' type='function'/>
+ <exports symbol='xsltInitGlobals' type='function'/>
<exports symbol='xsltShutdownExts' type='function'/>
<exports symbol='xsltExtModuleElementPreComputeLookup' type='function'/>
<exports symbol='xsltRegisterTestModule' type='function'/>
@@ -299,10 +299,8 @@
<author>Daniel Veillard </author>
<exports symbol='CHECK_STOPPED0' type='macro'/>
<exports symbol='XSLT_PAT_NO_PRIORITY' type='macro'/>
- <exports symbol='XSLT_ELEMENT_CATEGORY_XSLT' type='macro'/>
<exports symbol='XSLT_ITEM_NSINSCOPE_FIELDS' type='macro'/>
<exports symbol='XSLT_IS_TEXT_NODE' type='macro'/>
- <exports symbol='XSLT_VAR_GLOBAL' type='macro'/>
<exports symbol='IS_XSLT_ELEM_FAST' type='macro'/>
<exports symbol='XSLT_REFACTORED_VARS' type='macro'/>
<exports symbol='XSLT_RUNTIME_EXTRA_LST' type='macro'/>
@@ -314,20 +312,16 @@
<exports symbol='XSLT_GET_INTERNAL_NSMAP' type='macro'/>
<exports symbol='XSLT_REFACTORED_KEYCOMP' type='macro'/>
<exports symbol='XSLT_REFACTORED_XPATHCOMP' type='macro'/>
- <exports symbol='XSLT_TCTXT_VARIABLE' type='macro'/>
- <exports symbol='XSLT_ELEMENT_CATEGORY_LRE' type='macro'/>
<exports symbol='XSLT_ITEM_NAVIGATION_FIELDS' type='macro'/>
<exports symbol='XSLT_MAX_SORT' type='macro'/>
<exports symbol='XSLT_RUNTIME_EXTRA' type='macro'/>
<exports symbol='XSLT_IS_RES_TREE_FRAG' type='macro'/>
<exports symbol='XML_CAST_FPTR' type='macro'/>
- <exports symbol='XSLT_ELEMENT_CATEGORY_EXTENSION' type='macro'/>
<exports symbol='XSLT_ITEM_COMMON_FIELDS' type='macro'/>
<exports symbol='CHECK_STOPPED' type='macro'/>
<exports symbol='XSLT_RUNTIME_EXTRA_FREE' type='macro'/>
<exports symbol='XSLT_CCTXT' type='macro'/>
<exports symbol='CHECK_STOPPEDE' type='macro'/>
- <exports symbol='XSLT_VAR_IN_SELECT' type='macro'/>
<exports symbol='XSLT_ERROR_SEVERITY_ERROR' type='enum'/>
<exports symbol='XSLT_FUNC_ELEMENT' type='enum'/>
<exports symbol='XSLT_FUNC_VALUEOF' type='enum'/>
@@ -575,6 +569,18 @@
<exports symbol='_REENTRANT' type='macro'/>
<exports symbol='XSLTCALL' type='macro'/>
</file>
+ <file name='xsltlocale'>
+ <summary>Locale handling</summary>
+ <description>Interfaces for locale handling. Needed for language dependent sorting. </description>
+ <author>Nick Wellnhofer </author>
+ <exports symbol='XSLT_LOCALE_NONE' type='macro'/>
+ <exports symbol='xsltLocale' type='typedef'/>
+ <exports symbol='xsltLocaleChar' type='typedef'/>
+ <exports symbol='xsltNewLocale' type='function'/>
+ <exports symbol='xsltLocaleStrcmp' type='function'/>
+ <exports symbol='xsltFreeLocale' type='function'/>
+ <exports symbol='xsltStrxfrm' type='function'/>
+ </file>
<file name='xsltutils'>
<summary>set of utilities for the XSLT engine</summary>
<description>interfaces for the utilities module of the XSLT engine. things like message handling, profiling, and other generally useful routines. </description>
@@ -718,12 +724,6 @@
<macro name='XSLT_DEFAULT_VERSION' file='xslt'>
<info>The default version of XSLT supported.</info>
</macro>
- <macro name='XSLT_ELEMENT_CATEGORY_EXTENSION' file='xsltInternals'>
- </macro>
- <macro name='XSLT_ELEMENT_CATEGORY_LRE' file='xsltInternals'>
- </macro>
- <macro name='XSLT_ELEMENT_CATEGORY_XSLT' file='xsltInternals'>
- </macro>
<macro name='XSLT_FAST_IF' file='xsltInternals'>
<info>Internal define to enable usage of xmlXPathCompiledEvalToBoolean() for XSLT "tests"; e.g. in <xsl:if test="/foo/bar"></info>
</macro>
@@ -760,6 +760,9 @@
<macro name='XSLT_LIBXSLT_NAMESPACE' file='extra'>
<info>This is the libxslt namespace for specific extensions.</info>
</macro>
+ <macro name='XSLT_LOCALE_NONE' file='xsltlocale'>
+ <info>Macro indicating that locale are not supported</info>
+ </macro>
<macro name='XSLT_MARK_RES_TREE_FRAG' file='xsltInternals'>
<info>internal macro to set up tree fragments</info>
</macro>
@@ -814,8 +817,6 @@
<macro name='XSLT_STRANGE' file='xsltutils'>
<info>Macro to flag that a problem was detected internally.</info>
</macro>
- <macro name='XSLT_TCTXT_VARIABLE' file='xsltInternals'>
- </macro>
<macro name='XSLT_TIMESTAMP_TICS_PER_SEC' file='xsltutils'>
<info>Sampling precision for profiling</info>
</macro>
@@ -825,10 +826,6 @@
<macro name='XSLT_TRACE' file='xsltutils'>
<info>Control the type of xsl debugtrace messages emitted.</info>
</macro>
- <macro name='XSLT_VAR_GLOBAL' file='xsltInternals'>
- </macro>
- <macro name='XSLT_VAR_IN_SELECT' file='xsltInternals'>
- </macro>
<macro name='XSLT_XALAN_NAMESPACE' file='extra'>
<info>This is the Apache project XALAN processor namespace for extensions.</info>
</macro>
@@ -1056,6 +1053,8 @@ corresponding to this item end of common part'/>
</struct>
<typedef name='xsltKeyTablePtr' file='xsltInternals' type='xsltKeyTable *'/>
<typedef name='xsltLoadType' file='documents' type='enum'/>
+ <typedef name='xsltLocale' file='xsltlocale' type='void *'/>
+ <typedef name='xsltLocaleChar' file='xsltlocale' type='xmlChar'/>
<struct name='xsltNsAlias' file='xsltInternals' type='struct _xsltNsAlias'>
<field name='next' type='xsltNsAliasPtr' info=' next in the list'/>
<field name='literalNs' type='xmlNsPtr' info=''/>
@@ -1271,6 +1270,7 @@ TODO: Check if we need.'/>
<field name='descending' type='int' info=' sort'/>
<field name='lang' type='const xmlChar *' info=' sort'/>
<field name='has_lang' type='int' info=' sort'/>
+ <field name='locale' type='xsltLocale' info=' sort'/>
<field name='case_order' type='const xmlChar *' info=' sort'/>
<field name='lower_first' type='int' info=' sort'/>
<field name='use' type='const xmlChar *' info=''/>
@@ -1315,6 +1315,7 @@ TODO: Check if we need.'/>
<field name='descending' type='int' info=' sort'/>
<field name='lang' type='const xmlChar *' info=' sort'/>
<field name='has_lang' type='int' info=' sort'/>
+ <field name='locale' type='xsltLocale' info=' sort'/>
<field name='case_order' type='const xmlChar *' info=' sort'/>
<field name='lower_first' type='int' info=' sort'/>
<field name='use' type='const xmlChar *' info=' copy, element'/>
@@ -2013,13 +2014,6 @@ exits'/>
<arg name='name' type='const xmlChar *' info='the element name'/>
<arg name='URI' type='const xmlChar *' info='the element namespace URI'/>
</function>
- <function name='xsltExtFunctionLookup' file='extensions'>
- <info></info>
- <return type='xmlXPathFunction' info=''/>
- <arg name='ctxt' type='xsltTransformContextPtr' info=''/>
- <arg name='name' type='const xmlChar *' info=''/>
- <arg name='URI' type='const xmlChar *' info=''/>
- </function>
<functype name='xsltExtInitFunction' file='extensions'>
<info>A function called at initialization time of an XSLT extension module.</info>
<return type='void *' info='a pointer to the module specific data for this transformation.'/>
@@ -2154,6 +2148,11 @@ exits'/>
<return type='void'/>
<arg name='style' type='xsltStylesheetPtr' info='an XSLT stylesheet'/>
</function>
+ <function name='xsltFreeLocale' file='xsltlocale'>
+ <info>Frees a locale created with xsltNewLocale</info>
+ <return type='void'/>
+ <arg name='locale' type='xsltLocale' info='the locale to free'/>
+ </function>
<function name='xsltFreeNamespaceAliasHashes' file='namespaces'>
<info>Free up the memory used by namespaces aliases</info>
<return type='void'/>
@@ -2348,8 +2347,8 @@ exits'/>
</function>
<function name='xsltInitAllDocKeys' file='xsltInternals'>
<info>INTERNAL ROUTINE ONLY Check if any keys on the current document need to be computed</info>
- <return type='int' info=''/>
- <arg name='ctxt' type='xsltTransformContextPtr' info=''/>
+ <return type='int' info='0 in case of success, -1 in case of failure'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='transformation context'/>
</function>
<function name='xsltInitCtxtExts' file='extensions'>
<info>Initialize the set of modules with registered stylesheet data</info>
@@ -2378,6 +2377,10 @@ exits'/>
<arg name='function' type='xsltTransformFunction' info='the transform function'/>
<arg name='freeFunc' type='xsltElemPreCompDeallocator' info='the @comp deallocator'/>
</function>
+ <function name='xsltInitGlobals' file='extensions'>
+ <info>Initialize the global variables for extensions</info>
+ <return type='void'/>
+ </function>
<function name='xsltIsBlank' file='xsltInternals'>
<info>Check if a string is ignorable</info>
<return type='int' info='1 if the string is NULL or made of blanks chars, 0 otherwise'/>
@@ -2420,6 +2423,13 @@ exits'/>
<arg name='variable' type='xsltStackElemPtr' info='variable to be pushed to the variable stack'/>
<arg name='level' type='int' info='new value for variable's level'/>
</function>
+ <function name='xsltLocaleStrcmp' file='xsltlocale'>
+ <info>Compares two strings transformed with xsltStrxfrm</info>
+ <return type='int' info='a value < 0 if str1 sorts before str2, a value > 0 if str1 sorts after str2, 0 if str1 and str2 are equal wrt sorting'/>
+ <arg name='locale' type='xsltLocale' info='a locale identifier'/>
+ <arg name='str1' type='const xsltLocaleChar *' info='a string transformed with xsltStrxfrm'/>
+ <arg name='str2' type='const xsltLocaleChar *' info='a string transformed with xsltStrxfrm'/>
+ </function>
<function name='xsltMatchPattern' file='pattern'>
<info></info>
<return type='int' info=''/>
@@ -2460,6 +2470,11 @@ exits'/>
<arg name='inst' type='xmlNodePtr' info='the element node'/>
<arg name='function' type='xsltTransformFunction' info='the transform function'/>
</function>
+ <function name='xsltNewLocale' file='xsltlocale'>
+ <info>Creates a new locale of an opaque system dependent type based on the language tag. Three-letter language codes (ISO 639-2 Alpha-3) are not supported.</info>
+ <return type='xsltLocale' info='the locale or NULL on error or if no matching locale was found'/>
+ <arg name='languageTag' type='const xmlChar *' info='RFC 3066 language tag'/>
+ </function>
<function name='xsltNewSecurityPrefs' file='security'>
<info>Create a new security preference block</info>
<return type='xsltSecurityPrefsPtr' info='a pointer to the new block or NULL in case of error'/>
@@ -2584,10 +2599,10 @@ exits'/>
<arg name='cur' type='xmlNodePtr' info='the XSLT 'param' element'/>
</function>
<function name='xsltParseStylesheetProcess' file='xsltInternals'>
- <info></info>
- <return type='xsltStylesheetPtr' info=''/>
- <arg name='ret' type='xsltStylesheetPtr' info=''/>
- <arg name='doc' type='xmlDocPtr' info=''/>
+ <info>Parses an XSLT stylesheet, adding the associated structures. Called by: xsltParseStylesheetImportedDoc() (xslt.c) xsltParseStylesheetInclude() (imports.c)</info>
+ <return type='xsltStylesheetPtr' info='the value of the @style parameter if everything went right, NULL if something went amiss.'/>
+ <arg name='ret' type='xsltStylesheetPtr' info='the XSLT stylesheet (the current stylesheet-level)'/>
+ <arg name='doc' type='xmlDocPtr' info='and xmlDoc parsed XML'/>
</function>
<function name='xsltParseStylesheetVariable' file='variables'>
<info>Registers a local XSLT 'variable' instruction at transformation time and evaluates its value.</info>
@@ -2786,10 +2801,10 @@ exits'/>
<arg name='style' type='xsltStylesheetPtr' info='the XSLT stylesheet'/>
</function>
<function name='xsltRestoreDocumentNamespaces' file='xsltInternals'>
- <info></info>
- <return type='int' info=''/>
- <arg name='ns' type='xsltNsMapPtr' info=''/>
- <arg name='doc' type='xmlDocPtr' info=''/>
+ <info>Restore the namespaces for the document</info>
+ <return type='int' info='0 in case of success, -1 in case of failure'/>
+ <arg name='ns' type='xsltNsMapPtr' info='map of namespaces'/>
+ <arg name='doc' type='xmlDocPtr' info='the document'/>
</function>
<function name='xsltRunStylesheet' file='transform'>
<info>Apply the stylesheet to the document and generate the output according to @output @SAX and @IObuf. It's an error to specify both @SAX and @IObuf. NOTE: This may lead to a non-wellformed output XML wise ! NOTE: This may also result in multiple files being generated NOTE: using IObuf, the result encoding used will be the one used for creating the output buffer, use the following macro to read it from the stylesheet XSLT_GET_IMPORT_PTR(encoding, style, encoding) NOTE: using SAX, any encoding specified in the stylesheet will be lost since the interface uses only UTF8</info>
@@ -2984,6 +2999,12 @@ exits'/>
<arg name='name' type='const xmlChar *' info='the full QName'/>
<arg name='prefix' type='const xmlChar **' info='the return value'/>
</function>
+ <function name='xsltStrxfrm' file='xsltlocale'>
+ <info>Transforms a string according to locale. The transformed string must then be compared with xsltLocaleStrcmp and freed with xmlFree.</info>
+ <return type='xsltLocaleChar *' info='the transformed string or NULL on error'/>
+ <arg name='locale' type='xsltLocale' info='locale created with xsltNewLocale'/>
+ <arg name='string' type='const xmlChar *' info='UTF-8 string to transform'/>
+ </function>
<functype name='xsltStyleExtInitFunction' file='extensions'>
<info>A function called at initialization time of an XSLT extension module.</info>
<return type='void *' info='a pointer to the module specific data for this transformation.'/>
diff --git a/doc/libxslt-refs.xml b/doc/libxslt-refs.xml
index 3156338..dd00382 100644
--- a/doc/libxslt-refs.xml
+++ b/doc/libxslt-refs.xml
@@ -30,9 +30,6 @@
<reference name='XSLT_DEFAULT_URL' href='html/libxslt-xslt.html#XSLT_DEFAULT_URL'/>
<reference name='XSLT_DEFAULT_VENDOR' href='html/libxslt-xslt.html#XSLT_DEFAULT_VENDOR'/>
<reference name='XSLT_DEFAULT_VERSION' href='html/libxslt-xslt.html#XSLT_DEFAULT_VERSION'/>
- <reference name='XSLT_ELEMENT_CATEGORY_EXTENSION' href='html/libxslt-xsltInternals.html#XSLT_ELEMENT_CATEGORY_EXTENSION'/>
- <reference name='XSLT_ELEMENT_CATEGORY_LRE' href='html/libxslt-xsltInternals.html#XSLT_ELEMENT_CATEGORY_LRE'/>
- <reference name='XSLT_ELEMENT_CATEGORY_XSLT' href='html/libxslt-xsltInternals.html#XSLT_ELEMENT_CATEGORY_XSLT'/>
<reference name='XSLT_ERROR_SEVERITY_ERROR' href='html/libxslt-xsltInternals.html#XSLT_ERROR_SEVERITY_ERROR'/>
<reference name='XSLT_ERROR_SEVERITY_WARNING' href='html/libxslt-xsltInternals.html#XSLT_ERROR_SEVERITY_WARNING'/>
<reference name='XSLT_FAST_IF' href='html/libxslt-xsltInternals.html#XSLT_FAST_IF'/>
@@ -79,6 +76,7 @@
<reference name='XSLT_LOAD_DOCUMENT' href='html/libxslt-documents.html#XSLT_LOAD_DOCUMENT'/>
<reference name='XSLT_LOAD_START' href='html/libxslt-documents.html#XSLT_LOAD_START'/>
<reference name='XSLT_LOAD_STYLESHEET' href='html/libxslt-documents.html#XSLT_LOAD_STYLESHEET'/>
+ <reference name='XSLT_LOCALE_NONE' href='html/libxslt-xsltlocale.html#XSLT_LOCALE_NONE'/>
<reference name='XSLT_MARK_RES_TREE_FRAG' href='html/libxslt-xsltInternals.html#XSLT_MARK_RES_TREE_FRAG'/>
<reference name='XSLT_MAX_SORT' href='html/libxslt-xsltInternals.html#XSLT_MAX_SORT'/>
<reference name='XSLT_NAMESPACE' href='html/libxslt-xslt.html#XSLT_NAMESPACE'/>
@@ -106,7 +104,6 @@
<reference name='XSLT_STATE_OK' href='html/libxslt-xsltInternals.html#XSLT_STATE_OK'/>
<reference name='XSLT_STATE_STOPPED' href='html/libxslt-xsltInternals.html#XSLT_STATE_STOPPED'/>
<reference name='XSLT_STRANGE' href='html/libxslt-xsltutils.html#XSLT_STRANGE'/>
- <reference name='XSLT_TCTXT_VARIABLE' href='html/libxslt-xsltInternals.html#XSLT_TCTXT_VARIABLE'/>
<reference name='XSLT_TIMESTAMP_TICS_PER_SEC' href='html/libxslt-xsltutils.html#XSLT_TIMESTAMP_TICS_PER_SEC'/>
<reference name='XSLT_TODO' href='html/libxslt-xsltutils.html#XSLT_TODO'/>
<reference name='XSLT_TRACE' href='html/libxslt-xsltutils.html#XSLT_TRACE'/>
@@ -129,8 +126,6 @@
<reference name='XSLT_TRACE_TEMPLATES' href='html/libxslt-xsltutils.html#XSLT_TRACE_TEMPLATES'/>
<reference name='XSLT_TRACE_VALUE_OF' href='html/libxslt-xsltutils.html#XSLT_TRACE_VALUE_OF'/>
<reference name='XSLT_TRACE_VARIABLES' href='html/libxslt-xsltutils.html#XSLT_TRACE_VARIABLES'/>
- <reference name='XSLT_VAR_GLOBAL' href='html/libxslt-xsltInternals.html#XSLT_VAR_GLOBAL'/>
- <reference name='XSLT_VAR_IN_SELECT' href='html/libxslt-xsltInternals.html#XSLT_VAR_IN_SELECT'/>
<reference name='XSLT_XALAN_NAMESPACE' href='html/libxslt-extra.html#XSLT_XALAN_NAMESPACE'/>
<reference name='XSLT_XT_NAMESPACE' href='html/libxslt-extra.html#XSLT_XT_NAMESPACE'/>
<reference name='_REENTRANT' href='html/libxslt-xsltexports.html#_REENTRANT'/>
@@ -269,7 +264,6 @@
<reference name='xsltEvalXPathString' href='html/libxslt-templates.html#xsltEvalXPathString'/>
<reference name='xsltEvalXPathStringNs' href='html/libxslt-templates.html#xsltEvalXPathStringNs'/>
<reference name='xsltExtElementLookup' href='html/libxslt-extensions.html#xsltExtElementLookup'/>
- <reference name='xsltExtFunctionLookup' href='html/libxslt-extensions.html#xsltExtFunctionLookup'/>
<reference name='xsltExtInitFunction' href='html/libxslt-extensions.html#xsltExtInitFunction'/>
<reference name='xsltExtMarker' href='html/libxslt-preproc.html#xsltExtMarker'/>
<reference name='xsltExtModuleElementLookup' href='html/libxslt-extensions.html#xsltExtModuleElementLookup'/>
@@ -296,6 +290,7 @@
<reference name='xsltFreeExts' href='html/libxslt-extensions.html#xsltFreeExts'/>
<reference name='xsltFreeGlobalVariables' href='html/libxslt-variables.html#xsltFreeGlobalVariables'/>
<reference name='xsltFreeKeys' href='html/libxslt-keys.html#xsltFreeKeys'/>
+ <reference name='xsltFreeLocale' href='html/libxslt-xsltlocale.html#xsltFreeLocale'/>
<reference name='xsltFreeNamespaceAliasHashes' href='html/libxslt-namespaces.html#xsltFreeNamespaceAliasHashes'/>
<reference name='xsltFreeRVTs' href='html/libxslt-xsltInternals.html#xsltFreeRVTs'/>
<reference name='xsltFreeSecurityPrefs' href='html/libxslt-security.html#xsltFreeSecurityPrefs'/>
@@ -337,6 +332,7 @@
<reference name='xsltInitCtxtKey' href='html/libxslt-xsltInternals.html#xsltInitCtxtKey'/>
<reference name='xsltInitCtxtKeys' href='html/libxslt-keys.html#xsltInitCtxtKeys'/>
<reference name='xsltInitElemPreComp' href='html/libxslt-extensions.html#xsltInitElemPreComp'/>
+ <reference name='xsltInitGlobals' href='html/libxslt-extensions.html#xsltInitGlobals'/>
<reference name='xsltIsBlank' href='html/libxslt-xsltInternals.html#xsltIsBlank'/>
<reference name='xsltKeyDef' href='html/libxslt-xsltInternals.html#xsltKeyDef'/>
<reference name='xsltKeyDefPtr' href='html/libxslt-xsltInternals.html#xsltKeyDefPtr'/>
@@ -351,6 +347,9 @@
<reference name='xsltLoadType' href='html/libxslt-documents.html#xsltLoadType'/>
<reference name='xsltLocalVariablePop' href='html/libxslt-transform.html#xsltLocalVariablePop'/>
<reference name='xsltLocalVariablePush' href='html/libxslt-transform.html#xsltLocalVariablePush'/>
+ <reference name='xsltLocale' href='html/libxslt-xsltlocale.html#xsltLocale'/>
+ <reference name='xsltLocaleChar' href='html/libxslt-xsltlocale.html#xsltLocaleChar'/>
+ <reference name='xsltLocaleStrcmp' href='html/libxslt-xsltlocale.html#xsltLocaleStrcmp'/>
<reference name='xsltMatchPattern' href='html/libxslt-pattern.html#xsltMatchPattern'/>
<reference name='xsltMaxDepth' href='html/libxslt-xslt.html#xsltMaxDepth'/>
<reference name='xsltMessage' href='html/libxslt-xsltutils.html#xsltMessage'/>
@@ -358,6 +357,7 @@
<reference name='xsltNeedElemSpaceHandling' href='html/libxslt-imports.html#xsltNeedElemSpaceHandling'/>
<reference name='xsltNewDocument' href='html/libxslt-documents.html#xsltNewDocument'/>
<reference name='xsltNewElemPreComp' href='html/libxslt-extensions.html#xsltNewElemPreComp'/>
+ <reference name='xsltNewLocale' href='html/libxslt-xsltlocale.html#xsltNewLocale'/>
<reference name='xsltNewSecurityPrefs' href='html/libxslt-security.html#xsltNewSecurityPrefs'/>
<reference name='xsltNewStyleDocument' href='html/libxslt-documents.html#xsltNewStyleDocument'/>
<reference name='xsltNewStylesheet' href='html/libxslt-xsltInternals.html#xsltNewStylesheet'/>
@@ -463,6 +463,7 @@
<reference name='xsltSplitQName' href='html/libxslt-xsltutils.html#xsltSplitQName'/>
<reference name='xsltStackElem' href='html/libxslt-xsltInternals.html#xsltStackElem'/>
<reference name='xsltStackElemPtr' href='html/libxslt-xsltInternals.html#xsltStackElemPtr'/>
+ <reference name='xsltStrxfrm' href='html/libxslt-xsltlocale.html#xsltStrxfrm'/>
<reference name='xsltStyleBasicEmptyItem' href='html/libxslt-xsltInternals.html#xsltStyleBasicEmptyItem'/>
<reference name='xsltStyleBasicEmptyItemPtr' href='html/libxslt-xsltInternals.html#xsltStyleBasicEmptyItemPtr'/>
<reference name='xsltStyleBasicExpressionItem' href='html/libxslt-xsltInternals.html#xsltStyleBasicExpressionItem'/>
@@ -609,9 +610,6 @@
<ref name='XSLT_DEFAULT_URL'/>
<ref name='XSLT_DEFAULT_VENDOR'/>
<ref name='XSLT_DEFAULT_VERSION'/>
- <ref name='XSLT_ELEMENT_CATEGORY_EXTENSION'/>
- <ref name='XSLT_ELEMENT_CATEGORY_LRE'/>
- <ref name='XSLT_ELEMENT_CATEGORY_XSLT'/>
<ref name='XSLT_ERROR_SEVERITY_ERROR'/>
<ref name='XSLT_ERROR_SEVERITY_WARNING'/>
<ref name='XSLT_FAST_IF'/>
@@ -658,6 +656,7 @@
<ref name='XSLT_LOAD_DOCUMENT'/>
<ref name='XSLT_LOAD_START'/>
<ref name='XSLT_LOAD_STYLESHEET'/>
+ <ref name='XSLT_LOCALE_NONE'/>
<ref name='XSLT_MARK_RES_TREE_FRAG'/>
<ref name='XSLT_MAX_SORT'/>
<ref name='XSLT_NAMESPACE'/>
@@ -685,7 +684,6 @@
<ref name='XSLT_STATE_OK'/>
<ref name='XSLT_STATE_STOPPED'/>
<ref name='XSLT_STRANGE'/>
- <ref name='XSLT_TCTXT_VARIABLE'/>
<ref name='XSLT_TIMESTAMP_TICS_PER_SEC'/>
<ref name='XSLT_TODO'/>
<ref name='XSLT_TRACE'/>
@@ -708,8 +706,6 @@
<ref name='XSLT_TRACE_TEMPLATES'/>
<ref name='XSLT_TRACE_VALUE_OF'/>
<ref name='XSLT_TRACE_VARIABLES'/>
- <ref name='XSLT_VAR_GLOBAL'/>
- <ref name='XSLT_VAR_IN_SELECT'/>
<ref name='XSLT_XALAN_NAMESPACE'/>
<ref name='XSLT_XT_NAMESPACE'/>
</letter>
@@ -852,7 +848,6 @@
<ref name='xsltEvalXPathString'/>
<ref name='xsltEvalXPathStringNs'/>
<ref name='xsltExtElementLookup'/>
- <ref name='xsltExtFunctionLookup'/>
<ref name='xsltExtInitFunction'/>
<ref name='xsltExtMarker'/>
<ref name='xsltExtModuleElementLookup'/>
@@ -879,6 +874,7 @@
<ref name='xsltFreeExts'/>
<ref name='xsltFreeGlobalVariables'/>
<ref name='xsltFreeKeys'/>
+ <ref name='xsltFreeLocale'/>
<ref name='xsltFreeNamespaceAliasHashes'/>
<ref name='xsltFreeRVTs'/>
<ref name='xsltFreeSecurityPrefs'/>
@@ -920,6 +916,7 @@
<ref name='xsltInitCtxtKey'/>
<ref name='xsltInitCtxtKeys'/>
<ref name='xsltInitElemPreComp'/>
+ <ref name='xsltInitGlobals'/>
<ref name='xsltIsBlank'/>
<ref name='xsltKeyDef'/>
<ref name='xsltKeyDefPtr'/>
@@ -934,6 +931,9 @@
<ref name='xsltLoadType'/>
<ref name='xsltLocalVariablePop'/>
<ref name='xsltLocalVariablePush'/>
+ <ref name='xsltLocale'/>
+ <ref name='xsltLocaleChar'/>
+ <ref name='xsltLocaleStrcmp'/>
<ref name='xsltMatchPattern'/>
<ref name='xsltMaxDepth'/>
<ref name='xsltMessage'/>
@@ -941,6 +941,7 @@
<ref name='xsltNeedElemSpaceHandling'/>
<ref name='xsltNewDocument'/>
<ref name='xsltNewElemPreComp'/>
+ <ref name='xsltNewLocale'/>
<ref name='xsltNewSecurityPrefs'/>
<ref name='xsltNewStyleDocument'/>
<ref name='xsltNewStylesheet'/>
@@ -1046,6 +1047,7 @@
<ref name='xsltSplitQName'/>
<ref name='xsltStackElem'/>
<ref name='xsltStackElemPtr'/>
+ <ref name='xsltStrxfrm'/>
<ref name='xsltStyleBasicEmptyItem'/>
<ref name='xsltStyleBasicEmptyItemPtr'/>
<ref name='xsltStyleBasicExpressionItem'/>
@@ -1219,7 +1221,6 @@
<ref name='xsltFormatNumberConversion'/>
</type>
<type name='xmlXPathFunction'>
- <ref name='xsltExtFunctionLookup'/>
<ref name='xsltExtModuleFunctionLookup'/>
<ref name='xsltXPathFunctionLookup'/>
</type>
@@ -1252,6 +1253,12 @@
<ref name='xsltPreComputeExtModuleElement'/>
<ref name='xsltPreComputeFunction'/>
</type>
+ <type name='xsltLocale'>
+ <ref name='xsltNewLocale'/>
+ </type>
+ <type name='xsltLocaleChar *'>
+ <ref name='xsltStrxfrm'/>
+ </type>
<type name='xsltPointerListPtr'>
<ref name='xsltPointerListCreate'/>
</type>
@@ -1334,7 +1341,6 @@
<ref name='xsltEvalOneUserParam'/>
<ref name='xsltEvalStaticAttrValueTemplate'/>
<ref name='xsltExtElementLookup'/>
- <ref name='xsltExtFunctionLookup'/>
<ref name='xsltExtInitFunction'/>
<ref name='xsltExtModuleElementLookup'/>
<ref name='xsltExtModuleElementPreComputeLookup'/>
@@ -1351,6 +1357,7 @@
<ref name='xsltLoadDocument'/>
<ref name='xsltLoadStyleDocument'/>
<ref name='xsltMatchPattern'/>
+ <ref name='xsltNewLocale'/>
<ref name='xsltNormalizeCompSteps'/>
<ref name='xsltParseStylesheetFile'/>
<ref name='xsltQuoteOneUserParam'/>
@@ -1363,6 +1370,7 @@
<ref name='xsltRegisterExtModuleTopLevel'/>
<ref name='xsltRegisterExtPrefix'/>
<ref name='xsltSplitQName'/>
+ <ref name='xsltStrxfrm'/>
<ref name='xsltStyleExtInitFunction'/>
<ref name='xsltStyleExtShutdownFunction'/>
<ref name='xsltStyleGetExtData'/>
@@ -1380,6 +1388,9 @@
<ref name='xsltGetQNameURI2'/>
<ref name='xsltSplitQName'/>
</type>
+ <type name='const xsltLocaleChar *'>
+ <ref name='xsltLocaleStrcmp'/>
+ </type>
<type name='double'>
<ref name='xsltFormatNumberConversion'/>
</type>
@@ -1634,6 +1645,11 @@
<type name='xsltLoadType'>
<ref name='xsltDocLoaderFunc'/>
</type>
+ <type name='xsltLocale'>
+ <ref name='xsltFreeLocale'/>
+ <ref name='xsltLocaleStrcmp'/>
+ <ref name='xsltStrxfrm'/>
+ </type>
<type name='xsltNsMapPtr'>
<ref name='xsltRestoreDocumentNamespaces'/>
</type>
@@ -1822,7 +1838,6 @@
<ref name='xsltEvalXPathString'/>
<ref name='xsltEvalXPathStringNs'/>
<ref name='xsltExtElementLookup'/>
- <ref name='xsltExtFunctionLookup'/>
<ref name='xsltExtInitFunction'/>
<ref name='xsltExtShutdownFunction'/>
<ref name='xsltExtensionInstructionResultFinalize'/>
@@ -1932,7 +1947,6 @@
<ref name='xsltCheckExtURI'/>
<ref name='xsltDebugDumpExtensions'/>
<ref name='xsltExtElementLookup'/>
- <ref name='xsltExtFunctionLookup'/>
<ref name='xsltExtInitFunction'/>
<ref name='xsltExtModuleElementLookup'/>
<ref name='xsltExtModuleElementPreComputeLookup'/>
@@ -1945,6 +1959,7 @@
<ref name='xsltGetExtInfo'/>
<ref name='xsltInitCtxtExts'/>
<ref name='xsltInitElemPreComp'/>
+ <ref name='xsltInitGlobals'/>
<ref name='xsltNewElemPreComp'/>
<ref name='xsltPreComputeExtModuleElement'/>
<ref name='xsltPreComputeFunction'/>
@@ -2157,9 +2172,6 @@
<ref name='IS_XSLT_ELEM_FAST'/>
<ref name='XML_CAST_FPTR'/>
<ref name='XSLT_CCTXT'/>
- <ref name='XSLT_ELEMENT_CATEGORY_EXTENSION'/>
- <ref name='XSLT_ELEMENT_CATEGORY_LRE'/>
- <ref name='XSLT_ELEMENT_CATEGORY_XSLT'/>
<ref name='XSLT_ERROR_SEVERITY_ERROR'/>
<ref name='XSLT_ERROR_SEVERITY_WARNING'/>
<ref name='XSLT_FAST_IF'/>
@@ -2215,9 +2227,6 @@
<ref name='XSLT_STATE_ERROR'/>
<ref name='XSLT_STATE_OK'/>
<ref name='XSLT_STATE_STOPPED'/>
- <ref name='XSLT_TCTXT_VARIABLE'/>
- <ref name='XSLT_VAR_GLOBAL'/>
- <ref name='XSLT_VAR_IN_SELECT'/>
<ref name='_xsltCompilerCtxt'/>
<ref name='_xsltCompilerNodeInfo'/>
<ref name='_xsltDecimalFormat'/>
@@ -2425,6 +2434,15 @@
<ref name='XSLTPUBVAR'/>
<ref name='_REENTRANT'/>
</file>
+ <file name='xsltlocale'>
+ <ref name='XSLT_LOCALE_NONE'/>
+ <ref name='xsltFreeLocale'/>
+ <ref name='xsltLocale'/>
+ <ref name='xsltLocaleChar'/>
+ <ref name='xsltLocaleStrcmp'/>
+ <ref name='xsltNewLocale'/>
+ <ref name='xsltStrxfrm'/>
+ </file>
<file name='xsltutils'>
<ref name='IS_XSLT_ELEM'/>
<ref name='IS_XSLT_NAME'/>
@@ -2547,6 +2565,9 @@
<ref name='xsltAllocateExtra'/>
<ref name='xsltAllocateExtraCtxt'/>
</word>
+ <word name='Alpha-3'>
+ <ref name='xsltNewLocale'/>
+ </word>
<word name='Apache'>
<ref name='XSLT_XALAN_NAMESPACE'/>
</word>
@@ -2581,6 +2602,7 @@
<ref name='xsltCheckExtURI'/>
<ref name='xsltCopyNamespaceList'/>
<ref name='xsltGetNamespace'/>
+ <ref name='xsltParseStylesheetProcess'/>
<ref name='xsltRegisterExtPrefix'/>
<ref name='xsltStyleGetExtData'/>
</word>
@@ -2624,6 +2646,9 @@
<word name='Common'>
<ref name='XSLT_ITEM_COMMON_FIELDS'/>
</word>
+ <word name='Compares'>
+ <ref name='xsltLocaleStrcmp'/>
+ </word>
<word name='Compilation'>
<ref name='_xsltStylesheet'/>
</word>
@@ -2657,6 +2682,7 @@
<word name='Creates'>
<ref name='xsltCreateRVT'/>
<ref name='xsltNewElemPreComp'/>
+ <ref name='xsltNewLocale'/>
<ref name='xsltPointerListCreate'/>
</word>
<word name='Current'>
@@ -2813,6 +2839,7 @@
<ref name='xsltFreeTransformContext'/>
</word>
<word name='Frees'>
+ <ref name='xsltFreeLocale'/>
<ref name='xsltFreeRVTs'/>
<ref name='xsltFreeStyleDocuments'/>
<ref name='xsltPointerListFree'/>
@@ -2853,6 +2880,7 @@
</word>
<word name='ISO'>
<ref name='XML_CAST_FPTR'/>
+ <ref name='xsltNewLocale'/>
</word>
<word name='Implement'>
<ref name='xsltDocumentFunction'/>
@@ -2873,6 +2901,7 @@
</word>
<word name='Initialize'>
<ref name='xsltInitCtxtExts'/>
+ <ref name='xsltInitGlobals'/>
</word>
<word name='Initializes'>
<ref name='xsltInit'/>
@@ -2955,6 +2984,7 @@
<ref name='CHECK_STOPPED0'/>
<ref name='CHECK_STOPPEDE'/>
<ref name='XML_CAST_FPTR'/>
+ <ref name='XSLT_LOCALE_NONE'/>
<ref name='XSLT_RUNTIME_EXTRA'/>
<ref name='XSLT_RUNTIME_EXTRA_FREE'/>
<ref name='XSLT_RUNTIME_EXTRA_LST'/>
@@ -3074,6 +3104,7 @@
<ref name='xsltParseAnyXSLTElem'/>
<ref name='xsltParseGlobalVariable'/>
<ref name='xsltParseSequenceConstructor'/>
+ <ref name='xsltParseStylesheetProcess'/>
</word>
<word name='Pattern'>
<ref name='xsltCompilePattern'/>
@@ -3170,6 +3201,9 @@
<word name='REVISIT:'>
<ref name='xsltCopyNamespaceList'/>
</word>
+ <word name='RFC'>
+ <ref name='xsltNewLocale'/>
+ </word>
<word name='ROUTINE'>
<ref name='xsltInitAllDocKeys'/>
</word>
@@ -3220,6 +3254,9 @@
<word name='Resets'>
<ref name='xsltPointerListClear'/>
</word>
+ <word name='Restore'>
+ <ref name='xsltRestoreDocumentNamespaces'/>
+ </word>
<word name='Result'>
<ref name='_xsltStackElem'/>
<ref name='_xsltStylesheet'/>
@@ -3363,9 +3400,15 @@
<word name='That'>
<ref name='XSLT_REFACTORED_KEYCOMP'/>
</word>
+ <word name='Three-letter'>
+ <ref name='xsltNewLocale'/>
+ </word>
<word name='TransformContext'>
<ref name='xsltNewTransformContext'/>
</word>
+ <word name='Transforms'>
+ <ref name='xsltStrxfrm'/>
+ </word>
<word name='Tree'>
<ref name='_xsltStackElem'/>
<ref name='_xsltTransformContext'/>
@@ -3397,6 +3440,7 @@
</word>
<word name='UTF-8'>
<ref name='xsltGetUTF8Char'/>
+ <ref name='xsltStrxfrm'/>
</word>
<word name='UTF8'>
<ref name='xsltGetUTF8Char'/>
@@ -3476,6 +3520,7 @@
<ref name='xsltNewStyleDocument'/>
<ref name='xsltParseStylesheetDoc'/>
<ref name='xsltParseStylesheetImportedDoc'/>
+ <ref name='xsltParseStylesheetProcess'/>
<ref name='xsltProfileStylesheet'/>
<ref name='xsltRunStylesheet'/>
<ref name='xsltRunStylesheetUser'/>
@@ -3515,6 +3560,7 @@
<word name='according'>
<ref name='xsltRunStylesheet'/>
<ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltStrxfrm'/>
</word>
<word name='accordingly'>
<ref name='xsltComputeSortResult'/>
@@ -3543,6 +3589,9 @@
<ref name='xsltGetSpecialNamespace'/>
<ref name='xsltPointerListAddSize'/>
</word>
+ <word name='adding'>
+ <ref name='xsltParseStylesheetProcess'/>
+ </word>
<word name='additionally'>
<ref name='xsltExtensionInstructionResultRegister'/>
<ref name='xsltParseSequenceConstructor'/>
@@ -3553,6 +3602,7 @@
<word name='after'>
<ref name='xsltExtensionInstructionResultFinalize'/>
<ref name='xsltGetProfileInformation'/>
+ <ref name='xsltLocaleStrcmp'/>
<ref name='xsltParseStylesheetDoc'/>
</word>
<word name='afterwards'>
@@ -3635,6 +3685,9 @@
<ref name='xsltSecurityAllow'/>
<ref name='xsltSecurityForbid'/>
</word>
+ <word name='amiss'>
+ <ref name='xsltParseStylesheetProcess'/>
+ </word>
<word name='analyzes'>
<ref name='xsltGetQNameURI'/>
</word>
@@ -3715,6 +3768,7 @@
<ref name='xsltSaveResultToString'/>
</word>
<word name='are'>
+ <ref name='XSLT_LOCALE_NONE'/>
<ref name='_xsltDocument'/>
<ref name='_xsltStackElem'/>
<ref name='_xsltStylesheet'/>
@@ -3730,6 +3784,8 @@
<ref name='xsltGetQNameURI'/>
<ref name='xsltGetSpecialNamespace'/>
<ref name='xsltInitCtxtKeys'/>
+ <ref name='xsltLocaleStrcmp'/>
+ <ref name='xsltNewLocale'/>
<ref name='xsltQuoteUserParams'/>
</word>
<word name='argument'>
@@ -3786,6 +3842,7 @@
<ref name='xsltGetQNameURI'/>
<ref name='xsltParseStylesheetDoc'/>
<ref name='xsltParseStylesheetImportedDoc'/>
+ <ref name='xsltParseStylesheetProcess'/>
<ref name='xsltRegisterExtElement'/>
<ref name='xsltRegisterExtFunction'/>
<ref name='xsltRegisterExtModule'/>
@@ -3850,6 +3907,7 @@
</word>
<word name='based'>
<ref name='_xsltStylesheet'/>
+ <ref name='xsltNewLocale'/>
</word>
<word name='basically'>
<ref name='xsltCompileAttr'/>
@@ -3863,6 +3921,7 @@
<ref name='xsltEvalUserParams'/>
<ref name='xsltExtensionInstructionResultRegister'/>
<ref name='xsltInitCtxtKeys'/>
+ <ref name='xsltLocaleStrcmp'/>
<ref name='xsltQuoteUserParams'/>
</word>
<word name='beginning'>
@@ -3979,6 +4038,7 @@
<ref name='xsltCheckExtURI'/>
<ref name='xsltCopyNamespaceList'/>
<ref name='xsltGetNamespace'/>
+ <ref name='xsltParseStylesheetProcess'/>
<ref name='xsltRegisterExtPrefix'/>
<ref name='xsltStyleGetExtData'/>
</word>
@@ -4187,6 +4247,9 @@
<ref name='xsltGetNamespace'/>
<ref name='xsltInitCtxtKeys'/>
</word>
+ <word name='codes'>
+ <ref name='xsltNewLocale'/>
+ </word>
<word name='collected'>
<ref name='xsltExtensionInstructionResultRegister'/>
</word>
@@ -4217,6 +4280,9 @@
<word name='compExpr'>
<ref name='_xsltStyleBasicExpressionItem'/>
</word>
+ <word name='compared'>
+ <ref name='xsltStrxfrm'/>
+ </word>
<word name='comparison'>
<ref name='_xsltPrincipalStylesheetData'/>
<ref name='xsltFindTemplate'/>
@@ -4389,9 +4455,11 @@
<ref name='xsltCopyTextString'/>
<ref name='xsltExtensionInstructionResultFinalize'/>
<ref name='xsltExtensionInstructionResultRegister'/>
+ <ref name='xsltFreeLocale'/>
<ref name='xsltGetNamespace'/>
<ref name='xsltGetSpecialNamespace'/>
<ref name='xsltRegisterLocalRVT'/>
+ <ref name='xsltStrxfrm'/>
</word>
<word name='creating'>
<ref name='xsltCheckWrite'/>
@@ -4537,6 +4605,9 @@
<word name='definitions'>
<ref name='_xsltStylesheet'/>
</word>
+ <word name='dependent'>
+ <ref name='xsltNewLocale'/>
+ </word>
<word name='deprecated'>
<ref name='xsltRegisterExtras'/>
</word>
@@ -4754,6 +4825,9 @@
<word name='episode'>
<ref name='_xsltCompilerCtxt'/>
</word>
+ <word name='equal'>
+ <ref name='xsltLocaleStrcmp'/>
+ </word>
<word name='error:'>
<ref name='CHECK_STOPPEDE'/>
</word>
@@ -4798,6 +4872,7 @@
<word name='everything'>
<ref name='xsltFindElemSpaceHandling'/>
<ref name='xsltParseAnyXSLTElem'/>
+ <ref name='xsltParseStylesheetProcess'/>
</word>
<word name='example'>
<ref name='xsltDocLoaderFunc'/>
@@ -4907,6 +4982,7 @@
<ref name='xsltCheckExtURI'/>
<ref name='xsltFreeExts'/>
<ref name='xsltInit'/>
+ <ref name='xsltInitGlobals'/>
<ref name='xsltRegisterAllExtras'/>
<ref name='xsltRegisterExtras'/>
</word>
@@ -4941,11 +5017,13 @@
<ref name='xsltAddKey'/>
<ref name='xsltAddStackElemList'/>
<ref name='xsltCompilePattern'/>
+ <ref name='xsltInitAllDocKeys'/>
<ref name='xsltParseStylesheetImport'/>
<ref name='xsltParseStylesheetInclude'/>
<ref name='xsltRegisterExtElement'/>
<ref name='xsltRegisterExtFunction'/>
<ref name='xsltRegisterExtPrefix'/>
+ <ref name='xsltRestoreDocumentNamespaces'/>
<ref name='xsltSaveResultTo'/>
<ref name='xsltSaveResultToFd'/>
<ref name='xsltSaveResultToFile'/>
@@ -5065,6 +5143,7 @@
<ref name='xsltGetSpecialNamespace'/>
<ref name='xsltGetTemplate'/>
<ref name='xsltLoadStylesheetPI'/>
+ <ref name='xsltNewLocale'/>
<ref name='xsltVariableLookup'/>
<ref name='xsltXPathFunctionLookup'/>
<ref name='xsltXPathVariableLookup'/>
@@ -5101,6 +5180,7 @@
<ref name='xsltElemPreCompDeallocator'/>
<ref name='xsltEvalTemplateString'/>
<ref name='xsltExtensionInstructionResultFinalize'/>
+ <ref name='xsltFreeLocale'/>
<ref name='xsltFreeSecurityPrefs'/>
<ref name='xsltGetNsProp'/>
<ref name='xsltGetProfileInformation'/>
@@ -5118,6 +5198,7 @@
<ref name='xsltRegisterLocalRVT'/>
<ref name='xsltRegisterPersistRVT'/>
<ref name='xsltRegisterTmpRVT'/>
+ <ref name='xsltStrxfrm'/>
</word>
<word name='frees'>
<ref name='xsltReleaseRVT'/>
@@ -5265,6 +5346,7 @@
<ref name='xsltEvalUserParams'/>
<ref name='xsltFreeGlobalVariables'/>
<ref name='xsltInitCtxtKeys'/>
+ <ref name='xsltInitGlobals'/>
<ref name='xsltParseGlobalVariable'/>
<ref name='xsltQuoteOneUserParam'/>
<ref name='xsltSetCtxtSortFunc'/>
@@ -5376,6 +5458,9 @@
</word>
</letter>
<letter name='i'>
+ <word name='identifier'>
+ <ref name='xsltLocaleStrcmp'/>
+ </word>
<word name='ignorable'>
<ref name='xsltApplyStripSpaces'/>
<ref name='xsltIsBlank'/>
@@ -5405,6 +5490,7 @@
<word name='imports'>
<ref name='_xsltStylesheet'/>
<ref name='xsltCleanupTemplates'/>
+ <ref name='xsltParseStylesheetProcess'/>
</word>
<word name='in-scope'>
<ref name='XSLT_ITEM_NSINSCOPE_FIELDS'/>
@@ -5433,6 +5519,7 @@
<ref name='nr'/>
</word>
<word name='indicating'>
+ <ref name='XSLT_LOCALE_NONE'/>
<ref name='xsltDocLoaderFunc'/>
</word>
<word name='indicator'>
@@ -5692,6 +5779,7 @@
<ref name='CHECK_STOPPEDE'/>
</word>
<word name='language'>
+ <ref name='xsltNewLocale'/>
<ref name='xsltTransformFunction'/>
</word>
<word name='last'>
@@ -5799,6 +5887,13 @@
<ref name='xsltParseStylesheetVariable'/>
<ref name='xsltSplitQName'/>
</word>
+ <word name='locale'>
+ <ref name='XSLT_LOCALE_NONE'/>
+ <ref name='xsltFreeLocale'/>
+ <ref name='xsltLocaleStrcmp'/>
+ <ref name='xsltNewLocale'/>
+ <ref name='xsltStrxfrm'/>
+ </word>
<word name='localname'>
<ref name='xsltSplitQName'/>
</word>
@@ -5856,6 +5951,7 @@
<word name='map'>
<ref name='XSLT_GET_INTERNAL_NSMAP'/>
<ref name='_xsltPrincipalStylesheetData'/>
+ <ref name='xsltRestoreDocumentNamespaces'/>
</word>
<word name='mapped'>
<ref name='_xsltNsMap'/>
@@ -5891,6 +5987,7 @@
<ref name='xsltCompilePattern'/>
<ref name='xsltGetNamespace'/>
<ref name='xsltGetSpecialNamespace'/>
+ <ref name='xsltNewLocale'/>
</word>
<word name='may'>
<ref name='_xsltDecimalFormat'/>
@@ -6001,6 +6098,7 @@
<ref name='xsltEvalStaticAttrValueTemplate'/>
<ref name='xsltEvalXPathString'/>
<ref name='xsltEvalXPathStringNs'/>
+ <ref name='xsltStrxfrm'/>
</word>
</letter>
</chunk>
@@ -6040,6 +6138,7 @@
<ref name='xsltEvalXPathPredicate'/>
<ref name='xsltEvalXPathStringNs'/>
<ref name='xsltFreeNamespaceAliasHashes'/>
+ <ref name='xsltRestoreDocumentNamespaces'/>
</word>
<word name='navigational'>
<ref name='XSLT_ITEM_NAVIGATION_FIELDS'/>
@@ -6273,6 +6372,9 @@
<ref name='xsltAddStackElemList'/>
<ref name='xsltLocalVariablePush'/>
</word>
+ <word name='opaque'>
+ <ref name='xsltNewLocale'/>
+ </word>
<word name='open'>
<ref name='xsltSaveResultToFd'/>
<ref name='xsltSaveResultToFile'/>
@@ -6383,6 +6485,7 @@
<word name='parameter'>
<ref name='xsltEvalOneUserParam'/>
<ref name='xsltEvalUserParams'/>
+ <ref name='xsltParseStylesheetProcess'/>
<ref name='xsltQuoteOneUserParam'/>
</word>
<word name='parameters'>
@@ -6432,6 +6535,7 @@
<ref name='xsltParseSequenceConstructor'/>
<ref name='xsltParseStylesheetDoc'/>
<ref name='xsltParseStylesheetImportedDoc'/>
+ <ref name='xsltParseStylesheetProcess'/>
<ref name='xsltProfileStylesheet'/>
<ref name='xsltQuoteUserParams'/>
<ref name='xsltRunStylesheet'/>
@@ -6963,6 +7067,9 @@
<ref name='_xsltPrincipalStylesheetData'/>
<ref name='_xsltStylesheet'/>
</word>
+ <word name='right'>
+ <ref name='xsltParseStylesheetProcess'/>
+ </word>
<word name='root'>
<ref name='_xsltCompilerCtxt'/>
<ref name='_xsltCompilerNodeInfo'/>
@@ -7199,6 +7306,9 @@
<ref name='xsltCheckWrite'/>
<ref name='xsltCompileAttr'/>
</word>
+ <word name='something'>
+ <ref name='xsltParseStylesheetProcess'/>
+ </word>
<word name='sorted'>
<ref name='_xsltTemplate'/>
</word>
@@ -7206,6 +7316,7 @@
<ref name='xsltComputeSortResult'/>
<ref name='xsltDefaultSortFunction'/>
<ref name='xsltDoSortFunction'/>
+ <ref name='xsltLocaleStrcmp'/>
<ref name='xsltSetCtxtSortFunc'/>
<ref name='xsltSetSortFunc'/>
<ref name='xsltSortFunc'/>
@@ -7213,6 +7324,7 @@
<word name='sorts'>
<ref name='xsltDefaultSortFunction'/>
<ref name='xsltDoSortFunction'/>
+ <ref name='xsltLocaleStrcmp'/>
<ref name='xsltSortFunc'/>
</word>
<word name='space'>
@@ -7346,6 +7458,12 @@
<word name='stores'>
<ref name='xsltReleaseRVT'/>
</word>
+ <word name='str1'>
+ <ref name='xsltLocaleStrcmp'/>
+ </word>
+ <word name='str2'>
+ <ref name='xsltLocaleStrcmp'/>
+ </word>
<word name='strict'>
<ref name='_xsltCompilerCtxt'/>
</word>
@@ -7355,6 +7473,7 @@
<word name='strings'>
<ref name='_xsltStylesheet'/>
<ref name='_xsltTransformContext'/>
+ <ref name='xsltLocaleStrcmp'/>
</word>
<word name='strip-space'>
<ref name='_xsltStylesheet'/>
@@ -7393,6 +7512,7 @@
<ref name='xsltFreeStyleDocuments'/>
<ref name='xsltParseStylesheetDoc'/>
<ref name='xsltParseStylesheetImportedDoc'/>
+ <ref name='xsltParseStylesheetProcess'/>
</word>
<word name='stuff'>
<ref name='_xsltStylesheet'/>
@@ -7407,6 +7527,7 @@
</word>
<word name='stylesheet-level'>
<ref name='xsltFreeStyleDocuments'/>
+ <ref name='xsltParseStylesheetProcess'/>
</word>
<word name='stylesheet-modules'>
<ref name='xsltFreeStyleDocuments'/>
@@ -7453,6 +7574,7 @@
<ref name='xsltEvalUserParams'/>
<ref name='xsltExtensionInstructionResultFinalize'/>
<ref name='xsltExtensionInstructionResultRegister'/>
+ <ref name='xsltInitAllDocKeys'/>
<ref name='xsltInitCtxtKey'/>
<ref name='xsltLocalVariablePush'/>
<ref name='xsltParseStylesheetImport'/>
@@ -7465,6 +7587,7 @@
<ref name='xsltRegisterLocalRVT'/>
<ref name='xsltRegisterPersistRVT'/>
<ref name='xsltRegisterTmpRVT'/>
+ <ref name='xsltRestoreDocumentNamespaces'/>
<ref name='xsltSaveResultToString'/>
<ref name='xsltSetDebuggerCallbacks'/>
</word>
@@ -7502,10 +7625,15 @@
</word>
<word name='supported'>
<ref name='XSLT_DEFAULT_VERSION'/>
+ <ref name='XSLT_LOCALE_NONE'/>
+ <ref name='xsltNewLocale'/>
</word>
<word name='sure'>
<ref name='xsltAllocateExtraCtxt'/>
</word>
+ <word name='system'>
+ <ref name='xsltNewLocale'/>
+ </word>
<word name='system-property'>
<ref name='xsltSystemPropertyFunction'/>
</word>
@@ -7526,6 +7654,9 @@
<ref name='xsltInitCtxtKey'/>
<ref name='xsltInitCtxtKeys'/>
</word>
+ <word name='tag'>
+ <ref name='xsltNewLocale'/>
+ </word>
<word name='target'>
<ref name='xsltCopyNamespace'/>
<ref name='xsltCopyNamespaceList'/>
@@ -7610,6 +7741,7 @@
<ref name='IS_XSLT_ELEM'/>
<ref name='IS_XSLT_REAL_NODE'/>
<ref name='XSLT_ITEM_COMPATIBILITY_FIELDS'/>
+ <ref name='XSLT_LOCALE_NONE'/>
<ref name='XSLT_STRANGE'/>
<ref name='xslHandleDebugger'/>
<ref name='xsltApplyOneTemplate'/>
@@ -7643,6 +7775,7 @@
<ref name='xsltGetNamespace'/>
<ref name='xsltGetSpecialNamespace'/>
<ref name='xsltSetCtxtSortFunc'/>
+ <ref name='xsltStrxfrm'/>
</word>
<word name='there'>
<ref name='_xsltCompilerCtxt'/>
@@ -7703,6 +7836,7 @@
<ref name='xsltInitElemPreComp'/>
<ref name='xsltNewElemPreComp'/>
<ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltStrxfrm'/>
</word>
<word name='transformation-time'>
<ref name='xsltCopyNamespaceList'/>
@@ -7712,6 +7846,10 @@
<ref name='xsltEvalUserParams'/>
<ref name='xsltQuoteUserParams'/>
</word>
+ <word name='transformed'>
+ <ref name='xsltLocaleStrcmp'/>
+ <ref name='xsltStrxfrm'/>
+ </word>
<word name='transmit'>
<ref name='xsltTransformError'/>
</word>
@@ -7751,12 +7889,16 @@
<ref name='xsltGetCNsProp'/>
<ref name='xsltGetNsProp'/>
</word>
+ <word name='two'>
+ <ref name='xsltLocaleStrcmp'/>
+ </word>
<word name='type'>
<ref name='XSLT_TRACE'/>
<ref name='_xsltCompilerNodeInfo'/>
<ref name='_xsltElemPreComp'/>
<ref name='_xsltStylePreComp'/>
<ref name='_xsltTransformContext'/>
+ <ref name='xsltNewLocale'/>
</word>
</letter>
<letter name='u'>
@@ -7907,6 +8049,7 @@
<ref name='xsltEvalGlobalVariables'/>
<ref name='xsltEvalUserParams'/>
<ref name='xsltFreeGlobalVariables'/>
+ <ref name='xsltInitGlobals'/>
<ref name='xsltLocalVariablePop'/>
</word>
<word name='varibale'>
@@ -7963,6 +8106,7 @@
<ref name='_xsltStackElem'/>
<ref name='_xsltTemplate'/>
<ref name='xsltEvalXPathPredicate'/>
+ <ref name='xsltNewLocale'/>
<ref name='xsltNextImport'/>
<ref name='xsltRegisterExtPrefix'/>
</word>
@@ -7972,6 +8116,9 @@
<word name='well'>
<ref name='xsltNamespaceAlias'/>
</word>
+ <word name='went'>
+ <ref name='xsltParseStylesheetProcess'/>
+ </word>
<word name='were'>
<ref name='_xsltStylesheet'/>
</word>
@@ -8049,6 +8196,7 @@
<ref name='xsltEvalAttrValueTemplate'/>
<ref name='xsltEvalStaticAttrValueTemplate'/>
<ref name='xsltExtensionInstructionResultRegister'/>
+ <ref name='xsltFreeLocale'/>
<ref name='xsltGetCNsProp'/>
<ref name='xsltGetNamespace'/>
<ref name='xsltGetNsProp'/>
@@ -8057,7 +8205,9 @@
<ref name='xsltGetSpecialNamespace'/>
<ref name='xsltGetUTF8Char'/>
<ref name='xsltInitCtxtExts'/>
+ <ref name='xsltLocaleStrcmp'/>
<ref name='xsltParseStylesheetCallerParam'/>
+ <ref name='xsltStrxfrm'/>
</word>
<word name='with-params'>
<ref name='_xsltStyleItemApplyTemplates'/>
@@ -8101,11 +8251,15 @@
<ref name='xsltSaveResultToFile'/>
<ref name='xsltSaveResultToFilename'/>
</word>
+ <word name='wrt'>
+ <ref name='xsltLocaleStrcmp'/>
+ </word>
</letter>
<letter name='x'>
<word name='xmlDoc'>
<ref name='xsltParseStylesheetDoc'/>
<ref name='xsltParseStylesheetImportedDoc'/>
+ <ref name='xsltParseStylesheetProcess'/>
<ref name='xsltReleaseRVT'/>
</word>
<word name='xmlDocPtr'>
@@ -8117,6 +8271,9 @@
<ref name='xsltSaveResultToFilename'/>
<ref name='xsltSaveResultToString'/>
</word>
+ <word name='xmlFree'>
+ <ref name='xsltStrxfrm'/>
+ </word>
<word name='xmlFreeDoc'>
<ref name='xsltGetProfileInformation'/>
</word>
@@ -8245,6 +8402,7 @@
<ref name='xsltElement'/>
<ref name='xsltForEach'/>
<ref name='xsltNumber'/>
+ <ref name='xsltParseStylesheetProcess'/>
<ref name='xsltProcessingInstruction'/>
<ref name='xsltRegisterExtPrefix'/>
<ref name='xsltSort'/>
@@ -8330,9 +8488,22 @@
<word name='xsltLoadType'>
<ref name='xsltDocLoaderFunc'/>
</word>
+ <word name='xsltLocaleStrcmp'>
+ <ref name='xsltStrxfrm'/>
+ </word>
+ <word name='xsltNewLocale'>
+ <ref name='xsltFreeLocale'/>
+ <ref name='xsltStrxfrm'/>
+ </word>
<word name='xsltParseExtElemPrefixes'>
<ref name='xsltRegisterExtPrefix'/>
</word>
+ <word name='xsltParseStylesheetImportedDoc'>
+ <ref name='xsltParseStylesheetProcess'/>
+ </word>
+ <word name='xsltParseStylesheetInclude'>
+ <ref name='xsltParseStylesheetProcess'/>
+ </word>
<word name='xsltParseTemplateContent'>
<ref name='xsltCheckExtPrefix'/>
<ref name='xsltCheckExtURI'/>
@@ -8384,6 +8555,9 @@
<word name='xsltStackElemPtr'>
<ref name='xsltParseStylesheetCallerParam'/>
</word>
+ <word name='xsltStrxfrm'>
+ <ref name='xsltLocaleStrcmp'/>
+ </word>
<word name='xsltStylesheet'>
<ref name='_xsltElemPreComp'/>
</word>
diff --git a/doc/symbols.xml b/doc/symbols.xml
new file mode 100644
index 0000000..63ffac0
--- /dev/null
+++ b/doc/symbols.xml
@@ -0,0 +1,308 @@
+<!-- This file describes all the exported entry points from libxslt
+ library, grouped by release with the first release being 1.0.11
+ Add new exported entry points at the end, this will be used to
+ generate libxslt.syms the definition of exported symbols from
+ shared libraries
+-->
+<symbols>
+ <release version="1.0.11">
+ <symbol file="attributes">xsltApplyAttributeSet</symbol>
+ <symbol file="attributes">xsltFreeAttributeSetsHashes</symbol>
+ <symbol file="attributes">xsltParseStylesheetAttributeSet</symbol>
+ <symbol file="documents">xsltFindDocument</symbol>
+ <symbol file="documents">xsltFreeDocuments</symbol>
+ <symbol file="documents">xsltFreeStyleDocuments</symbol>
+ <symbol file="documents">xsltLoadDocument</symbol>
+ <symbol file="documents">xsltLoadStyleDocument</symbol>
+ <symbol file="documents">xsltNewDocument</symbol>
+ <symbol file="documents">xsltNewStyleDocument</symbol>
+ <symbol file="extensions">xsltCheckExtPrefix</symbol>
+ <symbol file="extensions">xsltExtElementLookup</symbol>
+ <symbol file="extensions">xsltExtModuleElementLookup</symbol>
+ <symbol file="extensions">xsltExtModuleFunctionLookup</symbol>
+ <symbol file="extensions">xsltExtModuleTopLevelLookup</symbol>
+ <symbol file="extensions">xsltFreeCtxtExts</symbol>
+ <symbol file="extensions">xsltFreeExts</symbol>
+ <symbol file="extensions">xsltGetExtData</symbol>
+ <symbol file="extensions">xsltInitCtxtExts</symbol>
+ <symbol file="extensions">xsltInitElemPreComp</symbol>
+ <symbol file="extensions">xsltNewElemPreComp</symbol>
+ <symbol file="extensions">xsltPreComputeExtModuleElement</symbol>
+ <symbol file="extensions">xsltRegisterExtElement</symbol>
+ <symbol file="extensions">xsltRegisterExtFunction</symbol>
+ <symbol file="extensions">xsltRegisterExtModuleElement</symbol>
+ <symbol file="extensions">xsltRegisterExtModuleFull</symbol>
+ <symbol file="extensions">xsltRegisterExtModuleFunction</symbol>
+ <symbol file="extensions">xsltRegisterExtModule</symbol>
+ <symbol file="extensions">xsltRegisterExtModuleTopLevel</symbol>
+ <symbol file="extensions">xsltRegisterExtPrefix</symbol>
+ <symbol file="extensions">xsltRegisterTestModule</symbol>
+ <symbol file="extensions">xsltShutdownCtxtExts</symbol>
+ <symbol file="extensions">xsltShutdownExts</symbol>
+ <symbol file="extensions">xsltStyleGetExtData</symbol>
+ <symbol file="extensions">xsltUnregisterExtModuleElement</symbol>
+ <symbol file="extensions">xsltUnregisterExtModuleFunction</symbol>
+ <symbol file="extensions">xsltUnregisterExtModule</symbol>
+ <symbol file="extensions">xsltUnregisterExtModuleTopLevel</symbol>
+ <symbol file="extra">xsltDebug</symbol>
+ <symbol file="extra">xsltFunctionNodeSet</symbol>
+ <symbol file="extra">xsltRegisterAllExtras</symbol>
+ <symbol file="extra">xsltRegisterExtras</symbol>
+ <symbol file="functions">xsltDocumentFunction</symbol>
+ <symbol file="functions">xsltElementAvailableFunction</symbol>
+ <symbol file="functions">xsltFormatNumberFunction</symbol>
+ <symbol file="functions">xsltFunctionAvailableFunction</symbol>
+ <symbol file="functions">xsltGenerateIdFunction</symbol>
+ <symbol file="functions">xsltKeyFunction</symbol>
+ <symbol file="functions">xsltRegisterAllFunctions</symbol>
+ <symbol file="functions">xsltSystemPropertyFunction</symbol>
+ <symbol file="functions">xsltUnparsedEntityURIFunction</symbol>
+ <symbol file="functions">xsltXPathFunctionLookup</symbol>
+ <symbol file="imports">xsltFindElemSpaceHandling</symbol>
+ <symbol file="imports">xsltFindTemplate</symbol>
+ <symbol file="imports">xsltNeedElemSpaceHandling</symbol>
+ <symbol file="imports">xsltNextImport</symbol>
+ <symbol file="imports">xsltParseStylesheetImport</symbol>
+ <symbol file="imports">xsltParseStylesheetInclude</symbol>
+ <symbol file="keys">xsltAddKey</symbol>
+ <symbol file="keys">xsltFreeDocumentKeys</symbol>
+ <symbol file="keys">xsltFreeKeys</symbol>
+ <symbol file="keys">xsltGetKey</symbol>
+ <symbol file="keys">xsltInitCtxtKeys</symbol>
+ <symbol file="namespaces">xsltCopyNamespaceList</symbol>
+ <symbol file="namespaces">xsltCopyNamespace</symbol>
+ <symbol file="namespaces">xsltFreeNamespaceAliasHashes</symbol>
+ <symbol file="namespaces">xsltGetNamespace</symbol>
+ <symbol file="namespaces">xsltGetSpecialNamespace</symbol>
+ <symbol file="namespaces">xsltNamespaceAlias</symbol>
+ <symbol file="pattern">xsltAddTemplate</symbol>
+ <symbol file="pattern">xsltCleanupTemplates</symbol>
+ <symbol file="pattern">xsltCompilePattern</symbol>
+ <symbol file="pattern">xsltFreeCompMatchList</symbol>
+ <symbol file="pattern">xsltFreeTemplateHashes</symbol>
+ <symbol file="pattern">xsltGetTemplate</symbol>
+ <symbol file="pattern">xsltMatchPattern</symbol>
+ <symbol file="pattern">xsltTestCompMatchList</symbol>
+ <symbol file="preproc">xsltDocumentComp</symbol>
+ <symbol file="preproc">xsltFreeStylePreComps</symbol>
+ <symbol file="preproc">xsltStylePreCompute</symbol>
+ <symbol file="templates">xsltAttrListTemplateProcess</symbol>
+ <symbol file="templates">xsltAttrTemplateProcess</symbol>
+ <symbol file="templates">xsltAttrTemplateValueProcess</symbol>
+ <symbol file="templates">xsltEvalAttrValueTemplate</symbol>
+ <symbol file="templates">xsltEvalStaticAttrValueTemplate</symbol>
+ <symbol file="templates">xsltEvalTemplateString</symbol>
+ <symbol file="templates">xsltEvalXPathPredicate</symbol>
+ <symbol file="templates">xsltEvalXPathString</symbol>
+ <symbol file="templates">xsltTemplateProcess</symbol>
+ <symbol file="transform">xslHandleDebugger</symbol>
+ <symbol file="transform">xsltApplyImports</symbol>
+ <symbol file="transform">xsltApplyOneTemplate</symbol>
+ <symbol file="transform">xsltApplyStripSpaces</symbol>
+ <symbol file="transform">xsltApplyStylesheet</symbol>
+ <symbol file="transform">xsltApplyStylesheetUser</symbol>
+ <symbol file="transform">xsltApplyTemplates</symbol>
+ <symbol file="transform">xsltAttribute</symbol>
+ <symbol file="transform">xsltCallTemplate</symbol>
+ <symbol file="transform">xsltChoose</symbol>
+ <symbol file="transform">xsltComment</symbol>
+ <symbol file="transform">xsltCopyOf</symbol>
+ <symbol file="transform">xsltCopy</symbol>
+ <symbol file="transform">xsltDocumentElem</symbol>
+ <symbol file="transform">xsltElement</symbol>
+ <symbol file="transform">xsltForEach</symbol>
+ <symbol file="transform">xsltFreeTransformContext</symbol>
+ <symbol file="transform">xsltGetXIncludeDefault</symbol>
+ <symbol file="transform">xsltIf</symbol>
+ <symbol file="transform">xsltNewTransformContext</symbol>
+ <symbol file="transform">xsltNumber</symbol>
+ <symbol file="transform">xsltProcessingInstruction</symbol>
+ <symbol file="transform">xsltProfileStylesheet</symbol>
+ <symbol file="transform">xsltRegisterAllElement</symbol>
+ <symbol file="transform">xsltRunStylesheet</symbol>
+ <symbol file="transform">xsltSetXIncludeDefault</symbol>
+ <symbol file="transform">xsltSort</symbol>
+ <symbol file="transform">xsltText</symbol>
+ <symbol file="transform">xsltValueOf</symbol>
+ <symbol file="variables">xsltAddStackElemList</symbol>
+ <symbol file="variables">xsltEvalGlobalVariables</symbol>
+ <symbol file="variables">xsltEvalOneUserParam</symbol>
+ <symbol file="variables">xsltEvalUserParams</symbol>
+ <symbol file="variables">xsltFreeGlobalVariables</symbol>
+ <symbol file="variables">xsltParseGlobalParam</symbol>
+ <symbol file="variables">xsltParseGlobalVariable</symbol>
+ <symbol file="variables">xsltParseStylesheetCallerParam</symbol>
+ <symbol file="variables">xsltParseStylesheetParam</symbol>
+ <symbol file="variables">xsltParseStylesheetVariable</symbol>
+ <symbol file="variables">xsltQuoteOneUserParam</symbol>
+ <symbol file="variables">xsltQuoteUserParams</symbol>
+ <symbol file="variables">xsltVariableLookup</symbol>
+ <symbol file="variables">xsltXPathVariableLookup</symbol>
+ <symbol file="xsltInternals">xsltDecimalFormatGetByName</symbol>
+ <symbol file="xsltInternals">xsltFormatNumberConversion</symbol>
+ <symbol file="xsltInternals">xsltFreeStackElemList</symbol>
+ <symbol file="xsltInternals">xsltFreeStylesheet</symbol>
+ <symbol file="xsltInternals">xsltIsBlank</symbol>
+ <symbol file="xsltInternals">xsltLoadStylesheetPI</symbol>
+ <symbol file="xsltInternals">xsltNewStylesheet</symbol>
+ <symbol file="xsltInternals">xsltNumberFormat</symbol>
+ <symbol file="xsltInternals">xsltParseStylesheetDoc</symbol>
+ <symbol file="xsltInternals">xsltParseStylesheetFile</symbol>
+ <symbol file="xsltInternals">xsltParseStylesheetOutput</symbol>
+ <symbol file="xsltInternals">xsltParseStylesheetProcess</symbol>
+ <symbol file="xsltInternals">xsltParseTemplateContent</symbol>
+ <symbol file="xsltutils">xslAddCall</symbol>
+ <symbol file="xsltutils">xslDropCall</symbol>
+ <symbol file="xsltutils">xsltCalibrateAdjust</symbol>
+ <symbol file="xsltutils">xsltDocumentSortFunction</symbol>
+ <symbol file="xsltutils">xsltDoSortFunction</symbol>
+ <symbol file="xsltutils">xsltGetNsProp</symbol>
+ <symbol file="xsltutils">xsltGetQNameURI</symbol>
+ <symbol file="xsltutils">xsltMessage</symbol>
+ <symbol file="xsltutils">xsltPrintErrorContext</symbol>
+ <symbol file="xsltutils">xsltSaveProfiling</symbol>
+ <symbol file="xsltutils">xsltSaveResultToFd</symbol>
+ <symbol file="xsltutils">xsltSaveResultToFilename</symbol>
+ <symbol file="xsltutils">xsltSaveResultToFile</symbol>
+ <symbol file="xsltutils">xsltSaveResultTo</symbol>
+ <symbol file="xsltutils">xsltSetDebuggerCallbacks</symbol>
+ <symbol file="xsltutils">xsltSetGenericDebugFunc</symbol>
+ <symbol file="xsltutils">xsltSetGenericErrorFunc</symbol>
+ <symbol file="xsltutils">xsltTimestamp</symbol>
+ <symbol file="xslt">xsltCleanupGlobals</symbol>
+ </release>
+ <release version="1.0.12">
+ <symbol file="xsltInternals">xsltAllocateExtraCtxt</symbol>
+ <symbol file="xsltInternals">xsltAllocateExtra</symbol>
+ </release>
+ <release version="1.0.13">
+ <symbol file="extensions">xsltExtModuleElementPreComputeLookup</symbol>
+ <symbol file="extensions">xsltXPathGetTransformContext</symbol>
+ </release>
+ <release version="1.0.16">
+ <symbol file="attributes">xsltResolveStylesheetAttributeSet</symbol>
+ </release>
+ <release version="1.0.17">
+ <symbol file="transform">xsltRunStylesheetUser</symbol>
+ </release>
+ <release version="1.0.18">
+ <symbol file="extensions">xsltDebugDumpExtensions</symbol>
+ <symbol file="xsltutils">xsltSaveResultToString</symbol>
+ </release>
+ <release version="1.0.22">
+ <symbol file="templates">xsltAttrTemplateValueProcessNode</symbol>
+ <symbol file="security">xsltCheckRead</symbol>
+ <symbol file="security">xsltCheckWrite</symbol>
+ <symbol file="templates">xsltEvalXPathStringNs</symbol>
+ <symbol file="security">xsltFreeSecurityPrefs</symbol>
+ <symbol file="security">xsltGetDefaultSecurityPrefs</symbol>
+ <symbol file="security">xsltGetSecurityPrefs</symbol>
+ <symbol file="security">xsltNewSecurityPrefs</symbol>
+ <symbol file="security">xsltSecurityAllow</symbol>
+ <symbol file="security">xsltSecurityForbid</symbol>
+ <symbol file="security">xsltSetCtxtSecurityPrefs</symbol>
+ <symbol file="security">xsltSetDefaultSecurityPrefs</symbol>
+ <symbol file="security">xsltSetSecurityPrefs</symbol>
+ <symbol file="xsltutils">xsltSetTransformErrorFunc</symbol>
+ <symbol file="xsltutils">xsltTransformError</symbol>
+ </release>
+ <release version="1.0.24">
+ <symbol file="xsltutils">xslDebugStatus</symbol>
+ <symbol file="xsltutils">xsltComputeSortResult</symbol>
+ <symbol file="xsltutils">xsltDefaultSortFunction</symbol>
+ <symbol file="xslt">xsltEngineVersion</symbol>
+ <symbol file="preproc">xsltExtMarker</symbol>
+ <symbol file="xsltutils">xsltGenericDebugContext</symbol>
+ <symbol file="xsltutils">xsltGenericDebug</symbol>
+ <symbol file="xsltutils">xsltGenericErrorContext</symbol>
+ <symbol file="xsltutils">xsltGenericError</symbol>
+ <symbol file="xsltutils">xsltGetProfileInformation</symbol>
+ <symbol file="xsltutils">xsltGetUTF8Char</symbol>
+ <symbol file="xslt">xsltLibxmlVersion</symbol>
+ <symbol file="xslt">xsltLibxsltVersion</symbol>
+ <symbol file="xslt">xsltMaxDepth</symbol>
+ <symbol file="xsltInternals">xsltParseStylesheetImportedDoc</symbol>
+ <symbol file="xsltutils">xsltSetCtxtSortFunc</symbol>
+ <symbol file="xsltutils">xsltSetSortFunc</symbol>
+ </release>
+ <release version="1.0.30">
+ <symbol file="xsltInternals">xsltCreateRVT</symbol>
+ <symbol file="xsltInternals">xsltFreeRVTs</symbol>
+ <symbol file="xsltInternals">xsltRegisterPersistRVT</symbol>
+ <symbol file="xsltInternals">xsltRegisterTmpRVT</symbol>
+ </release>
+ <release version="1.0.32">
+ <symbol file="transform">xsltCopyTextString</symbol>
+ <symbol file="extensions">xsltGetExtInfo</symbol>
+ </release>
+ <release version="1.0.33">
+ <symbol file="pattern">xsltNormalizeCompSteps</symbol>
+ </release>
+ <release version="1.1.0">
+ <symbol file="xsltutils">xsltGetDebuggerStatus</symbol>
+ <symbol file="xsltutils">xsltSetDebuggerStatus</symbol>
+ </release>
+ <release version="1.1.1">
+ <symbol file="xsltutils">xsltDebugGetDefaultTrace</symbol>
+ <symbol file="xsltutils">xsltDebugSetDefaultTrace</symbol>
+ </release>
+ <release version="1.1.2">
+ <symbol file="xsltutils">xsltSetCtxtParseOptions</symbol>
+ </release>
+ <release version="1.1.3">
+ <symbol file="xsltInternals">xsltCompileAttr</symbol>
+ <symbol file="xsltInternals">xsltEvalAVT</symbol>
+ <symbol file="xsltInternals">xsltFreeAVTList</symbol>
+ <symbol file="xsltutils">xsltGetCNsProp</symbol>
+ <symbol file="xsltutils">xsltSplitQName</symbol>
+ <symbol file="xsltutils">xsltXPathCompile</symbol>
+ </release>
+ <release version="1.1.5">
+ <symbol file="xsltutils">xsltGetQNameURI2</symbol>
+ </release>
+ <release version="1.1.7">
+ <symbol file="namespaces">xsltGetPlainNamespace</symbol>
+ </release>
+ <release version="1.1.9">
+ <symbol file="documents">xsltDocDefaultLoader</symbol>
+ <symbol file="documents">xsltSetLoaderFunc</symbol>
+ </release>
+ <release version="1.1.18">
+ <symbol file="xsltInternals">xsltConstNamespaceNameXSLT</symbol>
+ <symbol file="xsltInternals">xsltExtensionInstructionResultFinalize</symbol>
+ <symbol file="xsltInternals">xsltExtensionInstructionResultRegister</symbol>
+ <symbol file="xsltInternals">xsltInitCtxtKey</symbol>
+ <symbol file="xslt">xsltInit</symbol>
+ <symbol file="xsltInternals">xsltParseAnyXSLTElem</symbol>
+ <symbol file="xsltInternals">xsltParseSequenceConstructor</symbol>
+ <symbol file="xsltInternals">xsltPointerListAddSize</symbol>
+ <symbol file="xsltInternals">xsltPointerListClear</symbol>
+ <symbol file="xsltInternals">xsltPointerListCreate</symbol>
+ <symbol file="xsltInternals">xsltPointerListFree</symbol>
+ <symbol file="xsltInternals">xsltRegisterLocalRVT</symbol>
+ <symbol file="xsltInternals">xsltReleaseRVT</symbol>
+ <symbol file="xsltInternals">xsltRestoreDocumentNamespaces</symbol>
+ <symbol file="extensions">xsltStyleStylesheetLevelGetExtData</symbol>
+ <symbol file="xsltInternals">xsltTransStorageAdd</symbol>
+ <symbol file="xsltInternals">xsltTransStorageRemove</symbol>
+ <symbol file="xsltInternals">xsltUninit</symbol>
+ <symbol file="xsltInternals">xsltXSLTAttrMarker</symbol>
+ </release>
+ <release version="1.1.20">
+ <symbol file="transform">xsltLocalVariablePop</symbol>
+ <symbol file="transform">xsltLocalVariablePush</symbol>
+ </release>
+ <release version="1.1.23">
+ <symbol file="xsltInternals">xsltInitAllDocKeys</symbol>
+ </release>
+ <release version="1.1.24">
+ <symbol file="extensions">xsltCheckExtURI</symbol>
+ </release>
+ <release version="1.1.25">
+ <symbol file="xsltlocale">xsltFreeLocale</symbol>
+ <symbol file="xsltlocale">xsltLocaleStrcmp</symbol>
+ <symbol file="xsltlocale">xsltNewLocale</symbol>
+ <symbol file="xsltlocale">xsltStrxfrm</symbol>
+ <symbol file="extensions">xsltInitGlobals</symbol>
+ </release>
+</symbols>
diff --git a/doc/syms.xsl b/doc/syms.xsl
new file mode 100644
index 0000000..3965e90
--- /dev/null
+++ b/doc/syms.xsl
@@ -0,0 +1,99 @@
+<?xml version="1.0"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ version="1.0">
+ <xsl:output method="text" encoding="UTF-8"/>
+
+ <xsl:variable name="api" select="document('libxslt-api.xml')"/>
+
+ <xsl:template match="/">
+ <xsl:text>#
+# Officially exported symbols, for which header
+# file definitions are installed in /usr/include/libxslt
+#
+# Automatically generated from symbols.xml and syms.xsl
+#
+# Versions here are *fixed* to match the libxslt version
+# at which the symbol was introduced. This ensures that
+# a new client app requiring symbol foo() can't accidentally
+# run with old libxslt.so not providing foo() - the global
+# soname version info can't enforce this since we never
+# change the soname
+#
+
+</xsl:text>
+ <xsl:apply-templates select="/symbols/release"/>
+ </xsl:template>
+
+ <xsl:template match="release">
+ <xsl:variable name="prev"
+ select="preceding-sibling::release[position()=1]"/>
+ <xsl:text>LIBXML2_</xsl:text>
+ <xsl:value-of select="string(@version)"/>
+ <xsl:text> {
+ global:
+</xsl:text>
+ <xsl:for-each select="symbol">
+ <xsl:if test="string(preceding-sibling::symbol[position()=1]/@file) != string(@file)">
+ <xsl:text>
+# </xsl:text>
+ <xsl:value-of select="@file"/>
+ <xsl:text>
+</xsl:text>
+ </xsl:if>
+
+ <xsl:apply-templates select="."/>
+ </xsl:for-each>
+
+ <xsl:text>} </xsl:text>
+ <xsl:if test="$prev">
+ <xsl:text>LIBXML2_</xsl:text>
+ <xsl:value-of select="$prev/@version"/>
+ </xsl:if>
+ <xsl:text>;
+
+</xsl:text>
+ </xsl:template>
+
+ <xsl:template match="symbol">
+ <xsl:variable name="name" select="string(.)"/>
+ <xsl:variable name="file" select="string(@file)"/>
+ <xsl:choose>
+ <xsl:when test="@removed">
+ <xsl:text># </xsl:text>
+ <xsl:value-of select="$name"/>
+ <xsl:text>; removed in </xsl:text>
+ <xsl:value-of select="@removed"/>
+ <xsl:text>
+</xsl:text>
+ </xsl:when>
+ <xsl:otherwise>
+ <!-- make sure we can find that symbol exported from the API list -->
+ <xsl:variable name="def"
+ select="$api/api/files/file[ name = $file]/exports[ symbol = $name]"/>
+ <xsl:if test="string($def/@symbol) != $name">
+ <xsl:message terminate="yes">
+ <xsl:text>Failed to find definition in libxslt-api.xml:</xsl:text>
+ <xsl:value-of select="$name"/>
+ </xsl:message>
+ </xsl:if>
+
+ <xsl:text> </xsl:text>
+ <xsl:value-of select="$name"/>
+ <xsl:text>;</xsl:text>
+ <xsl:if test="$def/@type = 'variable'">
+ <xsl:text> # variable</xsl:text>
+ </xsl:if>
+ <xsl:if test="@comment">
+ <xsl:text># </xsl:text>
+ <xsl:value-of select="@comment"/>
+ <xsl:text>
+</xsl:text>
+ </xsl:if>
+ <xsl:text>
+</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
+
+</xsl:stylesheet>
+
diff --git a/libexslt/crypto.c b/libexslt/crypto.c
index f88f6e9..e2700d6 100644
--- a/libexslt/crypto.c
+++ b/libexslt/crypto.c
@@ -140,7 +140,7 @@ exsltCryptoCryptoApiReportError (xmlXPathParserContextPtr ctxt,
LocalFree (lpMsgBuf);
}
-HCRYPTHASH
+static HCRYPTHASH
exsltCryptoCryptoApiCreateHash (xmlXPathParserContextPtr ctxt,
HCRYPTPROV hCryptProv, ALG_ID algorithm,
const char *msg, unsigned int msglen,
@@ -203,7 +203,7 @@ exsltCryptoCryptoApiHash (xmlXPathParserContextPtr ctxt,
CryptReleaseContext (hCryptProv, 0);
}
-void
+static void
exsltCryptoCryptoApiRc4Encrypt (xmlXPathParserContextPtr ctxt,
const unsigned char *key,
const unsigned char *msg, int msglen,
@@ -254,7 +254,7 @@ exsltCryptoCryptoApiRc4Encrypt (xmlXPathParserContextPtr ctxt,
CryptReleaseContext (hCryptProv, 0);
}
-void
+static void
exsltCryptoCryptoApiRc4Decrypt (xmlXPathParserContextPtr ctxt,
const unsigned char *key,
const unsigned char *msg, int msglen,
@@ -801,6 +801,11 @@ exsltCryptoRegister (void) {
}
#else
+/**
+ * exsltCryptoRegister:
+ *
+ * Registers the EXSLT - Crypto module
+ */
void
exsltCryptoRegister (void) {
}
diff --git a/libxslt/Makefile.am b/libxslt/Makefile.am
index dfb9fb9..bead72c 100644
--- a/libxslt/Makefile.am
+++ b/libxslt/Makefile.am
@@ -52,12 +52,21 @@ libxslt_la_SOURCES = \
xsltwin32config.h.in \
libxslt.h
+if USE_VERSION_SCRIPT
+LIBXSLT_VERSION_SCRIPT = $(VERSION_SCRIPT_FLAGS)$(srcdir)/libxslt.syms
+else
+LIBXSLT_VERSION_SCRIPT =
+endif
+
libxslt_la_LIBADD = $(EXTRA_LIBS)
-libxslt_la_LDFLAGS = $(WIN32_EXTRA_LDFLAGS) -version-info @LIBXSLT_VERSION_INFO@
+libxslt_la_LDFLAGS = \
+ $(WIN32_EXTRA_LDFLAGS) \
+ $(LIBXSLT_VERSION_SCRIPT) \
+ -version-info @LIBXSLT_VERSION_INFO@
man_MANS = libxslt.3
-EXTRA_DIST = $(man_MANS) trio.h triodef.h
+EXTRA_DIST = $(man_MANS) trio.h triodef.h libxslt.syms
xsltproc: all
@(cd ../xsltproc ; $(MAKE))
diff --git a/libxslt/keys.c b/libxslt/keys.c
index 79b4bba..d28aea6 100644
--- a/libxslt/keys.c
+++ b/libxslt/keys.c
@@ -517,10 +517,13 @@ fprintf(stderr, "xsltInitDocKeyTable %s done\n", name);
/**
* xsltInitAllDocKeys:
+ * @ctxt: transformation context
*
* INTERNAL ROUTINE ONLY
*
* Check if any keys on the current document need to be computed
+ *
+ * Returns 0 in case of success, -1 in case of failure
*/
int
xsltInitAllDocKeys(xsltTransformContextPtr ctxt)
diff --git a/libxslt/libxslt.syms b/libxslt/libxslt.syms
new file mode 100644
index 0000000..9f15acb
--- /dev/null
+++ b/libxslt/libxslt.syms
@@ -0,0 +1,472 @@
+#
+# Officially exported symbols, for which header
+# file definitions are installed in /usr/include/libxslt
+#
+# Automatically generated from symbols.xml and syms.xsl
+#
+# Versions here are *fixed* to match the libxslt version
+# at which the symbol was introduced. This ensures that
+# a new client app requiring symbol foo() can't accidentally
+# run with old libxslt.so not providing foo() - the global
+# soname version info can't enforce this since we never
+# change the soname
+#
+
+LIBXML2_1.0.11 {
+ global:
+
+# attributes
+ xsltApplyAttributeSet;
+ xsltFreeAttributeSetsHashes;
+ xsltParseStylesheetAttributeSet;
+
+# documents
+ xsltFindDocument;
+ xsltFreeDocuments;
+ xsltFreeStyleDocuments;
+ xsltLoadDocument;
+ xsltLoadStyleDocument;
+ xsltNewDocument;
+ xsltNewStyleDocument;
+
+# extensions
+ xsltCheckExtPrefix;
+ xsltExtElementLookup;
+ xsltExtModuleElementLookup;
+ xsltExtModuleFunctionLookup;
+ xsltExtModuleTopLevelLookup;
+ xsltFreeCtxtExts;
+ xsltFreeExts;
+ xsltGetExtData;
+ xsltInitCtxtExts;
+ xsltInitElemPreComp;
+ xsltNewElemPreComp;
+ xsltPreComputeExtModuleElement;
+ xsltRegisterExtElement;
+ xsltRegisterExtFunction;
+ xsltRegisterExtModuleElement;
+ xsltRegisterExtModuleFull;
+ xsltRegisterExtModuleFunction;
+ xsltRegisterExtModule;
+ xsltRegisterExtModuleTopLevel;
+ xsltRegisterExtPrefix;
+ xsltRegisterTestModule;
+ xsltShutdownCtxtExts;
+ xsltShutdownExts;
+ xsltStyleGetExtData;
+ xsltUnregisterExtModuleElement;
+ xsltUnregisterExtModuleFunction;
+ xsltUnregisterExtModule;
+ xsltUnregisterExtModuleTopLevel;
+
+# extra
+ xsltDebug;
+ xsltFunctionNodeSet;
+ xsltRegisterAllExtras;
+ xsltRegisterExtras;
+
+# functions
+ xsltDocumentFunction;
+ xsltElementAvailableFunction;
+ xsltFormatNumberFunction;
+ xsltFunctionAvailableFunction;
+ xsltGenerateIdFunction;
+ xsltKeyFunction;
+ xsltRegisterAllFunctions;
+ xsltSystemPropertyFunction;
+ xsltUnparsedEntityURIFunction;
+ xsltXPathFunctionLookup;
+
+# imports
+ xsltFindElemSpaceHandling;
+ xsltFindTemplate;
+ xsltNeedElemSpaceHandling;
+ xsltNextImport;
+ xsltParseStylesheetImport;
+ xsltParseStylesheetInclude;
+
+# keys
+ xsltAddKey;
+ xsltFreeDocumentKeys;
+ xsltFreeKeys;
+ xsltGetKey;
+ xsltInitCtxtKeys;
+
+# namespaces
+ xsltCopyNamespaceList;
+ xsltCopyNamespace;
+ xsltFreeNamespaceAliasHashes;
+ xsltGetNamespace;
+ xsltGetSpecialNamespace;
+ xsltNamespaceAlias;
+
+# pattern
+ xsltAddTemplate;
+ xsltCleanupTemplates;
+ xsltCompilePattern;
+ xsltFreeCompMatchList;
+ xsltFreeTemplateHashes;
+ xsltGetTemplate;
+ xsltMatchPattern;
+ xsltTestCompMatchList;
+
+# preproc
+ xsltDocumentComp;
+ xsltFreeStylePreComps;
+ xsltStylePreCompute;
+
+# templates
+ xsltAttrListTemplateProcess;
+ xsltAttrTemplateProcess;
+ xsltAttrTemplateValueProcess;
+ xsltEvalAttrValueTemplate;
+ xsltEvalStaticAttrValueTemplate;
+ xsltEvalTemplateString;
+ xsltEvalXPathPredicate;
+ xsltEvalXPathString;
+ xsltTemplateProcess;
+
+# transform
+ xslHandleDebugger;
+ xsltApplyImports;
+ xsltApplyOneTemplate;
+ xsltApplyStripSpaces;
+ xsltApplyStylesheet;
+ xsltApplyStylesheetUser;
+ xsltApplyTemplates;
+ xsltAttribute;
+ xsltCallTemplate;
+ xsltChoose;
+ xsltComment;
+ xsltCopyOf;
+ xsltCopy;
+ xsltDocumentElem;
+ xsltElement;
+ xsltForEach;
+ xsltFreeTransformContext;
+ xsltGetXIncludeDefault;
+ xsltIf;
+ xsltNewTransformContext;
+ xsltNumber;
+ xsltProcessingInstruction;
+ xsltProfileStylesheet;
+ xsltRegisterAllElement;
+ xsltRunStylesheet;
+ xsltSetXIncludeDefault;
+ xsltSort;
+ xsltText;
+ xsltValueOf;
+
+# variables
+ xsltAddStackElemList;
+ xsltEvalGlobalVariables;
+ xsltEvalOneUserParam;
+ xsltEvalUserParams;
+ xsltFreeGlobalVariables;
+ xsltParseGlobalParam;
+ xsltParseGlobalVariable;
+ xsltParseStylesheetCallerParam;
+ xsltParseStylesheetParam;
+ xsltParseStylesheetVariable;
+ xsltQuoteOneUserParam;
+ xsltQuoteUserParams;
+ xsltVariableLookup;
+ xsltXPathVariableLookup;
+
+# xsltInternals
+ xsltDecimalFormatGetByName;
+ xsltFormatNumberConversion;
+ xsltFreeStackElemList;
+ xsltFreeStylesheet;
+ xsltIsBlank;
+ xsltLoadStylesheetPI;
+ xsltNewStylesheet;
+ xsltNumberFormat;
+ xsltParseStylesheetDoc;
+ xsltParseStylesheetFile;
+ xsltParseStylesheetOutput;
+ xsltParseStylesheetProcess;
+ xsltParseTemplateContent;
+
+# xsltutils
+ xslAddCall;
+ xslDropCall;
+ xsltCalibrateAdjust;
+ xsltDocumentSortFunction;
+ xsltDoSortFunction;
+ xsltGetNsProp;
+ xsltGetQNameURI;
+ xsltMessage;
+ xsltPrintErrorContext;
+ xsltSaveProfiling;
+ xsltSaveResultToFd;
+ xsltSaveResultToFilename;
+ xsltSaveResultToFile;
+ xsltSaveResultTo;
+ xsltSetDebuggerCallbacks;
+ xsltSetGenericDebugFunc;
+ xsltSetGenericErrorFunc;
+ xsltTimestamp;
+
+# xslt
+ xsltCleanupGlobals;
+} ;
+
+LIBXML2_1.0.12 {
+ global:
+
+# xsltInternals
+ xsltAllocateExtraCtxt;
+ xsltAllocateExtra;
+} LIBXML2_1.0.11;
+
+LIBXML2_1.0.13 {
+ global:
+
+# extensions
+ xsltExtModuleElementPreComputeLookup;
+ xsltXPathGetTransformContext;
+} LIBXML2_1.0.12;
+
+LIBXML2_1.0.16 {
+ global:
+
+# attributes
+ xsltResolveStylesheetAttributeSet;
+} LIBXML2_1.0.13;
+
+LIBXML2_1.0.17 {
+ global:
+
+# transform
+ xsltRunStylesheetUser;
+} LIBXML2_1.0.16;
+
+LIBXML2_1.0.18 {
+ global:
+
+# extensions
+ xsltDebugDumpExtensions;
+
+# xsltutils
+ xsltSaveResultToString;
+} LIBXML2_1.0.17;
+
+LIBXML2_1.0.22 {
+ global:
+
+# templates
+ xsltAttrTemplateValueProcessNode;
+
+# security
+ xsltCheckRead;
+ xsltCheckWrite;
+
+# templates
+ xsltEvalXPathStringNs;
+
+# security
+ xsltFreeSecurityPrefs;
+ xsltGetDefaultSecurityPrefs;
+ xsltGetSecurityPrefs;
+ xsltNewSecurityPrefs;
+ xsltSecurityAllow;
+ xsltSecurityForbid;
+ xsltSetCtxtSecurityPrefs;
+ xsltSetDefaultSecurityPrefs;
+ xsltSetSecurityPrefs;
+
+# xsltutils
+ xsltSetTransformErrorFunc;
+ xsltTransformError;
+} LIBXML2_1.0.18;
+
+LIBXML2_1.0.24 {
+ global:
+
+# xsltutils
+ xslDebugStatus; # variable
+ xsltComputeSortResult;
+ xsltDefaultSortFunction;
+
+# xslt
+ xsltEngineVersion; # variable
+
+# preproc
+ xsltExtMarker; # variable
+
+# xsltutils
+ xsltGenericDebugContext; # variable
+ xsltGenericDebug; # variable
+ xsltGenericErrorContext; # variable
+ xsltGenericError; # variable
+ xsltGetProfileInformation;
+ xsltGetUTF8Char;
+
+# xslt
+ xsltLibxmlVersion; # variable
+ xsltLibxsltVersion; # variable
+ xsltMaxDepth; # variable
+
+# xsltInternals
+ xsltParseStylesheetImportedDoc;
+
+# xsltutils
+ xsltSetCtxtSortFunc;
+ xsltSetSortFunc;
+} LIBXML2_1.0.22;
+
+LIBXML2_1.0.30 {
+ global:
+
+# xsltInternals
+ xsltCreateRVT;
+ xsltFreeRVTs;
+ xsltRegisterPersistRVT;
+ xsltRegisterTmpRVT;
+} LIBXML2_1.0.24;
+
+LIBXML2_1.0.32 {
+ global:
+
+# transform
+ xsltCopyTextString;
+
+# extensions
+ xsltGetExtInfo;
+} LIBXML2_1.0.30;
+
+LIBXML2_1.0.33 {
+ global:
+
+# pattern
+ xsltNormalizeCompSteps;
+} LIBXML2_1.0.32;
+
+LIBXML2_1.1.0 {
+ global:
+
+# xsltutils
+ xsltGetDebuggerStatus;
+ xsltSetDebuggerStatus;
+} LIBXML2_1.0.33;
+
+LIBXML2_1.1.1 {
+ global:
+
+# xsltutils
+ xsltDebugGetDefaultTrace;
+ xsltDebugSetDefaultTrace;
+} LIBXML2_1.1.0;
+
+LIBXML2_1.1.2 {
+ global:
+
+# xsltutils
+ xsltSetCtxtParseOptions;
+} LIBXML2_1.1.1;
+
+LIBXML2_1.1.3 {
+ global:
+
+# xsltInternals
+ xsltCompileAttr;
+ xsltEvalAVT;
+ xsltFreeAVTList;
+
+# xsltutils
+ xsltGetCNsProp;
+ xsltSplitQName;
+ xsltXPathCompile;
+} LIBXML2_1.1.2;
+
+LIBXML2_1.1.5 {
+ global:
+
+# xsltutils
+ xsltGetQNameURI2;
+} LIBXML2_1.1.3;
+
+LIBXML2_1.1.7 {
+ global:
+
+# namespaces
+ xsltGetPlainNamespace;
+} LIBXML2_1.1.5;
+
+LIBXML2_1.1.9 {
+ global:
+
+# documents
+ xsltDocDefaultLoader; # variable
+ xsltSetLoaderFunc;
+} LIBXML2_1.1.7;
+
+LIBXML2_1.1.18 {
+ global:
+
+# xsltInternals
+ xsltConstNamespaceNameXSLT; # variable
+ xsltExtensionInstructionResultFinalize;
+ xsltExtensionInstructionResultRegister;
+ xsltInitCtxtKey;
+
+# xslt
+ xsltInit;
+
+# xsltInternals
+ xsltParseAnyXSLTElem;
+ xsltParseSequenceConstructor;
+ xsltPointerListAddSize;
+ xsltPointerListClear;
+ xsltPointerListCreate;
+ xsltPointerListFree;
+ xsltRegisterLocalRVT;
+ xsltReleaseRVT;
+ xsltRestoreDocumentNamespaces;
+
+# extensions
+ xsltStyleStylesheetLevelGetExtData;
+
+# xsltInternals
+ xsltTransStorageAdd;
+ xsltTransStorageRemove;
+ xsltUninit;
+ xsltXSLTAttrMarker; # variable
+} LIBXML2_1.1.9;
+
+LIBXML2_1.1.20 {
+ global:
+
+# transform
+ xsltLocalVariablePop;
+ xsltLocalVariablePush;
+} LIBXML2_1.1.18;
+
+LIBXML2_1.1.23 {
+ global:
+
+# xsltInternals
+ xsltInitAllDocKeys;
+} LIBXML2_1.1.20;
+
+LIBXML2_1.1.24 {
+ global:
+
+# extensions
+ xsltCheckExtURI;
+} LIBXML2_1.1.23;
+
+LIBXML2_1.1.25 {
+ global:
+
+# xsltlocale
+ xsltFreeLocale;
+ xsltLocaleStrcmp;
+ xsltNewLocale;
+ xsltStrxfrm;
+
+# extensions
+ xsltInitGlobals;
+} LIBXML2_1.1.24;
+
diff --git a/libxslt/variables.c b/libxslt/variables.c
index 1cdfa80..43a6156 100644
--- a/libxslt/variables.c
+++ b/libxslt/variables.c
@@ -43,6 +43,10 @@ const xmlChar *xsltDocFragFake = (const xmlChar *) " fake node libxslt";
const xmlChar *xsltComputingGlobalVarMarker =
(const xmlChar *) " var/param being computed";
+#define XSLT_VAR_GLOBAL 1<<0
+#define XSLT_VAR_IN_SELECT 1<<1
+#define XSLT_TCTXT_VARIABLE(c) ((xsltStackElemPtr) (c)->contextVariable)
+
/************************************************************************
* *
* Result Value Tree (Result Tree Fragment) interfaces *
diff --git a/libxslt/xslt.c b/libxslt/xslt.c
index e88141d..00f264f 100644
--- a/libxslt/xslt.c
+++ b/libxslt/xslt.c
@@ -56,6 +56,10 @@ const int xsltLibxmlVersion = LIBXML_VERSION;
const xmlChar *xsltConstNamespaceNameXSLT = (const xmlChar *) XSLT_NAMESPACE;
+#define XSLT_ELEMENT_CATEGORY_XSLT 0
+#define XSLT_ELEMENT_CATEGORY_EXTENSION 1
+#define XSLT_ELEMENT_CATEGORY_LRE 2
+
/*
* xsltLiteralResultMarker:
* Marker for Literal result elements, in order to avoid multiple attempts
@@ -6248,6 +6252,15 @@ xsltParseSimplifiedStylesheetTree(xsltCompilerCtxtPtr cctxt,
}
#ifdef XSLT_REFACTORED_XSLT_NSCOMP
+/**
+ * xsltRestoreDocumentNamespaces:
+ * @ns: map of namespaces
+ * @doc: the document
+ *
+ * Restore the namespaces for the document
+ *
+ * Returns 0 in case of success, -1 in case of failure
+ */
int
xsltRestoreDocumentNamespaces(xsltNsMapPtr ns, xmlDocPtr doc)
{
@@ -6342,6 +6355,19 @@ xsltParseStylesheetProcess(xsltStylesheetPtr style, xmlDocPtr doc)
#else /* XSLT_REFACTORED */
+/**
+ * xsltParseStylesheetProcess:
+ * @ret: the XSLT stylesheet (the current stylesheet-level)
+ * @doc: and xmlDoc parsed XML
+ *
+ * Parses an XSLT stylesheet, adding the associated structures.
+ * Called by:
+ * xsltParseStylesheetImportedDoc() (xslt.c)
+ * xsltParseStylesheetInclude() (imports.c)
+ *
+ * Returns the value of the @style parameter if everything
+ * went right, NULL if something went amiss.
+ */
xsltStylesheetPtr
xsltParseStylesheetProcess(xsltStylesheetPtr ret, xmlDocPtr doc) {
xmlNodePtr cur;
diff --git a/libxslt/xsltInternals.h b/libxslt/xsltInternals.h
index bba2476..538b3b3 100644
--- a/libxslt/xsltInternals.h
+++ b/libxslt/xsltInternals.h
@@ -1248,10 +1248,6 @@ struct _xsltVarInfo {
const xmlChar *nsName;
};
-#define XSLT_ELEMENT_CATEGORY_XSLT 0
-#define XSLT_ELEMENT_CATEGORY_EXTENSION 1
-#define XSLT_ELEMENT_CATEGORY_LRE 2
-
/**
* xsltCompilerNodeInfo:
*
@@ -1420,9 +1416,6 @@ struct _xsltStylePreComp {
#endif /* XSLT_REFACTORED */
-#define XSLT_VAR_GLOBAL 1<<0
-#define XSLT_VAR_IN_SELECT 1<<1
-#define XSLT_TCTXT_VARIABLE(c) ((xsltStackElemPtr) (c)->contextVariable)
/*
* The in-memory structure corresponding to an XSLT Variable
* or Param.
diff --git a/libxslt/xsltlocale.c b/libxslt/xsltlocale.c
index c6206e3..142f874 100644
--- a/libxslt/xsltlocale.c
+++ b/libxslt/xsltlocale.c
@@ -321,6 +321,7 @@ xsltDefaultRegion(const xmlChar *localeName) {
/**
* xsltFreeLocale:
+ * @locale: the locale to free
*
* Frees a locale created with xsltNewLocale
*/
@@ -426,6 +427,14 @@ xsltLocaleStrcmp(xsltLocale locale, const xsltLocaleChar *str1, const xsltLocale
}
#ifdef XSLT_LOCALE_WINAPI
+/**
+ * xsltCountSupportedLocales:
+ * @lcid: not used
+ *
+ * callback used to count locales
+ *
+ * Returns TRUE
+ */
BOOL CALLBACK
xsltCountSupportedLocales(LPSTR lcid) {
(void) lcid;
@@ -433,6 +442,14 @@ xsltCountSupportedLocales(LPSTR lcid) {
return(TRUE);
}
+/**
+ * xsltIterateSupportedLocales:
+ * @lcid: not used
+ *
+ * callback used to track locales
+ *
+ * Returns TRUE if not at the end of the array
+ */
BOOL CALLBACK
xsltIterateSupportedLocales(LPSTR lcid) {
static int count = 0;
diff --git a/libxslt/xsltlocale.h b/libxslt/xsltlocale.h
index 2f20d63..59343b0 100644
--- a/libxslt/xsltlocale.h
+++ b/libxslt/xsltlocale.h
@@ -36,6 +36,10 @@ typedef wchar_t xsltLocaleChar;
#else
+/*
+ * XSLT_LOCALE_NONE:
+ * Macro indicating that locale are not supported
+ */
#ifndef XSLT_LOCALE_NONE
#define XSLT_LOCALE_NONE
#endif
diff --git a/python/libxsltclass.txt b/python/libxsltclass.txt
index 89be09f..c46619a 100644
--- a/python/libxsltclass.txt
+++ b/python/libxsltclass.txt
@@ -7,6 +7,7 @@
# functions from module extensions
debugDumpExtensions()
+initGlobals()
registerTestModule()
unregisterExtModule()
unregisterExtModuleElement()
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]