Index: third_party/libxml/src/bakefile/libxml2.bkl |
diff --git a/third_party/libxml/src/bakefile/libxml2.bkl b/third_party/libxml/src/bakefile/libxml2.bkl |
index b241ed25c00c496aafd203ce7f0b001569de2148..f314465ed9049bac978c6daac86aa97ec50d68e4 100644 |
--- a/third_party/libxml/src/bakefile/libxml2.bkl |
+++ b/third_party/libxml/src/bakefile/libxml2.bkl |
@@ -1,749 +1,749 @@ |
-<?xml version="1.0" ?> |
- |
-<!-- Author: Francesco Montorsi <frm@users.sourceforge.net> --> |
-<!-- Date: 30/8/2004 --> |
-<!-- Last revision: 26/1/2005 --> |
- |
- |
-<!-- LIBXML2 BAKEFILE --> |
-<!-- --> |
-<!-- The bakefile used to build the library and the test --> |
-<!-- programs. The makefiles output is put: --> |
-<!-- --> |
-<!-- - in the ..\LIB folder --> |
-<!-- - in the ..\BIN folder --> |
-<!-- --> |
- |
-<makefile> |
- |
- <using module="datafiles"/> |
- <requires version="0.1.5"/> |
- |
- |
- <!-- This is a bakefile, that is, a generic template used to --> |
- <!-- generate makefiles ALL supported compilers. --> |
- <!-- To use this project file you need Bakefile installed. --> |
- <!-- With the command "bakefile_gen" you can regen all the --> |
- <!-- makefiles and project files. --> |
- <!-- See http://bakefile.sourceforge.net for more info. --> |
- |
- |
- <!-- |
- This file is divided in: |
- - generic options |
- - generic variables |
- - libxml2 options |
- - libxml2 variables |
- - about config.h creation |
- - templates |
- - libxml2 library target |
- - libxml2 test program targets |
- --> |
- |
- |
- |
- <!-- --> |
- <!-- GENERIC OPTIONS --> |
- <!-- --> |
- |
- |
- <!-- This is a standard option that determines --> |
- <!-- whether the user wants to build this library as --> |
- <!-- a dll or as a static library. --> |
- <option name="SHARED"> |
- <values>0,1</values> |
- <values-description>,DLL</values-description> |
- <default-value>0</default-value> |
- <description>If set to zero a STATIC libxml library will be built</description> |
- </option> |
- |
- <!-- Configuration for building the bakefile with --> |
- <!-- unicode strings or not (unicode or ansi). --> |
- <option name="UNICODE"> |
- <values>0,1</values> |
- <values-description>,Unicode</values-description> |
- <default-value>0</default-value> |
- <description>Compile Unicode build?</description> |
- </option> |
- |
- |
- <!-- There are several options that deal with build --> |
- <!-- types. First, there's this one, BUILD. --> |
- <!-- --> |
- <!-- BUILD determines whether or not we want to build --> |
- <!-- in release or debug mode. Note that in practice --> |
- <!-- this means modifying the optimize tag, which by --> |
- <!-- default is set to off. In this case debug means --> |
- <!-- off (no optimizations), and release means speed --> |
- <!-- (fast with inlining). There is also a size option --> |
- <!-- that is not addressed in this example bakefile. --> |
- <option name="BUILD"> |
- <values>debug,release</values> |
- <values-description>Debug,Release</values-description> |
- <default-value>release</default-value> |
- <description> |
- Type of compiled binaries |
- </description> |
- </option> |
- |
- |
- |
- <!-- --> |
- <!-- GENERIC VARIABLES --> |
- <!-- --> |
- |
- <!-- Set the ISDLL variable, so that we can use it --> |
- <!-- inside an if statement later on (options not --> |
- <!-- allowed in if statements). --> |
- <set var="ISDLL" cond="SHARED=='1'">1</set> |
- <set var="ISDLL" cond="SHARED=='0'">0</set> |
- |
- <!-- The unicode define we want. By default bakefile --> |
- <!-- makes variables an empty string, so if unicode --> |
- <!-- is not defined $(UNICODE_DEFINE) would expand --> |
- <!-- to nothing (literally). --> |
- <set var="UNICODE_DEFINE"> |
- <if cond="FORMAT!='autoconf' and UNICODE=='1'">_UNICODE</if> |
- </set> |
- |
- <!-- The debug define we need with win32 compilers --> |
- <!-- (on Linux, the wx-config program is used). --> |
- <set var="DEBUG_DEFINE"> |
- <if cond="FORMAT!='autoconf' and BUILD=='debug'"> |
- __WXDEBUG__ |
- </if> |
- </set> |
- |
- <!-- Value we will use later on for the debug-info --> |
- <!-- tag inside our templates. --> |
- <set var="DEBUGINFO"> |
- <if cond="BUILD=='debug'">on</if> |
- <if cond="BUILD=='release'">off</if> |
- </set> |
- |
- <!-- Value we will use later on for the debug-runtime --> |
- <!-- tag inside our templates. --> |
- <set var="DEBUGRUNTIME"> |
- <if cond="BUILD=='debug'">on</if> |
- <if cond="BUILD=='release'">off</if> |
- </set> |
- |
- <!-- Value for optimize tag. --> |
- <set var="OPTIMIZEFLAG"> |
- <if cond="BUILD=='debug'">off</if> |
- <if cond="BUILD=='release'">speed</if> |
- </set> |
- |
- <!-- Level of warnings. Here we max it out in debug --> |
- <!-- mode, and turn them off in release mode. --> |
- <set var="WARNINGS"> |
- <if cond="BUILD=='debug'">max</if> |
- <if cond="BUILD=='release'">no</if> |
- </set> |
- |
- <!-- Set MYCPPFLAGS as empty; maybe it will be filled later... --> |
- <set var="MYCPPFLAGS"></set> |
- <if cond="FORMAT=='mingw' or FORMAT=='autoconf'"> |
- |
- <!-- With GCC, settings warnings to MAX would force --> |
- <!-- Bakefile to call GCC with "-W -Wall" which generates --> |
- <!-- a *lot* of warnings about wxWidgets headers... --> |
- <!-- this is why "-W -Wall" is here replaced by "-Wall". --> |
- <set var="WARNINGS">default</set> |
- <set var="MYCPPFLAGS">-Wall</set> |
- </if> |
- |
- |
- |
- |
- |
- |
- <!-- --> |
- <!-- LIBXML2 OPTIONS --> |
- <!-- --> |
- <!-- Note #1: not all of them are used by win32 makefiles --> |
- <!-- --> |
- <!-- Note #2: since all combinations of non-path options are --> |
- <!-- translated into different 'configurations' by --> |
- <!-- Bakefile when using the MSVC6PRJ output, we must --> |
- <!-- avoid to create a 10 MB libxml2.dsp file forcing --> |
- <!-- some options to their default values... this --> |
- <!-- behaviour can be overridden by the --> |
- <!-- FULL_OPTIONS_SUPPORT --> |
- <!-- variable defined below... --> |
- |
- <set var="FULL_OPTIONS_SUPPORT"> |
- <if cond="FORMAT=='msvc6prj'">0</if> |
- <if cond="FORMAT!='msvc6prj'">1</if> |
- </set> |
- |
- <option name="ICONV_DIR" category="path"> |
- <default-value>c:\iconv</default-value> |
- <description>The iconv library main folder</description> |
- </option> |
- |
- <option name="WITH_TRIO"> |
- <values>0,1</values> |
- <default-value>0</default-value> |
- <description>Enable TRIO string manipulator</description> |
- </option> |
- |
- <!-- see the note #2 --> |
- <if cond="FULL_OPTIONS_SUPPORT=='0'"> |
- <set var="WITH_THREADS">native</set> |
- </if> |
- <if cond="FULL_OPTIONS_SUPPORT=='1'"> |
- <option name="WITH_THREADS"> |
- <values>no,ctls,native,posix</values> |
- <default-value>native</default-value> |
- <description>Enable thread safety</description> |
- </option> |
- </if> |
- |
- <option name="WITH_FTP"> |
- <values>0,1</values> |
- <default-value>1</default-value> |
- <description>Enable FTP client</description> |
- </option> |
- |
- <option name="WITH_HTTP"> |
- <values>0,1</values> |
- <default-value>1</default-value> |
- <description>Enable HTTP client</description> |
- </option> |
- |
- <option name="WITH_C14N"> |
- <values>0,1</values> |
- <default-value>1</default-value> |
- <description>Enable C14N support</description> |
- </option> |
- |
- <option name="WITH_CATALOG"> |
- <values>0,1</values> |
- <default-value>1</default-value> |
- <description>Enable catalog support</description> |
- </option> |
- |
- <option name="WITH_DOCB"> |
- <values>0,1</values> |
- <default-value>1</default-value> |
- <description>Enable DocBook support</description> |
- </option> |
- |
- <option name="WITH_XPATH"> |
- <values>0,1</values> |
- <default-value>1</default-value> |
- <description>Enable XPath support</description> |
- </option> |
- |
- <option name="WITH_XPTR"> |
- <values>0,1</values> |
- <default-value>1</default-value> |
- <description>Enable XPointer support</description> |
- </option> |
- |
- <option name="WITH_XINCLUDE"> |
- <values>0,1</values> |
- <default-value>1</default-value> |
- <description>Enable XInclude support</description> |
- </option> |
- |
- <!-- see the note #2 --> |
- <if cond="FULL_OPTIONS_SUPPORT=='0'"> |
- <set var="WITH_ICONV">1</set> |
- </if> |
- <if cond="FULL_OPTIONS_SUPPORT=='1'"> |
- <option name="WITH_ICONV"> |
- <values>0,1</values> |
- <default-value>1</default-value> |
- <description>Enable iconv support</description> |
- </option> |
- </if> |
- |
- <option name="WITH_ISO8859X"> |
- <values>0,1</values> |
- <default-value>0</default-value> |
- <description>Enable iso8859x support</description> |
- </option> |
- |
- <!-- see the note #2 --> |
- <if cond="FULL_OPTIONS_SUPPORT=='0'"> |
- <set var="WITH_ZLIB">0</set> |
- </if> |
- <if cond="FULL_OPTIONS_SUPPORT=='1'"> |
- <option name="WITH_ZLIB"> |
- <values>0,1</values> |
- <default-value>0</default-value> |
- <description>Enable ZLIB support</description> |
- </option> |
- </if> |
- |
- <option name="WITH_REGEXPS"> |
- <values>0,1</values> |
- <default-value>1</default-value> |
- <description>Enable regular expressions</description> |
- </option> |
- |
- <option name="WITH_TREE"> |
- <values>0,1</values> |
- <default-value>1</default-value> |
- <description>Enable tree api</description> |
- </option> |
- |
- <option name="WITH_READER"> |
- <values>0,1</values> |
- <default-value>1</default-value> |
- <description>Enable xmlReader api</description> |
- </option> |
- |
- <option name="WITH_WRITER"> |
- <values>0,1</values> |
- <default-value>1</default-value> |
- <description>Enable xmlWriter api</description> |
- </option> |
- |
- <option name="WITH_WALKER"> |
- <values>0,1</values> |
- <default-value>1</default-value> |
- <description>Enable xmlDocWalker api</description> |
- </option> |
- |
- <option name="WITH_PATTERN"> |
- <values>0,1</values> |
- <default-value>1</default-value> |
- <description>Enable xmlPattern api</description> |
- </option> |
- |
- <option name="WITH_PUSH"> |
- <values>0,1</values> |
- <default-value>1</default-value> |
- <description>Enable push api</description> |
- </option> |
- |
- <option name="WITH_VALID"> |
- <values>0,1</values> |
- <default-value>1</default-value> |
- <description>Enable DTD validation support</description> |
- </option> |
- |
- <option name="WITH_SAX1"> |
- <values>0,1</values> |
- <default-value>1</default-value> |
- <description>Enable SAX1 api</description> |
- </option> |
- |
- <option name="WITH_SCHEMAS"> |
- <values>0,1</values> |
- <default-value>1</default-value> |
- <description>Enable XML Schema support</description> |
- </option> |
- |
- <option name="WITH_LEGACY"> |
- <values>0,1</values> |
- <default-value>1</default-value> |
- <description>Enable deprecated APIs</description> |
- </option> |
- |
- <option name="WITH_OUTPUT"> |
- <values>0,1</values> |
- <default-value>1</default-value> |
- <description>Enable serialization support</description> |
- </option> |
- |
- <option name="WITH_PYTHON"> |
- <values>0,1</values> |
- <default-value>0</default-value> |
- <description>Build Python bindings</description> |
- </option> |
- |
- |
- |
- |
- <!-- --> |
- <!-- LIBXML2 VARIABLES --> |
- <!-- --> |
- |
- <!-- Put all the objects files generated by --> |
- <!-- the compilation in a subfolder of BUILD --> |
- <set var="BUILDDIR">$(FORMAT)</set> |
- |
- <!-- This variable is set to 1 when the current output writer supports --> |
- <!-- the __DEFINE_ARG variable. Otherwise it's set to zero. --> |
- <set var="HAS_DEFINE_ARG"> |
- <if cond="FORMAT!='msvc6prj'">1</if> |
- <if cond="FORMAT=='msvc6prj'">0</if> |
- </set> |
- |
- <!-- The root directory of libxml2 --> |
- <set var="XMLBASEDIR">..</set> |
- |
- <!-- The directory where libxml2' tests will be put --> |
- <set var="XMLTESTDIR">$(XMLBASEDIR)$(DIRSEP)bin</set> |
- |
- <set var="LIBXML_MAJOR_VERSION">2</set> |
- <set var="LIBXML_MINOR_VERSION">6</set> |
- <set var="LIBXML_MICRO_VERSION">16</set> |
- |
- <!-- some defines related to threads --> |
- <set var="THREADS_DEF"> |
- <if cond="HAS_DEFINE_ARG=='1' and WITH_THREADS=='native'"> |
- $(__DEFINE_ARG)_REENTRANT $(__DEFINE_ARG)HAVE_WIN32_THREADS |
- </if> |
- <if cond="HAS_DEFINE_ARG=='1' and WITH_THREADS=='ctls'"> |
- $(__DEFINE_ARG)_REENTRANT $(__DEFINE_ARG)HAVE_WIN32_THREADS $(__DEFINE_ARG)HAVE_COMPILER_TLS |
- </if> |
- <if cond="HAS_DEFINE_ARG=='1' and WITH_THREADS=='posix'"> |
- $(__DEFINE_ARG)_REENTRANT $(__DEFINE_ARG)HAVE_PTHREAD_H |
- </if> |
- </set> |
- <if cond="FORMAT=='borland'"> |
- <set var="THREADS_DEF"> |
- <if cond="WITH_THREADS=='native'">$(THREADS_DEF) $(__DEFINE_ARG)__MT__</if> |
- <if cond="WITH_THREADS=='ctls'">$(THREADS_DEF) $(__DEFINE_ARG)__MT__</if> |
- <if cond="WITH_THREADS=='posix'">$(THREADS_DEF) $(__DEFINE_ARG)__MT__</if> |
- </set> |
- </if> |
- |
- |
- <!-- some other conditional defines --> |
- <set var="ZLIB_DEF"><if cond="WITH_ZLIB=='1'">HAVE_ZLIB_H</if></set> |
- <set var="DEBUG_DEF"><if cond="BUILD=='debug'">_DEBUG</if></set> |
- <set var="DEBUG_DEF"><if cond="BUILD=='release'">NDEBUG</if></set> |
- |
- <!-- this is very very important when compiling with MINGW: without this line, |
- the test programs (and all the programs built with libxml2 which use xmlFree) |
- won't build because of "undefined references to __xmlFree" --> |
- <set var="STATIC_DEF"><if cond="SHARED=='0'">LIBXML_STATIC</if></set> |
- |
- <!-- some conditional libraries dependencies --> |
- <set var="ICONV_LIB"><if cond="WITH_ICONV=='1'">iconv</if></set> |
- <set var="WSOCK32_LIB"><if cond="WITH_THREADS=='native'">wsock32</if></set> |
- <set var="ZLIB_LIB"><if cond="WITH_ZLIB=='1'">zdll</if></set> |
- <set var="POSIX_LIB"><if cond="WITH_THREADS=='posix'">pthreadVC</if></set> |
- |
- <set var="XMLINCLUDEDIR">$(XMLBASEDIR)$(DIRSEP)include$(DIRSEP)libxml$(DIRSEP)</set> |
- |
- |
- |
- |
- <!-- --> |
- <!-- ABOUT CONFIG.H HEADER CREATION --> |
- <!-- --> |
- |
- <set var="CONFIG_SRCNAME">win32config.h</set> |
- <set var="CONFIG_DSTNAME">config.h</set> |
- |
- <if cond="FORMAT!='msvc6prj' and FORMAT!='autoconf' and FORMAT!='gnu'"> |
- <copy-file-to-file id="setup"> |
- <!-- On win32 we need to manually copy a default config.h file --> |
- <!-- from the include/mc/msw folder to include/mc --> |
- <src>../include/$(CONFIG_SRCNAME)</src> |
- <dst>../$(CONFIG_DSTNAME)</dst> |
- <dependency-of>all</dependency-of> |
- |
- <!-- With autoconf, we will use the configure script to translate --> |
- <!-- include/mc/config.h.in to include/mc/config.h and thus we do --> |
- <!-- not need to do anything here... --> |
- </copy-file-to-file> |
- </if> |
- |
- <if cond="FORMAT!='msvc6prj'"> |
- |
- <mkdir id="setuplibdir"><dir>$(XMLBASEDIR)$(DIRSEP)lib</dir></mkdir> |
- <mkdir id="setupbindir"><dir>$(XMLBASEDIR)$(DIRSEP)bin</dir></mkdir> |
- |
- <!-- Creates all output folders --> |
- <phony id="setupdirs"> |
- <dependency-of>all</dependency-of> |
- <depends>setuplibdir</depends> |
- <depends>setupbindir</depends> |
- </phony> |
- </if> |
- |
- <!-- This defines a tag which includes headers on MSVC --> |
- <!-- Note that $(value) is stuck in there by bakefile, --> |
- <!-- and is the value between the beginning and end tag. --> |
- <define-tag name="headers" rules="dll,lib,exe"> |
- <if cond="FORMAT=='msvc6prj'"> |
- <msvc-project-files> |
- $(value) |
- </msvc-project-files> |
- </if> |
- </define-tag> |
- |
- <!-- Creates the following custom build rule for MSVC6PRJ file: |
- copies ..\include\win32config.h into ..\config.h |
- NOTE: this tag must be used before the <sources> tag if you want that the configuration |
- file will be created before any other source file is compiled... --> |
- <define-tag name="msvc-copy-setup-h" rules="dll,lib,action"> |
- <if cond="FORMAT=='msvc6prj'"> |
- <headers>$(XMLBASEDIR)\include\$(CONFIG_SRCNAME)</headers> |
- <set var="__subdir">$(value)</set> |
- <set var="_custom_build_files" append="1">$(XMLBASEDIR)\include\$(CONFIG_SRCNAME)</set> |
- <set var="_custom_build____include_win32config_h"> |
-Creating the configuration file ..\$(CONFIG_DSTNAME) from ..\include\$(CONFIG_SRCNAME) |
-InputPath=..\include\$(CONFIG_SRCNAME) |
- |
-"..\$(CONFIG_DSTNAME)" : $(DOLLAR)(SOURCE) "$(DOLLAR)(INTDIR)" "$(DOLLAR)(OUTDIR)" |
-$(TAB)copy "$(DOLLAR)(InputPath)" ..\$(CONFIG_DSTNAME) |
- </set> |
- </if> |
- </define-tag> |
- |
- |
- |
- |
- |
- <!-- --> |
- <!-- TEMPLATES --> |
- <!-- --> |
- |
- <!-- The basic template: used by all the targets --> |
- <template id="base"> |
- <if cond="FORMAT=='mingw'"> |
- <define>HAVE_W32API_H</define> |
- <ldflags>-mthreads</ldflags> |
- </if> |
- |
- <cxxflags>$(MYCPPFLAGS)</cxxflags> |
- <warnings>$(WARNINGS)</warnings> |
- <define>$(UNICODE_DEFINE)</define> |
- <optimize>$(OPTIMIZEFLAG)</optimize> |
- <debug-info>$(DEBUGINFO)</debug-info> |
- <debug-runtime-libs>$(DEBUGRUNTIME)</debug-runtime-libs> |
- </template> |
- |
- <!-- The template used both by the library and by the test programs --> |
- <template id="xml2" template="base"> |
- |
- <!-- -I & -L equivalents --> |
- <include>$(XMLBASEDIR)$(DIRSEP)include</include> |
- <include>$(ICONV_DIR)$(DIRSEP)include</include> |
- <lib-path>$(ICONV_DIR)$(DIRSEP)lib</lib-path> |
- |
- <!-- some conditional define flags --> |
- <cflags>$(THREADS_DEF)</cflags> |
- <define>$(ZLIB_DEF)</define> |
- <define>$(DEBUG_DEF)</define> |
- <define>$(STATIC_DEF)</define> |
- |
- <if cond="HAS_DEFINE_ARG=='0'"> |
- |
- <!-- we are probably using an IDE output: defaults to WITH_THREADS=='native' --> |
- <define>_REENTRANT</define> |
- <define>HAVE_WIN32_THREADS</define> |
- </if> |
- |
- |
- <!-- these must always be defined on win32 --> |
- <define>WIN32</define> |
- <define>_WINDOWS</define> |
- <define>_MBCS</define> |
- |
- <if cond="FORMAT=='borland'"> |
- <define>_NO_VCL</define> |
- <define>EILSEQ=2</define> |
- </if> |
- </template> |
- |
- <!-- The template used by libxml2 test programs --> |
- <template id="xml2test" template="xml2"> |
- <dirname>$(XMLTESTDIR)</dirname> |
- <app-type>console</app-type> |
- |
- <library>libxml2</library> |
- |
- <sys-lib>$(ICONV_LIB)</sys-lib> |
- <sys-lib>$(WSOCK32_LIB)</sys-lib> |
- <sys-lib>$(ZLIB_LIB)</sys-lib> |
- <sys-lib>$(POSIX_LIB)</sys-lib> |
- </template> |
- |
- |
- |
- |
- |
- |
- <!-- --> |
- <!-- LIBXML2 LIBRARY TARGET --> |
- <!-- --> |
- |
- <lib id="libxml2" template="xml2"> |
- |
- <!-- this is useful only when using MSVC6PRJ --> |
- <if cond="FORMAT=='msvc6prj'"> |
- <msvc-copy-setup-h/> |
- <msvc-file-group>Config headers:*config.h</msvc-file-group> |
- </if> |
- <if cond="FORMAT!='msvc6prj'"> |
- <depends>setup</depends> |
- <depends>setuplibdir</depends> |
- </if> |
- |
- <!-- output folder --> |
- <dirname>$(XMLBASEDIR)$(DIRSEP)lib</dirname> |
- |
- <!-- The output name must be "libxml2.lib" with all compilers. |
- Since mingw format autoadds the "lib" prefix to the library |
- name, we must intercept that case to avoid to get "liblibxml2.a" --> |
- <if cond="FORMAT!='mingw'"> |
- <libname>libxml2</libname> |
- </if> |
- <if cond="FORMAT=='mingw'"> |
- <libname>xml2</libname> |
- </if> |
- |
- <!-- the list of source files to compile --> |
- <sources> |
- $(XMLBASEDIR)$(DIRSEP)c14n.c |
- $(XMLBASEDIR)$(DIRSEP)catalog.c |
- $(XMLBASEDIR)$(DIRSEP)chvalid.c |
- $(XMLBASEDIR)$(DIRSEP)debugXML.c |
- $(XMLBASEDIR)$(DIRSEP)dict.c |
- $(XMLBASEDIR)$(DIRSEP)DOCBparser.c |
- $(XMLBASEDIR)$(DIRSEP)encoding.c |
- $(XMLBASEDIR)$(DIRSEP)entities.c |
- $(XMLBASEDIR)$(DIRSEP)error.c |
- $(XMLBASEDIR)$(DIRSEP)globals.c |
- $(XMLBASEDIR)$(DIRSEP)hash.c |
- $(XMLBASEDIR)$(DIRSEP)HTMLparser.c |
- $(XMLBASEDIR)$(DIRSEP)HTMLtree.c |
- $(XMLBASEDIR)$(DIRSEP)legacy.c |
- $(XMLBASEDIR)$(DIRSEP)list.c |
- $(XMLBASEDIR)$(DIRSEP)nanoftp.c |
- $(XMLBASEDIR)$(DIRSEP)nanohttp.c |
- $(XMLBASEDIR)$(DIRSEP)parser.c |
- $(XMLBASEDIR)$(DIRSEP)parserInternals.c |
- $(XMLBASEDIR)$(DIRSEP)pattern.c |
- $(XMLBASEDIR)$(DIRSEP)relaxng.c |
- $(XMLBASEDIR)$(DIRSEP)SAX2.c |
- $(XMLBASEDIR)$(DIRSEP)SAX.c |
- $(XMLBASEDIR)$(DIRSEP)threads.c |
- $(XMLBASEDIR)$(DIRSEP)tree.c |
- $(XMLBASEDIR)$(DIRSEP)uri.c |
- $(XMLBASEDIR)$(DIRSEP)valid.c |
- $(XMLBASEDIR)$(DIRSEP)xinclude.c |
- $(XMLBASEDIR)$(DIRSEP)xlink.c |
- $(XMLBASEDIR)$(DIRSEP)xmlIO.c |
- $(XMLBASEDIR)$(DIRSEP)xmlmemory.c |
- $(XMLBASEDIR)$(DIRSEP)xmlreader.c |
- $(XMLBASEDIR)$(DIRSEP)xmlregexp.c |
- $(XMLBASEDIR)$(DIRSEP)xmlsave.c |
- $(XMLBASEDIR)$(DIRSEP)xmlschemas.c |
- $(XMLBASEDIR)$(DIRSEP)xmlschemastypes.c |
- $(XMLBASEDIR)$(DIRSEP)xmlunicode.c |
- $(XMLBASEDIR)$(DIRSEP)xmlwriter.c |
- $(XMLBASEDIR)$(DIRSEP)xpath.c |
- $(XMLBASEDIR)$(DIRSEP)xpointer.c |
- $(XMLBASEDIR)$(DIRSEP)xmlstring.c |
- </sources> |
- |
- <!-- the list of header files (for IDE projects) --> |
- <headers> |
- $(XMLINCLUDEDIR)c14n.h |
- $(XMLINCLUDEDIR)catalog.h |
- $(XMLINCLUDEDIR)chvalid.h |
- $(XMLINCLUDEDIR)debugXML.h |
- $(XMLINCLUDEDIR)dict.h |
- $(XMLINCLUDEDIR)DOCBparser.h |
- $(XMLINCLUDEDIR)encoding.h |
- $(XMLINCLUDEDIR)entities.h |
- $(XMLINCLUDEDIR)globals.h |
- $(XMLINCLUDEDIR)hash.h |
- $(XMLINCLUDEDIR)HTMLparser.h |
- $(XMLINCLUDEDIR)HTMLtree.h |
- $(XMLINCLUDEDIR)list.h |
- $(XMLINCLUDEDIR)nanoftp.h |
- $(XMLINCLUDEDIR)nanohttp.h |
- $(XMLINCLUDEDIR)parser.h |
- $(XMLINCLUDEDIR)parserInternals.h |
- $(XMLINCLUDEDIR)pattern.h |
- $(XMLINCLUDEDIR)relaxng.h |
- $(XMLINCLUDEDIR)SAX.h |
- $(XMLINCLUDEDIR)SAX2.h |
- $(XMLINCLUDEDIR)schemasInternals.h |
- $(XMLINCLUDEDIR)threads.h |
- $(XMLINCLUDEDIR)tree.h |
- $(XMLINCLUDEDIR)uri.h |
- $(XMLINCLUDEDIR)valid.h |
- $(XMLINCLUDEDIR)xinclude.h |
- $(XMLINCLUDEDIR)xlink.h |
- $(XMLINCLUDEDIR)xmlautomata.h |
- $(XMLINCLUDEDIR)xmlerror.h |
- $(XMLINCLUDEDIR)xmlexports.h |
- $(XMLINCLUDEDIR)xmlIO.h |
- $(XMLINCLUDEDIR)xmlmemory.h |
- $(XMLINCLUDEDIR)xmlmodule.h |
- $(XMLINCLUDEDIR)xmlreader.h |
- $(XMLINCLUDEDIR)xmlregexp.h |
- $(XMLINCLUDEDIR)xmlsave.h |
- $(XMLINCLUDEDIR)xmlschemas.h |
- $(XMLINCLUDEDIR)xmlschemastypes.h |
- $(XMLINCLUDEDIR)xmlstring.h |
- $(XMLINCLUDEDIR)xmlunicode.h |
- $(XMLINCLUDEDIR)xmlversion.h |
- $(XMLINCLUDEDIR)xmlwriter.h |
- $(XMLINCLUDEDIR)xpath.h |
- $(XMLINCLUDEDIR)xpathInternals.h |
- $(XMLINCLUDEDIR)xpointer.h |
- </headers> |
- |
- <!-- these ones are not inside the include/libxml folder --> |
- <headers> |
- $(XMLBASEDIR)$(DIRSEP)libxml.h |
- $(XMLBASEDIR)$(DIRSEP)triodef.h |
- $(XMLBASEDIR)$(DIRSEP)trionan.h |
- $(XMLBASEDIR)$(DIRSEP)include$(DIRSEP)wsockcompat.h |
- </headers> |
- </lib> |
- |
- |
- |
- <!-- --> |
- <!-- LIBXML2 test programs --> |
- <!-- --> |
- |
- <set var="BUILD_ALL_TESTS"> |
- |
- <!-- when using full options support with MSVC6PRJ we should |
- avoid to create all the DSP files required for the test |
- programs: they would take a _lot_ of space !! --> |
- <if cond="FORMAT=='msvc6prj' and FULL_OPTIONS_SUPPORT=='1'">0</if> |
- |
- <!-- when creating a makefile or using MSVC6PRJ with limited |
- options support, then we can build all the tests safely --> |
- <if cond="FORMAT!='msvc6prj' or FULL_OPTIONS_SUPPORT=='0'">1</if> |
- |
- </set> |
- |
- <if cond="BUILD_ALL_TESTS=='1'"> |
- |
- <exe id="testAutomata" template="xml2test"><sources>$(XMLBASEDIR)$(DIRSEP)testAutomata.c</sources></exe> |
- <exe id="testC14N" template="xml2test"><sources>$(XMLBASEDIR)$(DIRSEP)testC14N.c</sources></exe> |
- <exe id="testHTML" template="xml2test"><sources>$(XMLBASEDIR)$(DIRSEP)testHTML.c</sources></exe> |
- <exe id="testReader" template="xml2test"><sources>$(XMLBASEDIR)$(DIRSEP)testReader.c</sources></exe> |
- <exe id="testRegexp" template="xml2test"><sources>$(XMLBASEDIR)$(DIRSEP)testRegexp.c</sources></exe> |
- <exe id="testRelax" template="xml2test"><sources>$(XMLBASEDIR)$(DIRSEP)testRelax.c</sources></exe> |
- <exe id="testSax" template="xml2test"><sources>$(XMLBASEDIR)$(DIRSEP)testSax.c</sources></exe> |
- <exe id="testSchemas" template="xml2test"><sources>$(XMLBASEDIR)$(DIRSEP)testSchemas.c</sources></exe> |
- <exe id="testURI" template="xml2test"><sources>$(XMLBASEDIR)$(DIRSEP)testURI.c</sources></exe> |
- <exe id="testXPath" template="xml2test"><sources>$(XMLBASEDIR)$(DIRSEP)testXPath.c</sources></exe> |
- <exe id="xmllint" template="xml2test"><sources>$(XMLBASEDIR)$(DIRSEP)xmllint.c</sources></exe> |
- |
- <if cond="FORMAT=='autoconf'"> |
- <exe id="testdso" template="xml2test"><sources>$(XMLBASEDIR)$(DIRSEP)testdso.c</sources></exe> |
- </if> |
- |
- <!-- FIXME: |
- <exe id="testModule" template="xml2test"><sources>$(XMLBASEDIR)$(DIRSEP)testModule.c</sources></exe> |
- |
- <if cond="WITH_THREADS=='posix'"> |
- <exe id="testThreads" template="xml2test"><sources>$(XMLBASEDIR)$(DIRSEP)testThreads.c</sources></exe> |
- </if> |
- <if cond="WITH_THREADS=='ctls' or WITH_THREADS=='native'"> |
- <exe id="testThreadsWin32" template="xml2test"><sources>$(XMLBASEDIR)$(DIRSEP)testThreadsWin32.c</sources></exe> |
- </if> |
- --> |
- </if> |
- |
-</makefile> |
+<?xml version="1.0" ?> |
+ |
+<!-- Author: Francesco Montorsi <frm@users.sourceforge.net> --> |
+<!-- Date: 30/8/2004 --> |
+<!-- Last revision: 26/1/2005 --> |
+ |
+ |
+<!-- LIBXML2 BAKEFILE --> |
+<!-- --> |
+<!-- The bakefile used to build the library and the test --> |
+<!-- programs. The makefiles output is put: --> |
+<!-- --> |
+<!-- - in the ..\LIB folder --> |
+<!-- - in the ..\BIN folder --> |
+<!-- --> |
+ |
+<makefile> |
+ |
+ <using module="datafiles"/> |
+ <requires version="0.1.5"/> |
+ |
+ |
+ <!-- This is a bakefile, that is, a generic template used to --> |
+ <!-- generate makefiles ALL supported compilers. --> |
+ <!-- To use this project file you need Bakefile installed. --> |
+ <!-- With the command "bakefile_gen" you can regen all the --> |
+ <!-- makefiles and project files. --> |
+ <!-- See http://bakefile.sourceforge.net for more info. --> |
+ |
+ |
+ <!-- |
+ This file is divided in: |
+ - generic options |
+ - generic variables |
+ - libxml2 options |
+ - libxml2 variables |
+ - about config.h creation |
+ - templates |
+ - libxml2 library target |
+ - libxml2 test program targets |
+ --> |
+ |
+ |
+ |
+ <!-- --> |
+ <!-- GENERIC OPTIONS --> |
+ <!-- --> |
+ |
+ |
+ <!-- This is a standard option that determines --> |
+ <!-- whether the user wants to build this library as --> |
+ <!-- a dll or as a static library. --> |
+ <option name="SHARED"> |
+ <values>0,1</values> |
+ <values-description>,DLL</values-description> |
+ <default-value>0</default-value> |
+ <description>If set to zero a STATIC libxml library will be built</description> |
+ </option> |
+ |
+ <!-- Configuration for building the bakefile with --> |
+ <!-- unicode strings or not (unicode or ansi). --> |
+ <option name="UNICODE"> |
+ <values>0,1</values> |
+ <values-description>,Unicode</values-description> |
+ <default-value>0</default-value> |
+ <description>Compile Unicode build?</description> |
+ </option> |
+ |
+ |
+ <!-- There are several options that deal with build --> |
+ <!-- types. First, there's this one, BUILD. --> |
+ <!-- --> |
+ <!-- BUILD determines whether or not we want to build --> |
+ <!-- in release or debug mode. Note that in practice --> |
+ <!-- this means modifying the optimize tag, which by --> |
+ <!-- default is set to off. In this case debug means --> |
+ <!-- off (no optimizations), and release means speed --> |
+ <!-- (fast with inlining). There is also a size option --> |
+ <!-- that is not addressed in this example bakefile. --> |
+ <option name="BUILD"> |
+ <values>debug,release</values> |
+ <values-description>Debug,Release</values-description> |
+ <default-value>release</default-value> |
+ <description> |
+ Type of compiled binaries |
+ </description> |
+ </option> |
+ |
+ |
+ |
+ <!-- --> |
+ <!-- GENERIC VARIABLES --> |
+ <!-- --> |
+ |
+ <!-- Set the ISDLL variable, so that we can use it --> |
+ <!-- inside an if statement later on (options not --> |
+ <!-- allowed in if statements). --> |
+ <set var="ISDLL" cond="SHARED=='1'">1</set> |
+ <set var="ISDLL" cond="SHARED=='0'">0</set> |
+ |
+ <!-- The unicode define we want. By default bakefile --> |
+ <!-- makes variables an empty string, so if unicode --> |
+ <!-- is not defined $(UNICODE_DEFINE) would expand --> |
+ <!-- to nothing (literally). --> |
+ <set var="UNICODE_DEFINE"> |
+ <if cond="FORMAT!='autoconf' and UNICODE=='1'">_UNICODE</if> |
+ </set> |
+ |
+ <!-- The debug define we need with win32 compilers --> |
+ <!-- (on Linux, the wx-config program is used). --> |
+ <set var="DEBUG_DEFINE"> |
+ <if cond="FORMAT!='autoconf' and BUILD=='debug'"> |
+ __WXDEBUG__ |
+ </if> |
+ </set> |
+ |
+ <!-- Value we will use later on for the debug-info --> |
+ <!-- tag inside our templates. --> |
+ <set var="DEBUGINFO"> |
+ <if cond="BUILD=='debug'">on</if> |
+ <if cond="BUILD=='release'">off</if> |
+ </set> |
+ |
+ <!-- Value we will use later on for the debug-runtime --> |
+ <!-- tag inside our templates. --> |
+ <set var="DEBUGRUNTIME"> |
+ <if cond="BUILD=='debug'">on</if> |
+ <if cond="BUILD=='release'">off</if> |
+ </set> |
+ |
+ <!-- Value for optimize tag. --> |
+ <set var="OPTIMIZEFLAG"> |
+ <if cond="BUILD=='debug'">off</if> |
+ <if cond="BUILD=='release'">speed</if> |
+ </set> |
+ |
+ <!-- Level of warnings. Here we max it out in debug --> |
+ <!-- mode, and turn them off in release mode. --> |
+ <set var="WARNINGS"> |
+ <if cond="BUILD=='debug'">max</if> |
+ <if cond="BUILD=='release'">no</if> |
+ </set> |
+ |
+ <!-- Set MYCPPFLAGS as empty; maybe it will be filled later... --> |
+ <set var="MYCPPFLAGS"></set> |
+ <if cond="FORMAT=='mingw' or FORMAT=='autoconf'"> |
+ |
+ <!-- With GCC, settings warnings to MAX would force --> |
+ <!-- Bakefile to call GCC with "-W -Wall" which generates --> |
+ <!-- a *lot* of warnings about wxWidgets headers... --> |
+ <!-- this is why "-W -Wall" is here replaced by "-Wall". --> |
+ <set var="WARNINGS">default</set> |
+ <set var="MYCPPFLAGS">-Wall</set> |
+ </if> |
+ |
+ |
+ |
+ |
+ |
+ |
+ <!-- --> |
+ <!-- LIBXML2 OPTIONS --> |
+ <!-- --> |
+ <!-- Note #1: not all of them are used by win32 makefiles --> |
+ <!-- --> |
+ <!-- Note #2: since all combinations of non-path options are --> |
+ <!-- translated into different 'configurations' by --> |
+ <!-- Bakefile when using the MSVC6PRJ output, we must --> |
+ <!-- avoid to create a 10 MB libxml2.dsp file forcing --> |
+ <!-- some options to their default values... this --> |
+ <!-- behaviour can be overridden by the --> |
+ <!-- FULL_OPTIONS_SUPPORT --> |
+ <!-- variable defined below... --> |
+ |
+ <set var="FULL_OPTIONS_SUPPORT"> |
+ <if cond="FORMAT=='msvc6prj'">0</if> |
+ <if cond="FORMAT!='msvc6prj'">1</if> |
+ </set> |
+ |
+ <option name="ICONV_DIR" category="path"> |
+ <default-value>c:\iconv</default-value> |
+ <description>The iconv library main folder</description> |
+ </option> |
+ |
+ <option name="WITH_TRIO"> |
+ <values>0,1</values> |
+ <default-value>0</default-value> |
+ <description>Enable TRIO string manipulator</description> |
+ </option> |
+ |
+ <!-- see the note #2 --> |
+ <if cond="FULL_OPTIONS_SUPPORT=='0'"> |
+ <set var="WITH_THREADS">native</set> |
+ </if> |
+ <if cond="FULL_OPTIONS_SUPPORT=='1'"> |
+ <option name="WITH_THREADS"> |
+ <values>no,ctls,native,posix</values> |
+ <default-value>native</default-value> |
+ <description>Enable thread safety</description> |
+ </option> |
+ </if> |
+ |
+ <option name="WITH_FTP"> |
+ <values>0,1</values> |
+ <default-value>1</default-value> |
+ <description>Enable FTP client</description> |
+ </option> |
+ |
+ <option name="WITH_HTTP"> |
+ <values>0,1</values> |
+ <default-value>1</default-value> |
+ <description>Enable HTTP client</description> |
+ </option> |
+ |
+ <option name="WITH_C14N"> |
+ <values>0,1</values> |
+ <default-value>1</default-value> |
+ <description>Enable C14N support</description> |
+ </option> |
+ |
+ <option name="WITH_CATALOG"> |
+ <values>0,1</values> |
+ <default-value>1</default-value> |
+ <description>Enable catalog support</description> |
+ </option> |
+ |
+ <option name="WITH_DOCB"> |
+ <values>0,1</values> |
+ <default-value>1</default-value> |
+ <description>Enable DocBook support</description> |
+ </option> |
+ |
+ <option name="WITH_XPATH"> |
+ <values>0,1</values> |
+ <default-value>1</default-value> |
+ <description>Enable XPath support</description> |
+ </option> |
+ |
+ <option name="WITH_XPTR"> |
+ <values>0,1</values> |
+ <default-value>1</default-value> |
+ <description>Enable XPointer support</description> |
+ </option> |
+ |
+ <option name="WITH_XINCLUDE"> |
+ <values>0,1</values> |
+ <default-value>1</default-value> |
+ <description>Enable XInclude support</description> |
+ </option> |
+ |
+ <!-- see the note #2 --> |
+ <if cond="FULL_OPTIONS_SUPPORT=='0'"> |
+ <set var="WITH_ICONV">1</set> |
+ </if> |
+ <if cond="FULL_OPTIONS_SUPPORT=='1'"> |
+ <option name="WITH_ICONV"> |
+ <values>0,1</values> |
+ <default-value>1</default-value> |
+ <description>Enable iconv support</description> |
+ </option> |
+ </if> |
+ |
+ <option name="WITH_ISO8859X"> |
+ <values>0,1</values> |
+ <default-value>0</default-value> |
+ <description>Enable iso8859x support</description> |
+ </option> |
+ |
+ <!-- see the note #2 --> |
+ <if cond="FULL_OPTIONS_SUPPORT=='0'"> |
+ <set var="WITH_ZLIB">0</set> |
+ </if> |
+ <if cond="FULL_OPTIONS_SUPPORT=='1'"> |
+ <option name="WITH_ZLIB"> |
+ <values>0,1</values> |
+ <default-value>0</default-value> |
+ <description>Enable ZLIB support</description> |
+ </option> |
+ </if> |
+ |
+ <option name="WITH_REGEXPS"> |
+ <values>0,1</values> |
+ <default-value>1</default-value> |
+ <description>Enable regular expressions</description> |
+ </option> |
+ |
+ <option name="WITH_TREE"> |
+ <values>0,1</values> |
+ <default-value>1</default-value> |
+ <description>Enable tree api</description> |
+ </option> |
+ |
+ <option name="WITH_READER"> |
+ <values>0,1</values> |
+ <default-value>1</default-value> |
+ <description>Enable xmlReader api</description> |
+ </option> |
+ |
+ <option name="WITH_WRITER"> |
+ <values>0,1</values> |
+ <default-value>1</default-value> |
+ <description>Enable xmlWriter api</description> |
+ </option> |
+ |
+ <option name="WITH_WALKER"> |
+ <values>0,1</values> |
+ <default-value>1</default-value> |
+ <description>Enable xmlDocWalker api</description> |
+ </option> |
+ |
+ <option name="WITH_PATTERN"> |
+ <values>0,1</values> |
+ <default-value>1</default-value> |
+ <description>Enable xmlPattern api</description> |
+ </option> |
+ |
+ <option name="WITH_PUSH"> |
+ <values>0,1</values> |
+ <default-value>1</default-value> |
+ <description>Enable push api</description> |
+ </option> |
+ |
+ <option name="WITH_VALID"> |
+ <values>0,1</values> |
+ <default-value>1</default-value> |
+ <description>Enable DTD validation support</description> |
+ </option> |
+ |
+ <option name="WITH_SAX1"> |
+ <values>0,1</values> |
+ <default-value>1</default-value> |
+ <description>Enable SAX1 api</description> |
+ </option> |
+ |
+ <option name="WITH_SCHEMAS"> |
+ <values>0,1</values> |
+ <default-value>1</default-value> |
+ <description>Enable XML Schema support</description> |
+ </option> |
+ |
+ <option name="WITH_LEGACY"> |
+ <values>0,1</values> |
+ <default-value>1</default-value> |
+ <description>Enable deprecated APIs</description> |
+ </option> |
+ |
+ <option name="WITH_OUTPUT"> |
+ <values>0,1</values> |
+ <default-value>1</default-value> |
+ <description>Enable serialization support</description> |
+ </option> |
+ |
+ <option name="WITH_PYTHON"> |
+ <values>0,1</values> |
+ <default-value>0</default-value> |
+ <description>Build Python bindings</description> |
+ </option> |
+ |
+ |
+ |
+ |
+ <!-- --> |
+ <!-- LIBXML2 VARIABLES --> |
+ <!-- --> |
+ |
+ <!-- Put all the objects files generated by --> |
+ <!-- the compilation in a subfolder of BUILD --> |
+ <set var="BUILDDIR">$(FORMAT)</set> |
+ |
+ <!-- This variable is set to 1 when the current output writer supports --> |
+ <!-- the __DEFINE_ARG variable. Otherwise it's set to zero. --> |
+ <set var="HAS_DEFINE_ARG"> |
+ <if cond="FORMAT!='msvc6prj'">1</if> |
+ <if cond="FORMAT=='msvc6prj'">0</if> |
+ </set> |
+ |
+ <!-- The root directory of libxml2 --> |
+ <set var="XMLBASEDIR">..</set> |
+ |
+ <!-- The directory where libxml2' tests will be put --> |
+ <set var="XMLTESTDIR">$(XMLBASEDIR)$(DIRSEP)bin</set> |
+ |
+ <set var="LIBXML_MAJOR_VERSION">2</set> |
+ <set var="LIBXML_MINOR_VERSION">6</set> |
+ <set var="LIBXML_MICRO_VERSION">16</set> |
+ |
+ <!-- some defines related to threads --> |
+ <set var="THREADS_DEF"> |
+ <if cond="HAS_DEFINE_ARG=='1' and WITH_THREADS=='native'"> |
+ $(__DEFINE_ARG)_REENTRANT $(__DEFINE_ARG)HAVE_WIN32_THREADS |
+ </if> |
+ <if cond="HAS_DEFINE_ARG=='1' and WITH_THREADS=='ctls'"> |
+ $(__DEFINE_ARG)_REENTRANT $(__DEFINE_ARG)HAVE_WIN32_THREADS $(__DEFINE_ARG)HAVE_COMPILER_TLS |
+ </if> |
+ <if cond="HAS_DEFINE_ARG=='1' and WITH_THREADS=='posix'"> |
+ $(__DEFINE_ARG)_REENTRANT $(__DEFINE_ARG)HAVE_PTHREAD_H |
+ </if> |
+ </set> |
+ <if cond="FORMAT=='borland'"> |
+ <set var="THREADS_DEF"> |
+ <if cond="WITH_THREADS=='native'">$(THREADS_DEF) $(__DEFINE_ARG)__MT__</if> |
+ <if cond="WITH_THREADS=='ctls'">$(THREADS_DEF) $(__DEFINE_ARG)__MT__</if> |
+ <if cond="WITH_THREADS=='posix'">$(THREADS_DEF) $(__DEFINE_ARG)__MT__</if> |
+ </set> |
+ </if> |
+ |
+ |
+ <!-- some other conditional defines --> |
+ <set var="ZLIB_DEF"><if cond="WITH_ZLIB=='1'">HAVE_ZLIB_H</if></set> |
+ <set var="DEBUG_DEF"><if cond="BUILD=='debug'">_DEBUG</if></set> |
+ <set var="DEBUG_DEF"><if cond="BUILD=='release'">NDEBUG</if></set> |
+ |
+ <!-- this is very very important when compiling with MINGW: without this line, |
+ the test programs (and all the programs built with libxml2 which use xmlFree) |
+ won't build because of "undefined references to __xmlFree" --> |
+ <set var="STATIC_DEF"><if cond="SHARED=='0'">LIBXML_STATIC</if></set> |
+ |
+ <!-- some conditional libraries dependencies --> |
+ <set var="ICONV_LIB"><if cond="WITH_ICONV=='1'">iconv</if></set> |
+ <set var="WSOCK32_LIB"><if cond="WITH_THREADS=='native'">wsock32</if></set> |
+ <set var="ZLIB_LIB"><if cond="WITH_ZLIB=='1'">zdll</if></set> |
+ <set var="POSIX_LIB"><if cond="WITH_THREADS=='posix'">pthreadVC</if></set> |
+ |
+ <set var="XMLINCLUDEDIR">$(XMLBASEDIR)$(DIRSEP)include$(DIRSEP)libxml$(DIRSEP)</set> |
+ |
+ |
+ |
+ |
+ <!-- --> |
+ <!-- ABOUT CONFIG.H HEADER CREATION --> |
+ <!-- --> |
+ |
+ <set var="CONFIG_SRCNAME">win32config.h</set> |
+ <set var="CONFIG_DSTNAME">config.h</set> |
+ |
+ <if cond="FORMAT!='msvc6prj' and FORMAT!='autoconf' and FORMAT!='gnu'"> |
+ <copy-file-to-file id="setup"> |
+ <!-- On win32 we need to manually copy a default config.h file --> |
+ <!-- from the include/mc/msw folder to include/mc --> |
+ <src>../include/$(CONFIG_SRCNAME)</src> |
+ <dst>../$(CONFIG_DSTNAME)</dst> |
+ <dependency-of>all</dependency-of> |
+ |
+ <!-- With autoconf, we will use the configure script to translate --> |
+ <!-- include/mc/config.h.in to include/mc/config.h and thus we do --> |
+ <!-- not need to do anything here... --> |
+ </copy-file-to-file> |
+ </if> |
+ |
+ <if cond="FORMAT!='msvc6prj'"> |
+ |
+ <mkdir id="setuplibdir"><dir>$(XMLBASEDIR)$(DIRSEP)lib</dir></mkdir> |
+ <mkdir id="setupbindir"><dir>$(XMLBASEDIR)$(DIRSEP)bin</dir></mkdir> |
+ |
+ <!-- Creates all output folders --> |
+ <phony id="setupdirs"> |
+ <dependency-of>all</dependency-of> |
+ <depends>setuplibdir</depends> |
+ <depends>setupbindir</depends> |
+ </phony> |
+ </if> |
+ |
+ <!-- This defines a tag which includes headers on MSVC --> |
+ <!-- Note that $(value) is stuck in there by bakefile, --> |
+ <!-- and is the value between the beginning and end tag. --> |
+ <define-tag name="headers" rules="dll,lib,exe"> |
+ <if cond="FORMAT=='msvc6prj'"> |
+ <msvc-project-files> |
+ $(value) |
+ </msvc-project-files> |
+ </if> |
+ </define-tag> |
+ |
+ <!-- Creates the following custom build rule for MSVC6PRJ file: |
+ copies ..\include\win32config.h into ..\config.h |
+ NOTE: this tag must be used before the <sources> tag if you want that the configuration |
+ file will be created before any other source file is compiled... --> |
+ <define-tag name="msvc-copy-setup-h" rules="dll,lib,action"> |
+ <if cond="FORMAT=='msvc6prj'"> |
+ <headers>$(XMLBASEDIR)\include\$(CONFIG_SRCNAME)</headers> |
+ <set var="__subdir">$(value)</set> |
+ <set var="_custom_build_files" append="1">$(XMLBASEDIR)\include\$(CONFIG_SRCNAME)</set> |
+ <set var="_custom_build____include_win32config_h"> |
+Creating the configuration file ..\$(CONFIG_DSTNAME) from ..\include\$(CONFIG_SRCNAME) |
+InputPath=..\include\$(CONFIG_SRCNAME) |
+ |
+"..\$(CONFIG_DSTNAME)" : $(DOLLAR)(SOURCE) "$(DOLLAR)(INTDIR)" "$(DOLLAR)(OUTDIR)" |
+$(TAB)copy "$(DOLLAR)(InputPath)" ..\$(CONFIG_DSTNAME) |
+ </set> |
+ </if> |
+ </define-tag> |
+ |
+ |
+ |
+ |
+ |
+ <!-- --> |
+ <!-- TEMPLATES --> |
+ <!-- --> |
+ |
+ <!-- The basic template: used by all the targets --> |
+ <template id="base"> |
+ <if cond="FORMAT=='mingw'"> |
+ <define>HAVE_W32API_H</define> |
+ <ldflags>-mthreads</ldflags> |
+ </if> |
+ |
+ <cxxflags>$(MYCPPFLAGS)</cxxflags> |
+ <warnings>$(WARNINGS)</warnings> |
+ <define>$(UNICODE_DEFINE)</define> |
+ <optimize>$(OPTIMIZEFLAG)</optimize> |
+ <debug-info>$(DEBUGINFO)</debug-info> |
+ <debug-runtime-libs>$(DEBUGRUNTIME)</debug-runtime-libs> |
+ </template> |
+ |
+ <!-- The template used both by the library and by the test programs --> |
+ <template id="xml2" template="base"> |
+ |
+ <!-- -I & -L equivalents --> |
+ <include>$(XMLBASEDIR)$(DIRSEP)include</include> |
+ <include>$(ICONV_DIR)$(DIRSEP)include</include> |
+ <lib-path>$(ICONV_DIR)$(DIRSEP)lib</lib-path> |
+ |
+ <!-- some conditional define flags --> |
+ <cflags>$(THREADS_DEF)</cflags> |
+ <define>$(ZLIB_DEF)</define> |
+ <define>$(DEBUG_DEF)</define> |
+ <define>$(STATIC_DEF)</define> |
+ |
+ <if cond="HAS_DEFINE_ARG=='0'"> |
+ |
+ <!-- we are probably using an IDE output: defaults to WITH_THREADS=='native' --> |
+ <define>_REENTRANT</define> |
+ <define>HAVE_WIN32_THREADS</define> |
+ </if> |
+ |
+ |
+ <!-- these must always be defined on win32 --> |
+ <define>WIN32</define> |
+ <define>_WINDOWS</define> |
+ <define>_MBCS</define> |
+ |
+ <if cond="FORMAT=='borland'"> |
+ <define>_NO_VCL</define> |
+ <define>EILSEQ=2</define> |
+ </if> |
+ </template> |
+ |
+ <!-- The template used by libxml2 test programs --> |
+ <template id="xml2test" template="xml2"> |
+ <dirname>$(XMLTESTDIR)</dirname> |
+ <app-type>console</app-type> |
+ |
+ <library>libxml2</library> |
+ |
+ <sys-lib>$(ICONV_LIB)</sys-lib> |
+ <sys-lib>$(WSOCK32_LIB)</sys-lib> |
+ <sys-lib>$(ZLIB_LIB)</sys-lib> |
+ <sys-lib>$(POSIX_LIB)</sys-lib> |
+ </template> |
+ |
+ |
+ |
+ |
+ |
+ |
+ <!-- --> |
+ <!-- LIBXML2 LIBRARY TARGET --> |
+ <!-- --> |
+ |
+ <lib id="libxml2" template="xml2"> |
+ |
+ <!-- this is useful only when using MSVC6PRJ --> |
+ <if cond="FORMAT=='msvc6prj'"> |
+ <msvc-copy-setup-h/> |
+ <msvc-file-group>Config headers:*config.h</msvc-file-group> |
+ </if> |
+ <if cond="FORMAT!='msvc6prj'"> |
+ <depends>setup</depends> |
+ <depends>setuplibdir</depends> |
+ </if> |
+ |
+ <!-- output folder --> |
+ <dirname>$(XMLBASEDIR)$(DIRSEP)lib</dirname> |
+ |
+ <!-- The output name must be "libxml2.lib" with all compilers. |
+ Since mingw format autoadds the "lib" prefix to the library |
+ name, we must intercept that case to avoid to get "liblibxml2.a" --> |
+ <if cond="FORMAT!='mingw'"> |
+ <libname>libxml2</libname> |
+ </if> |
+ <if cond="FORMAT=='mingw'"> |
+ <libname>xml2</libname> |
+ </if> |
+ |
+ <!-- the list of source files to compile --> |
+ <sources> |
+ $(XMLBASEDIR)$(DIRSEP)c14n.c |
+ $(XMLBASEDIR)$(DIRSEP)catalog.c |
+ $(XMLBASEDIR)$(DIRSEP)chvalid.c |
+ $(XMLBASEDIR)$(DIRSEP)debugXML.c |
+ $(XMLBASEDIR)$(DIRSEP)dict.c |
+ $(XMLBASEDIR)$(DIRSEP)DOCBparser.c |
+ $(XMLBASEDIR)$(DIRSEP)encoding.c |
+ $(XMLBASEDIR)$(DIRSEP)entities.c |
+ $(XMLBASEDIR)$(DIRSEP)error.c |
+ $(XMLBASEDIR)$(DIRSEP)globals.c |
+ $(XMLBASEDIR)$(DIRSEP)hash.c |
+ $(XMLBASEDIR)$(DIRSEP)HTMLparser.c |
+ $(XMLBASEDIR)$(DIRSEP)HTMLtree.c |
+ $(XMLBASEDIR)$(DIRSEP)legacy.c |
+ $(XMLBASEDIR)$(DIRSEP)list.c |
+ $(XMLBASEDIR)$(DIRSEP)nanoftp.c |
+ $(XMLBASEDIR)$(DIRSEP)nanohttp.c |
+ $(XMLBASEDIR)$(DIRSEP)parser.c |
+ $(XMLBASEDIR)$(DIRSEP)parserInternals.c |
+ $(XMLBASEDIR)$(DIRSEP)pattern.c |
+ $(XMLBASEDIR)$(DIRSEP)relaxng.c |
+ $(XMLBASEDIR)$(DIRSEP)SAX2.c |
+ $(XMLBASEDIR)$(DIRSEP)SAX.c |
+ $(XMLBASEDIR)$(DIRSEP)threads.c |
+ $(XMLBASEDIR)$(DIRSEP)tree.c |
+ $(XMLBASEDIR)$(DIRSEP)uri.c |
+ $(XMLBASEDIR)$(DIRSEP)valid.c |
+ $(XMLBASEDIR)$(DIRSEP)xinclude.c |
+ $(XMLBASEDIR)$(DIRSEP)xlink.c |
+ $(XMLBASEDIR)$(DIRSEP)xmlIO.c |
+ $(XMLBASEDIR)$(DIRSEP)xmlmemory.c |
+ $(XMLBASEDIR)$(DIRSEP)xmlreader.c |
+ $(XMLBASEDIR)$(DIRSEP)xmlregexp.c |
+ $(XMLBASEDIR)$(DIRSEP)xmlsave.c |
+ $(XMLBASEDIR)$(DIRSEP)xmlschemas.c |
+ $(XMLBASEDIR)$(DIRSEP)xmlschemastypes.c |
+ $(XMLBASEDIR)$(DIRSEP)xmlunicode.c |
+ $(XMLBASEDIR)$(DIRSEP)xmlwriter.c |
+ $(XMLBASEDIR)$(DIRSEP)xpath.c |
+ $(XMLBASEDIR)$(DIRSEP)xpointer.c |
+ $(XMLBASEDIR)$(DIRSEP)xmlstring.c |
+ </sources> |
+ |
+ <!-- the list of header files (for IDE projects) --> |
+ <headers> |
+ $(XMLINCLUDEDIR)c14n.h |
+ $(XMLINCLUDEDIR)catalog.h |
+ $(XMLINCLUDEDIR)chvalid.h |
+ $(XMLINCLUDEDIR)debugXML.h |
+ $(XMLINCLUDEDIR)dict.h |
+ $(XMLINCLUDEDIR)DOCBparser.h |
+ $(XMLINCLUDEDIR)encoding.h |
+ $(XMLINCLUDEDIR)entities.h |
+ $(XMLINCLUDEDIR)globals.h |
+ $(XMLINCLUDEDIR)hash.h |
+ $(XMLINCLUDEDIR)HTMLparser.h |
+ $(XMLINCLUDEDIR)HTMLtree.h |
+ $(XMLINCLUDEDIR)list.h |
+ $(XMLINCLUDEDIR)nanoftp.h |
+ $(XMLINCLUDEDIR)nanohttp.h |
+ $(XMLINCLUDEDIR)parser.h |
+ $(XMLINCLUDEDIR)parserInternals.h |
+ $(XMLINCLUDEDIR)pattern.h |
+ $(XMLINCLUDEDIR)relaxng.h |
+ $(XMLINCLUDEDIR)SAX.h |
+ $(XMLINCLUDEDIR)SAX2.h |
+ $(XMLINCLUDEDIR)schemasInternals.h |
+ $(XMLINCLUDEDIR)threads.h |
+ $(XMLINCLUDEDIR)tree.h |
+ $(XMLINCLUDEDIR)uri.h |
+ $(XMLINCLUDEDIR)valid.h |
+ $(XMLINCLUDEDIR)xinclude.h |
+ $(XMLINCLUDEDIR)xlink.h |
+ $(XMLINCLUDEDIR)xmlautomata.h |
+ $(XMLINCLUDEDIR)xmlerror.h |
+ $(XMLINCLUDEDIR)xmlexports.h |
+ $(XMLINCLUDEDIR)xmlIO.h |
+ $(XMLINCLUDEDIR)xmlmemory.h |
+ $(XMLINCLUDEDIR)xmlmodule.h |
+ $(XMLINCLUDEDIR)xmlreader.h |
+ $(XMLINCLUDEDIR)xmlregexp.h |
+ $(XMLINCLUDEDIR)xmlsave.h |
+ $(XMLINCLUDEDIR)xmlschemas.h |
+ $(XMLINCLUDEDIR)xmlschemastypes.h |
+ $(XMLINCLUDEDIR)xmlstring.h |
+ $(XMLINCLUDEDIR)xmlunicode.h |
+ $(XMLINCLUDEDIR)xmlversion.h |
+ $(XMLINCLUDEDIR)xmlwriter.h |
+ $(XMLINCLUDEDIR)xpath.h |
+ $(XMLINCLUDEDIR)xpathInternals.h |
+ $(XMLINCLUDEDIR)xpointer.h |
+ </headers> |
+ |
+ <!-- these ones are not inside the include/libxml folder --> |
+ <headers> |
+ $(XMLBASEDIR)$(DIRSEP)libxml.h |
+ $(XMLBASEDIR)$(DIRSEP)triodef.h |
+ $(XMLBASEDIR)$(DIRSEP)trionan.h |
+ $(XMLBASEDIR)$(DIRSEP)include$(DIRSEP)wsockcompat.h |
+ </headers> |
+ </lib> |
+ |
+ |
+ |
+ <!-- --> |
+ <!-- LIBXML2 test programs --> |
+ <!-- --> |
+ |
+ <set var="BUILD_ALL_TESTS"> |
+ |
+ <!-- when using full options support with MSVC6PRJ we should |
+ avoid to create all the DSP files required for the test |
+ programs: they would take a _lot_ of space !! --> |
+ <if cond="FORMAT=='msvc6prj' and FULL_OPTIONS_SUPPORT=='1'">0</if> |
+ |
+ <!-- when creating a makefile or using MSVC6PRJ with limited |
+ options support, then we can build all the tests safely --> |
+ <if cond="FORMAT!='msvc6prj' or FULL_OPTIONS_SUPPORT=='0'">1</if> |
+ |
+ </set> |
+ |
+ <if cond="BUILD_ALL_TESTS=='1'"> |
+ |
+ <exe id="testAutomata" template="xml2test"><sources>$(XMLBASEDIR)$(DIRSEP)testAutomata.c</sources></exe> |
+ <exe id="testC14N" template="xml2test"><sources>$(XMLBASEDIR)$(DIRSEP)testC14N.c</sources></exe> |
+ <exe id="testHTML" template="xml2test"><sources>$(XMLBASEDIR)$(DIRSEP)testHTML.c</sources></exe> |
+ <exe id="testReader" template="xml2test"><sources>$(XMLBASEDIR)$(DIRSEP)testReader.c</sources></exe> |
+ <exe id="testRegexp" template="xml2test"><sources>$(XMLBASEDIR)$(DIRSEP)testRegexp.c</sources></exe> |
+ <exe id="testRelax" template="xml2test"><sources>$(XMLBASEDIR)$(DIRSEP)testRelax.c</sources></exe> |
+ <exe id="testSax" template="xml2test"><sources>$(XMLBASEDIR)$(DIRSEP)testSax.c</sources></exe> |
+ <exe id="testSchemas" template="xml2test"><sources>$(XMLBASEDIR)$(DIRSEP)testSchemas.c</sources></exe> |
+ <exe id="testURI" template="xml2test"><sources>$(XMLBASEDIR)$(DIRSEP)testURI.c</sources></exe> |
+ <exe id="testXPath" template="xml2test"><sources>$(XMLBASEDIR)$(DIRSEP)testXPath.c</sources></exe> |
+ <exe id="xmllint" template="xml2test"><sources>$(XMLBASEDIR)$(DIRSEP)xmllint.c</sources></exe> |
+ |
+ <if cond="FORMAT=='autoconf'"> |
+ <exe id="testdso" template="xml2test"><sources>$(XMLBASEDIR)$(DIRSEP)testdso.c</sources></exe> |
+ </if> |
+ |
+ <!-- FIXME: |
+ <exe id="testModule" template="xml2test"><sources>$(XMLBASEDIR)$(DIRSEP)testModule.c</sources></exe> |
+ |
+ <if cond="WITH_THREADS=='posix'"> |
+ <exe id="testThreads" template="xml2test"><sources>$(XMLBASEDIR)$(DIRSEP)testThreads.c</sources></exe> |
+ </if> |
+ <if cond="WITH_THREADS=='ctls' or WITH_THREADS=='native'"> |
+ <exe id="testThreadsWin32" template="xml2test"><sources>$(XMLBASEDIR)$(DIRSEP)testThreadsWin32.c</sources></exe> |
+ </if> |
+ --> |
+ </if> |
+ |
+</makefile> |