ikvm-fork/jvm/jvm.build

27 строки
1.7 KiB
XML

<?xml version="1.0"?>
<project name="JVM" default="JVM">
<include buildfile="../ikvm.include" />
<target name="version">
<property name="VERSION" value="${assemblyname::get-version(assemblyname::get-assembly-name(path::combine(project::get-base-directory(), '../bin/IKVM.Runtime.dll')))}" />
<copy file="jvm.rc.in" tofile="jvm.rc" outputencoding="ascii" overwrite="true">
<filterchain>
<replacetokens>
<token key="VERSIONLIST" value="${string::replace(property::get-value('VERSION'), '.', ',')}" />
<token key="VERSION" value="${VERSION}" />
</replacetokens>
</filterchain>
</copy>
</target>
<target name="JVM" depends="version" if="${property::exists('ilasm') and (not string::starts-with(framework::get-target-framework(), 'mono'))}">
<property overwrite="false" name="ilasm_signoption" value="" />
<if test="${property::exists('rc')}">
<exec program="${rc}" commandline="jvm.rc" />
</if>
<rc if="${not property::exists('rc')}" rcfile="jvm.rc" output="jvm.res" />
<exec program="../tools/asmref.exe" useruntimeengine="true" commandline="mscorlib ../bin/IKVM.Runtime.JNI.dll" output="jvm_h.il" />
<echo message=".assembly JVM { .ver ${string::replace(property::get-value('VERSION'), '.', ':')} }" file="jvm_h.il" append="true" />
<exec program="${ilasm}" commandline=" /dll ${ilasm_signoption} /out:../bin-x86/JVM.DLL /RESOURCE:jvm.res jvm_h.il jvm32.il JVM.il" />
<exec program="${ilasm}" commandline="/pe64 /x64 /dll ${ilasm_signoption} /out:../bin-x64/JVM.DLL /RESOURCE:jvm.res jvm_h.il jvm64.il JVM.il" />
</target>
</project>