<?xml version="1.0" ?>
<!-- 
Copyright (C) 2007 Kevin Ollivier <kevino@theolliviers.com>

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:

1.  Redistributions of source code must retain the above copyright
    notice, this list of conditions and the following disclaimer. 
2.  Redistributions in binary form must reproduce the above copyright
    notice, this list of conditions and the following disclaimer in the
    documentation and/or other materials provided with the distribution. 
3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
    its contributors may be used to endorse or promote products derived
    from this software without specific prior written permission. 

THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

wxWebCore port Bakefile project file.
-->

<makefile>
    <include file="../WebKit/wx/wxwk-settings.bkl" />
    <include file="WebCoreSources.bkl" />

    <set var="WEBCORE_BASE_SOURCES">
        $(WEBCORE_SOURCES_ACCESSIBILITY)
        $(WEBCORE_SOURCES_BMP)
        $(WEBCORE_SOURCES_BRIDGE)
        $(WEBCORE_SOURCES_CSS)
        $(WEBCORE_SOURCES_DERIVEDSOURCES)
        $(WEBCORE_SOURCES_DOM)
        $(WEBCORE_SOURCES_EDITING)
        $(WEBCORE_SOURCES_GIF)
        $(WEBCORE_SOURCES_HTML)
        $(WEBCORE_SOURCES_ICO)
        $(WEBCORE_SOURCES_ICON)
        $(WEBCORE_SOURCES_INSPECTOR)
        $(WEBCORE_SOURCES_JS)
        $(WEBCORE_SOURCES_LOADER)
        $(WEBCORE_SOURCES_PAGE)
        $(WEBCORE_SOURCES_HISTORY)
        $(WEBCORE_SOURCES_PLATFORM)
        $(WEBCORE_SOURCES_PLUGINS)
        $(WEBCORE_SOURCES_RENDERING)
        $(WEBCORE_SOURCES_STORAGE)
        $(WEBCORE_SOURCES_XBM)
        $(WEBCORE_SOURCES_XML)
        $(WEBCORE_SOURCES_ZLIB)
        $(WEBCORE_SOURCES_PNG)
        $(WEBCORE_SOURCES_JPEG)
    </set>

    <template id="webcore_base" template="xml2,iconv,xslt,icu,jscore,curl,sqlite3">
        <include>$(SRCDIR)</include>
        <include>$(SRCDIR)/accessibility</include>
        <include>$(SRCDIR)/bindings/js</include>
        <include>$(SRCDIR)/bridge</include>
        <include>$(SRCDIR)/bridge/c</include>
        <include>$(SRCDIR)/bridge/jni</include>
        <include>$(SRCDIR)/css</include>
        <include>$(SRCDIR)/DerivedSources/WebCore</include>
        <include>$(SRCDIR)/dom</include>
        <include>$(SRCDIR)/editing</include>
        <include>$(SRCDIR)/history</include>
        <include>$(SRCDIR)/html</include>
        <include>$(SRCDIR)/inspector</include>
        <include>$(SRCDIR)/loader</include>
        <include>$(SRCDIR)/loader/gdk</include>
        <include>$(SRCDIR)/loader/appcache</include>
        <include>$(SRCDIR)/loader/archive</include>
        <include>$(SRCDIR)/loader/icon</include>
        <include>$(SRCDIR)/page</include>
        <include>$(SRCDIR)/page/animation</include>
        <include>$(SRCDIR)/platform</include>
        <include>$(SRCDIR)/platform/animation</include>
        <include>$(SRCDIR)/platform/graphics</include>
        <include>$(SRCDIR)/platform/graphics/transforms</include>
        <include>$(SRCDIR)/platform/image-decoders</include>
        <include>$(SRCDIR)/platform/image-decoders/bmp</include>
        <include>$(SRCDIR)/platform/image-decoders/gif</include>
        <include>$(SRCDIR)/platform/image-decoders/ico</include>
        <include>$(SRCDIR)/platform/image-decoders/jpeg</include>
        <include>$(SRCDIR)/platform/image-decoders/png</include>
        <include>$(SRCDIR)/platform/image-decoders/xbm</include>
        <include>$(SRCDIR)/platform/image-decoders/zlib</include>
        <include>$(SRCDIR)/platform/network</include>
        <include>$(SRCDIR)/platform/network/curl</include>
        <include>$(SRCDIR)/platform/sql</include>
        <include>$(SRCDIR)/platform/text</include>
        <include>$(SRCDIR)/plugins</include> 
        <include>$(SRCDIR)/rendering</include>
        <include>$(SRCDIR)/rendering/style</include>
        <include>$(SRCDIR)/storage</include>
        <include>$(SRCDIR)/workers</include>
        <include>$(SRCDIR)/xml</include>
        <include>$(WK_ROOT)</include>
        <include>$(WK_ROOT)/JavaScriptCore</include>
        <include>$(WK_ROOT)/JavaScriptCore/assembler</include>
        <include>$(WK_ROOT)/JavaScriptCore/ForwardingHeaders</include>
        <include>$(WK_ROOT)/JavaScriptCore/bindings</include>
        <include>$(WK_ROOT)/JavaScriptCore/bytecompiler</include>
        <include>$(WK_ROOT)/JavaScriptCore/bytecode</include>
        <include>$(WK_ROOT)/JavaScriptCore/debugger</include>
        <include>$(WK_ROOT)/JavaScriptCore/jit</include>
        <include>$(WK_ROOT)/JavaScriptCore/parser</include>
        <include>$(WK_ROOT)/JavaScriptCore/pcre</include>
        <include>$(WK_ROOT)/JavaScriptCore/profiler</include>
        <include>$(WK_ROOT)/JavaScriptCore/runtime</include>
        <include>$(WK_ROOT)/JavaScriptCore/interpreter</include>
        <include>$(WK_ROOT)/JavaScriptCore/wtf</include>

        <sources>$(WEBCORE_BASE_SOURCES)</sources>

        <define>ENABLE_XSLT=1</define>

        <if cond="FORMAT=='gnu'">
            <!-- FIXME: we need proper configure checks -->
            <define>HAVE_FUNC_ISNAN</define>
        </if>

        <if cond="PLATFORM_WIN32=='1'">
            <include>win32</include>
            <define>HAVE_SYS_TIMEB_H=1</define>
            <define>HAVE_FLOAT_H=1</define>
            <define>HAVE_FUNC__FINITE=1</define>
        </if>
    </template>
</makefile>
