Changeset 9765 in josm for trunk/netbeans/nbbuild.xml


Ignore:
Timestamp:
2016-02-09T13:25:35+01:00 (5 years ago)
Author:
bastiK
Message:

new setup of the netbeans project

  • removed classpath hack with two source directories (. and ./src) instead copy the resources to build dir in nbbuild.xml
  • import main JOSM ant file into nbbuild.xml instead of copy&paste
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/netbeans/nbbuild.xml

    r8529 r9765  
    88<!-- You can turn off the Compile on Save (or Deploy on Save) setting -->
    99<!-- in the project's Project Properties dialog box.-->
    10 <project name="josm" default="default" basedir=".">
     10<project name="josmnb" default="default" basedir=".">
    1111    <description>Builds, tests, and runs the project josm.</description>
    1212
    13     <property name="javacc.home" location="../tools"/>
    14     <property name="mapcss.dir" location="../src/org/openstreetmap/josm/gui/mappaint/mapcss"/>
    15     <!-- For Windows-specific stuff -->
    16     <condition property="isWindows">
    17         <os family="Windows"/>
    18     </condition>
     13    <import file="nbproject/build-impl.xml" as="nbimpl"/>
    1914
    20     <import file="nbproject/build-impl.xml"/>
     15    <import file="../build.xml" as="josmbase"/> <!-- import the main JOSM ant file -->
     16
    2117    <!--
    2218
    23     There exist several targets which are by default empty and which can be 
    24     used for execution of your tasks. These targets are usually executed 
    25     before and after some main targets. They are: 
     19    There exist several targets which are by default empty and which can be
     20    used for execution of your tasks. These targets are usually executed
     21    before and after some main targets. They are:
    2622
    2723      -pre-init:                 called before initialization of project properties
     
    4945        </target>
    5046
    51     For list of available properties check the imported 
    52     nbproject/build-impl.xml file. 
     47    For list of available properties check the imported
     48    nbproject/build-impl.xml file.
    5349
    5450
    5551    Another way to customize the build is by overriding existing main targets.
    56     The targets of interest are: 
     52    The targets of interest are:
    5753
    5854      -init-macrodef-javac:     defines macro for javac compilation
     
    6056      -init-macrodef-debug:     defines macro for class debugging
    6157      -init-macrodef-java:      defines macro for class execution
    62       -do-jar-with-manifest:    JAR building (if you are using a manifest)
    63       -do-jar-without-manifest: JAR building (if you are not using a manifest)
    64       run:                      execution of project
     58      -do-jar:                  JAR building
     59      run:                      execution of project
    6560      -javadoc-build:           Javadoc generation
    6661      test-report:              JUnit report generation
     
    7469        </target>
    7570
    76     Notice that the overridden target depends on the jar target and not only on 
    77     the compile target as the regular run target does. Again, for a list of available 
     71    Notice that the overridden target depends on the jar target and not only on
     72    the compile target as the regular run target does. Again, for a list of available
    7873    properties which you can use, check the target you are overriding in the
    79     nbproject/build-impl.xml file. 
     74    nbproject/build-impl.xml file.
    8075
    8176    -->
    82    
    83     <target name="-post-compile">
    84     <!-- create the REVISION file to be included in the distribution -->
    85                 <exec append="false" output="REVISION.XML" executable="svn" dir=".." failifexecutionfails="false">
    86                         <env key="LANG" value="C"/>
    87                         <arg value="info"/>
    88                         <arg value="--xml"/>
    89                         <arg value="."/>
    90                 </exec>
    91                 <xmlproperty file="REVISION.XML" prefix="version" keepRoot="false" collapseAttributes="true"/>
    92                 <delete file="REVISION.XML" />
    93                 <tstamp>
    94                         <format property="build.tstamp" pattern="yyyy-MM-dd HH:mm:ss"/>
    95                 </tstamp>
    9677
    97                 <property name="version.entry.commit.revision" value="UNKNOWN"/>
    98                 <echo file="${build.classes.dir}/REVISION">
    99 # automatically generated by JOSM build.xml - do not edit
    100 Revision: ${version.entry.commit.revision}
    101 Is-Local-Build: true
    102 Build-Date: ${build.tstamp}
    103 </echo>
    104         </target>
     78    <!--
     79      ** Copy resource file required on classpath.
     80    -->
     81    <target name="copy-josm-resources">
     82        <copy file="../CONTRIBUTION" todir="${build.classes.dir}"/>
     83        <copy file="../README" todir="${build.classes.dir}"/>
     84        <copy file="../LICENSE" todir="${build.classes.dir}"/>
     85        <copy file="../gpl-2.0.txt" todir="${build.classes.dir}" />
     86        <copy file="../gpl-3.0.txt" todir="${build.classes.dir}" />
     87        <copy todir="${build.classes.dir}/images"><fileset dir="../images"/></copy>
     88        <copy todir="${build.classes.dir}/data"><fileset dir="../data"/></copy>
     89        <copy todir="${build.classes.dir}/styles"><fileset dir="../styles"/></copy>
     90        <copy todir="${build.classes.dir}/org/openstreetmap/gui/jmapviewer/images">
     91            <fileset dir="../src/org/openstreetmap/gui/jmapviewer/images"/>
     92        </copy>
     93    </target>
    10594
    106     <target name="check-javacc">
    107         <uptodate property="javacc.notRequired" targetfile="${mapcss.dir}/parsergen/MapCSSParser.java" >
    108             <srcfiles dir="${mapcss.dir}" includes="MapCSSParser.jj"/>
    109         </uptodate>
    110     </target>   
    111     <target name="javacc" depends="check-javacc" unless="javacc.notRequired">
    112         <mkdir dir="${mapcss.dir}/parsergen"/>
    113         <exec append="false" executable="java" failifexecutionfails="true">
    114             <arg value="-cp"/>
    115             <arg value="${javacc.home}/javacc.jar"/>
    116             <arg value="javacc"/>
    117             <arg value="-DEBUG_PARSER=false"/>
    118             <arg value="-DEBUG_TOKEN_MANAGER=false"/>
    119             <arg value="-JDK_VERSION=1.7"/>
    120             <arg value="-GRAMMAR_ENCODING=UTF-8"/>
    121             <arg value="-OUTPUT_DIRECTORY=${mapcss.dir}/parsergen"/>
    122             <arg value="${mapcss.dir}/MapCSSParser.jj"/>
    123         </exec>
     95    <!--
     96      ** Customize some properties used by the main JOSM ant file.
     97    -->
     98    <target name="set-josmbase-properties" depends="-init-project">
     99        <property name="revision.dir" value="${build.classes.dir}"/>
     100        <property name="proj-build.dir" location="${build.dir}/build2"/>
     101        <property name="proj-classpath" location="${build.classes.dir}"/>
    124102    </target>
    125     <target name="-pre-compile" depends="javacc">
    126 <!--        <javacc target="${mapcss.dir}/MapCSSParser.jj" javacchome="${javacc.home}" outputdirectory="${mapcss.dir}/parsergen"/>-->
    127     </target>   
     103
     104    <!--
     105      ** Make sure properties are loaded in the right order.
     106      ** E.g. ${build.dir} is set both by Netbeans and by the main JOSM ant file.
     107      ** Load the Netbeans properties first, which makes the values permanent.
     108    -->
     109    <target name="init-josmbase" depends="-init-project, set-josmbase-properties, josmbase.init-properties"/>
     110
     111    <target name="-pre-compile" depends="init-josmbase, josmbase.javacc"/>
     112
     113    <target name="-post-compile" depends="init-josmbase, josmbase.epsg, josmbase.create-revision, copy-josm-resources"/>
     114
    128115</project>
Note: See TracChangeset for help on using the changeset viewer.