ikvm-fork/classpath/classpath.build

92 строки
3.6 KiB
XML

<?xml version="1.0"?>
<project name="IKVM.GNU.Classpath.dll" default="branch">
<property name="pathsep" value=":" />
<property overwrite="false" name="signoption" value="" />
<property overwrite="false" name="generics" value="false" />
<if test="${nant.platform.win32}">
<property name="pathsep" value=";" />
</if>
<target name="branch">
<if test="${generics}">
<call target="generics" />
</if>
<ifnot test="${generics}">
<call target="trunk" />
</ifnot>
</target>
<target name="trunk">
<property name="Classpath.dir" value="${nant.project.basedir}/../../classpath" />
<property name="allsources" value="allsources.lst" />
<call target="IKVM.GNU.Classpath.dll" />
</target>
<target name="generics">
<property name="Classpath.dir" value="${nant.project.basedir}/../../classpath-generics" />
<property name="allsources" value="allsources-generics.lst" />
<call target="IKVM.GNU.Classpath.dll" />
</target>
<target name="jars">
<!-- TODO
<exec program="${nant.project.basedir}/../bin/ikvmstub.exe" commandline="" />
-->
</target>
<target name="classes" depends="jars" description="GNU Classpath + IKVM.NET specific Java classes">
<delete>
<fileset basedir="${Classpath.dir}">
<include name="**.class"/>
</fileset>
</delete>
<delete>
<fileset basedir=".">
<include name="**.class"/>
</fileset>
</delete>
<exec program="ecj" commandline="-g -1.5 -nowarn -cp mscorlib.jar${pathsep}System.jar @${allsources}" useruntimeengine="false" />
</target>
<target name="IKVM.GNU.Classpath.dll" depends="classes">
<exec program="${nant.project.basedir}/../bin/ikvmc.exe" useruntimeengine="true">
<!--
<arg value="-debug" />
<arg value="-srcpath:/classpath/" />
-->
<arg value="-version:0.31.*" />
<arg value="${signoption}" />
<arg value="-compressresources" />
<arg value="-opt:fields" />
<arg value="-strictfinalfieldsemantics" />
<arg value="-out:IKVM.GNU.Classpath.dll" />
<arg value="-remap:map.xml" />
<arg value="-exclude:exclude.lst" />
<arg value="-target:library" />
<arg value="-recurse:./*.class" />
<arg value="-recurse:${Classpath.dir}/*.class" />
<arg value="-recurse:${Classpath.dir}/resource/*.properties" />
<arg value="-recurse:${Classpath.dir}/resource/javax.*" />
<arg value="-recurse:${Classpath.dir}/resource/org.xml.*" />
<arg value="-r:${framework::get-assembly-directory(framework::get-target-framework())}/mscorlib.dll" />
<arg value="-r:${framework::get-assembly-directory(framework::get-target-framework())}/System.dll" />
<!--
<arg value="-r:C:\Program Files\Microsoft Visual Studio 8\SmartDevices\SDK\CompactFramework\2.0\v2.0\WindowsCE\System.dll" />
-->
<arg value="-resource:lib/security/classpath.security=${Classpath.dir}/resource/java/security/classpath.security" />
<arg value="-resource:META-INF/MANIFEST.MF=MANIFEST.MF" />
</exec>
<copy file="IKVM.GNU.Classpath.dll" tofile="../bin/IKVM.GNU.Classpath.dll.new" />
<if test="${nant.platform.win32}">
<call target="peverify-classpath"/>
</if>
<copy file="IKVM.GNU.Classpath.dll" todir="../bin" />
<delete file="../bin/IKVM.GNU.Classpath.dll.new" />
</target>
<target name="peverify-classpath">
<exec program="peverify" commandline="../bin/IKVM.GNU.Classpath.dll.new" />
</target>
</project>