<?xml version="1.0" ?>
<!-- 
Copyright (C) 2007 Kevin Ollivier. All rights reserved.

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.

JavaScriptCore Bakefile project file.
-->

<makefile>
    <set var="SRCDIR">.</set>

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

    <template id="jscore_base" template="icu,pthreads,wxwk_build_settings">
        <sources>
            $(JSCORE_API_SOURCES)
            $(JSCORE_BYTECOMPILER_SOURCES)
            $(JSCORE_DEBUGGER_SOURCES)
            $(JSCORE_JSC_SOURCES)
            $(JSCORE_PCRE_SOURCES)
            $(JSCORE_PARSER_SOURCES)
            $(JSCORE_PROFILER_SOURCES)
            $(JSCORE_RUNTIME_SOURCES)
            $(JSCORE_VM_SOURCES)
            $(JSCORE_WTF_SOURCES)
        </sources>
        <install-to>$(WKOUTPUTDIR)</install-to>
        <pic>on</pic>
        <threading>multi</threading>

        <include>$(SRCDIR)</include>
        <include>$(SRCDIR)/..</include>
        <include>$(SRCDIR)/API</include>
        <include>$(SRCDIR)/assembler</include>
        <include>$(SRCDIR)/bytecompiler</include>
        <include>$(SRCDIR)/DerivedSources/JavaScriptCore</include>
        <include>$(SRCDIR)/ForwardingHeaders</include>
        <include>$(SRCDIR)/debugger</include>
        <include>$(SRCDIR)/parser</include>
        <include>$(SRCDIR)/pcre</include>
        <include>$(SRCDIR)/profiler</include>
        <include>$(SRCDIR)/runtime</include>
        <include>$(SRCDIR)/interpreter</include>
        <include>$(SRCDIR)/bytecode</include>
        <include>$(SRCDIR)/wrec</include>
        <include>$(SRCDIR)/jit</include>
        <include>$(SRCDIR)/wtf</include>
        <include>$(SRCDIR)/wtf/unicode</include>

        <define>ENABLE_XSLT=1</define>

        <if cond="FORMAT=='gnu'">
            <!-- FIXME: we need proper configure checks -->
            <define>HAVE_FUNC_ISNAN</define>
            <!-- check for undefined symbols for debugging reasons -->
            <ldflags>-Wl,--no-undefined</ldflags>
        </if>

        <if cond="PLATFORM_WIN32=='1'">
            <include>$(SRCDIR)/os-win32</include>
            <define>HAVE_SYS_TIMEB_H=1</define>
            <define>HAVE_FLOAT_H=1</define>
            <define>HAVE_FUNC__FINITE=1</define>
        </if>

    </template>
    
    <exe id="jsc" template="icu,jscore,pthreads,wxwk">
        <cxx-rtti>off</cxx-rtti>
        <cxx-exceptions>off</cxx-exceptions>
        <debug-info>on</debug-info>
        <depends>jscore</depends>
        <include>$(SRCDIR)</include>
        <include>$(WK_ROOT)/JavaScriptCore</include>
        <include>$(WK_ROOT)/JavaScriptCore/assembler</include>
        <include>$(WK_ROOT)/JavaScriptCore/bytecompiler</include>
        <include>$(WK_ROOT)/JavaScriptCore/debugger</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/bytecode</include>
        <include>$(WK_ROOT)/JavaScriptCore/jit</include>
        <include>$(WK_ROOT)/JavaScriptCore/wrec</include>
        <include>$(WK_ROOT)/JavaScriptCore/wtf</include>
        <dirname>$(WKOUTPUTDIR)</dirname>
        <sources>$(SRCDIR)/jsc.cpp</sources>
        <if cond="FORMAT=='gnu'">
            <ldflags>$(WKOUTPUTDIR)/libjscore.a</ldflags>
        </if>
        <set var="READLINE_LIB">
            <if cond="WX_PORT=='mac'">edit</if>
        </set>
        <sys-lib>$(READLINE_LIB)</sys-lib>
        <if cond="FORMAT in ['msvc','msvs2005prj']">
            <include>$(WK_ROOT)/WebKitLibraries/win/include</include>
            <sys-lib>jscore</sys-lib>
            <sys-lib>winmm</sys-lib> <!-- for timeGetTime -->
            <lib-path>$(WKOUTPUTDIR)</lib-path>
            <lib-path>$(WK_ROOT)/WebKitLibraries/win/lib</lib-path>
        </if>
        
    </exe>

    <action id="DerivedSources">
        <is-phony />
        <command>bash make-generated-sources.sh</command>
    </action>

    <lib id="jscore" template="jscore_base,wx-lib">

    </lib>
</makefile>
