| 1 |
<?xml version = "1.0" encoding = "UTF-8"?> |
| 2 |
<project name = "xml-tab" default = "usage" basedir = "."> |
| 3 |
<property name = "project.name" value = "xml-tab"/> |
| 4 |
<property name = "Name" value = "XML Tab"/> |
| 5 |
<property name = "build.dir" value = "./build"/> |
| 6 |
<property name = "build.src" value = "${build.dir}/src"/> |
| 7 |
<property name = "build.dest" value = "${build.dir}/classes"/> |
| 8 |
<property name = "build.scripts" value = "./bin"/> |
| 9 |
<property name = "docs.dir" value = "./docs"/> |
| 10 |
<property name = "build.javadoc" value = "${docs.dir}/apidocs"/> |
| 11 |
<property name = "lib.dir" value = "./lib"/> |
| 12 |
<property name = "deprecation" value = "on"/> |
| 13 |
<property name = "debug" value = "off"/> |
| 14 |
<property name = "includeAntRuntime" value = "no"/> |
| 15 |
<property name = "optimize" value = "on"/> |
| 16 |
<property name = "packages" value = "edu.*"/> |
| 17 |
<property name = "dist.dir" value = "./dist"/> |
| 18 |
<property file = "../global.properties"/> |
| 19 |
<target name = "init"> |
| 20 |
<tstamp/> |
| 21 |
</target> |
| 22 |
<!-- =================================================================== --> |
| 23 |
|
| 24 |
<!-- PREPARE-SRC --> |
| 25 |
|
| 26 |
<!-- =================================================================== --> |
| 27 |
<target name = "prepare-src" depends = "init"> |
| 28 |
<mkdir dir = "${build.src}"/> |
| 29 |
<mkdir dir = "${build.dest}"/> |
| 30 |
<mkdir dir = "${dist.dir}"/> |
| 31 |
<!-- get source code from subversion repository --> |
| 32 |
<exec executable = "cmd.exe" dir = "${batch.files}" os = "${os}"> |
| 33 |
<arg line = "/c checkout ${svn.core.url}/${project.name}/trunk ../${project.name} --non-recursive"/> |
| 34 |
</exec> |
| 35 |
<exec executable = "cmd.exe" dir = "${batch.files}" os = "${os}"> |
| 36 |
<arg line = "/c checkout ${svn.core.url}/${project.name}/trunk/src ../${project.name}/build/src"/> |
| 37 |
</exec> |
| 38 |
<exec executable = "cmd.exe" dir = "${batch.files}" os = "${os}"> |
| 39 |
<arg line = "/c checkout ${svn.core.url}/${project.name}/trunk/docs ../${project.name}/docs"/> |
| 40 |
</exec> |
| 41 |
<!-- add license text to top of source files --> |
| 42 |
<exec executable = "cmd.exe" dir = "${batch.files}" os = "${os}"> |
| 43 |
<arg line = "/c merge_license_with_source ../${project.name}/build/src"/> |
| 44 |
</exec> |
| 45 |
</target> |
| 46 |
<!-- =================================================================== --> |
| 47 |
|
| 48 |
<!-- COMPILE --> |
| 49 |
|
| 50 |
<!-- Compile the source directory. --> |
| 51 |
|
| 52 |
<!-- =================================================================== --> |
| 53 |
<target name = "compile" depends = "prepare-src"> |
| 54 |
<!-- compile source code --> |
| 55 |
<javac srcdir = "${build.src}" destdir = "${build.dest}" deprecation = "${deprecation}" debug = "${debug}" optimize = "${optimize}" includeAntRuntime = "${includeAntRuntime}"> |
| 56 |
<classpath> |
| 57 |
<pathelement path = "${protege.jar}"/> |
| 58 |
</classpath> |
| 59 |
</javac> |
| 60 |
</target> |
| 61 |
<!-- =================================================================== --> |
| 62 |
|
| 63 |
<!-- JAR --> |
| 64 |
|
| 65 |
<!-- Create the class package. --> |
| 66 |
|
| 67 |
<!-- =================================================================== --> |
| 68 |
<target name = "jar" depends = "compile"> |
| 69 |
<jar jarfile = "${dist.dir}/${project.name}.jar" basedir = "${build.dest}" manifest = "${build.src}/META-INF//MANIFEST.MF"/> |
| 70 |
</target> |
| 71 |
<!-- =================================================================== --> |
| 72 |
|
| 73 |
<!-- JAVADOC --> |
| 74 |
|
| 75 |
<!-- Create the API documentation. --> |
| 76 |
|
| 77 |
<!-- =================================================================== --> |
| 78 |
<target name = "javadoc" depends = "prepare-src"> |
| 79 |
<mkdir dir = "${build.javadoc}"/> |
| 80 |
<javadoc packagenames = "${packages}" sourcepath = "${build.src}" destdir = "${build.javadoc}" doctitle = "${Name}" header = "${Name}" footer = "${Name}" windowtitle = "${Name}" author = "true"> |
| 81 |
<bottom><![CDATA[<small><a href=mailto:protege-help@smi.stanford.edu>Submit a bug report or feature request</a></small>]]></bottom> |
| 82 |
<link href = "${jdk.javadoc}"/> |
| 83 |
<link href = "${protege.javadoc}"/> |
| 84 |
<classpath> |
| 85 |
<pathelement path = "${protege.jar}"/> |
| 86 |
</classpath> |
| 87 |
</javadoc> |
| 88 |
</target> |
| 89 |
<!-- =================================================================== --> |
| 90 |
|
| 91 |
<!-- DIST --> |
| 92 |
|
| 93 |
<!-- Zips up all source code, resources, and api documentation. --> |
| 94 |
|
| 95 |
<!-- =================================================================== --> |
| 96 |
<target name = "dist" depends = "init"> |
| 97 |
<zip zipfile = "${dist.dir}/${project.name}-src-${version}.zip" update = "no"> |
| 98 |
<zipfileset dir = "${build.src}" prefix = "${Name}/src"/> |
| 99 |
<zipfileset dir = "${build.javadoc}" prefix = "${Name}/docs/apidocs"/> |
| 100 |
</zip> |
| 101 |
<zip zipfile = "${dist.dir}/${project.name}-bin-${version}.zip" update = "no"> |
| 102 |
<zipfileset dir = "${dist.dir}" includes = "${project.name}.jar" prefix = "edu.stanford.smi.protegex.xml-tab"/> |
| 103 |
<zipfileset dir = "${docs.dir}" includes = "plugin.properties" prefix = "edu.stanford.smi.protegex.xml-tab"/> |
| 104 |
<zipfileset dir = "${docs.dir}" includes = "about_xml_tab.html" prefix = "edu.stanford.smi.protegex.xml-tab"/> |
| 105 |
<zipfileset dir = "${text.files}" includes = "readme" prefix = "edu.stanford.smi.protegex.xml-tab"/> |
| 106 |
</zip> |
| 107 |
</target> |
| 108 |
<!-- =================================================================== --> |
| 109 |
|
| 110 |
<!-- CLEAN --> |
| 111 |
|
| 112 |
<!-- Cleans all generated files and directories. --> |
| 113 |
|
| 114 |
<!-- =================================================================== --> |
| 115 |
<target name = "clean" depends = "init"> |
| 116 |
<delete dir = "${build.dir}"/> |
| 117 |
<delete dir = "${docs.dir}"/> |
| 118 |
<delete dir = "${dist.dir}"/> |
| 119 |
</target> |
| 120 |
<!-- =================================================================== --> |
| 121 |
|
| 122 |
<!-- ALL --> |
| 123 |
|
| 124 |
<!-- Create the jar file, javadoc api documentaion, and the zip file. --> |
| 125 |
|
| 126 |
<!-- =================================================================== --> |
| 127 |
<target name = "all" depends = "jar,javadoc,dist"/> |
| 128 |
</project> |