* enabled libxml2 for win32 (hope it's still working for linux)

git-svn-id: trunk@11753 -
This commit is contained in:
ivost 2008-09-13 00:27:27 +00:00
parent 7582f7f325
commit 2e1f993232
9 changed files with 185 additions and 23 deletions

View File

@ -1,5 +1,5 @@
#
# Don't edit, this file is generated by FPCMake Version 2.0.0 [2008/08/04]
# Don't edit, this file is generated by FPCMake Version 2.0.0 [2008/09/12]
#
default: all
MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-qnx i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-darwin x86_64-win64 x86_64-embedded arm-linux arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian powerpc64-linux powerpc64-darwin powerpc64-embedded avr-embedded armeb-linux armeb-embedded
@ -265,7 +265,7 @@ ifeq ($(FULL_TARGET),i386-go32v2)
override TARGET_DIRS+=hash pasjpeg paszlib fpmkunit fcl-xml fcl-base fcl-db fcl-image fcl-net fcl-passrc fcl-registry fcl-fpcunit fcl-json fcl-process unzip regexpr chm fcl-res libgd symbolic fv graph unzip gdbint
endif
ifeq ($(FULL_TARGET),i386-win32)
override TARGET_DIRS+=hash pasjpeg paszlib fpmkunit fcl-xml fcl-base fcl-db fcl-image fcl-net fcl-passrc fcl-registry fcl-fpcunit fcl-json fcl-process unzip regexpr chm fcl-res libgd symbolic fv winunits-base winunits-jedi fcl-web ibase mysql zlib oracle odbc postgres sqlite imagemagick gdbint libpng mad tcl opengl gtk1 gtk2 a52 cdrom fpgtk openal fftw lua oggvorbis sdl openssl graph pcap httpd13 httpd20 httpd22 pxlib numlib winceunits cairo
override TARGET_DIRS+=hash pasjpeg paszlib fpmkunit fcl-xml fcl-base fcl-db fcl-image fcl-net fcl-passrc fcl-registry fcl-fpcunit fcl-json fcl-process unzip regexpr chm fcl-res libgd symbolic fv winunits-base winunits-jedi fcl-web ibase mysql zlib oracle odbc postgres sqlite imagemagick gdbint libpng mad tcl opengl gtk1 gtk2 a52 cdrom fpgtk openal fftw lua oggvorbis sdl openssl graph pcap httpd13 httpd20 httpd22 pxlib numlib winceunits cairo libxml
endif
ifeq ($(FULL_TARGET),i386-os2)
override TARGET_DIRS+=hash pasjpeg paszlib fpmkunit fcl-xml fcl-base fcl-db fcl-image fcl-net fcl-passrc fcl-registry fcl-fpcunit fcl-json fcl-process unzip regexpr chm fcl-res libgd symbolic fv zlib libpng x11 tcl fpgtk rexx os2units gtk1 imlib
@ -1685,6 +1685,7 @@ TARGET_DIRS_PXLIB=1
TARGET_DIRS_NUMLIB=1
TARGET_DIRS_WINCEUNITS=1
TARGET_DIRS_CAIRO=1
TARGET_DIRS_LIBXML=1
endif
ifeq ($(FULL_TARGET),i386-os2)
TARGET_DIRS_HASH=1

View File

@ -1,3 +1,4 @@
#
# Makefile.fpc for Free Pascal Packages
#
@ -42,7 +43,7 @@ dirs_linux=fv fcl-web fcl-async ibase mysql ncurses unzip zlib oracle dbus odbc
imlib utmp fpgtk openal lua oggvorbis xforms fftw pcap ggi sdl openssl gnome1 httpd13 httpd20 httpd22 pxlib numlib
dirs_win32=fv winunits-base winunits-jedi fcl-web ibase mysql zlib oracle odbc postgres sqlite imagemagick \
gdbint libpng mad tcl opengl gtk1 gtk2 a52 cdrom fpgtk openal fftw lua \
oggvorbis sdl openssl graph pcap httpd13 httpd20 httpd22 pxlib numlib winceunits cairo
oggvorbis sdl openssl graph pcap httpd13 httpd20 httpd22 pxlib numlib winceunits cairo libxml
dirs_win64=fv winunits-base winunits-jedi fcl-web ibase mysql zlib oracle odbc postgres sqlite imagemagick \
tcl opengl gtk1 gtk2 fpgtk fftw sdl openssl cdrom numlib
dirs_wince=winceunits fcl-web tcl fftw unzip zlib sqlite mysql ibase postgres oracle odbc sdl openssl oggvorbis numlib

View File

@ -62,8 +62,14 @@ function xmlIsBaseChar_ch(c: cint): cbool;
*)
function xmlIsBaseCharQ(c: cint): cbool;
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlIsBaseCharGroup: xmlChRangeGroup; XMLPUBVAR;
__xmlIsBaseCharGroup: xmlChRangeGroupPtr = @xmlIsBaseCharGroup;
{$ELSE}
var
__xmlIsBaseCharGroup: xmlChRangeGroupPtr;
{$ENDIF}
(**
* xmlIsBlank_ch:
@ -97,8 +103,14 @@ function xmlIsChar_ch(c: cint): cbool;
*)
function xmlIsCharQ(c: cint): cbool;
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlIsCharGroup: xmlChRangeGroup; XMLPUBVAR;
__xmlIsCharGroup: xmlChRangeGroupPtr = @xmlIsCharGroup;
{$ELSE}
var
__xmlIsCharGroup: xmlChRangeGroupPtr;
{$ENDIF}
(**
* xmlIsCombiningQ:
@ -108,8 +120,14 @@ var
*)
function xmlIsCombiningQ(c: cint): cbool;
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlIsCombiningGroup: xmlChRangeGroup; XMLPUBVAR;
__xmlIsCombiningGroup: xmlChRangeGroupPtr = @xmlIsCombiningGroup;
{$ELSE}
var
__xmlIsCombiningGroup: xmlChRangeGroupPtr;
{$ENDIF}
(**
* xmlIsDigit_ch:
@ -127,8 +145,14 @@ function xmlIsDigit_ch(c: cint): cbool;
*)
function xmlIsDigitQ(c: cint): cbool;
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlIsDigitGroup: xmlChRangeGroup; XMLPUBVAR;
__xmlIsDigitGroup: xmlChRangeGroupPtr = @xmlIsDigitGroup;
{$ELSE}
var
__xmlIsDigitGroup: xmlChRangeGroupPtr;
{$ENDIF}
(**
* xmlIsExtender_ch:
@ -146,8 +170,14 @@ function xmlIsExtender_ch(c: cint): cbool;
*)
function xmlIsExtenderQ(c: cint): cbool;
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlIsExtenderGroup: xmlChRangeGroup; XMLPUBVAR;
__xmlIsExtenderGroup: xmlChRangeGroupPtr = @xmlIsExtenderGroup;
{$ELSE}
var
__xmlIsExtenderGroup: xmlChRangeGroupPtr;
{$ENDIF}
(**
* xmlIsIdeographicQ:
@ -157,9 +187,22 @@ var
*)
function xmlIsIdeographicQ(c: cint): cbool;
type
pchar_tab = ^char_tab;
char_tab = array[0..255] of cbool;
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlIsIdeographicGroup: xmlChRangeGroup; XMLPUBVAR;
xmlIsPubidChar_tab: array[0..255] of cbool;
__xmlIsIdeographicGroup: xmlChRangeGroupPtr = @xmlIsIdeographicGroup;
xmlIsPubidChar_tab: char_tab; XMLPUBVAR;
__xmlIsPubidChar_tab: pchar_tab = @xmlIsPubidChar_tab;
{$ELSE}
var
__xmlIsIdeographicGroup: xmlChRangeGroupPtr;
__xmlIsPubidChar_tab: pchar_tab;
{$ENDIF}
(**
* xmlIsPubidChar_ch:
@ -185,4 +228,4 @@ function xmlIsDigit(ch: cuint): cbool; XMLCALL; XMLPUBFUN;
function xmlIsExtender(ch: cuint): cbool; XMLCALL; XMLPUBFUN;
function xmlIsIdeographic(ch: cuint): cbool; XMLCALL; XMLPUBFUN;
function xmlIsPubidChar(ch: cuint): cbool; XMLCALL; XMLPUBFUN;
{$ENDIF}
{$ENDIF}

View File

@ -119,7 +119,7 @@ function __xmlMalloc: xmlMallocFuncPtr; XMLCALL; XMLPUBFUN;
{$DEFINE xmlMalloc := __xmlMalloc()^ }
{$ELSE}
var
xmlMalloc: xmlMallocFunc; XMLPUBVAR;
xmlMalloc: xmlMallocFunc; {$IFNDEF NO_EXTERNAL_VARS}XMLPUBVAR;{$ENDIF}
{$ENDIF}
{$IFDEF LIBXML_THREAD_ENABLED}
@ -127,7 +127,7 @@ function __xmlMallocAtomic: xmlMallocFuncPtr; XMLCALL; XMLPUBFUN;
#define xmlMallocAtomic ( *(__xmlMallocAtomic()))
{$ELSE}
var
xmlMallocAtomic: xmlMallocFunc; XMLPUBVAR;
xmlMallocAtomic: xmlMallocFunc; {$IFNDEF NO_EXTERNAL_VARS}XMLPUBVAR;{$ENDIF}
{$ENDIF}
{$IFDEF LIBXML_THREAD_ENABLED}
@ -135,7 +135,7 @@ function __xmlRealloc: xmlReallocFuncPtr; XMLCALL; XMLPUBFUN;
#define xmlRealloc ( *(__xmlRealloc()))
{$ELSE}
var
xmlRealloc: xmlReallocFunc; XMLPUBVAR;
xmlRealloc: xmlReallocFunc; {$IFNDEF NO_EXTERNAL_VARS}XMLPUBVAR;{$ENDIF}
{$ENDIF}
{$IFDEF LIBXML_THREAD_ENABLED}
@ -143,7 +143,7 @@ function __xmlFree: xmlFreeFuncPtr; XMLCALL; XMLPUBFUN;
#define xmlFree ( *(__xmlFree()))
{$ELSE}
var
xmlFree: xmlFreeFunc; XMLPUBVAR;
xmlFree: xmlFreeFunc; {$IFNDEF NO_EXTERNAL_VARS}XMLPUBVAR;{$ENDIF}
{$ENDIF}
{$IFDEF LIBXML_THREAD_ENABLED}
@ -151,16 +151,16 @@ function __xmlMemStrdup: xmlStrdupFuncPtr; XMLCALL; XMLPUBFUN;
#define xmlMemStrdup ( *(__xmlMemStrdup()))
{$ELSE}
var
xmlMemStrdup: xmlStrdupFunc; XMLPUBVAR;
xmlMemStrdup: xmlStrdupFunc; {$IFNDEF NO_EXTERNAL_VARS}XMLPUBVAR;{$ENDIF}
{$ENDIF}
{$ELSE} (* !LIBXML_THREAD_ALLOC_ENABLED *)
var
xmlMalloc: xmlMallocFunc; XMLPUBVAR;
xmlMallocAtomic: xmlMallocFunc; XMLPUBVAR;
xmlRealloc: xmlReallocFunc; XMLPUBVAR;
xmlFree: xmlFreeFunc; XMLPUBVAR;
xmlMemStrdup: xmlStrdupFunc; XMLPUBVAR;
xmlMalloc: xmlMallocFunc; {$IFNDEF NO_EXTERNAL_VARS}XMLPUBVAR;{$ENDIF}
xmlMallocAtomic: xmlMallocFunc; {$IFNDEF NO_EXTERNAL_VARS}XMLPUBVAR;{$ENDIF}
xmlRealloc: xmlReallocFunc; {$IFNDEF NO_EXTERNAL_VARS}XMLPUBVAR;{$ENDIF}
xmlFree: xmlFreeFunc; {$IFNDEF NO_EXTERNAL_VARS}XMLPUBVAR;{$ENDIF}
xmlMemStrdup: xmlStrdupFunc; {$IFNDEF NO_EXTERNAL_VARS}XMLPUBVAR;{$ENDIF}
{$ENDIF} (* LIBXML_THREAD_ALLOC_ENABLED *)
{$IFDEF LIBXML_DOCB_ENABLED}
@ -168,28 +168,34 @@ function __docbDefaultSAXHandler: xmlSAXHandlerV1Ptr; XMLCALL; XMLPUBFUN;
{$IFDEF LIBXML_THREAD_ENABLED}
{$DEFINE docbDefaultSAXHandler := __docbDefaultSAXHandler()^ }
{$ELSE}
{$IFNDEF NO_EXTERNAL_VARS}
var
docbDefaultSAXHandler: xmlSAXHandlerV1; XMLPUBVAR;
{$ENDIF}
{$ENDIF}
{$ENDIF}
{$IFDEF LIBXML_HTML_ENABLED}
function __htmlDefaultSAXHandler: xmlSAXHandlerV1Ptr; XMLCALL; XMLPUBFUN;
{$IFDEF LIBXML_THREAD_ENABLED}
{$DEFINE htmlDefaultSAXHandler := __htmlDefaultSAXHandler()^ }
{$ELSE}
{$IFNDEF NO_EXTERNAL_VARS}
var
htmlDefaultSAXHandler: xmlSAXHandlerV1; XMLPUBVAR;
{$ENDIF}
{$ENDIF}
{$ENDIF}
function __xmlLastError: xmlErrorPtr; XMLCALL; XMLPUBFUN;
{$IFDEF LIBXML_THREAD_ENABLED}
{$DEFINE xmlLastError := __xmlLastError()^ }
{$ELSE}
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlLastError: xmlError; XMLPUBVAR;
{$ENDIF}
{$ENDIF}
(*
* Everything starting from the line below is
@ -201,205 +207,253 @@ function __oldXMLWDcompatibility: pcint; XMLCALL; XMLPUBFUN;
{$IFDEF LIBXML_THREAD_ENABLED}
{$DEFINE oldXMLWDcompatibility := __oldXMLWDcompatibility()^ }
{$ELSE}
{$IFNDEF NO_EXTERNAL_VARS}
var
oldXMLWDcompatibility: cint; XMLPUBVAR;
{$ENDIF}
{$ENDIF}
function __xmlBufferAllocScheme: xmlBufferAllocationSchemePtr; XMLCALL; XMLPUBFUN;
{$IFDEF LIBXML_THREAD_ENABLED}
{$DEFINE xmlBufferAllocScheme := __xmlBufferAllocScheme()^ }
{$ELSE}
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlBufferAllocScheme: xmlBufferAllocationScheme; XMLPUBVAR;
{$ENDIF}
{$ENDIF}
function xmlThrDefBufferAllocScheme(v: xmlBufferAllocationScheme): xmlBufferAllocationScheme; XMLCALL; XMLPUBFUN;
function __xmlDefaultBufferSize: pcint; XMLCALL; XMLPUBFUN;
{$IFDEF LIBXML_THREAD_ENABLED}
{$DEFINE xmlDefaultBufferSize := __xmlDefaultBufferSize()^ }
{$ELSE}
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlDefaultBufferSize: cint; XMLPUBVAR;
{$ENDIF}
{$ENDIF}
function xmlThrDefDefaultBufferSize(v: cint): cint; XMLCALL; XMLPUBFUN;
function __xmlDefaultSAXHandler: xmlSAXHandlerV1Ptr; XMLCALL; XMLPUBFUN;
{$IFDEF LIBXML_THREAD_ENABLED}
{$DEFINE xmlDefaultSAXHandler := __xmlDefaultSAXHandler()^ }
{$ELSE}
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlDefaultSAXHandler: xmlSAXHandlerV1; XMLPUBVAR;
{$ENDIF}
{$ENDIF}
function __xmlDefaultSAXLocator: xmlSAXLocatorPtr; XMLCALL; XMLPUBFUN;
{$IFDEF LIBXML_THREAD_ENABLED}
{$DEFINE xmlDefaultSAXLocator := __xmlDefaultSAXLocator()^ }
{$ELSE}
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlDefaultSAXLocator: xmlSAXLocator; XMLPUBVAR;
{$ENDIF}
{$ENDIF}
function __xmlDoValidityCheckingDefaultValue: pcint; XMLCALL; XMLPUBFUN;
{$IFDEF LIBXML_THREAD_ENABLED}
{$DEFINE xmlDoValidityCheckingDefaultValue := __xmlDoValidityCheckingDefaultValue()^ }
{$ELSE}
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlDoValidityCheckingDefaultValue: cint; XMLPUBVAR;
{$ENDIF}
{$ENDIF}
function xmlThrDefDoValidityCheckingDefaultValue(v: cint): cint; XMLCALL; XMLPUBFUN;
function __xmlGenericError: xmlGenericErrorFuncPtr; XMLCALL; XMLPUBFUN;
{$IFDEF LIBXML_THREAD_ENABLED}
{$DEFINE xmlGenericError := __xmlGenericError()^ }
{$ELSE}
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlGenericError: xmlGenericErrorFunc; XMLPUBVAR;
{$ENDIF}
{$ENDIF}
function __xmlStructuredError: xmlStructuredErrorFuncPtr; XMLCALL; XMLPUBFUN;
{$IFDEF LIBXML_THREAD_ENABLED}
{$DEFINE xmlStructuredError := __xmlStructuredError()^ }
{$ELSE}
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlStructuredError: xmlStructuredErrorFunc; XMLPUBVAR;
{$ENDIF}
{$ENDIF}
function __xmlGenericErrorContext: ppointer; XMLCALL; XMLPUBFUN;
{$IFDEF LIBXML_THREAD_ENABLED}
{$DEFINE xmlGenericErrorContext := __xmlGenericErrorContext()^ }
{$ELSE}
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlGenericErrorContext: pointer; XMLPUBVAR;
{$ENDIF}
{$ENDIF}
function __xmlGetWarningsDefaultValue: pcint; XMLCALL; XMLPUBFUN;
{$IFDEF LIBXML_THREAD_ENABLED}
{$DEFINE xmlGetWarningsDefaultValue := __xmlGetWarningsDefaultValue()^ }
{$ELSE}
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlGetWarningsDefaultValue: cint; XMLPUBVAR;
{$ENDIF}
{$ENDIF}
function xmlThrDefGetWarningsDefaultValue(v: cint): cint; XMLCALL; XMLPUBFUN;
function __xmlIndentTreeOutput: pcint; XMLCALL; XMLPUBFUN;
{$IFDEF LIBXML_THREAD_ENABLED}
{$DEFINE xmlIndentTreeOutput := __xmlIndentTreeOutput()^ }
{$ELSE}
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlIndentTreeOutput: cint; XMLPUBVAR;
{$ENDIF}
{$ENDIF}
function xmlThrDefIndentTreeOutput(v: cint): cint; XMLCALL; XMLPUBFUN;
function __xmlTreeIndentString: ppchar; XMLCALL; XMLPUBFUN;
{$IFDEF LIBXML_THREAD_ENABLED}
{$DEFINE xmlTreeIndentString := __xmlTreeIndentString()^ }
{$ELSE}
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlTreeIndentString: pchar; XMLPUBVAR;
{$ENDIF}
{$ENDIF}
function xmlThrDefTreeIndentString(v: pchar): pchar; XMLCALL; XMLPUBFUN;
function __xmlKeepBlanksDefaultValue: pcint; XMLCALL; XMLPUBFUN;
{$IFDEF LIBXML_THREAD_ENABLED}
{$DEFINE xmlKeepBlanksDefaultValue := __xmlKeepBlanksDefaultValue()^ }
{$ELSE}
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlKeepBlanksDefaultValue: cint; XMLPUBVAR;
{$ENDIF}
{$ENDIF}
function xmlThrDefKeepBlanksDefaultValue(v: cint): cint; XMLCALL; XMLPUBFUN;
function __xmlLineNumbersDefaultValue: pcint; XMLCALL; XMLPUBFUN;
{$IFDEF LIBXML_THREAD_ENABLED}
{$DEFINE xmlLineNumbersDefaultValue := __xmlLineNumbersDefaultValue()^ }
{$ELSE}
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlLineNumbersDefaultValue: cint; XMLPUBVAR;
{$ENDIF}
{$ENDIF}
function xmlThrDefLineNumbersDefaultValue(v: cint): cint; XMLCALL; XMLPUBFUN;
function __xmlLoadExtDtdDefaultValue: pcint; XMLCALL; XMLPUBFUN;
{$IFDEF LIBXML_THREAD_ENABLED}
{$DEFINE xmlLoadExtDtdDefaultValue := __xmlLoadExtDtdDefaultValue()^ }
{$ELSE}
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlLoadExtDtdDefaultValue: cint; XMLPUBVAR;
{$ENDIF}
{$ENDIF}
function xmlThrDefLoadExtDtdDefaultValue(v: cint): cint; XMLCALL; XMLPUBFUN;
function __xmlParserDebugEntities: pcint; XMLCALL; XMLPUBFUN;
{$IFDEF LIBXML_THREAD_ENABLED}
{$DEFINE xmlParserDebugEntities := __xmlParserDebugEntities()^ }
{$ELSE}
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlParserDebugEntities: cint; XMLPUBVAR;
{$ENDIF}
{$ENDIF}
function xmlThrDefParserDebugEntities(v: cint): cint; XMLCALL; XMLPUBFUN;
function __xmlParserVersion: ppchar; XMLCALL; XMLPUBFUN;
{$IFDEF LIBXML_THREAD_ENABLED}
{$DEFINE xmlParserVersion := __xmlParserVersion()^ }
{$ELSE}
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlParserVersion: pchar; XMLPUBVAR;
{$ENDIF}
{$ENDIF}
function __xmlPedanticParserDefaultValue: pcint; XMLCALL; XMLPUBFUN;
{$IFDEF LIBXML_THREAD_ENABLED}
{$DEFINE xmlPedanticParserDefaultValue := __xmlPedanticParserDefaultValue()^ }
{$ELSE}
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlPedanticParserDefaultValue: cint; XMLPUBVAR;
{$ENDIF}
{$ENDIF}
function xmlThrDefPedanticParserDefaultValue(v: cint): cint; XMLCALL; XMLPUBFUN;
function __xmlSaveNoEmptyTags: pcint; XMLCALL; XMLPUBFUN;
{$IFDEF LIBXML_THREAD_ENABLED}
{$DEFINE xmlSaveNoEmptyTags := __xmlSaveNoEmptyTags()^ }
{$ELSE}
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlSaveNoEmptyTags: cint; XMLPUBVAR;
{$ENDIF}
{$ENDIF}
function xmlThrDefSaveNoEmptyTags(v: cint): cint; XMLCALL; XMLPUBFUN;
function __xmlSubstituteEntitiesDefaultValue: pcint; XMLCALL; XMLPUBFUN;
{$IFDEF LIBXML_THREAD_ENABLED}
{$DEFINE xmlSubstituteEntitiesDefaultValue := __xmlSubstituteEntitiesDefaultValue()^ }
{$ELSE}
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlSubstituteEntitiesDefaultValue: cint; XMLPUBVAR;
{$ENDIF}
{$ENDIF}
function xmlThrDefSubstituteEntitiesDefaultValue(v: cint): cint; XMLCALL; XMLPUBFUN;
function __xmlRegisterNodeDefaultValue: xmlRegisterNodeFuncPtr; XMLCALL; XMLPUBFUN;
{$IFDEF LIBXML_THREAD_ENABLED}
{$DEFINE xmlRegisterNodeDefaultValue := __xmlRegisterNodeDefaultValue()^ }
{$ELSE}
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlRegisterNodeDefaultValue: xmlRegisterNodeFunc; XMLPUBVAR;
{$ENDIF}
{$ENDIF}
function __xmlDeregisterNodeDefaultValue: xmlDeregisterNodeFuncPtr; XMLCALL; XMLPUBFUN;
{$IFDEF LIBXML_THREAD_ENABLED}
{$DEFINE xmlDeregisterNodeDefaultValue := __xmlDeregisterNodeDefaultValue()^ }
{$ELSE}
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlDeregisterNodeDefaultValue: xmlDeregisterNodeFunc; XMLPUBVAR;
{$ENDIF}
{$ENDIF}
function __xmlParserInputBufferCreateFilenameValue: xmlParserInputBufferCreateFilenameFuncPtr; XMLCALL; XMLPUBFUN;
{$IFDEF LIBXML_THREAD_ENABLED}
{$DEFINE xmlParserInputBufferCreateFilenameValue := __xmlParserInputBufferCreateFilenameValue()^ }
{$ELSE}
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlParserInputBufferCreateFilenameValue: xmlParserInputBufferCreateFilenameFunc; XMLPUBVAR;
{$ENDIF}
{$ENDIF}
function __xmlOutputBufferCreateFilenameValue: xmlOutputBufferCreateFilenameFuncPtr; XMLCALL; XMLPUBFUN;
{$IFDEF LIBXML_THREAD_ENABLED}
{$DEFINE xmlOutputBufferCreateFilenameValue := __xmlOutputBufferCreateFilenameValue()^ }
{$ELSE}
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlOutputBufferCreateFilenameValue: xmlOutputBufferCreateFilenameFunc; XMLPUBVAR;
{$ENDIF}
{$ENDIF}
{$ENDIF}

View File

@ -10,6 +10,9 @@ unit libxml2;
interface
uses
{$IFDEF WINDOWS}
windows,
{$ENDIF}
ctypes;
//{$IF Sizeof(cbool) <> Sizeof(cint)}
@ -37,10 +40,9 @@ const
{$i xmlversion.inc}
type
iconv_t = pointer;
PFILE = pointer;
va_list = pointer;
size_t = {$IF Sizeof(pointer) = 8}qword{$ELSE}longword{$IFEND};
iconv_t = pointer;
(*
include pointers (forwarding)
@ -312,7 +314,7 @@ begin
if c < $100 then
Result := xmlIsBaseChar_ch(c)
else
Result := xmlCharInRange(c, @xmlIsBaseCharGroup);
Result := xmlCharInRange(c, __xmlIsBaseCharGroup);
end;
function xmlIsBlank_ch(c: cint): cbool;
@ -349,7 +351,7 @@ begin
if c < $100 then
Result := false
else
Result := xmlCharInRange(c, @xmlIsCombiningGroup);
Result := xmlCharInRange(c, __xmlIsCombiningGroup);
end;
function xmlIsDigit_ch(c: cint): cbool;
@ -362,7 +364,7 @@ begin
if c < $100 then
Result := xmlIsDigit_ch(c)
else
Result := xmlCharInRange(c, @xmlIsDigitGroup);
Result := xmlCharInRange(c, __xmlIsDigitGroup);
end;
function xmlIsExtender_ch(c: cint): cbool;
@ -375,7 +377,7 @@ begin
if c < $100 then
Result := xmlIsExtender_ch(c)
else
Result := xmlCharInRange(c, @xmlIsExtenderGroup);
Result := xmlCharInRange(c, __xmlIsExtenderGroup);
end;
function xmlIsIdeographicQ(c: cint): cbool;
@ -392,7 +394,7 @@ end;
function xmlIsPubidChar_ch(c: cint): cbool;
begin
if (c >= 0) and (c <= 255) then
Result := xmlIsPubidChar_tab[c]
Result := __xmlIsPubidChar_tab^[c]
else
Result := false;
end;
@ -464,7 +466,57 @@ begin
Result := not assigned(ns) or (ns^.nodeNr = 0) or (ns^.nodeTab = nil);
end;
{$IFDEF WINDOWS}
procedure LoadExternalVariables;
var
libHandle: THandle;
begin
libHandle := LoadLibrary(libxml2lib);
if libHandle <> 0 then
begin
{ xmlregexp.inc }
{__emptyExp := xmlExpNodePtrPtr(GetProcAddress(libHandle, 'emptyExp'));
__forbiddenExp := xmlExpNodePtrPtr(GetProcAddress(libHandle, 'forbiddenExp'));}
{ paserInternals.inc }
//__xmlParserMaxDepth := PCardinal(GetProcAddress(libHandle, 'xmlParserMaxDepth'));
{ }
{xmlStringComment := PChar(GetProcAddress(libHandle, 'xmlStringComment'));
xmlStringText := PChar(GetProcAddress(libHandle, 'xmlStringText'));
xmlStringTextNoenc := PChar(GetProcAddress(libHandle, 'xmlStringTextNoenc'));}
{ chvalid.inc }
__xmlIsBaseCharGroup := xmlChRangeGroupPtr(GetProcAddress(libHandle, 'xmlIsBaseCharGroup'));
__xmlIsCharGroup := xmlChRangeGroupPtr(GetProcAddress(libHandle, 'xmlIsCharGroup'));
__xmlIsCombiningGroup := xmlChRangeGroupPtr(GetProcAddress(libHandle, 'xmlIsCombiningGroup'));
__xmlIsDigitGroup := xmlChRangeGroupPtr(GetProcAddress(libHandle, 'xmlIsDigitGroup'));
__xmlIsExtenderGroup := xmlChRangeGroupPtr(GetProcAddress(libHandle, 'xmlIsExtenderGroup'));
__xmlIsIdeographicGroup := xmlChRangeGroupPtr(GetProcAddress(libHandle, 'xmlIsIdeographicGroup'));
__xmlIsPubidChar_tab := GetProcAddress(libHandle, 'xmlIsPubidChar_tab');
{ globals.inc }
xmlMalloc := xmlMallocFunc(GetProcAddress(libHandle, 'xmlMalloc'));
xmlMallocAtomic := xmlMallocFunc(GetProcAddress(libHandle, 'xmlMallocAtomic'));
xmlRealloc := xmlReallocFunc(GetProcAddress(libHandle, 'xmlRealloc'));
xmlFree := xmlFreeFunc(GetProcAddress(libHandle, 'xmlFree'));
xmlMemStrdup := xmlStrdupFunc(GetProcAddress(libHandle, 'xmlMemStrdup'));
{ xpath.inc }
{__xmlXPathNAN := PDouble(GetProcAddress(libHandle, 'xmlXPathNAN'));
__xmlXPathNINF := PDouble(GetProcAddress(libHandle, 'xmlXPathNINF'));
__xmlXPathPINF := PDouble(GetProcAddress(libHandle, 'xmlXPathPINF'));}
FreeLibrary(libHandle);
end;
end;
{$ENDIF}
initialization
{$IFDEF WINDOWS}
LoadExternalVariables;
{$ENDIF}
(*
* this initialize the library and check potential ABI mismatches
* between the version it was compiled for and the actual shared

View File

@ -17,9 +17,11 @@
* process. This is not a limitation of the parser but a safety
* boundary feature.
*)
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlParserMaxDepth: cuint; XMLPUBVAR;
{$ENDIF}
{$ENDIF}
{$IFDEF CONST}
(**
@ -598,4 +600,4 @@ XMLPUBFUN void XMLCALL
xmlErrMemory (xmlParserCtxtPtr ctxt,
char *extra);
{$ENDIF}
{$ENDIF}
{$ENDIF}

View File

@ -31,7 +31,12 @@
*
* Macros which declare an exportable variable
*)
{$IFDEF UNIX}
{$DEFINE XMLPUBVAR := cvar; external}
{$ELSE}
{$DEFINE XMLPUBVAR := not_supported}
{$DEFINE NO_EXTERNAL_VARS}
{$ENDIF}
(**
* XMLCALL:

View File

@ -94,9 +94,11 @@ function xmlExpCtxtNbCons(ctxt: xmlExpCtxtPtr): cint; XMLCALL; XMLPUBFUN;
* 2 core expressions shared by all for the empty language set
* and for the set with just the empty token
*)
{$IFNDEF NO_EXTERNAL_VARS}
var
forbiddenExp: xmlExpNodePtr; XMLPUBVAR;
emptyExp: xmlExpNodePtr; XMLPUBVAR;
{$ENDIF}
(*
* Expressions are reference counted internally

View File

@ -365,10 +365,12 @@
* Objects and Nodesets handling
*)
{$IFNDEF NO_EXTERNAL_VARS}
var
xmlXPathNAN: cdouble; XMLPUBVAR;
xmlXPathPINF: cdouble; XMLPUBVAR;
xmlXPathNINF: cdouble; XMLPUBVAR;
{$ENDIF}
(* These macros may later turn into functions *)
(**