|
1 | | -<project name="Teaching Kids Programming" basedir="." default="Publish TeachingKidsProgramming"> |
2 | | - <target name="compile" depends="cleanUp"> |
3 | | - <mkdir dir="${build}" /> |
4 | | - <delete dir="${build}/com/spun" /> |
5 | | - <echo>${targetJavaClass}</echo> |
6 | | - <javac srcdir="${src}:${additonal_java_sources}" destdir="${build}" debug="true" includes="${targetJavaClass}" target="1.7" source="1.7" listfiles="true"> |
7 | | - <exclude name="**/tests/**" if="excludeTests" /> |
| 1 | +<?xml version="1.0"?> |
| 2 | +<project name="Teaching Kids Programming" basedir="." default="Publish TeachingKidsProgramming" xmlns:artifact="antlib:org.apache.maven.artifact.ant"> |
8 | 3 |
|
9 | | - <classpath> |
10 | | - <fileset dir="${src}/jars"> |
11 | | - <include name="**/*.jar" /> |
12 | | - </fileset> |
13 | | - <fileset dir="${additonal_java_sources}/jars"> |
14 | | - <include name="**/*.jar" /> |
15 | | - </fileset> |
16 | 4 |
|
17 | | - </classpath> |
18 | | - </javac> |
| 5 | + <property name="home" value="." /> |
| 6 | + <property name="src" value="${home}/src/main/java" /> |
| 7 | + <property name="rsrc" value="${home}/src/main/resources" /> |
| 8 | + <property name="build_home" value="/tmp/builds" /> |
| 9 | + <property name="build" value="${build_home}/build" /> |
| 10 | + <property name="targetJavaClass" value="org/teachingextensions/**,you/**" /> |
| 11 | + <property name="jar" value="${build}/TeachingKidsProgramming.jar" /> |
| 12 | + <property name="tkp_workspace" value="${home}/../TeachingKidsProgramming.Java" /> |
| 13 | + <property name="tkp_project" value="${tkp_workspace}/TeachingKidsProgramming" /> |
| 14 | + <property name="documentation" value="${home}/build/resources/teaching_kids_programming" /> |
| 15 | + <property name="excludeTests" value="true" /> |
| 16 | + |
| 17 | + <!-- maven integration --> |
| 18 | + <path id="maven-ant-tasks.classpath" path="build/maven-ant-tasks-2.1.3.jar" /> |
| 19 | + <typedef resource="org/apache/maven/artifact/ant/antlib.xml" uri="antlib:org.apache.maven.artifact.ant" classpathref="maven-ant-tasks.classpath" /> |
| 20 | + <artifact:pom id="tkppom" file="pom.xml" /> |
| 21 | + <artifact:dependencies filesetId="pomdeps" pomRefId="tkppom" pathId="dependency.classpath" /> |
| 22 | + |
| 23 | + <target name="cleanTeachingKidsProgramming" description="Delete generated files from Eclipse project."> |
| 24 | + <delete dir="${tkp_project}/bin" failonerror="false" /> |
| 25 | + <delete dir="${tkp_project}/src" failonerror="false" /> |
| 26 | + <delete dir="${tkp_project}/build" failonerror="false" /> |
19 | 27 | </target> |
20 | | - <target name="cleanUp"> |
| 28 | + |
| 29 | + <target name="cleanUp" description="Delete files from temp build directory."> |
21 | 30 | <delete dir="${build}" /> |
22 | 31 | </target> |
23 | 32 |
|
24 | | - <target name="buildJarFile" depends="compile"> |
| 33 | + <target name="compile" depends="cleanUp" description="Compile sources."> |
| 34 | + <mkdir dir="${build}" /> |
| 35 | + <echo>${targetJavaClass}</echo> |
| 36 | + <javac includeantruntime="false" srcdir="${src}" destdir="${build}" debug="true" includes="${targetJavaClass}" target="1.7" source="1.7" listfiles="true"> |
| 37 | + <exclude name="**/tests/**" if="excludeTests" /> |
| 38 | + <classpath refid="dependency.classpath" /> |
| 39 | + </javac> |
| 40 | + </target> |
| 41 | + |
| 42 | + <target name="stagesrc" description="Copy source files to temp build directory."> |
25 | 43 | <mkdir dir="${build}/src" /> |
26 | 44 | <copy todir="${build}/src"> |
27 | 45 | <fileset dir="${src}" includes="${targetJavaClass}/*.java"> |
28 | 46 | <exclude name="**/tests/**" if="excludeTests" /> |
29 | 47 | </fileset> |
30 | 48 | </copy> |
31 | 49 | <copy todir="${build}"> |
32 | | - <fileset dir="${src}" includes="${targetJavaClass}/*.png" /> |
| 50 | + <fileset dir="${rsrc}" includes="*.png" /> |
33 | 51 | </copy> |
| 52 | + <copy todir="${build}/src/org/teachingextensions/logo"> |
| 53 | + <fileset dir="${rsrc}" includes="*.png" /> |
| 54 | + </copy> |
| 55 | + </target> |
| 56 | + |
| 57 | + <target name="buildJarFile" depends="compile, stagesrc" description="Create jar file."> |
34 | 58 | <delete file="${jar}" failonerror="false" /> |
35 | 59 | <jar destfile="${jar}" update="false"> |
36 | 60 | <fileset dir="${build}" includes="**" /> |
37 | | - |
38 | 61 | </jar> |
39 | 62 | </target> |
40 | | - <target name="createDownload" depends="buildJarFile"> |
41 | | - <zip destfile="${zip}" basedir="${build}" includes="*.jar,*.txt"> |
42 | | - <fileset dir="${documentation}" includes="**" /> |
43 | | - </zip> |
44 | | - </target> |
45 | 63 |
|
46 | | - |
47 | | - <target name="Publish TeachingKidsProgramming"> |
48 | | - <property file="properties/teaching_kids_programming.properties" /> |
49 | | - <antcall target="createTeachingKidsProgramming" /> |
50 | | - </target> |
51 | | - |
52 | | - <target name="cleanTeachingKidsProgramming"> |
53 | | - <delete dir="${tkp_project}/bin" failonerror="false" /> |
54 | | - <delete dir="${tkp_project}/src" failonerror="false" /> |
55 | | - <delete dir="${tkp_project}/build" failonerror="false" /> |
56 | | - </target> |
57 | | - |
58 | | - <target name="createTeachingKidsProgramming" depends="cleanTeachingKidsProgramming, buildJarFile"> |
| 64 | + <target name="createTeachingKidsProgramming" depends="cleanTeachingKidsProgramming, buildJarFile" description="Copy build files to Eclipse project."> |
59 | 65 | <copy file="${build}/TeachingKidsProgramming.jar" todir="${tkp_project}/src/jars" /> |
60 | 66 | <copy file="${documentation}/build.xml" todir="${tkp_project}/build" /> |
61 | 67 | <copy todir="${tkp_project}/src" verbose="true"> |
|
71 | 77 | <zip destfile="${build}/tkp_workspace.v${version}.zip" basedir="${tkp_workspace}" includes="**"> |
72 | 78 | </zip> |
73 | 79 | </target> |
| 80 | + |
| 81 | + <target name="Publish TeachingKidsProgramming" description="Publish Eclipse Project"> |
| 82 | + <property file="properties/teaching_kids_programming.properties" /> |
| 83 | + <antcall target="createTeachingKidsProgramming" /> |
| 84 | + </target> |
| 85 | + |
| 86 | + |
| 87 | + <!-- Other targets --> |
| 88 | + <target name="createDownload" depends="buildJarFile"> |
| 89 | + <zip destfile="${zip}" basedir="${build}" includes="*.jar,*.txt"> |
| 90 | + <fileset dir="${documentation}" includes="**" /> |
| 91 | + </zip> |
| 92 | + </target> |
| 93 | + |
74 | 94 | <target name="Publish TKP Launcher"> |
75 | 95 | <property file="properties/tkplauncher.properties" /> |
76 | 96 | <antcall target="buildExecutableTkpJarFile" /> |
77 | 97 |
|
78 | 98 | </target> |
| 99 | + |
79 | 100 | <target name="buildExecutableTkpJarFile" depends="compile"> |
80 | 101 | <jar destfile="${jar}/TKP_Launcher.jar" update="false"> |
81 | 102 | <fileset dir="${build}" includes="**" /> |
|
84 | 105 | </manifest> |
85 | 106 | </jar> |
86 | 107 | </target> |
| 108 | + |
87 | 109 | <target name="Publish TKP ThumbDriveInstaller"> |
88 | 110 | <property file="properties/tkplauncher.properties" /> |
89 | 111 | <antcall target="buildThumbDriveInstaller" /> |
|
0 commit comments