haxeui/hxWidgets

View on GitHub
Build.xml

Summary

Maintainability
Test Coverage
<xml>
    <set name="lib_folder_prefix" value="vc_" />

    <set name="lib_folder_name" value="dll" />
    <set name="lib_folder_name" value="lib" if="WXSTATIC" />

    <set name="lib_folder_arch" value="" />
    <set name="lib_folder_arch" value="x64_" if="HXCPP_M64" />

    <set name="lib_folder" value="${lib_folder_prefix}${lib_folder_arch}${lib_folder_name}" />
    <set name="lib_folder" value="gcc_lib" if="HXCPP_MINGW" />
    <set name="lib_folder" value="gcc_dll" if="HXCPP_MINGW" />

    <echo value="Using wxWidgets from: ${WXWIN}\lib\${lib_folder} (version: ${wxMAJOR_VERSION}.${wxMINOR_VERSION}.${wxRELEASE_NUMBER})" />

    <section if="windows">
        <files id="haxe">
            <compilerflag value="-I${WXWIN}\include" />
            <compilerflag value="-I${WXWIN}\lib\${lib_folder}\mswu" />
            <compilerflag value="-I${HXWIDGETS_PATH}\include" />
            <compilerflag value="-DUNICODE" />
            <compilerflag value="-D_UNICODE" />
            <compilerflag value="-DwxMSVC_VERSION_AUTO" />
            <compilerflag value="-DwxUSE_GRAPHICS_CONTEXT" />
            <compilerflag value="-DWIN32" if="windows" />
            <compilerflag value="-D__WXMSW__" if="windows" />
            <compilerflag value="-D__WX__=1" />

            <compilerflag value="-DWXUSINGDLL" unless="WXSTATIC"/>

            <file name="${HXWIDGETS_PATH}\include\custom\wxownerdrawnpanel.cpp" />
        </files>

        <target id="haxe" tool="linker" toolid="exe">
            <lib name="${WXWIN}\lib\${lib_folder}\*.lib" unless="HXCPP_MINGW"/>
            <lib name="${WXWIN}\lib\${lib_folder}\*.a" if="HXCPP_MINGW" />
            <section if="WXSTATIC">
                <flag value="/NODEFAULTLIB:LIBCMT" unless="HXCPP_MINGW" /> <!-- should remove this if using /MT but couldnt see an easy way -->
                <flag value="/MANIFEST:EMBED" unless="HXCPP_MINGW" />
                <flag value="/SUBSYSTEM:windows" unless="debug||HXCPP_MINGW" />
                <flag value="/ENTRY:mainCRTStartup" unless="debug||HXCPP_MINGW" />
                <!--
                <flag value="/MANIFESTINPUT:${haxelib:hxWidgets}/hxWidgets.manifest" />
                -->

                <lib name="user32.lib" />
                <lib name="winspool.lib" />
                <lib name="advapi32.lib" />
                <lib name="gdi32.lib" />
                <lib name="comdlg32.lib" />
                <lib name="comctl32.lib" />
                <lib name="ole32.lib" />
                <lib name="oleaut32.lib" />
                <lib name="rpcrt4.lib" />
                <lib name="shell32.lib" />
                <lib name="kernel32.lib" />
            </section>
        </target>
    </section>
</xml>