Ignore:
Timestamp:
2010-09-13T17:17:00+02:00 (14 years ago)
Author:
fkowitz
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • applications/editors/josm/plugins/00_plugin_dir_template/build.xml

    r22568 r23139  
    2828**
    2929-->
    30 <project name="myPluginName" default="dist" basedir=".">
    31 
    32     <!-- enter the SVN commit message -->
    33     <property name="commit.message" value="Commit message" />
    34     <!-- enter the *lowest* JOSM version this plugin is currently compatible with -->
    35     <property name="plugin.main.version" value="" />
    36 
    37 
    38     <!--
     30<project name="ImportImagePlugin" default="dist" basedir=".">
     31
     32        <!-- enter the SVN commit message -->
     33        <property name="commit.message" value="Commit message" />
     34        <!-- enter the *lowest* JOSM version this plugin is currently compatible with -->
     35        <property name="plugin.main.version" value="" />
     36
     37
     38        <!--
    3939      ************************************************
    4040      ** should not be necessary to change the following properties
    4141     -->
    42     <property name="josm"                   location="../../core/dist/josm-custom.jar"/>
    43     <property name="plugin.build.dir"       value="build"/>
    44     <property name="plugin.src.dir"         value="src"/>
    45     <!-- this is the directory where the plugin jar is copied to -->
    46     <property name="plugin.dist.dir"        value="../../dist"/>
    47     <property name="ant.build.javac.target" value="1.5"/>
    48     <property name="plugin.dist.dir"        value="../../dist"/>
    49     <property name="plugin.jar"             value="${plugin.dist.dir}/${ant.project.name}.jar"/>
    50 
    51     <!--
     42        <property name="josm"                   location="../../core/dist/josm-custom.jar"/>
     43        <property name="plugin.build.dir"       value="build"/>
     44        <property name="plugin.src.dir"         value="src"/>
     45        <!-- this is the directory where the plugin jar is copied to -->
     46        <property name="plugin.dist.dir"        value="../../dist"/>
     47        <property name="ant.build.javac.target" value="1.5"/>
     48        <property name="plugin.dist.dir"        value="../../dist"/>
     49        <property name="plugin.jar"             value="${plugin.dist.dir}/${ant.project.name}.jar"/>
     50
     51        <!--
    5252    **********************************************************
    5353    ** init - initializes the build
    5454    **********************************************************
    5555    -->
    56     <target name="init">
    57         <mkdir dir="${plugin.build.dir}"/>
    58     </target>
    59 
    60     <!--
     56        <target name="init">
     57                <mkdir dir="${plugin.build.dir}"/>
     58        </target>
     59
     60        <!--
    6161    **********************************************************
    6262    ** compile - complies the source tree
    6363    **********************************************************
    6464    -->
    65     <target name="compile" depends="init">
    66         <echo message="compiling sources for  ${plugin.jar} ... "/>
    67         <javac srcdir="src" classpath="${josm}" debug="true" destdir="${plugin.build.dir}">
    68             <compilerarg value="-Xlint:deprecation"/>
    69             <compilerarg value="-Xlint:unchecked"/>
    70         </javac>
    71     </target>
    72 
    73     <!--
     65        <target name="compile" depends="init">
     66                <echo message="compiling sources for  ${plugin.jar} ... "/>
     67                <javac srcdir="src" classpath="${josm}" debug="true" destdir="${plugin.build.dir}">
     68            <classpath>
     69                <pathelement location="${josm}"/>
     70                <fileset dir="lib">
     71                    <include name="**/*.jar"/>
     72                </fileset>
     73            </classpath>
     74                        <compilerarg value="-Xlint:deprecation"/>
     75                        <compilerarg value="-Xlint:unchecked"/>
     76                </javac>
     77        </target>
     78
     79        <!--
    7480    **********************************************************
    7581    ** dist - creates the plugin jar
    7682    **********************************************************
    7783    -->
    78     <target name="dist" depends="compile,revision">
    79         <echo message="creating ${ant.project.name}.jar ... "/>
    80         <copy todir="${plugin.build.dir}/resources">
    81             <fileset dir="resources"/>
    82         </copy>
    83         <copy todir="${plugin.build.dir}/images">
    84             <fileset dir="images"/>
    85         </copy>
    86         <copy todir="${plugin.build.dir}">
    87             <fileset dir=".">
    88                 <include name="README" />
    89                 <include name="LICENSE" />
    90             </fileset>
    91         </copy>
    92         <jar destfile="${plugin.jar}" basedir="${plugin.build.dir}">
    93             <!--
     84        <target name="dist" depends="compile,revision">
     85                <echo message="creating ${ant.project.name}.jar ... "/>
     86               
     87                <copy todir="${plugin.build.dir}/lib">
     88                        <fileset dir="lib">
     89                                  <not>
     90                                    <filename name="log4j-1.2.12.jar"/>
     91                                  </not>
     92                        </fileset>
     93                </copy>
     94        <unjar src="lib/log4j-1.2.12.jar" dest="${plugin.build.dir}"/>
     95                <copy todir="${plugin.build.dir}/images">
     96                        <fileset dir="images"/>
     97                </copy>
     98                <copy todir="${plugin.build.dir}/resources">
     99                        <fileset dir="resources"/>
     100                </copy>
     101                <copy todir="${plugin.build.dir}">
     102                        <fileset dir=".">
     103                                <include name="README" />
     104                                <include name="LICENSE" />
     105                        </fileset>
     106                </copy>
     107               
     108                <jar destfile="${plugin.jar}" basedir="${plugin.build.dir}">
     109                        <!--
    94110        ************************************************
    95111        ** configure these properties. Most of them will be copied to the plugins
     
    99115        ************************************************
    100116    -->
    101             <manifest>
    102                 <attribute name="Author" value="..."/>
    103                 <attribute name="Plugin-Class" value="..."/>
     117
     118                        <manifest>
     119                <attribute name="Author" value="Christoph Beekmans, Fabian Kowitz, Anna Robaszkiewicz, Oliver Kuhn, Martin Ulitzny"/>
     120                <attribute name="Plugin-Class" value="org.openstreetmap.josm.plugins.ImageImportPlugin.ImageImportPlugin"/>
    104121                <attribute name="Plugin-Date" value="${version.entry.commit.date}"/>
    105                 <attribute name="Plugin-Description" value="..."/>
    106                 <attribute name="Plugin-Icon" value="..."/>
    107                 <attribute name="Plugin-Link" value="..."/>
    108                 <attribute name="Plugin-Mainversion" value="${plugin.main.version}"/>
     122                <attribute name="Plugin-Description" value="Plugin for importing spatial referenced images"/>
     123                <attribute name="Plugin-Link" value=" -- will soon be added -- "/>
     124                <attribute name="Plugin-Mainversion" value="1.0"/>
    109125                <attribute name="Plugin-Version" value="${version.entry.commit.revision}"/>
    110             </manifest>
    111         </jar>
    112     </target>
    113 
    114     <!--
     126                                <attribute name="Class-Path" value="."/>
     127                        </manifest>
     128                </jar>
     129        </target>
     130
     131        <!--
    115132    **********************************************************
    116133    ** revision - extracts the current revision number for the
     
    119136    **********************************************************
    120137    -->
    121     <target name="revision">
    122 
    123         <exec append="false" output="REVISION" executable="svn" failifexecutionfails="false">
    124             <env key="LANG" value="C"/>
    125             <arg value="info"/>
    126             <arg value="--xml"/>
    127             <arg value="."/>
    128         </exec>
    129         <xmlproperty file="REVISION" prefix="version" keepRoot="false" collapseAttributes="true"/>
    130         <delete file="REVISION"/>
    131     </target>
    132 
    133     <!--
     138        <target name="revision">
     139
     140                <exec append="false" output="REVISION" executable="svn" failifexecutionfails="false">
     141                        <env key="LANG" value="C"/>
     142                        <arg value="info"/>
     143                        <arg value="--xml"/>
     144                        <arg value="."/>
     145                </exec>
     146                <xmlproperty file="REVISION" prefix="version" keepRoot="false" collapseAttributes="true"/>
     147                <delete file="REVISION"/>
     148        </target>
     149
     150        <!--
    134151    **********************************************************
    135152    ** clean - clean up the build environment
    136153    **********************************************************
    137154    -->
    138     <target name="clean">
    139         <delete dir="${plugin.build.dir}"/>
    140         <delete file="${plugin.jar}"/>
    141     </target>
    142 
    143     <!--
     155        <target name="clean">
     156                <delete dir="${plugin.build.dir}"/>
     157                <delete file="${plugin.jar}"/>
     158        </target>
     159
     160        <!--
    144161    **********************************************************
    145162    ** install - install the plugin in your local JOSM installation
    146163    **********************************************************
    147164    -->
    148     <target name="install" depends="dist">
    149         <property environment="env"/>
    150         <condition property="josm.plugins.dir" value="${env.APPDATA}/JOSM/plugins" else="${user.home}/.josm/plugins">
    151             <and>
    152                 <os family="windows"/>
    153             </and>
    154         </condition>
    155         <copy file="${plugin.jar}" todir="${josm.plugins.dir}"/>
    156     </target>
    157 
    158 
    159     <!--
    160     ************************** Publishing the plugin ***********************************
    161     -->
    162     <!--
    163         ** extracts the JOSM release for the JOSM version in ../core and saves it in the
    164         ** property ${coreversion.info.entry.revision}
    165         **
    166         -->
    167     <target name="core-info">
    168         <exec append="false" output="core.info.xml" executable="svn" failifexecutionfails="false">
    169             <env key="LANG" value="C"/>
    170             <arg value="info"/>
    171             <arg value="--xml"/>
    172             <arg value="../../core"/>
    173         </exec>
    174         <xmlproperty file="core.info.xml" prefix="coreversion" keepRoot="true" collapseAttributes="true"/>
    175         <echo>Building against core revision ${coreversion.info.entry.revision}.</echo>
    176         <echo>Plugin-Mainversion is set to ${plugin.main.version}.</echo>
    177         <delete file="core.info.xml" />
    178     </target>
    179 
    180     <!--
    181         ** commits the source tree for this plugin
    182         -->
    183     <target name="commit-current">
    184         <echo>Commiting the plugin source with message '${commit.message}' ...</echo>
    185         <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
    186             <env key="LANG" value="C"/>
    187             <arg value="commit"/>
    188             <arg value="-m '${commit.message}'"/>
    189             <arg value="."/>
    190         </exec>
    191     </target>
    192 
    193     <!--
    194         ** updates (svn up) the source tree for this plugin
    195         -->
    196     <target name="update-current">
    197         <echo>Updating plugin source ...</echo>
    198         <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
    199             <env key="LANG" value="C"/>
    200             <arg value="up"/>
    201             <arg value="."/>
    202         </exec>
    203         <echo>Updating ${plugin.jar} ...</echo>
    204         <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
    205             <env key="LANG" value="C"/>
    206             <arg value="up"/>
    207             <arg value="../dist/${plugin.jar}"/>
    208         </exec>
    209     </target>
    210 
    211     <!--
    212         ** commits the plugin.jar
    213         -->
    214     <target name="commit-dist">
    215         <echo>
    216     ***** Properties of published ${plugin.jar} *****
    217     Commit message    : '${commit.message}'                   
    218     Plugin-Mainversion: ${plugin.main.version}
    219     JOSM build version: ${coreversion.info.entry.revision}
    220     Plugin-Version    : ${version.entry.commit.revision}
    221     ***** / Properties of published ${plugin.jar} *****                   
    222                        
    223     Now commiting ${plugin.jar} ...
    224     </echo>
    225         <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
    226             <env key="LANG" value="C"/>
    227             <arg value="-m '${commit.message}'"/>
    228             <arg value="commit"/>
    229             <arg value="${plugin.jar}"/>
    230         </exec>
    231     </target>
    232 
    233     <!-- ** make sure svn is present as a command line tool ** -->
    234     <target name="ensure-svn-present">
    235         <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false" failonerror="false" resultproperty="svn.exit.code">
    236             <env key="LANG" value="C" />
    237             <arg value="--version" />
    238         </exec>
    239         <fail message="Fatal: command 'svn --version' failed. Please make sure svn is installed on your system.">
    240             <!-- return code not set at all? Most likely svn isn't installed -->
    241             <condition>
    242                 <not>
    243                     <isset property="svn.exit.code" />
    244                 </not>
    245             </condition>
    246         </fail>
    247         <fail message="Fatal: command 'svn --version' failed. Please make sure a working copy of svn is installed on your system.">
    248             <!-- error code from SVN? Most likely svn is not what we are looking on this system -->
    249             <condition>
    250                 <isfailure code="${svn.exit.code}" />
    251             </condition>
    252         </fail>
    253     </target>
    254 
    255     <target name="publish" depends="ensure-svn-present,core-info,commit-current,update-current,clean,dist,commit-dist">
    256     </target>
     165        <target name="install" depends="dist">
     166                <property environment="env"/>
     167                <condition property="josm.plugins.dir" value="${env.APPDATA}/JOSM/plugins" else="${user.home}/.josm/plugins">
     168                        <and>
     169                                <os family="windows"/>
     170                        </and>
     171                </condition>
     172                <copy file="${plugin.jar}" todir="${josm.plugins.dir}"/>
     173        </target>
     174
     175
     176        <!--
     177        ************************** Publishing the plugin ***********************************
     178        -->
     179        <!--
     180                ** extracts the JOSM release for the JOSM version in ../core and saves it in the
     181                ** property ${coreversion.info.entry.revision}
     182                **
     183                -->
     184        <target name="core-info">
     185                <exec append="false" output="core.info.xml" executable="svn" failifexecutionfails="false">
     186                        <env key="LANG" value="C"/>
     187                        <arg value="info"/>
     188                        <arg value="--xml"/>
     189                        <arg value="../../core"/>
     190                </exec>
     191                <xmlproperty file="core.info.xml" prefix="coreversion" keepRoot="true" collapseAttributes="true"/>
     192                <echo>Building against core revision ${coreversion.info.entry.revision}.</echo>
     193                <echo>Plugin-Mainversion is set to ${plugin.main.version}.</echo>
     194                <delete file="core.info.xml" />
     195        </target>
     196
     197        <!--
     198                ** commits the source tree for this plugin
     199                -->
     200        <target name="commit-current">
     201                <echo>Commiting the plugin source with message '${commit.message}' ...</echo>
     202                <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
     203                        <env key="LANG" value="C"/>
     204                        <arg value="commit"/>
     205                        <arg value="-m '${commit.message}'"/>
     206                        <arg value="."/>
     207                </exec>
     208        </target>
     209
     210        <!--
     211                ** updates (svn up) the source tree for this plugin
     212                -->
     213        <target name="update-current">
     214                <echo>Updating plugin source ...</echo>
     215                <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
     216                        <env key="LANG" value="C"/>
     217                        <arg value="up"/>
     218                        <arg value="."/>
     219                </exec>
     220                <echo>Updating ${plugin.jar} ...</echo>
     221                <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
     222                        <env key="LANG" value="C"/>
     223                        <arg value="up"/>
     224                        <arg value="../dist/${plugin.jar}"/>
     225                </exec>
     226        </target>
     227
     228        <!--
     229                ** commits the plugin.jar
     230                -->
     231        <target name="commit-dist">
     232                <echo>
     233        ***** Properties of published ${plugin.jar} *****
     234        Commit message    : '${commit.message}'                                 
     235        Plugin-Mainversion: ${plugin.main.version}
     236        JOSM build version: ${coreversion.info.entry.revision}
     237        Plugin-Version    : ${version.entry.commit.revision}
     238        ***** / Properties of published ${plugin.jar} *****                                     
     239                                               
     240        Now commiting ${plugin.jar} ...
     241        </echo>
     242                <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
     243                        <env key="LANG" value="C"/>
     244                        <arg value="-m '${commit.message}'"/>
     245                        <arg value="commit"/>
     246                        <arg value="${plugin.jar}"/>
     247                </exec>
     248        </target>
     249
     250        <!-- ** make sure svn is present as a command line tool ** -->
     251        <target name="ensure-svn-present">
     252                <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false" failonerror="false" resultproperty="svn.exit.code">
     253                        <env key="LANG" value="C" />
     254                        <arg value="--version" />
     255                </exec>
     256                <fail message="Fatal: command 'svn --version' failed. Please make sure svn is installed on your system.">
     257                        <!-- return code not set at all? Most likely svn isn't installed -->
     258                        <condition>
     259                                <not>
     260                                        <isset property="svn.exit.code" />
     261                                </not>
     262                        </condition>
     263                </fail>
     264                <fail message="Fatal: command 'svn --version' failed. Please make sure a working copy of svn is installed on your system.">
     265                        <!-- error code from SVN? Most likely svn is not what we are looking on this system -->
     266                        <condition>
     267                                <isfailure code="${svn.exit.code}" />
     268                        </condition>
     269                </fail>
     270        </target>
     271
     272        <target name="publish" depends="ensure-svn-present,core-info,commit-current,update-current,clean,dist,commit-dist">
     273        </target>
     274       
     275        <target name="unjar-test" >
     276        <!--unjar dest="C:/Workspace_2/geotoolstest/lib/unjartest">
     277            <fileset dir="lib"/>
     278        </unjar-->
     279       
     280                        <jar destfile="C:/Workspace_2/geotoolstest/lib/unjartest/${ant.project.name}.jar" basedir="C:/Workspace_2/geotoolstest/lib/unjartest">
     281
     282                        <manifest>
     283                <attribute name="Author" value="Christoph Beekmans, Fabian Kowitz, Anna Robaszkiewicz, Oliver Kuhn, Martin Ulitzny"/>
     284                <attribute name="Plugin-Class" value="org.openstreetmap.josm.plugins.CoveragePlugin.CoveragePlugin"/>
     285                <attribute name="Plugin-Date" value="${version.entry.commit.date}"/>
     286                <attribute name="Plugin-Description" value="Plugin for importing spatial referenced images"/>
     287                <attribute name="Plugin-Link" value="..."/>
     288                <attribute name="Plugin-Mainversion" value=".."/>
     289                <attribute name="Plugin-Version" value="${version.entry.commit.revision}"/>
     290                <attribute name="Class-path" value=" . CoveragePlugin/lib/commons-beanutils-1.7.0.jar CoveragePlugin/lib/commons-pool-1.5.3.jar CoveragePlugin/lib/geoapi-2.3-M1.jar CoveragePlugin/lib/geoapi-pending-2.3-M1.jar CoveragePlugin/lib/geoapi.jar CoveragePlugin/lib/gt-api-2.6.0.jar CoveragePlugin/lib/gt-coverage-2.6.0.jar CoveragePlugin/lib/gt-epsg-extension-2.6.0.jar CoveragePlugin/lib/gt-epsg-hsql-2.6.0.jar CoveragePlugin/lib/gt-geotiff-2.6.0.jar CoveragePlugin/lib/gt-main-2.6.0.jar CoveragePlugin/lib/gt-metadata-2.6.0.jar CoveragePlugin/lib/gt-referencing-2.6.0.jar CoveragePlugin/lib/hsqldb-1.8.0.7.jar CoveragePlugin/lib/imageio-ext-tiff-1.0.4.jar CoveragePlugin/lib/imageio-ext-utilities-1.0.4.jar CoveragePlugin/lib/jai_codec-1.1.3.jar CoveragePlugin/lib/jai_core.jar CoveragePlugin/lib/jai_imageio-1.1.jar CoveragePlugin/lib/jdom-1.0.jar CoveragePlugin/lib/jsr-275-1.0-beta-2.jar CoveragePlugin/lib/jts-1.10.jar CoveragePlugin/lib/log4j-1.2.12.jar CoveragePlugin/lib/vecmath-1.3.2.jar" />
     291                        </manifest>
     292                </jar>
     293        </target>
     294       
    257295</project>
Note: See TracChangeset for help on using the changeset viewer.