Menu

[r532]: / trunk / ext / build / aprutil.build  Maximize  Restore  History

Download this file

184 lines (175 with data), 7.7 kB

<?xml version="1.0"?>
<project name="aprutil" default="build" basedir="..\apr-util">

  <!-- ====================================================================== -->
  <!-- Configuration targets													-->
  <!-- ====================================================================== -->
  <target name="debug">
    <description>
      Sets the environment up to build the debug versions.
    </description>
    <property name="configuration" value="debug" />
  </target>

  <!-- ====================================================================== -->
  <!-- Project targets														-->
  <!-- ====================================================================== -->
  <target name="rebuild" depends="clean,build" />

  <target name="clean">
    <description>
      Cleans previous built files.
    </description>

    <delete>
      <fileset>
        <include name="${configuration}_${platform}\**" />
        <include name="xml\expat\lib\${configuration}_${platform}\**" />
      </fileset>
    </delete>
  </target>

  <target name="xml">
    <mkdir dir="xml\expat\lib\${configuration}_${platform}" />
    <copy file="xml\expat\lib\winconfig.h" tofile="xml\expat\lib\config.h" overwrite="true" />
    <loadfile file="xml\expat\lib\expat.h.in" property="expatheader">
      <filterchain>
        <replacetokens begintoken="@" endtoken="@">
          <token key="EXPAT_MAJOR_VERSION" value="1" />
          <token key="EXPAT_MINOR_VERSION" value="95" />
          <token key="EXPAT_EDIT" value="2" />
        </replacetokens>
      </filterchain>
    </loadfile>
    <echo file="xml\expat\lib\expat.h" message="${expatheader}" />
    <cl outputdir="xml\expat\lib\${configuration}_${platform}">
      <arg value="/O2" if="${configuration == 'release'}" />
      <arg value="/Ob1" if="${configuration == 'release'}" />
      <arg value="/Od" if="${configuration != 'release'}" />
      <arg value="/GF" if="${configuration == 'release'}" />
      <arg value="/FD" />
      <arg value="/EHsc" />
      <arg value="/MT" if="${configuration == 'release'}" />
      <arg value="/MTd" if="${configuration != 'release'}" />
      <arg value="/Gy" />
      <arg value="/W3" />
      <arg value="/nologo" />
      <arg value="/c" />
      <arg value="/Zi" />
      <arg value="/errorReport:prompt" />
      <sources>
        <include name="xml\expat\lib\xmlparse.c" />
        <include name="xml\expat\lib\xmlrole.c" />
        <include name="xml\expat\lib\xmltok.c" />
      </sources>
      <includedirs>
        <include name="include" />
        <include name="include\private" />
        <include name="xml\expat\lib" />
      </includedirs>
      <defines>
        <define name="APU_DECLARE_STATIC" />
        <define name="APR_DECLARE_STATIC" />
        <define name="WIN32" />
        <define name="_WINDOWS" />
        <define name="_WIN32" />
        <define name="_WIN32_WINNT" value="0x0501" />
        <define name="WIN64" if="${platform == 'x64'}" />
        <define name='VERSION=\"expat_1.95.2\"' />
        <define name="NDEBUG" if="${configuration == 'release'}"/>
        <define name="_DEBUG" if="${configuration != 'release'}"/>
      </defines>
    </cl>
    <property name="machineoption" value="/MACHINE:X86" if="${platform == 'win32'}" />
    <property name="machineoption" value="/MACHINE:x64" if="${platform == 'x64'}" />
    <lib
      output="xml\expat\lib\${configuration}_${platform}\xml.lib"
      options='/NOLOGO /SUBSYSTEM:WINDOWS ${machineoption}'>
      <sources>
        <include name="xml\expat\lib\${configuration}_${platform}\*.obj" />
      </sources>
    </lib>
  </target>

  <target name="build" depends="xml">
    <mkdir dir="${configuration}_${platform}" />
    <copy file="..\build\apu.hw" tofile="include\apu.h" overwrite="true" />
    <copy file="include\apu_want.hw" tofile="include\apu_want.h" overwrite="true" />
    <copy file="include\apr_ldap.hw" tofile="include\apr_ldap.h" overwrite="true" />
    <copy file="include\private\apu_select_dbm.hw" tofile="include\private\apu_select_dbm.h" overwrite="true" />
    <copy file="include\private\apu_config.hw" tofile="include\private\apu_config.h" overwrite="true" />
    <loadfile file="include\apu_version.h" property="versionfile" />
    <regex pattern="#define APU_MAJOR_VERSION( )+(?'APU_MAJOR_VERSION'\d+)" input="${versionfile}" />
    <echo message="${APU_MAJOR_VERSION}" />
    <regex pattern="#define APU_MINOR_VERSION[ ]+(?'APU_MINOR_VERSION'\d+)" input="${versionfile}" />
    <echo message="${APU_MINOR_VERSION}" />
    <regex pattern="#define APU_PATCH_VERSION[ ]+(?'APU_PATCH_VERSION'\d+)" input="${versionfile}" />
    <echo message="${APU_PATCH_VERSION}" />
    <loadfile file="libaprutil.rc" property="rcfile">
      <filterchain>
        <replacestring from="0,0,0" to="${APU_MAJOR_VERSION},${APU_MINOR_VERSION},${APU_PATCH_VERSION}" />
        <replacestring from="0.0.0" to="${APU_MAJOR_VERSION},${APU_MINOR_VERSION},${APU_PATCH_VERSION}" />
      </filterchain>
    </loadfile>
    <echo file="libaprutilver.rc" message="${rcfile}" />
    <rc rcfile="libaprutilver.rc" output="${configuration}_${platform}\libaprutil.res">
      <includedirs>
        <include name="..\apr\include" />
        <include name="include" />
      </includedirs>
    </rc>

    <cl outputdir="${configuration}_${platform}">
      <arg value="/O2" if="${configuration == 'release'}" />
      <arg value="/Ob1" if="${configuration == 'release'}" />
      <arg value="/Od" if="${configuration != 'release'}" />
      <arg value="/GF" if="${configuration == 'release'}" />
      <arg value="/FD" />
      <arg value="/EHsc" />
      <arg value="/MT" if="${configuration == 'release'}" />
      <arg value="/MTd" if="${configuration != 'release'}" />
      <arg value="/Gy" />
      <arg value="/W3" />
      <arg value="/nologo" />
      <arg value="/c" />
      <arg value="/Zi" />
      <arg value="/errorReport:prompt" />
      <sources>
        <include name="buckets\*.c" />
        <include name="crypto\*.c" />
        <include name="dbd\*.c" />
        <include name="dbm\*.c" />
        <include name="dbm\sdbm\*.c" />
        <include name="encoding\*.c" />
        <include name="hooks\*.c" />
        <include name="ldap\*.c" />
        <include name="misc\*.c" />
        <include name="memcache\*.c" />
        <include name="strmatch\*.c" />
        <include name="uri\apr_uri.c" />
        <include name="xml\apr_xml.c" />
      </sources>
      <includedirs>
        <include name="include" />
        <include name="include\private" />
        <include name="xml\expat\lib" />
        <include name="..\apr\include" />
      </includedirs>
      <defines>
        <define name="APU_DECLARE_STATIC" />
        <define name="APR_DECLARE_STATIC" />
        <define name="WIN32" />
        <define name="_WINDOWS" />
        <define name="_WIN32" />
        <define name="_WIN32_WINNT" value="0x0501" />
        <define name="WIN64" if="${platform == 'x64'}" />
        <define name="_WINDLL" />
        <define name="NDEBUG" if="${configuration == 'release'}"/>
        <define name="_DEBUG" if="${configuration != 'release'}"/>
      </defines>
    </cl>
    <property name="machineoption" value="/MACHINE:X86" />
    <property name="machineoption" value="/MACHINE:x64" if="${platform == 'x64'}" />
    <lib
      output="${configuration}_${platform}\libaprutil.lib"
      options='/NOLOGO /DEBUG /PDB:".\${configuration}_${platform}/libaprutil.pdb" /SUBSYSTEM:WINDOWS'>
      <sources>
        <include name="${configuration}_${platform}\*.obj" />
        <include name="xml\expat\lib\${configuration}_${platform}\*.obj" />
      </sources>
    </lib>
  </target>

</project>
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.