|
| 1 | +<?xml version="1.0"?> |
| 2 | +<project name="Java Mode" default="build"> |
| 3 | + |
| 4 | + <property name="generated" |
| 5 | + value="${basedir}/generated/processing/mode/java/preproc" /> |
| 6 | + <mkdir dir="${generated}" /> |
| 7 | + |
| 8 | + <property name="grammars" |
| 9 | + value="${basedir}/src/processing/mode/java/preproc" /> |
| 10 | + |
| 11 | + <property name="antlr_jar" |
| 12 | + value="${basedir}/mode/antlr.jar" /> |
| 13 | + |
| 14 | + <property name="mode_jar" |
| 15 | + value="${basedir}/mode/JavaMode.jar" /> |
| 16 | + |
| 17 | + <classloader taskname="antlr"> |
| 18 | + <classpath path="${antlr_jar}" /> |
| 19 | + </classloader> |
| 20 | + |
| 21 | + <target name="clean" description="Clean the build directories"> |
| 22 | + <delete dir="bin" /> |
| 23 | + <delete file="${mode_jar}" /> |
| 24 | + <delete> |
| 25 | + <fileset dir="${generated}"> |
| 26 | + <include name="*.java" /> |
| 27 | + <include name="*.tokens" /> |
| 28 | + <include name="*.txt" /> |
| 29 | + <include name="*.g" /> |
| 30 | + <include name="*.smap" /> |
| 31 | + <include name="*.properties" /> |
| 32 | + </fileset> |
| 33 | + </delete> |
| 34 | + </target> |
| 35 | + |
| 36 | + <target name="preproc" description="Compile ANTLR grammar"> |
| 37 | + <antlr target="${grammars}/java15.g" outputdirectory="${generated}"> |
| 38 | + <classpath path="${antlr_jar}" /> |
| 39 | + </antlr> |
| 40 | + <antlr target="${grammars}/pde.g" |
| 41 | + outputdirectory="${generated}" |
| 42 | + glib="${grammars}/java15.g"> |
| 43 | + <classpath path="${antlr_jar}" /> |
| 44 | + </antlr> |
| 45 | + </target> |
| 46 | + |
| 47 | + <target name="compile" depends="preproc" description="Compile sources"> |
| 48 | + <condition property="core-built"> |
| 49 | + <available file="../core/library/core.jar" /> |
| 50 | + </condition> |
| 51 | + <fail unless="core-built" message="Please first build the core library and make sure it is located at ../core/library/core.jar" /> |
| 52 | + |
| 53 | + <condition property="app-built"> |
| 54 | + <available file="../app/pde.jar" /> |
| 55 | + </condition> |
| 56 | + <fail unless="app-built" message="Please build app first and make sure it is located at ../app/pde.jar" /> |
| 57 | + |
| 58 | + |
| 59 | + <mkdir dir="bin" /> |
| 60 | + |
| 61 | + <!-- in some cases, pde.jar was not getting built |
| 62 | + https://github.com/processing/processing/issues/1792 --> |
| 63 | + <delete file="${mode_jar}" /> |
| 64 | + |
| 65 | + <!-- env used to set classpath below --> |
| 66 | + <property environment="env" /> |
| 67 | + |
| 68 | + <javac source="1.7" |
| 69 | + target="1.7" |
| 70 | + destdir="bin" |
| 71 | + excludes="**/tools/format/**" |
| 72 | + encoding="UTF-8" |
| 73 | + includeAntRuntime="false" |
| 74 | + classpath="../core/library/core.jar; |
| 75 | +
|
| 76 | + ../app/pde.jar; |
| 77 | + ../app/lib/ant.jar; |
| 78 | + ../app/lib/ant-launcher.jar; |
| 79 | + ../app/lib/apple.jar; |
| 80 | + ../app/lib/jna.jar; |
| 81 | +
|
| 82 | + mode/antlr.jar; |
| 83 | + mode/classpath-explorer-1.0.jar; |
| 84 | + mode/jsoup-1.7.1.jar; |
| 85 | + mode/org.netbeans.swing.outline.jar; |
| 86 | +
|
| 87 | + mode/jdi.jar; |
| 88 | + mode/jdimodel.jar; |
| 89 | +
|
| 90 | + mode/com.ibm.icu.jar; |
| 91 | +
|
| 92 | + mode/org.eclipse.core.contenttype.jar; |
| 93 | + mode/org.eclipse.core.jobs.jar; |
| 94 | + mode/org.eclipse.core.resources.jar; |
| 95 | + mode/org.eclipse.core.runtime.jar; |
| 96 | + mode/org.eclipse.equinox.common.jar; |
| 97 | + mode/org.eclipse.equinox.preferences.jar; |
| 98 | + mode/org.eclipse.jdt.core.jar; |
| 99 | + mode/org.eclipse.osgi.jar; |
| 100 | + mode/org.eclipse.text.jar" |
| 101 | + debug="on" |
| 102 | + nowarn="true" |
| 103 | + compiler="org.eclipse.jdt.core.JDTCompilerAdapter"> |
| 104 | + <src path="src" /> |
| 105 | + <src path="generated" /> |
| 106 | + <compilerclasspath path="mode/org.eclipse.jdt.core.jar; |
| 107 | + mode/jdtCompilerAdapter.jar" /> |
| 108 | + </javac> |
| 109 | + </target> |
| 110 | + |
| 111 | + <target name="build" depends="compile" description="Build PDE"> |
| 112 | + <jar basedir="bin" destfile="${mode_jar}" /> |
| 113 | + </target> |
| 114 | +</project> |
0 commit comments