source: osm/applications/editors/josm/plugins/surveyor/build.xml@ 3739

Last change on this file since 3739 was 3411, checked in by christofd, 17 years ago

added site generation for pluginmanagement
most values are put into property values

File size: 4.0 KB
Line 
1<project name="surveyor" default="dist" basedir=".">
2
3 <!-- compilation properties -->
4 <property name="josm.build.dir" value="../JOSM"/>
5 <property name="josm.home.dir" value="${user.home}/.josm"/>
6 <property name="plugin.build.dir" value="bin"/>
7 <property name="plugin.name" value="${ant.project.name}"/>
8 <property name="plugin.jar" value="${plugin.name}.jar"/>
9 <property name="livegpsplugin.jar" value="${josm.home.dir}/plugins/livegps.jar"/>
10
11 <!-- plugin meta data (enter new version number if anything changed!) -->
12 <property name="plugin.version" value="1.1"/>
13 <property name="plugin.description" value="Allow adding markers/nodes on current gps positions (V${plugin.version})."/>
14 <property name="plugin.stage" value="60"/>
15 <property name="plugin.class" value="at.dallermassl.josm.plugin.surveyor.SurveyorPlugin"/>
16
17 <!-- update site meta data -->
18 <property name="plugin.site.file" value="josm-site.xml"/>
19 <property name="plugin.site.description" value="Josm's Surveyor Update Site"/>
20 <property name="plugin.site.url" value="http://www.tegmento.org/~cdaller/josm/surveyor/"/>
21 <property name="plugin.site.upload.target" value="cdaller@www.tegmento.org:public_html/josm/surveyor/"/>
22
23
24 <target name="dist" depends="compile,site">
25 <!-- images -->
26 <copy todir="${plugin.build.dir}/images">
27 <fileset dir="src/images" />
28 </copy>
29 <!-- copy configuration xml files -->
30 <copy todir="${plugin.build.dir}">
31 <fileset dir="src">
32 <include name="*.xml"/>
33 </fileset>
34 </copy>
35
36 <!-- create jar file -->
37 <jar destfile="${plugin.jar}" basedir="${plugin.build.dir}">
38 <manifest>
39 <attribute name="Plugin-Class" value="${plugin.class}" />
40 <attribute name="Plugin-Description" value="${plugin.description}" />
41 <attribute name="Plugin-Version" value="${plugin.version}" />
42 <!--attribute name="Plugin-Dependencies" value="org.eigenheimstrasse.josm" /-->
43 <attribute name="Plugin-Stage" value="${plugin.stage}" />
44 </manifest>
45 </jar>
46 </target>
47
48 <target name="compile" depends="init">
49 <mkdir dir="${plugin.build.dir}"/>
50 <javac srcdir="src" destdir="${plugin.build.dir}" debug="true" source="1.5" target="1.5">
51 <classpath>
52 <pathelement path="${josm.build.dir}/build"/>
53 <fileset dir="${josm.build.dir}/lib">
54 <include name="**/*.jar"/>
55 </fileset>
56 <pathelement location="${livegpsplugin.jar}"/>
57 </classpath>
58 </javac>
59 </target>
60
61 <target name="install" depends="dist">
62 <copy file="${plugin.jar}" todir="${josm.home.dir}/plugins" />
63 </target>
64
65 <target name="init">
66 <echo>java version: ${java.version}</echo>
67 </target>
68
69 <target name="clean">
70 <delete dir="${plugin.build.dir}" />
71 <delete dir="${plugin.site.file}" />
72 <delete dir="${plugin.jar}" />
73 </target>
74
75 <!-- write site description for the given plugin -->
76 <target name="site">
77 <echo message="creating site description in ${plugin.site.file}"/>
78 <echo file="${plugin.site.file}">&lt;?xml version="1.0"?>
79&lt;site version="1.0">
80 &lt;!-- meta data of site -->
81 &lt;site-info>
82 &lt;site-name>${plugin.site.description}&lt;/site-name>
83 &lt;site-url>${plugin.site.url}&lt;/site-url>
84 &lt;/site-info>
85
86 &lt;!-- plugins available on this site -->
87 &lt;plugins>
88 &lt;plugin id="${ant.project.name}" version="${plugin.version}">
89 &lt;name>${ant.project.name}&lt;/name>
90 &lt;description>${plugin.description}&lt;/description>
91 &lt;resources>
92 &lt;resource src="${plugin.site.url}/${plugin.jar}"
93 target="$${josm.user.dir}/plugins/${plugin.jar}"/>
94 &lt;/resources>
95 &lt;/plugin>
96 &lt;/plugins>
97&lt;/site>
98 </echo>
99 </target>
100
101 <!-- upload the site description and the jar file via ssh -->
102 <target name="upload" depends="dist,site">
103 <echo message="uploading jar and site description to ${plugin.site.upload.target}"/>
104 <exec executable="scp">
105 <arg value="${plugin.jar}"/>
106 <arg value="${plugin.site.file}"/>
107 <arg value="${plugin.site.upload.target}"/>
108 </exec>
109 </target>
110
111</project>
Note: See TracBrowser for help on using the repository browser.