buildframework/helium/tools/compile/qt/qt.ant.xml
branchwip
changeset 380 db59fc762214
parent 217 0f5e3a7fb6af
child 587 85df38eb4012
equal deleted inserted replaced
369:1248e8f6a72d 380:db59fc762214
    18 
    18 
    19 Description:
    19 Description:
    20 
    20 
    21 ============================================================================
    21 ============================================================================
    22 -->
    22 -->
       
    23 <!--* @package compile -->
    23 <project name="qt" xmlns:hlm="http://www.nokia.com/helium">
    24 <project name="qt" xmlns:hlm="http://www.nokia.com/helium">
    24     <description>
    25     <description>
    25     Qt build support.
    26     Qt build support.
    26     </description>
    27     </description>
    27     
    28     
    28     <property name="qt.dir" location="${build.drive}/qt"/>
    29     <!-- The location of the ant template to run qmake commands.
    29     <property name="qt.configure.log.name" value="${build.id}_configure-qt.log"/>
    30     @type string
       
    31     -->
    30     <property name="qt.qmake.ant.template" location="${helium.dir}/tools/compile/qt/templates/run-qmake.ant.xml.ftl" />
    32     <property name="qt.qmake.ant.template" location="${helium.dir}/tools/compile/qt/templates/run-qmake.ant.xml.ftl" />
       
    33     <!-- The location of the makefile template to run qmake commands.
       
    34     @type string
       
    35     -->
    31     <property name="qt.qmake.makefile.template" location="${helium.dir}/tools/compile/qt/templates/run-qmake.mk.ftl" />
    36     <property name="qt.qmake.makefile.template" location="${helium.dir}/tools/compile/qt/templates/run-qmake.mk.ftl" />
       
    37     <!-- The command lines argument passed to the configure tool.
       
    38     @type string
       
    39     -->
    32     <property name="qt.configure.args" value="-platform win32-mwc -xplatform symbian-abld -confirm-license"/>
    40     <property name="qt.configure.args" value="-platform win32-mwc -xplatform symbian-abld -confirm-license"/>
    33     <property name="qt.qmake.default.args" value="-platform symbian-abld -r"/>
    41     <!-- Setting default arguments to qMake command line, if the qmakeArgs is defined from the system definition file then those arguments are discarded.
    34     
    42     @type string
    35     <!-- This target will run the configure tool under Qt (qt.dir) in order to create the
    43     -->
    36         qmake tool and configure the Qt project for symbian building.
    44     <property name="qt.qmake.default.args" value="-r"/>
    37         <deprecated>This target and its configuration are not maintained anymore, please consider building Qt using 
       
    38          Symbian toolchain.</deprecated> 
       
    39      -->
       
    40     <target name="configure-qt">
       
    41         <hlm:recordStartMacro name="${qt.configure.log.name}"/>
       
    42         <exec dir="${qt.dir}" executable="${qt.dir}/configure.exe" failonerror="false">
       
    43             <arg line="${qt.configure.args}"/>
       
    44         </exec>
       
    45         <hlm:recordStopMacro name="${qt.configure.log.name}"/>
       
    46         <hlm:metadatarecord database="${metadata.dbfile}">
       
    47             <hlm:textmetadatainput>
       
    48                 <fileset casesensitive="false" file="${build.log.dir}/${qt.configure.log.name}"/>
       
    49                 <metadatafilterset refid="filterset.qt.configure" />
       
    50             </hlm:textmetadatainput>
       
    51         </hlm:metadatarecord>
       
    52         <hlm:generateBuildStatus file="${qt.configure.log.name}" />
       
    53     </target>
       
    54 
    45 
    55     <!--
    46     <!--
    56         Executing qmake on all Qt components defined under the system definition file.
    47         Executing qmake on all Qt components defined under the system definition file.
    57         It must use schema v1.5.0+, and Qt unit must define a proFile attibute.   
    48         It must use schema v1.5.0+, and Qt unit must define a proFile attibute.   
    58      -->
    49      -->
    74                 </fmpp>
    65                 </fmpp>
    75                 <hlm:assertFileExists file="${temp.build.dir}/run-qmake-${sysdef.configuration}.mk" />
    66                 <hlm:assertFileExists file="${temp.build.dir}/run-qmake-${sysdef.configuration}.mk" />
    76     
    67     
    77                 <!-- Running the qmake steps -->
    68                 <!-- Running the qmake steps -->
    78                 <hlm:emakeMacro name="run-qmake-${sysdef.configuration}" makefile="${temp.build.dir}/run-qmake-${sysdef.configuration}.mk"
    69                 <hlm:emakeMacro name="run-qmake-${sysdef.configuration}" makefile="${temp.build.dir}/run-qmake-${sysdef.configuration}.mk"
    79                     target="all" dir="${build.drive}/" log="${build.log.dir}/${build.id}_${sysdef.configuration}.qmake.log"
    70                     target="all" dir="${build.drive}/" log="${compile.log.dir}/${build.id}_${sysdef.configuration}.qmake.log"
    80                     annodetail="basic,history,file,waiting"
    71                     annodetail="basic,history,file,waiting"
    81                     failonerror="false" />
    72                     failonerror="false" 
    82                 <hlm:assertFileExists file="${build.log.dir}/${build.id}_${sysdef.configuration}.qmake.log" />
    73                     phase="compile"/>
       
    74                 <hlm:assertFileExists file="${compile.log.dir}/${build.id}_${sysdef.configuration}.qmake.log" />
    83             </then>
    75             </then>
    84             <else>
    76             <else>
    85                 <fmpp sourceFile="${qt.qmake.ant.template}"
    77                 <fmpp sourceFile="${qt.qmake.ant.template}"
    86                     outputFile="${temp.build.dir}/run-qmake-${sysdef.configuration}.ant.xml">
    78                     outputFile="${temp.build.dir}/run-qmake-${sysdef.configuration}.ant.xml">
    87                     <data expandProperties="yes">
    79                     <data expandProperties="yes">
    91                 </fmpp>
    83                 </fmpp>
    92                 <hlm:assertFileExists file="${temp.build.dir}/run-qmake-${sysdef.configuration}.ant.xml" />
    84                 <hlm:assertFileExists file="${temp.build.dir}/run-qmake-${sysdef.configuration}.ant.xml" />
    93     
    85     
    94                 <!-- Running the qmake steps -->
    86                 <!-- Running the qmake steps -->
    95                 <ant antfile="${temp.build.dir}/run-qmake-${sysdef.configuration}.ant.xml" dir="${build.drive}/"
    87                 <ant antfile="${temp.build.dir}/run-qmake-${sysdef.configuration}.ant.xml" dir="${build.drive}/"
    96                     output="${build.log.dir}/${build.id}_${sysdef.configuration}.qmake.log"/>
    88                     output="${compile.log.dir}/${build.id}_${sysdef.configuration}.qmake.log"/>
    97                 <hlm:assertFileExists file="${build.log.dir}/${build.id}_${sysdef.configuration}.qmake.log" />
    89                 <hlm:assertFileExists file="${compile.log.dir}/${build.id}_${sysdef.configuration}.qmake.log" />
    98             </else>
    90             </else>
    99         </if>
    91         </if>
   100         <copy file="${build.log.dir}/${build.id}_${sysdef.configuration}.qmake.log" tofile="${build.log.dir}/${build.id}_${sysdef.configuration}.qmake.generated.txt">
    92         <copy file="${compile.log.dir}/${build.id}_${sysdef.configuration}.qmake.log" tofile="${compile.log.dir}/${build.id}_${sysdef.configuration}.qmake.generated.txt">
   101             <filterchain>
    93             <filterchain>
   102                 <linecontainsregexp>
    94                 <linecontainsregexp>
   103                     <regexp pattern="Generating"/>
    95                     <regexp pattern="Generating"/>
   104                 </linecontainsregexp>
    96                 </linecontainsregexp>
   105             </filterchain>
    97             </filterchain>
   106         </copy>
    98         </copy>
   107         <replaceregexp file="${build.log.dir}/${build.id}_${sysdef.configuration}.qmake.generated.txt" match="^\s*(?:\[exec\])?\s*Generating[^/\\]*." replace="" byline="true"/>
    99         <replaceregexp file="${compile.log.dir}/${build.id}_${sysdef.configuration}.qmake.generated.txt" match="^\s*(?:\[exec\])?\s*Generating[^/\\]*." replace="" byline="true"/>
   108         <hlm:assertFileExists file="${build.log.dir}/${build.id}_${sysdef.configuration}.qmake.generated.txt"/>
   100         <hlm:assertFileExists file="${compile.log.dir}/${build.id}_${sysdef.configuration}.qmake.generated.txt"/>
   109         <hlm:metadatarecord database="${metadata.dbfile}">
   101         <hlm:metadatarecord database="${metadata.dbfile}">
   110             <hlm:textmetadatainput>
   102             <hlm:textmetadatainput>
   111                 <fileset casesensitive="false" file="${build.log.dir}/${build.id}_${sysdef.configuration}.qmake.log" />
   103                 <fileset casesensitive="false" file="${compile.log.dir}/${build.id}_${sysdef.configuration}.qmake.log" />
   112                 <metadatafilterset>
   104                 <metadatafilterset refid="filterset.qmake" />
   113                     <metadatafilter priority="error" regex="^Error processing project file:" description="qt error" />
       
   114                     <metadatafilter priority="error" regex="^'.*' is not recognized as an internal or external command," description="qt error" />
       
   115                     <metadatafilter priority="error" regex="^Result: [1-9][0-9]*" description="qt error" />
       
   116                     <metadatafilter priority="warning" regex="^WARNING:" description="qt error" />
       
   117                     <metadatafilter priority="info" regex="INFO:" description="qt error" />
       
   118                 </metadatafilterset>
       
   119             </hlm:textmetadatainput>
   105             </hlm:textmetadatainput>
   120         </hlm:metadatarecord>
   106         </hlm:metadatarecord>
   121         <hlm:signalMacro logfile="${build.id}_${sysdef.configuration}.qmake.log" 
   107         <hlm:signalMacro logfile="${build.id}_${sysdef.configuration}.qmake.log" 
   122             signal.input="signalRunQMakeInput" />
   108             signal.input="signalRunQMakeInput" phase="compile"/>
   123     </target>
   109     </target>
   124 </project>
   110 </project>