Ignore:
Timestamp:
2011-07-16T14:05:16+02:00 (15 years ago)
Author:
bastik
Message:

move common plugin build targets to a single template file; fix i18n for native-password-manager plugin; fix authors

File:
1 edited

Legend:

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

    r26174 r26341  
    11<?xml version="1.0" encoding="utf-8"?>
    22<!--
    3 ** This is a template build file for a JOSM  plugin.
    4 **
    53** Maintaining versions
    64** ====================
     
    3331    <!-- enter the *lowest* JOSM version this plugin is currently compatible with -->
    3432    <property name="plugin.main.version" value="3835"/>
    35     <!--
    36       ************************************************
    37       ** should not be necessary to change the following properties
    38      -->
    39     <property name="josm" location="../../core/dist/josm-custom.jar"/>
    40     <property name="plugin.build.dir" value="build"/>
    41     <property name="plugin.src.dir" value="src"/>
    42     <!-- this is the directory where the plugin jar is copied to -->
    43     <property name="plugin.dist.dir" value="../../dist"/>
    44     <property name="ant.build.javac.target" value="1.5"/>
    45     <property name="plugin.dist.dir" value="../../dist"/>
    46     <property name="plugin.jar" value="${plugin.dist.dir}/${ant.project.name}.jar"/>
     33
    4734    <!--
    4835    **********************************************************
    49     ** init - initializes the build
     36    ** include targets that all plugins have in common
    5037    **********************************************************
    5138    -->
    52     <target name="init">
    53         <mkdir dir="${plugin.build.dir}"/>
    54     </target>
    55     <!--
    56     **********************************************************
    57     ** compile - complies the source tree
    58     **********************************************************
    59     -->
    60     <target name="compile" depends="init">
    61         <echo message="compiling sources for  ${plugin.jar} ... "/>
    62         <javac srcdir="src" classpath="${josm}" debug="true" destdir="${plugin.build.dir}">
    63             <compilerarg value="-Xlint:deprecation"/>
    64             <compilerarg value="-Xlint:unchecked"/>
    65         </javac>
    66     </target>
     39    <import file="../build-common.xml"/>
     40
    6741    <!--
    6842    **********************************************************
     
    9468            -->
    9569            <manifest>
    96                 <attribute name="Author" value="Sebastian Klein"/>
     70                <attribute name="Author" value="Paul Hartmann"/>
    9771                <attribute name="Plugin-Class" value="org.openstreetmap.josm.plugins.roadsigns.RoadSignsPlugin"/>
    9872                <attribute name="Plugin-Date" value="${version.entry.commit.date}"/>
     
    10579        </jar>
    10680    </target>
    107     <!--
    108     **********************************************************
    109     ** revision - extracts the current revision number for the
    110     **    file build.number and stores it in the XML property
    111     **    version.*
    112     **********************************************************
    113     -->
    114     <target name="revision">
    115         <exec append="false" output="REVISION" executable="svn" failifexecutionfails="false">
    116             <env key="LANG" value="C"/>
    117             <arg value="info"/>
    118             <arg value="--xml"/>
    119             <arg value="."/>
    120         </exec>
    121         <xmlproperty file="REVISION" prefix="version" keepRoot="false" collapseAttributes="true"/>
    122         <delete file="REVISION"/>
    123     </target>
    124     <!--
    125     **********************************************************
    126     ** clean - clean up the build environment
    127     **********************************************************
    128     -->
    129     <target name="clean">
    130         <delete dir="${plugin.build.dir}"/>
    131         <delete file="${plugin.jar}"/>
    132     </target>
    133     <!--
    134     **********************************************************
    135     ** install - install the plugin in your local JOSM installation
    136     **********************************************************
    137     -->
    138     <target name="install" depends="dist">
    139         <property environment="env"/>
    140         <condition property="josm.plugins.dir" value="${env.APPDATA}/JOSM/plugins" else="${user.home}/.josm/plugins">
    141             <and>
    142                 <os family="windows"/>
    143             </and>
    144         </condition>
    145         <copy file="${plugin.jar}" todir="${josm.plugins.dir}"/>
    146     </target>
    147     <!--
    148     ************************** Publishing the plugin ***********************************
    149     -->
    150     <!--
    151         ** extracts the JOSM release for the JOSM version in ../core and saves it in the
    152         ** property ${coreversion.info.entry.revision}
    153         **
    154         -->
    155     <target name="core-info">
    156         <exec append="false" output="core.info.xml" executable="svn" failifexecutionfails="false">
    157             <env key="LANG" value="C"/>
    158             <arg value="info"/>
    159             <arg value="--xml"/>
    160             <arg value="../../core"/>
    161         </exec>
    162         <xmlproperty file="core.info.xml" prefix="coreversion" keepRoot="true" collapseAttributes="true"/>
    163         <echo>Building against core revision ${coreversion.info.entry.revision}.</echo>
    164         <echo>Plugin-Mainversion is set to ${plugin.main.version}.</echo>
    165         <delete file="core.info.xml"/>
    166     </target>
    167     <!--
    168         ** commits the source tree for this plugin
    169         -->
    170     <target name="commit-current">
    171         <echo>Commiting the plugin source with message '${commit.message}' ...</echo>
    172         <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
    173             <env key="LANG" value="C"/>
    174             <arg value="commit"/>
    175             <arg value="-m '${commit.message}'"/>
    176             <arg value="."/>
    177         </exec>
    178     </target>
    179     <!--
    180         ** updates (svn up) the source tree for this plugin
    181         -->
    182     <target name="update-current">
    183         <echo>Updating plugin source ...</echo>
    184         <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
    185             <env key="LANG" value="C"/>
    186             <arg value="up"/>
    187             <arg value="."/>
    188         </exec>
    189         <echo>Updating ${plugin.jar} ...</echo>
    190         <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
    191             <env key="LANG" value="C"/>
    192             <arg value="up"/>
    193             <arg value="../dist/${plugin.jar}"/>
    194         </exec>
    195     </target>
    196     <!--
    197         ** commits the plugin.jar
    198         -->
    199     <target name="commit-dist">
    200         <echo>
    201     ***** Properties of published ${plugin.jar} *****
    202     Commit message    : '${commit.message}'                 
    203     Plugin-Mainversion: ${plugin.main.version}
    204     JOSM build version: ${coreversion.info.entry.revision}
    205     Plugin-Version    : ${version.entry.commit.revision}
    206     ***** / Properties of published ${plugin.jar} *****                 
    207                        
    208     Now commiting ${plugin.jar} ...
    209     </echo>
    210         <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
    211             <env key="LANG" value="C"/>
    212             <arg value="-m '${commit.message}'"/>
    213             <arg value="commit"/>
    214             <arg value="${plugin.jar}"/>
    215         </exec>
    216     </target>
    217     <!-- ** make sure svn is present as a command line tool ** -->
    218     <target name="ensure-svn-present">
    219         <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false" failonerror="false" resultproperty="svn.exit.code">
    220             <env key="LANG" value="C"/>
    221             <arg value="--version"/>
    222         </exec>
    223         <fail message="Fatal: command 'svn --version' failed. Please make sure svn is installed on your system.">
    224             <!-- return code not set at all? Most likely svn isn't installed -->
    225             <condition>
    226                 <not>
    227                     <isset property="svn.exit.code"/>
    228                 </not>
    229             </condition>
    230         </fail>
    231         <fail message="Fatal: command 'svn --version' failed. Please make sure a working copy of svn is installed on your system.">
    232             <!-- error code from SVN? Most likely svn is not what we are looking on this system -->
    233             <condition>
    234                 <isfailure code="${svn.exit.code}"/>
    235             </condition>
    236         </fail>
    237     </target>
    238     <target name="publish" depends="ensure-svn-present,core-info,commit-current,update-current,clean,dist,commit-dist">
    239     </target>
    24081</project>
Note: See TracChangeset for help on using the changeset viewer.