buildframework/helium/external/helium-antlib/macros.ant.xml
author wbernard
Wed, 23 Dec 2009 19:29:07 +0200
changeset 179 d8ac696cc51f
parent 1 be27ed110b50
permissions -rw-r--r--
helium_7.0-r14027
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
     1
<?xml version="1.0"?>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
     2
<!-- 
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
     3
============================================================================ 
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
     4
Name        : macros.xml 
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
     5
Part of     : Helium AntLib
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
     6
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
     7
Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
     8
All rights reserved.
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
     9
This component and the accompanying materials are made available
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    10
under the terms of the License "Eclipse Public License v1.0"
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    11
which accompanies this distribution, and is available
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    12
at the URL "http://www.eclipse.org/legal/epl-v10.html".
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    13
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    14
Initial Contributors:
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    15
Nokia Corporation - initial contribution.
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    16
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    17
Contributors:
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    18
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    19
Description:
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    20
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    21
============================================================================
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    22
-->
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    23
<project name="build-macros" xmlns:au="org.apache.ant.antunit">
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    24
    <description>Helium Antlib build macro.</description>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    25
    
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    26
    <dirname property="helium.antlib.root.dir" file="${ant.file.build-macros}" />
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
    27
    <property name="build.temp.dir" location="${helium.antlib.root.dir}/../build" />
1
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    28
    <property name="bin.dir" location="${basedir}/../bin" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    29
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    30
    <path id="helium.antlib.classpath">
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    31
        <fileset dir="${helium.antlib.root.dir}/lib" includes="*.jar" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    32
        <fileset dir="${helium.antlib.root.dir}/antlibs" includes="*.jar" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    33
    </path>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    34
    
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    35
    <taskdef resource="net/sf/antcontrib/antlib.xml" classpathref="helium.antlib.classpath"/>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    36
    <taskdef resource="org/apache/ant/antunit/antlib.xml" uri="org.apache.ant.antunit" classpathref="helium.antlib.classpath"/>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    37
    
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    38
    
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    39
    <presetdef name="subantPreset">
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    40
        <subant failonerror="true">
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    41
            <resources refid="subant.build.files"/>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    42
        </subant>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    43
    </presetdef>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    44
    
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    45
    
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    46
    <macrodef name="compileModule">
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    47
        <attribute name="name" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    48
        <attribute name="dir" default="${helium.antlib.root.dir}" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    49
        <sequential>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    50
            <mkdir dir="${build.temp.dir}/@{name}/classes" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    51
            <javac srcdir="${basedir}/src" destdir="${build.temp.dir}/@{name}/classes"
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    52
                   debug="true" source="1.6" target="1.6">
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    53
                <classpath refid="helium.antlib.classpath" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    54
                <classpath refid="helium.@{name}.classpath" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    55
                <include name="**/*.java" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    56
                <compilerarg value="-Xlint:unchecked" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    57
                <compilerarg value="-Xlint:deprecation" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    58
            </javac>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    59
        </sequential>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    60
    </macrodef>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    61
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    62
    
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    63
    <macrodef name="jarModule">
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    64
        <attribute name="name" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    65
        <attribute name="dir" default="${helium.antlib.root.dir}" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    66
        <attribute name="bindir" default="${bin.dir}" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    67
        <sequential>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    68
            <echo>Packaging module @{name}</echo>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    69
            <mkdir dir="@{bindir}" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    70
            <jar destfile="@{bindir}/helium-@{name}.jar">
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    71
                <fileset dir="${build.temp.dir}/@{name}/classes" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    72
                <fileset dir="${basedir}/src" includes="**/*.xml" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    73
                <fileset dir="${basedir}/src" includes="**/*.*ftl" />
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
    74
                <fileset dir="${basedir}/src" includes="**/*.vm" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
    75
                
1
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    76
                <manifest>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    77
                    <section name="common">
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    78
                        <attribute name="Implementation-Title" value="@{name}" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    79
                        <attribute name="Implementation-Vendor" value="Nokia" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    80
                    </section>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    81
                </manifest>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    82
            </jar>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    83
        </sequential>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    84
    </macrodef>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    85
    
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    86
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    87
    <macrodef name="testModule">
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    88
        <attribute name="name" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    89
        <attribute name="dir" default="${helium.antlib.root.dir}" />
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
    90
        <attribute name="bindir" default="${bin.dir}" />
1
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    91
        <sequential>
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
    92
            <mkdir dir="${build.temp.dir}" />
1
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    93
            <if>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    94
                <available type="dir" file="${basedir}/tests"/>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    95
                <then>
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
    96
                    <trycatch>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
    97
                        <try>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
    98
                            <!-- Temporarly replacing the jar file
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
    99
                                 with an instrumented one to do the 
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   100
                                 actual coverage measurment
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   101
                             -->
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   102
                            <mkdir dir="${build.temp.dir}/@{name}/backup" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   103
                            <delete>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   104
                                <fileset dir="${build.temp.dir}" includes="@{name}/**/*_antunit.emma" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   105
                            </delete>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   106
                            <copy file="@{bindir}/helium-@{name}.jar" todir="${build.temp.dir}/@{name}/backup/" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   107
                            <emma enabled="true">
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   108
                                <instr destdir="@{bindir}/" metadatafile="${build.temp.dir}/@{name}/metadata_antunit.emma" merge="true" mode="overwrite">
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   109
                                    <instrpath>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   110
                                        <fileset dir="@{bindir}" includes="helium-@{name}.jar" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   111
                                    </instrpath>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   112
                                </instr>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   113
                            </emma>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   114
                            <exec osfamily="windows" executable="cmd" dir="${basedir}/tests">
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   115
                                <env key="ANT_LIB_HOME" path="${helium.antlib.root.dir}" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   116
                                <arg line="/c build.bat unittest" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   117
                            </exec>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   118
                            <exec osfamily="unix" executable="./bld.sh" dir="${basedir}/tests">
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   119
                                <env key="ANT_LIB_HOME" path="${helium.antlib.root.dir}" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   120
                                <arg line="unittest" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   121
                            </exec>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   122
                            <move todir="${build.temp.dir}/@{name}">
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   123
                                <fileset dir="${basedir}/tests" includes="**/coverage.ec" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   124
                                <chainedmapper>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   125
                                    <filtermapper>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   126
                                        <replacestring from="/" to="_" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   127
                                    </filtermapper>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   128
                                    <regexpmapper from="^(.*)\.ec$$" to="\1_antunit.emma" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   129
                                </chainedmapper>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   130
                            </move>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   131
                            <emma enabled="true">
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   132
                                <report>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   133
                                    <infileset dir="${build.temp.dir}/@{name}/" includes="*_antunit.emma" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   134
                                    <txt outfile="${build.temp.dir}/@{name}/coverage_antunit.txt" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   135
                                    <html outfile="${build.temp.dir}/@{name}/coverage_antunit.html" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   136
                                    <xml outfile="${build.temp.dir}/@{name}/coverage_antunit.xml" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   137
                                </report>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   138
                            </emma>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   139
                            <if>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   140
                                <available file="${build.temp.dir}/@{name}/coverage_antunit.txt" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   141
                                <then>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   142
                                    <loadfile property="message" srcFile="${build.temp.dir}/@{name}/coverage_antunit.txt" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   143
                                    <echo message="${message}" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   144
                                </then>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   145
                            </if>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   146
                        </try>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   147
                        <finally>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   148
                            <copy file="${build.temp.dir}/@{name}/backup/helium-@{name}.jar" todir="@{bindir}" overwrite="true" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   149
                        </finally>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   150
                    </trycatch>
1
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   151
                </then>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   152
            </if>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   153
        </sequential>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   154
    </macrodef>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   155
    
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   156
    
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   157
    <path id="emma.classpath">
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   158
        <fileset dir="${helium.antlib.root.dir}\antlibs">
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   159
            <include name="**/*.jar" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   160
        </fileset>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   161
    </path>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   162
    <taskdef classpathref="emma.classpath" resource="emma_ant.properties" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   163
 
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   164
    
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   165
    <macrodef name="junitModule">
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   166
        <attribute name="name" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   167
        <attribute name="dir" default="${helium.antlib.root.dir}" />
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   168
        <attribute name="bindir" default="${bin.dir}" />
1
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   169
        <sequential>
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   170
            <mkdir dir="${build.temp.dir}" />
1
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   171
            <if>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   172
                <available type="dir" file="${basedir}/tests/src"/>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   173
                <then>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   174
                    <echo>JUnit test module @{name}</echo>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   175
                    <delete dir="${build.temp.dir}/@{name}/junit_classes"/>
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   176
                    <delete>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   177
                        <fileset dir="${build.temp.dir}" includes="@{name}/**/*_junit.emma" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   178
                    </delete>
1
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   179
                    <mkdir dir="${build.temp.dir}/@{name}/junit_classes" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   180
                    <javac srcdir="${basedir}/tests/src" destdir="${build.temp.dir}/@{name}/junit_classes" debug="true" source="1.5" target="1.5">
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   181
                        <classpath refid="helium.antlib.classpath" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   182
                        <classpath refid="helium.@{name}.classpath" />
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   183
                        <classpath>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   184
                            <fileset dir="@{bindir}" includes="*-@{name}.jar" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   185
                        </classpath>
1
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   186
                        <include name="**/*.java" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   187
                    </javac>
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   188
            
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   189
                    <copy file="@{bindir}/helium-@{name}.jar" todir="${build.temp.dir}/@{name}/" overwrite="true"/>
1
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   190
                    <emma enabled="true">
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   191
                        <instr destdir="${build.temp.dir}/@{name}/" metadatafile="${build.temp.dir}/@{name}/metadata_junit.emma" merge="true" mode="overwrite">
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   192
                            <instrpath>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   193
                                <fileset dir="${build.temp.dir}/@{name}/" includes="helium-@{name}.jar" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   194
                            </instrpath>
1
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   195
                        </instr>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   196
                    </emma>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   197
                    
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   198
                    <delete file="${build.temp.dir}/@{name}/coverage.emma" failonerror="false" />
1
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   199
                    <junit fork="yes" printsummary="yes" haltonfailure="yes" showoutput="yes">
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   200
                        <formatter type="brief" usefile="false"/>
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   201
                        <jvmarg value="-Demma.coverage.out.file=${build.temp.dir}/@{name}/coverage_junit.emma" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   202
                        <jvmarg value="-Demma.coverage.out.merge=true" />
1
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   203
                        <jvmarg value="-Dtestdir=${basedir}" />
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   204
                        <classpath>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   205
                            <pathelement path="${build.temp.dir}/@{name}/helium-@{name}.jar"/>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   206
                            <pathelement path="${helium.antlib.root.dir}/antlibs/*.jar"/>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   207
                            <pathelement path="${build.temp.dir}/@{name}/junit_classes" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   208
                        </classpath>
1
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   209
                        <classpath refid="helium.antlib.classpath" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   210
                        <classpath refid="helium.@{name}.classpath" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   211
                        <batchtest fork="yes" todir="${build.temp.dir}/@{name}/junit_test">
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   212
                            <fileset dir="${basedir}/tests/src">
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   213
                                <include name="**/*Test*.java"/>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   214
                            </fileset>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   215
                        </batchtest>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   216
                    </junit>
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   217
                    <delete file="${build.temp.dir}/@{name}/helium-@{name}.jar" failonerror="false" />
1
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   218
                    
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   219
                    <emma enabled="true" >
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   220
                        <report>
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   221
                            <infileset dir="${build.temp.dir}/@{name}" includes="*_junit.emma" />
1
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   222
                            <txt outfile="${build.temp.dir}/@{name}/coverage.txt" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   223
                            <html outfile="${build.temp.dir}/@{name}/coverage.html" />
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   224
                            <xml outfile="${build.temp.dir}/@{name}/coverage.xml" />
1
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   225
                        </report>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   226
                    </emma>
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   227
                    <if>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   228
                        <available file="${build.temp.dir}/@{name}/coverage.txt" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   229
                        <then>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   230
                            <loadfile property="message" srcFile="${build.temp.dir}/@{name}/coverage.txt"/>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   231
                            <echo message="${message}"/>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   232
                        </then>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   233
                    </if>
1
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   234
                </then>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   235
            </if>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   236
        </sequential>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   237
    </macrodef>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   238
    
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   239
    
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   240
    <target name="compile">
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   241
        <echo>Compiling ${ant.project.name}</echo>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   242
        <compileModule name="${name}"/>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   243
    </target>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   244
    
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   245
    
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   246
    <target name="jar">
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   247
        <echo>Creating jar for ${ant.project.name}</echo>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   248
        <jarModule name="${name}"/>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   249
    </target>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   250
    
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   251
    
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   252
    <target name="build" depends="compile,jar">
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   253
        <echo>${ant.project.name} is built.</echo>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   254
    </target>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   255
    
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   256
    
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   257
    <target name="clean">
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   258
        <echo>Cleaning ${ant.project.name}</echo>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   259
        <delete dir="${build.temp.dir}/${name}/classes"/>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   260
        <delete file="${bin.dir}/helium-${name}.jar"/>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   261
    </target>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   262
    
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   263
    
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   264
    <target name="junit">
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   265
        <junitModule name="${name}"/>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   266
    </target>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   267
    
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   268
    
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   269
    <target name="unittest">
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   270
        <testModule name="${name}"/>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   271
    </target>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   272
    
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   273
    
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   274
    <target name="test" depends="junit,unittest">
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   275
        <echo>${ant.project.name} tested.</echo>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   276
    </target>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   277
</project>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   278
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   279
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   280