source: osm/applications/editors/josm/plugins/slippymap/build.xml@ 24602

Last change on this file since 24602 was 24495, checked in by bastik, 14 years ago

'change ToU to the osm specific one (like it is done in Potlatch 2)'

File size: 6.6 KB
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<!--
3** This is the build file for the slippymap plugin
4**
5** Maintaining versions
6** ====================
7** see README.template
8**
9** Usage
10** =====
11** To build it run
12**
13** > ant dist
14**
15** To install the generated plugin locally (in your default plugin directory) run
16**
17** > ant install
18**
19** To build against the core in ../../core, create a correct manifest and deploy to
20** SVN,
21** set the properties commit.message and plugin.main.version
22** and run
23** > ant publish
24**
25**
26-->
27<project name="slippymap" default="dist" basedir=".">
28
29 <property name="commit.message" value="change ToU to the osm specific one (like it is done in Potlatch 2)" />
30 <property name="plugin.main.version" value="3687" />
31
32 <property name="josm" location="../../core/dist/josm-custom.jar"/>
33 <property name="plugin.dist.dir" value="../../dist"/>
34 <property name="plugin.build.dir" value="build"/>
35 <property name="plugin.jar" value="${plugin.dist.dir}/${ant.project.name}.jar"/>
36 <property name="ant.build.javac.target" value="1.5"/>
37 <target name="init">
38 <mkdir dir="${plugin.build.dir}"/>
39 </target>
40 <target name="compile" depends="init">
41 <echo message="creating ${plugin.jar}"/>
42 <javac srcdir="src" classpath="${josm}" debug="true" destdir="${plugin.build.dir}">
43 <compilerarg value="-Xlint:deprecation"/>
44 <compilerarg value="-Xlint:unchecked"/>
45 </javac>
46 </target>
47 <target name="dist" depends="compile,revision">
48 <copy todir="${plugin.build.dir}/images">
49 <fileset dir="images"/>
50 </copy>
51 <jar destfile="${plugin.jar}" basedir="${plugin.build.dir}">
52 <manifest>
53 <attribute name="Author" value="Frederik Ramm"/>
54 <attribute name="Plugin-Class" value="org.openstreetmap.josm.plugins.slippymap.SlippyMapPlugin"/>
55 <attribute name="Plugin-Date" value="${version.entry.commit.date}"/>
56 <attribute name="Plugin-Description" value="Displays a slippy map grid in JOSM. Can load tiles from slippy map as background and request updates."/>
57 <attribute name="Plugin-Icon" value="images/preferences/slippymap.png"/>
58 <attribute name="Plugin-Link" value="http://wiki.openstreetmap.org/index.php/JOSM/Plugins/SlippyMap"/>
59 <attribute name="Plugin-Mainversion" value="${plugin.main.version}"/>
60 <attribute name="Plugin-Version" value="${version.entry.commit.revision}"/>
61 </manifest>
62 </jar>
63 </target>
64 <target name="revision">
65 <exec append="false" output="REVISION" executable="svn" failifexecutionfails="false">
66 <env key="LANG" value="C"/>
67 <arg value="info"/>
68 <arg value="--xml"/>
69 <arg value="."/>
70 </exec>
71 <xmlproperty file="REVISION" prefix="version" keepRoot="false" collapseAttributes="true"/>
72 <delete file="REVISION"/>
73 </target>
74 <target name="clean">
75 <delete dir="${plugin.build.dir}"/>
76 <delete file="${plugin.jar}"/>
77 </target>
78 <target name="install" depends="dist">
79 <property environment="env"/>
80 <condition property="josm.plugins.dir" value="${env.APPDATA}/JOSM/plugins" else="${user.home}/.josm/plugins">
81 <and>
82 <os family="windows"/>
83 </and>
84 </condition>
85 <copy file="${plugin.jar}" todir="${josm.plugins.dir}"/>
86 </target>
87
88 <!--
89 ************************** Publishing the plugin ***********************************
90 -->
91 <!--
92 ** extracts the JOSM release for the JOSM version in ../core and saves it in the
93 ** property ${coreversion.info.entry.revision}
94 **
95 -->
96 <target name="core-info">
97 <exec append="false" output="core.info.xml" executable="svn" failifexecutionfails="false">
98 <env key="LANG" value="C"/>
99 <arg value="info"/>
100 <arg value="--xml"/>
101 <arg value="../../core"/>
102 </exec>
103 <xmlproperty file="core.info.xml" prefix="coreversion" keepRoot="true" collapseAttributes="true"/>
104 <echo>Building against core revision ${coreversion.info.entry.revision}.</echo>
105 <echo>Plugin-Mainversion is set to ${plugin.main.version}.</echo>
106 <delete file="core.info.xml" />
107 </target>
108
109 <!--
110 ** commits the source tree for this plugin
111 -->
112 <target name="commit-current">
113 <echo>Commiting the plugin source with message '${commit.message}' ...</echo>
114 <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
115 <env key="LANG" value="C"/>
116 <arg value="commit"/>
117 <arg value="-m '${commit.message}'"/>
118 <arg value="."/>
119 </exec>
120 </target>
121
122 <!--
123 ** updates (svn up) the source tree for this plugin
124 -->
125 <target name="update-current">
126 <echo>Updating plugin source ...</echo>
127 <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
128 <env key="LANG" value="C"/>
129 <arg value="up"/>
130 <arg value="."/>
131 </exec>
132 <echo>Updating ${plugin.jar} ...</echo>
133 <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
134 <env key="LANG" value="C"/>
135 <arg value="up"/>
136 <arg value="../dist/${plugin.jar}"/>
137 </exec>
138 </target>
139
140 <!--
141 ** commits the plugin.jar
142 -->
143 <target name="commit-dist">
144 <echo>
145 ***** Properties of published ${plugin.jar} *****
146 Commit message : '${commit.message}'
147 Plugin-Mainversion: ${plugin.main.version}
148 JOSM build version: ${coreversion.info.entry.revision}
149 Plugin-Version : ${version.entry.commit.revision}
150 ***** / Properties of published ${plugin.jar} *****
151
152 Now commiting ${plugin.jar} ...
153 </echo>
154 <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
155 <env key="LANG" value="C"/>
156 <arg value="-m '${commit.message}'"/>
157 <arg value="commit"/>
158 <arg value="${plugin.jar}"/>
159 </exec>
160 </target>
161
162 <!-- ** make sure svn is present as a command line tool ** -->
163 <target name="ensure-svn-present">
164 <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false" failonerror="false" resultproperty="svn.exit.code">
165 <env key="LANG" value="C" />
166 <arg value="--version" />
167 </exec>
168 <fail message="Fatal: command 'svn --version' failed. Please make sure svn is installed on your system.">
169 <!-- return code not set at all? Most likely svn isn't installed -->
170 <condition>
171 <not>
172 <isset property="svn.exit.code" />
173 </not>
174 </condition>
175 </fail>
176 <fail message="Fatal: command 'svn --version' failed. Please make sure a working copy of svn is installed on your system.">
177 <!-- error code from SVN? Most likely svn is not what we are looking on this system -->
178 <condition>
179 <isfailure code="${svn.exit.code}" />
180 </condition>
181 </fail>
182 </target>
183
184 <target name="publish" depends="ensure-svn-present,core-info,commit-current,update-current,clean,dist,commit-dist">
185 </target>
186
187 <target name="dev-install">
188 <copy file="${plugin.jar}" todir="c:/data/projekte/osm/josm-dev/plugins" />
189 </target>
190</project>
Note: See TracBrowser for help on using the repository browser.