<?xml version="1.0" ?>
<!-- $Id$ -->


<!-- Master bakefile for wxWindows -->

<makefile>

    <!-- make sure setup.h is created as soon as possible: -->
    <phony id="setup_h" cond="FORMAT!='autoconf'">
        <dependency-of>all</dependency-of>
    </phony>

    <set var="BUILDING_LIB">1</set>
    
    <!-- common rules, names etc. for wx: -->
    <include file="common.bkl"/>
    
    <!-- list of files sorted into categories: -->
    <include file="files.bkl"/>
    
    <!-- wxWindows variant where everything is in one library: -->
    <include file="monolithic.bkl"/>
    <!-- ...and when there are multiple libraries: -->
    <include file="multilib.bkl"/>
    <!-- OpenGL canvas is built as separate library in both cases: -->
    <include file="opengl.bkl"/>
    <!-- Dynamically loadable plugins: -->
    <include file="plugins.bkl"/>
 
    <!-- Samples target (not dependency of 'all'): -->
    <subproject id="samples">
        <installable>no</installable>
        <dir cond="FORMAT=='autoconf'">samples</dir>
        <dir cond="FORMAT!='autoconf' and TOOLKIT=='MSW'">../../samples</dir>
    </subproject>

    <if cond="FORMAT=='autoconf'">       
        <!-- "make install": -->

        <data-files>
            <files>wxwin.m4</files>
            <install-to>$(DATADIR)/aclocal</install-to>
        </data-files>

        <data-files-tg id="install-afm" cond="USE_GUI=='1'">
            <files>misc/afm/*.afm</files>
            <install-to>$(DATADIR)/wx/$(WXVER_MAJOR).$(WXVER_MINOR)/afm</install-to>
        </data-files-tg>
        <data-files-tg id="install-gsafm" cond="USE_GUI=='1'">
            <files>misc/gs_afm/*.afm</files>
            <install-to>$(DATADIR)/wx/$(WXVER_MAJOR).$(WXVER_MINOR)/gs_afm</install-to>
        </data-files-tg>

        <action id="install-wxconfig">
            <dependency-of>install</dependency-of>
            <command>
                $(INSTALL_DIR) $(DESTDIR)$(BINDIR)
                $(INSTALL_PROGRAM) wx$(TOOLCHAIN_NAME)-config $(DESTDIR)$(BINDIR)
                (cd $(DESTDIR)$(BINDIR) &amp;&amp; rm -f wx-config &amp;&amp; $(LN_S) wx$(TOOLCHAIN_NAME)-config wx-config)
            </command>
        </action>

        <data-files>
            <srcdir>$(BUILDDIR)</srcdir>
            <files>lib/wx/include/$(TOOLCHAIN_NAME)/wx/setup.h</files>
            <install-to>$(LIBDIR)/wx/include/$(TOOLCHAIN_NAME)/wx</install-to>
        </data-files>

        <headers>
            <srcdir>$(SRCDIR)/include</srcdir>
            <files>$(ALL_HEADERS)</files>
        </headers>

        <!-- Locales: -->
        <using module="gettext"/>
        <gettext-catalogs id="locale">
            <srcdir>$(SRCDIR)/locale</srcdir>
            <catalog-name>wxstd</catalog-name>
            <linguas>
                ca cs da de el es fi fr hu id it ja nl pl ru sl sv tr uk
                zh zh_CN zh_TW
            </linguas>
            <install-to>$(LOCALEDIR)</install-to>
        </gettext-catalogs>

        <!-- Mac OS X resources: -->
        <set var="MACOS_R">lib/libwx_$(TOOLCHAIN_NAME).$(WXSOVERSION[0]).r</set>
        <set var="MACOS_RSRC">lib/libwx_$(TOOLCHAIN_NAME).$(WXSOVERSION[0]).rsrc</set>
        <action id="macos-res" cond="TOOLKIT=='MAC'">
            <dependency-of>all</dependency-of>
            <set var="__targetname">$(MACOS_R)</set>
            <command>
                $(RESCOMP) -d __UNIX__ -useDF $(top_srcdir)/src/mac/apprsrc.r $(top_srcdir)/src/mac/carbrsrc.r $(top_srcdir)/src/mac/corersrc.r -o $(MACOS_RSRC)
                $(DEREZ) $(MACOS_RSRC) Carbon.r -useDF >$(MACOS_R)
            </command>
            <clean-files>$(MACOS_RSRC) $(MACOS_R)</clean-files>
        </action>
        <action id="macos-res-install" cond="TOOLKIT=='MAC'">
            <dependency-of>install</dependency-of>
            <depends>macos-res</depends>
            <command>
                $(INSTALL_DATA) $(MACOS_R) $(LIBDIR)
                $(INSTALL_DATA) $(MACOS_RSRC) $(LIBDIR)
            </command>
        </action>
        <action id="cocoa-res" cond="TOOLKIT=='COCOA'">
            <dependency-of>all</dependency-of>
            <set var="__targetname">$(MACOS_R)</set>
            <command>
                $(RESCOMP) -d __UNIX__ -useDF $(top_srcdir)/src/cocoa/dummy.r -o $(MACOS_RSRC)
                $(DEREZ) $(MACOS_RSRC) -useDF >$(MACOS_R)
            </command>
            <clean-files>$(MACOS_RSRC) $(MACOS_R)</clean-files>
        </action>
        <action id="cocoa-res-install" cond="TOOLKIT=='COCOA'">
            <dependency-of>install</dependency-of>
            <depends>macos-res</depends>
            <command>
                $(INSTALL_DATA) $(MACOS_R) $(LIBDIR)
                $(INSTALL_DATA) $(MACOS_RSRC) $(LIBDIR)
            </command>
        </action>

    </if>


    <!-- copy setup.h on Windows: -->    
    <if cond="FORMAT!='autoconf' and TOOLKIT=='MSW'">
        <mkdir id="libdir">
            <dir>$(LIBDIRNAME)</dir>
        </mkdir>
        <mkdir id="libdir_setup">
            <depends>libdir</depends>
            <dir>$(SETUPHDIR)</dir>            
        </mkdir>
        <mkdir id="libdir_setup_wx">
            <depends>libdir_setup</depends>
            <dependency-of>setup_h</dependency-of>
            <dir>$(SETUPHDIR)/wx</dir>            
        </mkdir>

        <set var="SETUP_H_SUBDIR">
            <if cond="WXUNIV=='1'">univ</if>
            <if cond="WXUNIV=='0'">msw</if>
        </set>
        
        <copy-file-to-file-if-not-exist id="master_setup.h">
            <src>$(SRCDIR)/include/wx/$(SETUP_H_SUBDIR)/setup0.h</src>
            <dst>$(SRCDIR)/include/wx/$(SETUP_H_SUBDIR)/setup.h</dst>
            <dependency-of>setup_h</dependency-of>
        </copy-file-to-file-if-not-exist>
        <copy-file-to-file-if-not-exist id="setup.h">
            <dependency-of>setup_h</dependency-of>
            <src>$(SRCDIR)/include/wx/$(SETUP_H_SUBDIR)/setup.h</src>
            <dst>$(SETUPHDIR)/wx/setup.h</dst>
        </copy-file-to-file-if-not-exist>

    </if>


    <if cond="FORMAT=='autoconf'">

        <!-- Show this banner after installation: -->
        <modify-target target="install">
            <command>
@echo " "
@echo " ------------------------------------------------------"
@echo " "
@echo " The installation of wxWindows is finished.  On certain"
@echo " platforms (e.g. Linux) you'll now have to run ldconfig"
@echo " if you installed a shared library and also modify the"
@echo " LD_LIBRARY_PATH (or equivalent) environment variable."
@echo " "
@echo " wxWindows comes with no guarantees and doesn't claim"
@echo " to be suitable for any purpose."
@echo " "
@echo " Read the wxWindows Licence on licencing conditions."
@echo " "
@echo " ------------------------------------------------------"
@echo " "
            </command>
        </modify-target>

        <!-- add "make dist" target to autoconf: -->
        <set var="VARS_DONT_ELIMINATE" append="1">
            ALL_BASE_SOURCES WX_VERSION
        </set>
        <fragment format="autoconf" file="make_dist.mk"/>

    </if>
        
    <include file="build_cfg.bkl"/>

</makefile>