comparison build.xml @ 22:829769cb1c13

Add some support for making bundled apps to build.xml.
author David Barts <n5jrn@me.com>
date Thu, 23 Jan 2020 10:11:16 -0800
parents be282c48010a
children 14049bc97a7c
comparison
equal deleted inserted replaced
21:c10a447b9e1b 22:829769cb1c13
31 ]]> 31 ]]>
32 </scriptdef> 32 </scriptdef>
33 33
34 <!-- Define the properties used by the build --> 34 <!-- Define the properties used by the build -->
35 <property name="app.name" value="${ant.project.name}"/> 35 <property name="app.name" value="${ant.project.name}"/>
36 <property name="app.entry" value="name.blackcap.clipman.MainKt"/>
36 <toLowerCase target="lc.app.name" value="${app.name}"/> 37 <toLowerCase target="lc.app.name" value="${app.name}"/>
37 <property name="jar.name" value="${basedir}/${lc.app.name}.jar"/> 38 <property name="jar.name" value="${basedir}/${lc.app.name}.jar"/>
38 <property name="work.jar" value="${basedir}/work.jar"/> 39 <property name="work.jar" value="${basedir}/work.jar"/>
39 <property name="lib.home" value="${basedir}/lib"/> 40 <property name="lib.home" value="${basedir}/lib"/>
40 <property name="src.home" value="${basedir}/src"/> 41 <property name="src.home" value="${basedir}/src"/>
41 42
42 <!-- help message --> 43 <!-- help message -->
43 <target name="help"> 44 <target name="help">
83 84
84 <!-- make .jar file --> 85 <!-- make .jar file -->
85 <target name="jar" depends="compile" description="Create JAR file."> 86 <target name="jar" depends="compile" description="Create JAR file.">
86 <jar destfile="${jar.name}"> 87 <jar destfile="${jar.name}">
87 <manifest> 88 <manifest>
88 <attribute name="Main-Class" value="name.blackcap.clipman.MainKt"/> 89 <attribute name="Main-Class" value="${app.entry}"/>
89 </manifest> 90 </manifest>
90 <zipgroupfileset dir="${lib.home}" includes="*.jar"/> 91 <zipgroupfileset dir="${lib.home}" includes="*.jar"/>
91 <zipfileset src="${work.jar}"/> 92 <zipfileset src="${work.jar}"/>
92 </jar> 93 </jar>
93 </target> 94 </target>
94 95
96 <!-- for making bundled apps -->
97 <macrodef name="bundle">
98 <attribute name="type"/>
99 <sequential>
100 <exec executable="${env.JRE_HOME}/bin/javapackager" dir="${basedir}">
101 <arg value="-deploy"/>
102 <arg value="-Bruntime=${env.JRE_HOME}"/>
103 <arg value="-native"/> <arg value="@{type}"/>
104 <arg value="-srcfiles"/> <arg value="${jar.name}"/>
105 <arg value="-outdir"/> <arg value="${basedir}"/>
106 <arg value="-outfile"/> <arg value="${app.name}.@{type}"/>
107 <arg value="-appclass"/> <arg value="${app.entry}"/>
108 <arg value="-name"/> <arg value="${app.name}"/>
109 <arg value="-title"/> <arg value="${app.name}"/>
110 <arg value="-vendor"/> <arg value="David Barts &lt;n5jrn@me.com&gt;"/>
111 <arg value="-nosign"/>
112 </exec>
113 </sequential>
114 </macrodef>
115
116 <target name="dmg" depends="jar" description="Create MacOS app bundle.">
117 <bundle type="dmg"/>
118 </target>
119
120 <target name="pkg" depends="jar" description="Create MacOS app bundle.">
121 <bundle type="dmg"/>
122 </target>
123
124 <target name="rpm" depends="jar" description="Create MacOS app bundle.">
125 <bundle type="rpm"/>
126 </target>
127
128 <target name="deb" depends="jar" description="Create MacOS app bundle.">
129 <bundle type="deb"/>
130 </target>
131
95 </project> 132 </project>