Files
cyberduck/runtime.xml
T
David Kocher 01bef20358 Add runtime as dependency.
Former-commit-id: 656f8fe356228776a60c86f2a9da34da9f9c7f7c
2015-12-21 14:40:35 +01:00

62 lines
2.7 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<project name="Java Runtime" basedir=".">
<property name="jvm.runtime.home" value="${build}/1.8.0_66.jre"/>
<property name="jvm.runtime.bin" value="${jvm.runtime.home}/${bundle.home}/bin"/>
<property name="jvm.runtime.bin" value="${java.home}/bin"/>
<property name="bundle.runtime" value="${bundle.macos}/Runtime.jre"/>
<property name="bundle.runtime.lib"
value="@executable_path/../MacOS/Runtime.jre/Contents/Home/lib/server/libjvm.dylib"/>
<property name="build.lipo.binaries" value="**/Contents/MacOS/*,**/*.framework/Versions/Current/*,**/*.dylib"/>
<property name="build.lipo.arch.remove" value=""/>
<target name="runtime">
<mkdir dir="${bundle}/${bundle.runtime}/${bundle.home}"/>
<!-- Copy runtime -->
<echo message="Copy runtime from ${jvm.runtime.home} to ${bundle}/${bundle.runtime}..."/>
<copy todir="${bundle}/${bundle.runtime}" preservelastmodified="true">
<fileset followsymlinks="false" dir="${jvm.runtime.home}" excludesfile="${home}/runtime-excludes.properties"/>
</copy>
<antcall target="shared-library-install-name">
<param name="oldname" value="/System/Library/Frameworks/JavaVM.framework/Versions/A/JavaVM"/>
<param name="newname" value="${bundle.runtime.lib}"/>
<param name="directory" value="${bundle}/${bundle.frameworks}"/>
</antcall>
<!-- Remove architectures -->
<foreach target="lipo" param="arch" list="${build.lipo.arch.remove}">
<param name="directory" value="${bundle}"/>
</foreach>
</target>
<target name="shared-library-install-name">
<echo message="Change dynamic shared library install names to ${newname}"/>
<apply executable="/usr/bin/install_name_tool" failonerror="true"
type="file"
parallel="false" spawn="false" force="true">
<arg line="-change ${oldname} ${newname}"/>
<fileset dir="${directory}">
<include name="*.dylib"/>
</fileset>
<srcfile/>
</apply>
</target>
<target name="lipo">
<echo message="Remove ${arch} slice from ${build.lipo.binaries}"/>
<apply executable="/usr/bin/lipo" failonerror="false" dest="${directory}"
parallel="false" spawn="false" force="true">
<!--Remove from executables-->
<!--Remove from frameworks-->
<!--Remove from shared libraries-->
<fileset dir="${directory}" includes="${build.lipo.binaries}"/>
<arg line="-remove ${arch} -output"/>
<srcfile/>
<targetfile/>
<identitymapper/>
</apply>
</target>
</project>