source: subversion/applications/editors/josm/plugins/cadastre-fr/build.xml @ 19267

Last change on this file since 19267 was 19080, checked in by pieren, 10 years ago

modified URL's for request and images size due to WMS changes and new capabilities

File size: 6.3 KB
Line 
1<!--
2** This is a template build file for the cadastre-fr plugin.
3**
4** Maintaining versions
5** ====================
6** see README.template
7**
8** Usage
9** =====
10** To build it run
11**
12**    > ant  dist
13**
14** To install the generated plugin locally (in your default plugin directory) run
15**
16**    > ant  install
17**
18** To build against the core in ../../core, create a correct manifest and deploy to
19** SVN,
20**    set the properties commit.message and plugin.main.version
21** and run
22**    > ant  publish
23**
24**
25-->
26<project name="cadastre-fr" default="dist" basedir=".">
27    <property name="josm"                   location="../../core/dist/josm-custom.jar"/>
28    <property name="plugin.dist.dir"        value="../../dist"/>
29    <property name="plugin.build.dir"       value="build"/>
30    <property name="plugin.jar"             value="${plugin.dist.dir}/${ant.project.name}.jar"/>
31    <property name="ant.build.javac.target" value="1.5"/>
32       
33       
34
35    <property name="commit.message" value="Updated to new referrer support in OsmPrimitive" />         
36    <property name="plugin.main.version" value="2614" />
37       
38    <target name="init">
39        <mkdir dir="${plugin.build.dir}"/>
40    </target>
41    <target name="compile" depends="init">
42        <echo message="creating ${plugin.jar}"/>
43        <javac srcdir="src" classpath="${josm}" debug="true" destdir="${plugin.build.dir}">
44            <compilerarg value="-Xlint:deprecation"/>
45            <compilerarg value="-Xlint:unchecked"/>
46        </javac>
47    </target>
48    <target name="dist" depends="compile,revision">
49        <copy todir="${plugin.build.dir}/images">
50            <fileset dir="images"/>
51        </copy>
52        <jar destfile="${plugin.jar}" basedir="${plugin.build.dir}">
53            <manifest>
54                <attribute name="Author" value="Pieren"/>
55                <attribute name="Plugin-Class" value="cadastre_fr.CadastrePlugin"/>
56                <attribute name="Plugin-Date" value="${version.entry.commit.date}"/>
57                <attribute name="Plugin-Description" value="A special handler for the French land registry WMS server."/>
58                <attribute name="Plugin-Link" value="http://wiki.openstreetmap.org/wiki/FR:JOSM/Fr:Plugin/Cadastre"/>
59                <attribute name="Plugin-Mainversion" value="${plugin.main.version}"/>
60                <attribute name="Plugin-Stage" value="60"/>
61                <attribute name="Plugin-Version" value="${version.entry.commit.revision}"/>
62            </manifest>
63        </jar>
64    </target>
65    <target name="revision">
66        <exec append="false" output="REVISION" executable="svn" failifexecutionfails="false">
67            <env key="LANG" value="C"/>
68            <arg value="info"/>
69            <arg value="--xml"/>
70            <arg value="."/>
71        </exec>
72        <xmlproperty file="REVISION" prefix="version" keepRoot="false" collapseAttributes="true"/>
73        <delete file="REVISION"/>
74    </target>
75    <target name="clean">
76        <delete dir="${plugin.build.dir}"/>
77        <delete file="${plugin.jar}"/>
78    </target>
79    <target name="install" depends="dist">
80        <property environment="env"/>
81        <condition property="josm.plugins.dir" value="${env.APPDATA}/JOSM/plugins" else="${user.home}/.josm/plugins">
82            <and>
83                <os family="windows"/>
84            </and>
85        </condition>
86        <copy file="${plugin.jar}" todir="${josm.plugins.dir}"/>
87    </target>
88       
89        <!--
90                 ************************** Publishing the plugin ***********************************
91                -->
92                        <!--
93                          ** extracts the JOSM release for the JOSM version in ../core and saves it in the
94                          ** property ${coreversion.info.entry.revision}
95                          **
96                        -->
97                        <target name="core-info">
98                        <exec append="false" output="core.info.xml" executable="svn" failifexecutionfails="false">
99                                    <env key="LANG" value="C"/>
100                                    <arg value="info"/>
101                                    <arg value="--xml"/>
102                                    <arg value="../../core"/>
103                        </exec>
104                        <xmlproperty file="core.info.xml" prefix="coreversion" keepRoot="true" collapseAttributes="true"/>
105                                <echo>Building against core revision ${coreversion.info.entry.revision}.</echo>                 
106                                <echo>Plugin-Mainversion is set to ${plugin.main.version}.</echo>
107                                <delete file="core.info.xml" />
108                        </target>
109
110                        <!--
111                         ** commits the source tree for this plugin
112                        -->
113                        <target name="commit-current">
114                                <echo>Commiting the plugin source with message '${commit.message}' ...</echo>
115                            <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
116                                            <env key="LANG" value="C"/>
117                                            <arg value="commit"/>
118                                            <arg value="-m '${commit.message}'"/>
119                                            <arg value="."/>
120                            </exec>         
121                        </target>
122
123                        <!--
124                        ** updates (svn up) the source tree for this plugin
125                        -->
126                        <target name="update-current">
127                                <echo>Updating plugin source ...</echo>
128                            <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
129                                            <env key="LANG" value="C"/>
130                                            <arg value="up"/>
131                                            <arg value="."/>
132                            </exec>         
133                                <echo>Updating ${plugin.jar} ...</echo>
134                            <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
135                                            <env key="LANG" value="C"/>
136                                            <arg value="up"/>
137                                            <arg value="../dist/${plugin.jar}"/>
138                            </exec>         
139                        </target>
140                       
141                        <!--
142                         ** commits the plugin.jar
143                         -->
144                        <target name="commit-dist">
145                                        <echo>
146        ***** Properties of published ${plugin.jar} *****
147        Commit message    : '${commit.message}'                                 
148        Plugin-Mainversion: ${plugin.main.version}
149        JOSM build version: ${coreversion.info.entry.revision}
150        Plugin-Version    : ${version.entry.commit.revision}
151        ***** / Properties of published ${plugin.jar} *****                                     
152                                               
153        Now commiting ${plugin.jar} ...
154        </echo>                                 
155                                    <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
156                                                    <env key="LANG" value="C"/>
157                                                                <arg value="-m '${commit.message}'"/>
158                                                                <arg value="commit"/>                                           
159                                                <arg value="${plugin.jar}"/>
160                                    </exec>         
161                        </target>
162                                       
163                        <target name="publish" depends="core-info,commit-current,update-current,clean,dist,commit-dist">
164                        </target>
165</project>
Note: See TracBrowser for help on using the repository browser.