build.xml
author PGebauer <pgebauer@netbeans.org>
Mon, 19 Dec 2016 11:16:44 +0100
branchdonation_review
changeset 45 06a2bfb5d607
parent 37 e53c993c0d49
permissions -rw-r--r--
The donation_review branch created.
jglick@2
     1
<?xml version="1.0" encoding="UTF-8"?>
jglick@2
     2
<!-- You may freely edit this file. See harness/README in the NetBeans platform -->
jglick@2
     3
<!-- for some information on what you could do (e.g. targets to override). -->
jglick@2
     4
<!-- If you delete this file and reopen the project it will be recreated. -->
jglick@2
     5
<project name="UML" basedir=".">
jglick@2
     6
    <description>Builds the module suite UML.</description>
sj-nb@43
     7
    <property name="zip.name" value="netbeans-7.3.1-201305291404-javase.zip"/>
sj-nb@43
     8
    <property name="zip.url" value="http://download.netbeans.org/netbeans/7.3.1/final/zip/"/>
javydreamercsw@16
     9
    <!--Delete old copies of platforms-->
javydreamercsw@16
    10
    <delete>
javydreamercsw@16
    11
        <fileset dir=".hg" includes="**/*.zip" excludes="${zip.name}"/>
javydreamercsw@16
    12
    </delete>
javydreamercsw@16
    13
    <get src="${zip.url}${zip.name}" dest=".hg" skipexisting="true" verbose="true"/>
javydreamercsw@16
    14
    <!--Only overwrite if newer-->
javydreamercsw@16
    15
    <unzip src=".hg/${zip.name}" dest=".hg" overwrite="false"/>
javydreamercsw@16
    16
    <condition property="isNetbeans">
javydreamercsw@16
    17
        <not>
javydreamercsw@16
    18
            <isset property="Hudson"/>
javydreamercsw@16
    19
        </not>
javydreamercsw@16
    20
    </condition>
jglick@2
    21
    <import file="nbproject/build-impl.xml"/>
javydreamercsw@16
    22
    <property file="nbproject/project.properties"/>
javydreamercsw@16
    23
javydreamercsw@36
    24
    <target name="nbms">
javydreamercsw@36
    25
        <antcall target="keystore"/>
javydreamercsw@36
    26
        <antcall target="suite.nbms"/>
javydreamercsw@36
    27
    </target>
javydreamercsw@36
    28
    
javydreamercsw@36
    29
    <target name="keystore" unless="isNetbeans">
javydreamercsw@16
    30
        <!--Create/Update keystore-->
javydreamercsw@16
    31
        <delete file="${keystore.location}${keystore.name}"/>
javydreamercsw@16
    32
        <mkdir dir="${keystore.location}"/>
javydreamercsw@16
    33
        <genkey alias="${keystore.alias}" storepass="${keystore.password}"
javydreamercsw@16
    34
        dname="${keystore.dname}"
javydreamercsw@16
    35
        keystore="${keystore.location}${keystore.name}"/>
javydreamercsw@16
    36
        <!--Update keystore info in projects-->
javydreamercsw@16
    37
        <antcall target="update-keystore-info"/>
javydreamercsw@16
    38
    </target>
javydreamercsw@16
    39
javydreamercsw@27
    40
    <target name="update-keystore-info" depends="init-netbeans, init-hudson" unless="isNetbeans">
javydreamercsw@16
    41
        <for list="${modules}" delimiter=":" param="cur" trim="true">
javydreamercsw@16
    42
            <sequential>
javydreamercsw@16
    43
                <mkdir dir="@{cur}/nbproject/"/>
javydreamercsw@16
    44
                <!--Place the information in the properties file-->
javydreamercsw@16
    45
                <propertyfile file="@{cur}/nbproject/project.properties">
javydreamercsw@16
    46
                    <entry  key="keystore" value="../${keystore.location}${keystore.name}"/>
javydreamercsw@16
    47
                    <entry  key="nbm_alias" value="${keystore.alias}"/>
javydreamercsw@16
    48
                </propertyfile>
javydreamercsw@16
    49
                <mkdir dir="@{cur}/nbproject/private/"/>
javydreamercsw@16
    50
                <!--Place the password in the private properties file-->
javydreamercsw@16
    51
                <propertyfile file="@{cur}/nbproject/private/private.properties">
javydreamercsw@16
    52
                    <entry  key="storepass" value="${keystore.password}"/>
javydreamercsw@16
    53
                </propertyfile>
javydreamercsw@16
    54
            </sequential>
javydreamercsw@16
    55
        </for>
javydreamercsw@16
    56
    </target>
javydreamercsw@16
    57
javydreamercsw@16
    58
    <target name="getAntContribJar">
javydreamercsw@16
    59
        <fileset id="ant-contrib-jar" dir="${suite.dir}/tools">
javydreamercsw@16
    60
            <include name="ant-contrib-*.jar" />
javydreamercsw@16
    61
        </fileset>
javydreamercsw@16
    62
        <pathconvert property="ant-contrib-jar" refid="ant-contrib-jar" pathsep="," />
javydreamercsw@16
    63
        <basename property="ant-contrib-filename" file="${ant-contrib-jar}"/>
javydreamercsw@16
    64
    </target>
javydreamercsw@16
    65
javydreamercsw@23
    66
    <target name="init-netbeans" depends="getAntContribJar" if="isNetbeans">
javydreamercsw@16
    67
        <echo>Configuring ant-contrib for Netbeans use...</echo>
javydreamercsw@16
    68
        <property name="ant-contrib-loc" value="${suite.dir}/tools/${ant-contrib-filename}"/>
javydreamercsw@16
    69
        <available file="${ant-contrib-loc}" property="ant-contrib.present"/>
javydreamercsw@16
    70
        <fail unless="ant-contrib.present" message="The ant-contrib jar doesn't exist at: ${ant-contrib-loc}, can't build. Check your settings!" />
javydreamercsw@16
    71
        <!--We are in not Hudson-->
javydreamercsw@16
    72
        <taskdef resource="net/sf/antcontrib/antcontrib.properties">
javydreamercsw@16
    73
            <classpath>
javydreamercsw@16
    74
                <pathelement location="${ant-contrib-loc}"/>
javydreamercsw@16
    75
            </classpath>
javydreamercsw@16
    76
        </taskdef>
javydreamercsw@16
    77
    </target>
javydreamercsw@16
    78
javydreamercsw@23
    79
    <target name="init-hudson" depends="getAntContribJar" unless="isNetbeans">
javydreamercsw@16
    80
        <echo>Configuring ant-contrib for Hudson use...</echo>
javydreamercsw@16
    81
        <!--Import Hudson environment variables-->
javydreamercsw@16
    82
        <property environment="env"/>
javydreamercsw@26
    83
        <copy file="${suite.dir}/tools/${ant-contrib-filename}" todir="${env.ANT_HOME}/lib/"/>
javydreamercsw@16
    84
        <property name="ant-contrib-loc" value="${env.ANT_HOME}/lib/${ant-contrib-filename}"/>
javydreamercsw@16
    85
        <available file="${ant-contrib-loc}" property="ant-contrib.present"/>
javydreamercsw@16
    86
        <fail unless="ant-contrib.present" message="The ant-contrib jar doesn't exist at: ${ant-contrib-loc}, can't build. Check your settings!" />
javydreamercsw@16
    87
        <!--Define it. For some reason the approach in init-netbeans doesn't work in Hudson.-->
javydreamercsw@16
    88
        <taskdef name="for" classname="net.sf.antcontrib.logic.ForTask">
javydreamercsw@16
    89
            <classpath>
javydreamercsw@16
    90
                <pathelement location="${ant-contrib-loc}"/>
javydreamercsw@16
    91
            </classpath>
javydreamercsw@16
    92
        </taskdef>
javydreamercsw@16
    93
        <taskdef name="propertyregex" classname="net.sf.antcontrib.property.RegexTask">
javydreamercsw@16
    94
            <classpath>
javydreamercsw@16
    95
                <pathelement location="${ant-contrib-loc}"/>
javydreamercsw@16
    96
            </classpath>
javydreamercsw@16
    97
        </taskdef>
javydreamercsw@16
    98
        <taskdef name="if" classname="net.sf.antcontrib.logic.IfTask">
javydreamercsw@16
    99
            <classpath>
javydreamercsw@16
   100
                <pathelement location="${ant-contrib-loc}"/>
javydreamercsw@16
   101
            </classpath>
javydreamercsw@16
   102
        </taskdef>
javydreamercsw@16
   103
    </target>
javydreamercsw@16
   104
javydreamercsw@16
   105
    <target name="merge-javadoc" depends="init-hudson, init-netbeans" description="Merges javadocs from modules into one">
javydreamercsw@16
   106
        <property name="merged.javadoc.dir" value="build/javadoc"/>
javydreamercsw@16
   107
        <!--Creade merged javadoc folder-->
javydreamercsw@16
   108
        <mkdir dir="${merged.javadoc.dir}"/>
javydreamercsw@16
   109
        <!--Creade index file-->
javydreamercsw@16
   110
        <echo file="${merged.javadoc.dir}/index.html">
javydreamercsw@16
   111
            <![CDATA[
javydreamercsw@16
   112
            <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
javydreamercsw@16
   113
            <html>
javydreamercsw@16
   114
            <head>
javydreamercsw@16
   115
                <title>Main Index</title>
javydreamercsw@16
   116
                <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
javydreamercsw@16
   117
            </head>
javydreamercsw@16
   118
            <body>
javydreamercsw@16
   119
                <h1>Index</h1>
javydreamercsw@16
   120
                <ol>]]>
javydreamercsw@16
   121
        </echo>
javydreamercsw@16
   122
        <for list="${modules}" delimiter=":" param="cur" trim="true">
javydreamercsw@16
   123
            <sequential>
javydreamercsw@16
   124
                <echo>Checking @{cur}</echo>
javydreamercsw@16
   125
                <available file="@{cur}/build/javadoc/" property="@{cur}.javadoc.present"/>
javydreamercsw@16
   126
                <if>
javydreamercsw@16
   127
                    <equals arg1="${@{cur}.javadoc.present}" arg2="true"/>
javydreamercsw@16
   128
                    <then>
javydreamercsw@16
   129
                        <copy todir="${merged.javadoc.dir}/@{cur}">
javydreamercsw@16
   130
                            <fileset dir="@{cur}/build/javadoc/"/>
javydreamercsw@16
   131
                        </copy>
javydreamercsw@16
   132
                    </then>
javydreamercsw@16
   133
                </if>
javydreamercsw@16
   134
            </sequential>
javydreamercsw@16
   135
        </for>
javydreamercsw@16
   136
        <dirset id="dist.contents" dir="build/javadoc" includes="*"/>
javydreamercsw@16
   137
        <property name="prop.dist.contents" refid="dist.contents"/>
javydreamercsw@16
   138
        <for list="${prop.dist.contents}" delimiter=";" param="cur" trim="true">
javydreamercsw@16
   139
            <sequential>
javydreamercsw@16
   140
                <echo file="${merged.javadoc.dir}/index.html" append="true">
javydreamercsw@16
   141
                            <![CDATA[<li><a href="]]>
javydreamercsw@16
   142
                </echo>
javydreamercsw@16
   143
                <!-- Extract from project.xml-->
javydreamercsw@16
   144
                <xmlproperty file="@{cur}/nbproject/project.xml" prefix="@{cur}"/>
javydreamercsw@16
   145
                <!--Replace dots for dashes-->
javydreamercsw@16
   146
                <propertyregex property="@{cur}.pack.name"
javydreamercsw@16
   147
                    input="${@{cur}.project.configuration.data.code-name-base}"
javydreamercsw@16
   148
                    regexp="\."
javydreamercsw@16
   149
                    replace="-"
javydreamercsw@16
   150
                    casesensitive="false" />
javydreamercsw@20
   151
                <!--If the package name has no dots the variable is not defined-->
javydreamercsw@20
   152
                <if>
javydreamercsw@20
   153
                    <not>
javydreamercsw@20
   154
                        <isset property="@{cur}.pack.name"/>
javydreamercsw@20
   155
                    </not>
javydreamercsw@20
   156
                    <then>
javydreamercsw@20
   157
                        <property name="@{cur}.pack.name" value="@{cur}"/>
javydreamercsw@20
   158
                    </then>
javydreamercsw@20
   159
                </if>
javydreamercsw@16
   160
                <echo file="${merged.javadoc.dir}/index.html" append="true">
javydreamercsw@16
   161
                            @{cur}/${@{cur}.pack.name}/index.html"
javydreamercsw@16
   162
                </echo>
javydreamercsw@16
   163
                <echo file="${merged.javadoc.dir}/index.html" append="true">
javydreamercsw@16
   164
                            <![CDATA[>]]>
javydreamercsw@16
   165
                </echo>
javydreamercsw@16
   166
                <echo file="${merged.javadoc.dir}/index.html" append="true">
javydreamercsw@16
   167
                            @{cur}
javydreamercsw@16
   168
                </echo>
javydreamercsw@16
   169
                <echo file="${merged.javadoc.dir}/index.html" append="true">
javydreamercsw@16
   170
                            <![CDATA[</a></li>]]>
javydreamercsw@16
   171
                </echo>
javydreamercsw@16
   172
            </sequential>
javydreamercsw@16
   173
        </for>
javydreamercsw@16
   174
        <echo file="${merged.javadoc.dir}/index.html" append="true">
javydreamercsw@16
   175
                    <![CDATA[</ol>
javydreamercsw@16
   176
            </body>
javydreamercsw@16
   177
            </html>
javydreamercsw@16
   178
            ]]>
javydreamercsw@16
   179
        </echo>
javydreamercsw@16
   180
    </target>
javydreamercsw@28
   181
    <target name="fix-dependencies" depends="-init">
javydreamercsw@28
   182
        <subant target="fix-dependencies" buildpath="${modules.sorted}" inheritrefs="false" inheritall="false"/>
javydreamercsw@28
   183
    </target>
javydreamercsw@16
   184
</project>