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

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

Location:
applications/editors/josm/plugins/native-password-manager
Files:
31 added
1 edited

Legend:

Unmodified
Added
Removed
  • applications/editors/josm/plugins/native-password-manager/build.xml

    r26335 r26341  
    1 <?xml version="1.0" encoding="UTF-8"?>
     1<?xml version="1.0" encoding="utf-8"?>
    22<!--
    3 ** This is a template build file for a JOSM  plugin.
    4 **
    53** Maintaining versions
    64** ====================
     
    119** To build it run
    1210**
    13 **    > ant  dist
     11**    > ant
     12** or
     13**    > ant clean dist
    1414**
    1515** To install the generated plugin locally (in you default plugin directory) run
    1616**
    17 **    > ant  install
     17**    > ant install
    1818**
    1919** The generated plugin jar is not automatically available in JOSMs plugin configuration
     
    3131
    3232    <!-- enter the SVN commit message -->
    33     <property name="commit.message" value="Commit message" />
     33    <property name="commit.message" value="Commit message"/>
    3434    <!-- enter the *lowest* JOSM version this plugin is currently compatible with -->
    35     <property name="plugin.main.version" value="4249" />
    36 
    37 
    38     <!--
    39       ************************************************
    40       ** should not be necessary to change the following properties
    41      -->
    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     <property name="plugin.lib.dir"         value="lib"/>
    46     <!-- this is the directory where the plugin jar is copied to -->
    47     <property name="plugin.dist.dir"        value="../../dist"/>
    48     <property name="ant.build.javac.target" value="1.5"/>
    49     <property name="plugin.jar"             value="${plugin.dist.dir}/${ant.project.name}.jar"/>
    50 
    51         <!-- classpath -->
    52         <path id="classpath">
    53                 <fileset dir="${plugin.lib.dir}" includes="**/*.jar" />
    54                 <pathelement path="${josm}"/>
    55         </path>
     35    <property name="plugin.main.version" value="4249"/>
    5636
    5737    <!--
    5838    **********************************************************
    59     ** init - initializes the build
     39    ** include targets that all plugins have in common
    6040    **********************************************************
    6141    -->
    62     <target name="init">
    63         <mkdir dir="${plugin.build.dir}"/>
    64     </target>
     42    <import file="../build-common.xml"/>
    6543
     44    <!-- classpath -->
     45    <path id="classpath">
     46        <fileset dir="${plugin.lib.dir}" includes="**/*.jar"/>
     47        <pathelement path="${josm}"/>
     48    </path>
    6649    <!--
    6750    **********************************************************
    6851    ** compile - complies the source tree
     52    ** Overrides the target from build-common.xml
    6953    **********************************************************
    7054    -->
     
    8771            <fileset dir="images"/>
    8872        </copy>
     73        <copy todir="${plugin.build.dir}/data">
     74            <fileset dir="data"/>
     75        </copy>
    8976        <copy todir="${plugin.build.dir}">
    9077            <fileset dir=".">
    91                 <include name="README" />
    92                 <include name="LICENSE" />
     78                <include name="README"/>
     79                <include name="LICENSE"/>
     80                <include name="gpl-2-cp.txt"/>
     81                <include name="gpl-3.txt"/>
    9382            </fileset>
    9483        </copy>
    9584        <jar destfile="${plugin.jar}" basedir="${plugin.build.dir}">
    96             <!--
     85        <!--
    9786        ************************************************
    9887        ** configure these properties. Most of them will be copied to the plugins
     
    10190        **
    10291        ************************************************
    103     -->
     92        -->
    10493            <manifest>
    10594                <attribute name="Author" value="Paul Hartmann"/>
     
    113102                <attribute name="Plugin-Version" value="${version.entry.commit.revision}"/>
    114103            </manifest>
    115                         <zipfileset src="${plugin.lib.dir}/jna.jar" />
     104            <zipfileset src="${plugin.lib.dir}/jna.jar"/>
    116105        </jar>
    117106    </target>
    118107
    119     <!--
    120     **********************************************************
    121     ** revision - extracts the current revision number for the
    122     **    file build.number and stores it in the XML property
    123     **    version.*
    124     **********************************************************
    125     -->
    126     <target name="revision">
    127 
    128         <exec append="false" output="REVISION" executable="svn" failifexecutionfails="false">
    129             <env key="LANG" value="C"/>
    130             <arg value="info"/>
    131             <arg value="--xml"/>
    132             <arg value="."/>
    133         </exec>
    134         <xmlproperty file="REVISION" prefix="version" keepRoot="false" collapseAttributes="true"/>
    135         <delete file="REVISION"/>
    136     </target>
    137 
    138     <!--
    139     **********************************************************
    140     ** clean - clean up the build environment
    141     **********************************************************
    142     -->
    143     <target name="clean">
    144         <delete dir="${plugin.build.dir}"/>
    145         <delete file="${plugin.jar}"/>
    146     </target>
    147 
    148     <!--
    149     **********************************************************
    150     ** install - install the plugin in your local JOSM installation
    151     **********************************************************
    152     -->
    153     <target name="install" depends="dist">
    154         <property environment="env"/>
    155         <condition property="josm.plugins.dir" value="${env.APPDATA}/JOSM/plugins" else="${user.home}/.josm/plugins">
    156             <and>
    157                 <os family="windows"/>
    158             </and>
    159         </condition>
    160         <copy file="${plugin.jar}" todir="${josm.plugins.dir}"/>
    161     </target>
    162 
    163 
    164     <!--
    165     ************************** Publishing the plugin ***********************************
    166     -->
    167     <!--
    168         ** extracts the JOSM release for the JOSM version in ../core and saves it in the
    169         ** property ${coreversion.info.entry.revision}
    170         **
    171         -->
    172     <target name="core-info">
    173         <exec append="false" output="core.info.xml" executable="svn" failifexecutionfails="false">
    174             <env key="LANG" value="C"/>
    175             <arg value="info"/>
    176             <arg value="--xml"/>
    177             <arg value="../../core"/>
    178         </exec>
    179         <xmlproperty file="core.info.xml" prefix="coreversion" keepRoot="true" collapseAttributes="true"/>
    180         <echo>Building against core revision ${coreversion.info.entry.revision}.</echo>
    181         <echo>Plugin-Mainversion is set to ${plugin.main.version}.</echo>
    182         <delete file="core.info.xml" />
    183     </target>
    184 
    185     <!--
    186         ** commits the source tree for this plugin
    187         -->
    188     <target name="commit-current">
    189         <echo>Commiting the plugin source with message '${commit.message}' ...</echo>
    190         <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
    191             <env key="LANG" value="C"/>
    192             <arg value="commit"/>
    193             <arg value="-m '${commit.message}'"/>
    194             <arg value="."/>
    195         </exec>
    196     </target>
    197 
    198     <!--
    199         ** updates (svn up) the source tree for this plugin
    200         -->
    201     <target name="update-current">
    202         <echo>Updating plugin source ...</echo>
    203         <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
    204             <env key="LANG" value="C"/>
    205             <arg value="up"/>
    206             <arg value="."/>
    207         </exec>
    208         <echo>Updating ${plugin.jar} ...</echo>
    209         <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
    210             <env key="LANG" value="C"/>
    211             <arg value="up"/>
    212             <arg value="../dist/${plugin.jar}"/>
    213         </exec>
    214     </target>
    215 
    216     <!--
    217         ** commits the plugin.jar
    218         -->
    219     <target name="commit-dist">
    220         <echo>
    221     ***** Properties of published ${plugin.jar} *****
    222     Commit message    : '${commit.message}'                   
    223     Plugin-Mainversion: ${plugin.main.version}
    224     JOSM build version: ${coreversion.info.entry.revision}
    225     Plugin-Version    : ${version.entry.commit.revision}
    226     ***** / Properties of published ${plugin.jar} *****                   
    227                        
    228     Now commiting ${plugin.jar} ...
    229     </echo>
    230         <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
    231             <env key="LANG" value="C"/>
    232             <arg value="-m '${commit.message}'"/>
    233             <arg value="commit"/>
    234             <arg value="${plugin.jar}"/>
    235         </exec>
    236     </target>
    237 
    238     <!-- ** make sure svn is present as a command line tool ** -->
    239     <target name="ensure-svn-present">
    240         <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false" failonerror="false" resultproperty="svn.exit.code">
    241             <env key="LANG" value="C" />
    242             <arg value="--version" />
    243         </exec>
    244         <fail message="Fatal: command 'svn --version' failed. Please make sure svn is installed on your system.">
    245             <!-- return code not set at all? Most likely svn isn't installed -->
    246             <condition>
    247                 <not>
    248                     <isset property="svn.exit.code" />
    249                 </not>
    250             </condition>
    251         </fail>
    252         <fail message="Fatal: command 'svn --version' failed. Please make sure a working copy of svn is installed on your system.">
    253             <!-- error code from SVN? Most likely svn is not what we are looking on this system -->
    254             <condition>
    255                 <isfailure code="${svn.exit.code}" />
    256             </condition>
    257         </fail>
    258     </target>
    259 
    260     <target name="publish" depends="ensure-svn-present,core-info,commit-current,update-current,clean,dist,commit-dist">
    261     </target>
    262108</project>
Note: See TracChangeset for help on using the changeset viewer.