[LIBXSLT] Update to version 1.1.36. CORE-17766

This version was released after libxml2 2.10.0, but it removes
usage of some now-deprecated functions that would break the build.
This commit is contained in:
Thomas Faber 2022-11-20 09:49:42 -05:00
parent a620c6f82e
commit 21ab4d93c7
No known key found for this signature in database
GPG key ID: 076E7C3D44720826
20 changed files with 136 additions and 8171 deletions

File diff suppressed because it is too large Load diff

View file

@ -1,10 +1,9 @@
SUBDIRS = \
libxslt \
libexslt \
xsltproc \
doc \
$(PYTHON_SUBDIR) \
tests
ACLOCAL_AMFLAGS = -I m4
SUBDIRS = libxslt libexslt xsltproc doc tests
if WITH_PYTHON
SUBDIRS += python
endif
DIST_SUBDIRS = libxslt libexslt xsltproc python doc tests
@ -17,16 +16,13 @@ dist-hook: cleanup libxslt.spec
touch $(distdir)/doc/*.xml
touch $(distdir)/doc/EXSLT/*.xml
touch $(distdir)/libxslt/*.syms
(cd $(srcdir) ; tar -cf - --exclude CVS --exclude .svn win32 vms examples) | (cd $(distdir); tar xf -)
CVS_EXTRA_DIST =
(cd $(srcdir) ; tar -cf - win32 vms examples) | (cd $(distdir); tar xf -)
EXTRA_DIST = xsltConf.sh.in xslt-config.in libxslt.spec libxslt.spec.in \
FEATURES TODO Copyright libxslt.m4 \
win32/libxslt/libxslt.def win32/libxslt/libxslt.dsw \
win32/libxslt/libxslt_so.dsp win32/libxslt/xsltproc.dsp \
CMakeLists.txt config.h.cmake.in FindGcrypt.cmake libxslt-config.cmake.in libxslt-config.cmake.cmake.in \
$(CVS_EXTRA_DIST)
CMakeLists.txt config.h.cmake.in FindGcrypt.cmake libxslt-config.cmake.in libxslt-config.cmake.cmake.in
## We create xsltConf.sh here and not from configure because we want
## to get the paths expanded correctly. Macros like srcdir are given
@ -53,7 +49,9 @@ tests: dummy
@echo '## Running the regression test suite'
@(cd tests ; $(MAKE) -s tests)
@(cd xsltproc ; $(MAKE) -s tests)
@(if [ "$(PYTHON_SUBDIR)" != "" ] ; then cd python ; $(MAKE) -s tests ; fi)
if WITH_PYTHON
@cd python && $(MAKE) tests
endif
valgrind:
@echo '## Running the regression tests under Valgrind'

View file

@ -1,10 +1,70 @@
NEWS file for libxslt
NEWS file for libxslt
v1.1.36: Aug 17 2022
### Removals and deprecations
- Remove SVN keyword anchors
- Remove CVS and SVN-related code
- Remove README.cvs-commits
- Remove ChangeLog
- Remove xsltwin32config.h
### Improvements
- Simplify xsltexports.h and exsltexports.h
- Don't overlink executables with gcrypt
- Fix quadratic behavior with variables and parameters
- Remove case labels with XPointer location types
- Add configure~ to .gitignore
- Stop calling deprecated libxml2 functions
### Portability
- Use portable python shebangs (David Seifert)
- Remove useless __CYGWIN__ checks
- Remove cruft from win32config.h
- crypto.c: Silence a compiler warning on Windows (Chun-wei Fan)
### Build system
- Add missing compile definition for static builds to CMake
- Avoid obsolescent `test -a` constructs (David Seifert)
- Only link libxml2 statically in purely static build
- Set AC_CONFIG_MACRO_DIR
- Allow AM_MAINTAINER_MODE to be disabled
- Streamline and fix documentation installation
- Don't try to recreate COPYING symlink
- Remove special configuration for certain maintainers
- configure.ac: produce tar.xz only (GNOME policy) (David Seifert)
- Detect libm using libtool's macros (David Seifert)
- configure.ac: disable static libraries by default (David Seifert)
- python/Makefile.am: nest python docs in $(docdir) (David Seifert)
- python/Makefile.am: rely on global AM_INIT_AUTOMAKE (David Seifert)
- configure.ac: remove useless AC_SUBST (David Seifert)
- Use AM_PATH_PYTHON/PKG_CHECK_MODULES for python bindings (David Seifert)
- Change libxml2 Python config
- Don't check for standard C89 library functions
- Don't check for standard C89 headers
- Remove --with-html-dir option
- Also check for glibtoolize in autogen.sh
- Rework documentation build system
- Remove old website
- CMake: Relax check for enabling crypto support on Windows (Chun-wei Fan)
- Remove obsolete AC_HEADER_STDC autoconf macro (Vadim Zeitlin)
- Remove special configuration for old maintainers
### Test suite, CI
- Remove test involving XPointer range-to function
- Test recursion in EXSLT dynamic functions
- Add CI job for static build
### Documentation
- Move tutorial images
See the git page at
https://gitlab.gnome.org/GNOME/libxslt
to get a description of the recent commits.
v1.1.35: Feb 16 2022:
- Security:
[CVE-2021-30560] Fix use-after-free in xsltApplyTemplates

View file

@ -20,5 +20,3 @@ the list and archived for public access unless pricacy is explicitely
required and justified.
Daniel Veillard
$Id$

View file

@ -166,36 +166,18 @@ xsltDocumentFunctionLoadDocument(xmlXPathParserContextPtr ctxt, xmlChar* URI)
xmlXPathFreeContext(xptrctxt);
#endif /* LIBXML_XPTR_ENABLED */
if (resObj == NULL)
goto out_fragment;
switch (resObj->type) {
case XPATH_NODESET:
break;
case XPATH_UNDEFINED:
case XPATH_BOOLEAN:
case XPATH_NUMBER:
case XPATH_STRING:
case XPATH_POINT:
case XPATH_USERS:
case XPATH_XSLT_TREE:
case XPATH_RANGE:
case XPATH_LOCATIONSET:
xsltTransformError(tctxt, NULL, NULL,
"document() : XPointer does not select a node set: #%s\n",
fragment);
goto out_object;
if ((resObj != NULL) && (resObj->type != XPATH_NODESET)) {
xsltTransformError(tctxt, NULL, NULL,
"document() : XPointer does not select a node set: #%s\n",
fragment);
xmlXPathFreeObject(resObj);
resObj = NULL;
}
valuePush(ctxt, resObj);
xmlFree(fragment);
return;
out_object:
xmlXPathFreeObject(resObj);
out_fragment:
valuePush(ctxt, xmlXPathNewNodeSet(NULL));
if (resObj == NULL)
resObj = xmlXPathNewNodeSet(NULL);
valuePush(ctxt, resObj);
xmlFree(fragment);
}

View file

@ -16,27 +16,10 @@
#ifdef HAVE_SYS_TYPES_H
#include <sys/types.h>
#endif
#ifdef HAVE_MATH_H
#include <math.h>
#endif
#ifdef HAVE_FLOAT_H
#include <float.h>
#endif
#ifdef HAVE_IEEEFP_H
#include <ieeefp.h>
#endif
#ifdef HAVE_NAN_H
#include <nan.h>
#endif
#ifdef HAVE_CTYPE_H
#include <ctype.h>
#endif
#ifdef HAVE_TIME_H
#include <time.h>
#endif
#ifdef HAVE_STDLIB_H
#include <stdlib.h>
#endif
#include <libxml/xmlmemory.h>
#include <libxml/tree.h>

View file

@ -12,7 +12,7 @@
#include <sys/stat.h>
#endif
#if defined(_WIN32) && !defined(__CYGWIN__)
#if defined(_WIN32)
#ifndef INVALID_FILE_ATTRIBUTES
#define INVALID_FILE_ATTRIBUTES ((DWORD)-1)
#endif
@ -246,7 +246,7 @@ xsltCheckFilename (const char *path)
{
#ifdef HAVE_STAT
struct stat stat_buffer;
#if defined(_WIN32) && !defined(__CYGWIN__)
#if defined(_WIN32)
DWORD dwAttrs;
dwAttrs = GetFileAttributesA(path);
@ -351,7 +351,7 @@ xsltCheckWrite(xsltSecurityPrefsPtr sec,
if ((uri->scheme == NULL) ||
(xmlStrEqual(BAD_CAST uri->scheme, BAD_CAST "file"))) {
#if defined(_WIN32) && !defined(__CYGWIN__)
#if defined(_WIN32)
if ((uri->path)&&(uri->path[0]=='/')&&
(uri->path[1]!='\0')&&(uri->path[2]==':'))
ret = xsltCheckWritePath(sec, ctxt, uri->path+1);

View file

@ -602,7 +602,6 @@ xsltNewTransformContext(xsltStylesheetPtr style, xmlDocPtr doc) {
cur->prof = 0;
cur->style = style;
xmlXPathInit();
cur->xpathCtxt = xmlXPathNewContext(doc);
if (cur->xpathCtxt == NULL) {
xsltTransformError(NULL, NULL, (xmlNodePtr) doc,

View file

@ -342,7 +342,6 @@ xsltReleaseRVT(xsltTransformContextPtr ctxt, xmlDocPtr RVT)
}
/*
* Clear the document tree.
* REVISIT TODO: Do we expect ID/IDREF tables to be existent?
*/
if (RVT->children != NULL) {
xmlFreeNodeList(RVT->children);
@ -353,10 +352,6 @@ xsltReleaseRVT(xsltTransformContextPtr ctxt, xmlDocPtr RVT)
xmlFreeIDTable((xmlIDTablePtr) RVT->ids);
RVT->ids = NULL;
}
if (RVT->refs != NULL) {
xmlFreeRefTable((xmlRefTablePtr) RVT->refs);
RVT->refs = NULL;
}
/*
* Reset the ownership information.
@ -947,6 +942,8 @@ xsltEvalVariable(xsltTransformContextPtr ctxt, xsltStackElemPtr variable,
xmlDocPtr container;
xmlNodePtr oldInsert;
xmlDocPtr oldOutput;
const xmlChar *oldLastText;
int oldLastTextSize, oldLastTextUse;
xsltStackElemPtr oldVar = ctxt->contextVariable;
/*
@ -972,6 +969,9 @@ xsltEvalVariable(xsltTransformContextPtr ctxt, xsltStackElemPtr variable,
oldOutput = ctxt->output;
oldInsert = ctxt->insert;
oldLastText = ctxt->lasttext;
oldLastTextSize = ctxt->lasttsize;
oldLastTextUse = ctxt->lasttuse;
ctxt->output = container;
ctxt->insert = (xmlNodePtr) container;
@ -986,6 +986,9 @@ xsltEvalVariable(xsltTransformContextPtr ctxt, xsltStackElemPtr variable,
ctxt->contextVariable = oldVar;
ctxt->insert = oldInsert;
ctxt->output = oldOutput;
ctxt->lasttext = oldLastText;
ctxt->lasttsize = oldLastTextSize;
ctxt->lasttuse = oldLastTextUse;
result = xmlXPathNewValueTree((xmlNodePtr) container);
}

View file

@ -9,75 +9,6 @@
#ifndef __LIBXSLT_WIN32_CONFIG__
#define __LIBXSLT_WIN32_CONFIG__
#define HAVE_CTYPE_H 1
#define HAVE_STDLIB_H 1
#define HAVE_STDARG_H 1
#define HAVE_MALLOC_H 1
#define HAVE_TIME_H 1
#define HAVE_LOCALTIME 1
#define HAVE_GMTIME 1
#define HAVE_TIME 1
#define HAVE_MATH_H 1
#define HAVE_FCNTL_H 1
#include <io.h>
#define HAVE_ISINF
#define HAVE_ISNAN
#include <math.h>
#if defined _MSC_VER || defined __MINGW32__
/* MS C-runtime has functions which can be used in order to determine if
a given floating-point variable contains NaN, (+-)INF. These are
preferred, because floating-point technology is considered propriatary
by MS and we can assume that their functions know more about their
oddities than we do. */
#include <float.h>
/* Bjorn Reese figured a quite nice construct for isinf() using the
_fpclass() function. */
#ifndef isinf
#define isinf(d) ((_fpclass(d) == _FPCLASS_PINF) ? 1 \
: ((_fpclass(d) == _FPCLASS_NINF) ? -1 : 0))
#endif
/* _isnan(x) returns nonzero if (x == NaN) and zero otherwise. */
#ifndef isnan
#define isnan(d) (_isnan(d))
#endif
#else /* _MSC_VER */
static int isinf (double d) {
int expon = 0;
double val = frexp (d, &expon);
if (expon == 1025) {
if (val == 0.5) {
return 1;
} else if (val == -0.5) {
return -1;
} else {
return 0;
}
} else {
return 0;
}
}
static int isnan (double d) {
int expon = 0;
double val = frexp (d, &expon);
if (expon == 1025) {
if (val == 0.5) {
return 0;
} else if (val == -0.5) {
return 0;
} else {
return 1;
}
} else {
return 0;
}
}
#endif /* _MSC_VER */
#include <direct.h>
/* snprintf emulation taken from http://stackoverflow.com/a/8712996/1956010 */
#if defined(_MSC_VER) && _MSC_VER < 1900
@ -115,15 +46,6 @@ __inline int c99_snprintf(char *outBuf, size_t size, const char *format, ...)
#define HAVE_SYS_STAT_H
#define HAVE__STAT
#define HAVE_STRING_H
#include <libxml/xmlversion.h>
#ifndef ATTRIBUTE_UNUSED
#define ATTRIBUTE_UNUSED
#endif
#define _WINSOCKAPI_
#endif /* __LIBXSLT_WIN32_CONFIG__ */

View file

@ -39,7 +39,7 @@ extern "C" {
/**
* LIBXSLT_VERSION_EXTRA:
*
* extra version information, used to show a CVS compilation
* extra version information, used to show a Git commit description
*/
#define LIBXSLT_VERSION_EXTRA "@LIBXSLT_VERSION_EXTRA@"
@ -86,7 +86,6 @@ extern "C" {
#define XSLT_NEED_TRIO
#endif
#ifdef __VMS
#define HAVE_MATH_H 1
#define HAVE_SYS_STAT_H 1
#ifndef XSLT_NEED_TRIO
#define XSLT_NEED_TRIO

View file

@ -18,7 +18,7 @@
#include <unistd.h>
#endif
#if defined(_WIN32) && !defined(__CYGWIN__)
#if defined(_WIN32)
#define XSLT_WIN32_PERFORMANCE_COUNTER
#endif

View file

@ -1,105 +0,0 @@
/*
* Summary: compile-time version information for the XSLT engine
* when compiled on windows
* Description: compile-time version information for the XSLT engine
* when compiled on windows. This file is generated.
*
* Copy: See Copyright for the status of this software.
*
* Author: Daniel Veillard
*/
#ifndef __XML_XSLTWIN32CONFIG_H__
#define __XML_XSLTWIN32CONFIG_H__
#include "win32config.h"
#ifdef __cplusplus
extern "C" {
#endif
/**
* LIBXSLT_DOTTED_VERSION:
*
* the version string like "1.2.3"
*/
#define LIBXSLT_DOTTED_VERSION "1.1.35"
/**
* LIBXSLT_VERSION:
*
* the version number: 1.2.3 value is 1002003
*/
#define LIBXSLT_VERSION 10135
/**
* LIBXSLT_VERSION_STRING:
*
* the version number string, 1.2.3 value is "1002003"
*/
#define LIBXSLT_VERSION_STRING "10135"
/**
* LIBXSLT_VERSION_EXTRA:
*
* extra version information, used to show a CVS compilation
*/
#define LIBXSLT_VERSION_EXTRA "-win32"
/**
* WITH_XSLT_DEBUG:
*
* Activate the compilation of the debug reporting. Speed penalty
* is insignifiant and being able to run xsltpoc -v is useful. On
* by default
*/
#if 1
#define WITH_XSLT_DEBUG
#endif
/**
* WITH_MODULES:
*
* Whether module support is configured into libxslt
*/
#if 0
#ifndef WITH_MODULES
#define WITH_MODULES
#endif
#define LIBXSLT_PLUGINS_PATH() getenv("LIBXSLT_PLUGINS_PATH")
#endif
#if 0
/**
* DEBUG_MEMORY:
*
* should be activated only when debugging libxslt. It replaces the
* allocator with a collect and debug shell to the libc allocator.
* Use configure --with-mem-debug to activate it on both library
*/
#define DEBUG_MEMORY
/**
* DEBUG_MEMORY_LOCATION:
*
* should be activated only when debugging libxslt.
* DEBUG_MEMORY_LOCATION should be activated only when libxml has
* been configured with --with-debug-mem too
*/
#define DEBUG_MEMORY_LOCATION
#endif
/**
* ATTRIBUTE_UNUSED:
*
* This macro is used to flag unused function parameters to GCC, useless here
*/
#ifndef ATTRIBUTE_UNUSED
#define ATTRIBUTE_UNUSED
#endif
#ifdef __cplusplus
}
#endif
#endif /* __XML_XSLTWIN32CONFIG_H__ */

View file

@ -1,105 +0,0 @@
/*
* Summary: compile-time version information for the XSLT engine
* when compiled on windows
* Description: compile-time version information for the XSLT engine
* when compiled on windows. This file is generated.
*
* Copy: See Copyright for the status of this software.
*
* Author: Daniel Veillard
*/
#ifndef __XML_XSLTWIN32CONFIG_H__
#define __XML_XSLTWIN32CONFIG_H__
#include "win32config.h"
#ifdef __cplusplus
extern "C" {
#endif
/**
* LIBXSLT_DOTTED_VERSION:
*
* the version string like "1.2.3"
*/
#define LIBXSLT_DOTTED_VERSION "@VERSION@"
/**
* LIBXSLT_VERSION:
*
* the version number: 1.2.3 value is 1002003
*/
#define LIBXSLT_VERSION @LIBXSLT_VERSION_NUMBER@
/**
* LIBXSLT_VERSION_STRING:
*
* the version number string, 1.2.3 value is "1002003"
*/
#define LIBXSLT_VERSION_STRING "@LIBXSLT_VERSION_NUMBER@"
/**
* LIBXSLT_VERSION_EXTRA:
*
* extra version information, used to show a CVS compilation
*/
#define LIBXSLT_VERSION_EXTRA "-win32"
/**
* WITH_XSLT_DEBUG:
*
* Activate the compilation of the debug reporting. Speed penalty
* is insignifiant and being able to run xsltpoc -v is useful. On
* by default
*/
#if 1
#define WITH_XSLT_DEBUG
#endif
/**
* WITH_MODULES:
*
* Whether module support is configured into libxslt
*/
#if @WITH_MODULES@
#ifndef WITH_MODULES
#define WITH_MODULES
#endif
#define LIBXSLT_PLUGINS_PATH() getenv("LIBXSLT_PLUGINS_PATH")
#endif
#if 0
/**
* DEBUG_MEMORY:
*
* should be activated only when debugging libxslt. It replaces the
* allocator with a collect and debug shell to the libc allocator.
* Use configure --with-mem-debug to activate it on both library
*/
#define DEBUG_MEMORY
/**
* DEBUG_MEMORY_LOCATION:
*
* should be activated only when debugging libxslt.
* DEBUG_MEMORY_LOCATION should be activated only when libxml has
* been configured with --with-debug-mem too
*/
#define DEBUG_MEMORY_LOCATION
#endif
/**
* ATTRIBUTE_UNUSED:
*
* This macro is used to flag unused function parameters to GCC, useless here
*/
#ifndef ATTRIBUTE_UNUSED
#define ATTRIBUTE_UNUSED
#endif
#ifdef __cplusplus
}
#endif
#endif /* __XML_XSLTWIN32CONFIG_H__ */

View file

@ -45,7 +45,7 @@ URL: http://www.simplesystems.org/libtiff/
Title: Libxslt
Path: dll/3rdparty/libxslt
Used Version: 1.1.35
Used Version: 1.1.36
License: MIT (https://spdx.org/licenses/MIT.html)
URL: http://xmlsoft.org

View file

@ -10,7 +10,7 @@
#ifndef __XSLT_LIBXSLT_H__
#define __XSLT_LIBXSLT_H__
#if defined(_WIN32) && !defined (__CYGWIN__) && !defined (__MINGW32__)
#if defined(_WIN32) && !defined (__MINGW32__)
#include <win32config.h>
#else
#include "config.h"

View file

@ -20,26 +20,26 @@ extern "C" {
*
* the version string like "1.2.3"
*/
#define LIBXSLT_DOTTED_VERSION "1.1.35"
#define LIBXSLT_DOTTED_VERSION "1.1.36"
/**
* LIBXSLT_VERSION:
*
* the version number: 1.2.3 value is 10203
*/
#define LIBXSLT_VERSION 10135
#define LIBXSLT_VERSION 10136
/**
* LIBXSLT_VERSION_STRING:
*
* the version number string, 1.2.3 value is "10203"
*/
#define LIBXSLT_VERSION_STRING "10135"
#define LIBXSLT_VERSION_STRING "10136"
/**
* LIBXSLT_VERSION_EXTRA:
*
* extra version information, used to show a CVS compilation
* extra version information, used to show a Git commit description
*/
#define LIBXSLT_VERSION_EXTRA ""
@ -86,7 +86,6 @@ extern "C" {
#define XSLT_NEED_TRIO
#endif
#ifdef __VMS
#define HAVE_MATH_H 1
#define HAVE_SYS_STAT_H 1
#ifndef XSLT_NEED_TRIO
#define XSLT_NEED_TRIO

View file

@ -3,138 +3,56 @@
* Description: macros for marking symbols as exportable/importable.
*
* Copy: See Copyright for the status of this software.
*
* Author: Igor Zlatkovic <igor@zlatkovic.com>
*/
#ifndef __XSLT_EXPORTS_H__
#define __XSLT_EXPORTS_H__
/**
* XSLTPUBFUN:
* XSLTPUBFUN, XSLTPUBVAR, XSLTCALL
*
* Macros which declare an exportable function, an exportable variable and
* the calling convention used for functions.
*
* Please use an extra block for every platform/compiler combination when
* modifying this, rather than overlong #ifdef lines. This helps
* readability as well as the fact that different compilers on the same
* platform might need different definitions.
*/
#if defined(_WIN32) || defined(__CYGWIN__)
/** DOC_DISABLE */
#ifdef LIBXSLT_STATIC
#define XSLTPUBLIC
#elif defined(IN_LIBXSLT)
#define XSLTPUBLIC __declspec(dllexport)
#else
#define XSLTPUBLIC __declspec(dllimport)
#endif
#define XSLTCALL __cdecl
/** DOC_ENABLE */
#else /* not Windows */
/**
* XSLTPUBFUN:
* XSLTPUBLIC:
*
* Macros which declare an exportable function
* Macro which declares a public symbol
*/
#define XSLTPUBFUN
/**
* XSLTPUBVAR:
*
* Macros which declare an exportable variable
*/
#define XSLTPUBVAR extern
#define XSLTPUBLIC
/**
* XSLTCALL:
*
* Macros which declare the called convention for exported functions
* Macro which declares the calling convention for exported functions
*/
#define XSLTCALL
/** DOC_DISABLE */
#endif /* platform switch */
/* Windows platform with MS compiler */
#if defined(_WIN32) && defined(_MSC_VER)
#undef XSLTPUBFUN
#undef XSLTPUBVAR
#undef XSLTCALL
#if defined(IN_LIBXSLT) && !defined(LIBXSLT_STATIC)
#define XSLTPUBFUN __declspec(dllexport)
#if defined(__REACTOS__) && defined(__clang__)
#define XSLTPUBVAR __declspec(dllexport) extern
#else
#define XSLTPUBVAR __declspec(dllexport)
#endif /* __REACTOS__ && __clang__ */
#else
#define XSLTPUBFUN
#if !defined(LIBXSLT_STATIC)
#define XSLTPUBVAR __declspec(dllimport) extern
#else
#define XSLTPUBVAR extern
#endif
#endif
#define XSLTCALL __cdecl
#if !defined _REENTRANT
#define _REENTRANT
#endif
#endif
/* Windows platform with Borland compiler */
#if defined(_WIN32) && defined(__BORLANDC__)
#undef XSLTPUBFUN
#undef XSLTPUBVAR
#undef XSLTCALL
#if defined(IN_LIBXSLT) && !defined(LIBXSLT_STATIC)
#define XSLTPUBFUN __declspec(dllexport)
#define XSLTPUBVAR __declspec(dllexport) extern
#else
#define XSLTPUBFUN
#if !defined(LIBXSLT_STATIC)
#define XSLTPUBVAR __declspec(dllimport) extern
#else
#define XSLTPUBVAR extern
#endif
#endif
#define XSLTCALL __cdecl
#if !defined _REENTRANT
#define _REENTRANT
#endif
#endif
/* Windows platform with GNU compiler (Mingw) */
#if defined(_WIN32) && defined(__MINGW32__)
#undef XSLTPUBFUN
#undef XSLTPUBVAR
#undef XSLTCALL
/*
#if defined(IN_LIBXSLT) && !defined(LIBXSLT_STATIC)
*/
#if !defined(LIBXSLT_STATIC)
#define XSLTPUBFUN __declspec(dllexport)
#define XSLTPUBVAR __declspec(dllexport) extern
#else
#define XSLTPUBFUN
#if !defined(LIBXSLT_STATIC)
#define XSLTPUBVAR __declspec(dllimport) extern
#else
#define XSLTPUBVAR extern
#endif
#endif
#define XSLTCALL __cdecl
#if !defined _REENTRANT
#define _REENTRANT
#endif
#endif
* XSLTPUBFUN:
*
* Macro which declares an exportable function
*/
#define XSLTPUBFUN XSLTPUBLIC
/* Cygwin platform (does not define _WIN32), GNU compiler */
#if defined(__CYGWIN__)
#undef XSLTPUBFUN
#undef XSLTPUBVAR
#undef XSLTCALL
#if defined(IN_LIBXSLT) && !defined(LIBXSLT_STATIC)
#define XSLTPUBFUN __declspec(dllexport)
#define XSLTPUBVAR __declspec(dllexport)
#else
#define XSLTPUBFUN
#if !defined(LIBXSLT_STATIC)
#define XSLTPUBVAR __declspec(dllimport) extern
#else
#define XSLTPUBVAR extern
#endif
#endif
#define XSLTCALL __cdecl
#endif
/**
* XSLTPUBVAR:
*
* Macro which declares an exportable variable
*/
#define XSLTPUBVAR XSLTPUBLIC extern
/* Compatibility */
#if !defined(LIBXSLT_PUBLIC)

View file

@ -32,7 +32,7 @@
typedef locale_t xsltLocale;
typedef xmlChar xsltLocaleChar;
#elif defined(_WIN32) && !defined(__CYGWIN__)
#elif defined(_WIN32)
/*
* XSLT_LOCALE_WINAPI:

View file

@ -13,9 +13,6 @@
#define __XML_XSLTUTILS_H__
#include <libxslt/xsltconfig.h>
#ifdef HAVE_STDARG_H
#include <stdarg.h>
#endif
#include <libxml/xpath.h>
#include <libxml/dict.h>
#include <libxml/xmlerror.h>