Mercurial > cgi-bin > hgweb.cgi > ClipMan
annotate build.xml @ 57:c6cccbe2f393
Port to OpenJDK 15 (mostly done).
author | David Barts <n5jrn@me.com> |
---|---|
date | Wed, 23 Mar 2022 23:56:29 -0700 |
parents | b1198e4bec25 |
children | 8b707fa0a4fc |
rev | line source |
---|---|
0
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
1 <?xml version="1.0" encoding="UTF-8"?> |
25 | 2 <project name="ClipMan" default="help" basedir="." xmlns:fx="javafx:com.sun.javafx.tools.ant"> |
0
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
3 <!-- import all environment variables as env.* --> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
4 <property environment="env"/> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
5 |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
6 <!-- ensure required environment variables are set --> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
7 <macrodef name="env-require"> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
8 <attribute name="name"/> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
9 <sequential> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
10 <fail message="Environment variable @{name} not set!"> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
11 <condition> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
12 <not><isset property="env.@{name}"/></not> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
13 </condition> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
14 </fail> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
15 </sequential> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
16 </macrodef> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
17 <env-require name="JRE_HOME"/> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
18 <env-require name="KOTLIN_HOME"/> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
19 |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
20 <!-- define the kotlin task --> |
51 | 21 <property name="kotlin.lib" value="${env.KOTLIN_HOME}/lib"/> |
25 | 22 <typedef resource="org/jetbrains/kotlin/ant/antlib.xml" |
23 classpath="${kotlin.lib}/kotlin-ant.jar"/> | |
24 | |
25 <!-- define the package-building tasks --> | |
57
c6cccbe2f393
Port to OpenJDK 15 (mostly done).
David Barts <n5jrn@me.com>
parents:
53
diff
changeset
|
26 <!-- <taskdef resource="com/sun/javafx/tools/ant/antlib.xml" |
25 | 27 uri="javafx:com.sun.javafx.tools.ant" |
57
c6cccbe2f393
Port to OpenJDK 15 (mostly done).
David Barts <n5jrn@me.com>
parents:
53
diff
changeset
|
28 classpath="${env.JRE_HOME}/lib/ant-javafx.jar"/> --> |
0
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
29 |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
30 <!-- Define the properties used by the build --> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
31 <property name="app.name" value="${ant.project.name}"/> |
22
829769cb1c13
Add some support for making bundled apps to build.xml.
David Barts <n5jrn@me.com>
parents:
0
diff
changeset
|
32 <property name="app.entry" value="name.blackcap.clipman.MainKt"/> |
57
c6cccbe2f393
Port to OpenJDK 15 (mostly done).
David Barts <n5jrn@me.com>
parents:
53
diff
changeset
|
33 <property name="lc.app.name" value="clipman"/> |
0
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
34 <property name="jar.name" value="${basedir}/${lc.app.name}.jar"/> |
22
829769cb1c13
Add some support for making bundled apps to build.xml.
David Barts <n5jrn@me.com>
parents:
0
diff
changeset
|
35 <property name="work.jar" value="${basedir}/work.jar"/> |
0
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
36 <property name="lib.home" value="${basedir}/lib"/> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
37 <property name="src.home" value="${basedir}/src"/> |
51 | 38 <property name="work.home" value="${basedir}/work"/> |
0
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
39 |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
40 <!-- help message --> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
41 <target name="help"> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
42 <echo>You can use the following targets:</echo> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
43 <echo> </echo> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
44 <echo> help : (default) Prints this message </echo> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
45 <echo> all : Cleans, compiles, and stages application</echo> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
46 <echo> clean : Deletes work directories</echo> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
47 <echo> compile : Compiles servlets into class files</echo> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
48 <echo> jar : Make JAR file.</echo> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
49 <echo> </echo> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
50 <echo>For example, to clean, compile, and package all at once, run:</echo> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
51 <echo>prompt> ant all </echo> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
52 </target> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
53 |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
54 <!-- Define the CLASSPATH --> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
55 <target name="classpath"> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
56 <path id="std.classpath"> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
57 <fileset dir="${lib.home}"> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
58 <include name="*.jar"/> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
59 </fileset> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
60 </path> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
61 <path id="compile.classpath"> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
62 <path refid="std.classpath"/> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
63 <pathelement location="${src.home}"/> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
64 </path> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
65 <path id="test.classpath"> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
66 <path refid="std.classpath"/> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
67 <pathelement location="${work.home}"/> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
68 </path> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
69 </target> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
70 |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
71 <!-- do everything but install --> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
72 <target name="all" depends="jar" |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
73 description="Clean work dirs, compile, make JAR."/> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
74 |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
75 <!-- compile *.kt to *.class --> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
76 <target name="compile" depends="classpath" |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
77 description="Compile Java sources to ${work.home}"> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
78 <kotlinc src="${src.home}" output="${work.jar}" |
57
c6cccbe2f393
Port to OpenJDK 15 (mostly done).
David Barts <n5jrn@me.com>
parents:
53
diff
changeset
|
79 noStdlib="false" includeRuntime="true" |
47
19d9da731c43
Recoded; cleaned up root namespace, removed race conditions.
David Barts <n5jrn@me.com>
parents:
42
diff
changeset
|
80 classpathref="compile.classpath"> |
19d9da731c43
Recoded; cleaned up root namespace, removed race conditions.
David Barts <n5jrn@me.com>
parents:
42
diff
changeset
|
81 <compilerarg line="-jvm-target 1.8"/> |
19d9da731c43
Recoded; cleaned up root namespace, removed race conditions.
David Barts <n5jrn@me.com>
parents:
42
diff
changeset
|
82 </kotlinc> |
0
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
83 </target> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
84 |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
85 <!-- make .jar file --> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
86 <target name="jar" depends="compile" description="Create JAR file."> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
87 <jar destfile="${jar.name}"> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
88 <manifest> |
22
829769cb1c13
Add some support for making bundled apps to build.xml.
David Barts <n5jrn@me.com>
parents:
0
diff
changeset
|
89 <attribute name="Main-Class" value="${app.entry}"/> |
0
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
90 </manifest> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
91 <zipgroupfileset dir="${lib.home}" includes="*.jar"/> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
92 <zipfileset src="${work.jar}"/> |
42 | 93 <zipfileset dir="${src.home}" includes="**/*.properties"/> |
0
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
94 </jar> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
95 </target> |
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
96 |
22
829769cb1c13
Add some support for making bundled apps to build.xml.
David Barts <n5jrn@me.com>
parents:
0
diff
changeset
|
97 <!-- for making bundled apps --> |
829769cb1c13
Add some support for making bundled apps to build.xml.
David Barts <n5jrn@me.com>
parents:
0
diff
changeset
|
98 <macrodef name="bundle"> |
829769cb1c13
Add some support for making bundled apps to build.xml.
David Barts <n5jrn@me.com>
parents:
0
diff
changeset
|
99 <attribute name="type"/> |
51 | 100 <element name="args" optional="true"/> |
22
829769cb1c13
Add some support for making bundled apps to build.xml.
David Barts <n5jrn@me.com>
parents:
0
diff
changeset
|
101 <sequential> |
25 | 102 <fx:deploy nativeBundles="@{type}" outdir="${basedir}" outfile="${app.name}" |
103 signBundle="false"> | |
104 <fx:application mainClass="${app.entry}" name="${app.name}" toolkit="swing" | |
47
19d9da731c43
Recoded; cleaned up root namespace, removed race conditions.
David Barts <n5jrn@me.com>
parents:
42
diff
changeset
|
105 version="1.01"/> |
25 | 106 <fx:info description="ClipMan, a clipboard manager." title="${app.name}" |
27
8aa2dfac27eb
Big reorg; compiled but untested.
David Barts <n5jrn@me.com>
parents:
25
diff
changeset
|
107 vendor="David Barts <n5jrn@me.com>" |
8aa2dfac27eb
Big reorg; compiled but untested.
David Barts <n5jrn@me.com>
parents:
25
diff
changeset
|
108 copyright="© MMXX, David W. Barts"/> |
25 | 109 <fx:resources> |
110 <fx:fileset dir="${basedir}" includes="${lc.app.name}.jar"/> | |
111 </fx:resources> | |
112 <fx:bundleArgument arg="runtime" value="${env.JRE_HOME}"/> | |
23 | 113 <args/> |
25 | 114 </fx:deploy> |
115 </sequential> | |
22
829769cb1c13
Add some support for making bundled apps to build.xml.
David Barts <n5jrn@me.com>
parents:
0
diff
changeset
|
116 </macrodef> |
829769cb1c13
Add some support for making bundled apps to build.xml.
David Barts <n5jrn@me.com>
parents:
0
diff
changeset
|
117 |
25 | 118 <target name="macapp" depends="jar" description="Create MacOS app bundle."> |
119 <bundle type="image"> | |
23 | 120 <args> |
25 | 121 <fx:bundleArgument arg="jvmOptions" value="-Xdock:name=${app.name}"/> |
23 | 122 </args> |
123 </bundle> | |
22
829769cb1c13
Add some support for making bundled apps to build.xml.
David Barts <n5jrn@me.com>
parents:
0
diff
changeset
|
124 </target> |
829769cb1c13
Add some support for making bundled apps to build.xml.
David Barts <n5jrn@me.com>
parents:
0
diff
changeset
|
125 |
51 | 126 <target name="dummywork" description="dummy dir to make javapackager happy"> |
127 <mkdir dir="${work.home}"/> | |
128 <copy file="${jar.name}" tofile="${work.home}/${app.name}.jar"/> | |
129 </target> | |
130 | |
131 <!-- fx:deploy is broken on Windoze, must run javapackager command --> | |
53 | 132 <target name="winapp" depends="jar,dummywork" description="Create app bundle."> |
51 | 133 <exec executable="${env.JRE_HOME}/bin/javapackager"> |
134 <arg value="-deploy"/> | |
135 <arg value="-title"/> <arg value="${app.name}"/> | |
136 <arg value="-appclass"/> <arg value="${app.entry}"/> | |
137 <arg value="-native"/> <arg value="image"/> | |
138 <arg value="-name"/> <arg value="${app.name}"/> | |
139 <arg value="-outdir"/> <arg value="."/> | |
140 <arg value="-outfile"/> <arg value="${app.name}"/> | |
141 <arg value="-srcdir"/> <arg value="${work.home}"/> | |
142 </exec> | |
22
829769cb1c13
Add some support for making bundled apps to build.xml.
David Barts <n5jrn@me.com>
parents:
0
diff
changeset
|
143 </target> |
829769cb1c13
Add some support for making bundled apps to build.xml.
David Barts <n5jrn@me.com>
parents:
0
diff
changeset
|
144 |
25 | 145 <target name="rpm" depends="jar" description="Create RPM package."> |
22
829769cb1c13
Add some support for making bundled apps to build.xml.
David Barts <n5jrn@me.com>
parents:
0
diff
changeset
|
146 <bundle type="rpm"/> |
829769cb1c13
Add some support for making bundled apps to build.xml.
David Barts <n5jrn@me.com>
parents:
0
diff
changeset
|
147 </target> |
829769cb1c13
Add some support for making bundled apps to build.xml.
David Barts <n5jrn@me.com>
parents:
0
diff
changeset
|
148 |
25 | 149 <target name="deb" depends="jar" description="Create Debian package."> |
22
829769cb1c13
Add some support for making bundled apps to build.xml.
David Barts <n5jrn@me.com>
parents:
0
diff
changeset
|
150 <bundle type="deb"/> |
829769cb1c13
Add some support for making bundled apps to build.xml.
David Barts <n5jrn@me.com>
parents:
0
diff
changeset
|
151 </target> |
829769cb1c13
Add some support for making bundled apps to build.xml.
David Barts <n5jrn@me.com>
parents:
0
diff
changeset
|
152 |
0
be282c48010a
Incomplete; checking it in as a backup.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
153 </project> |