0d05b58e874ffd45dddb3e560f4b3b7ee59b079b
[mirror_edk2.git] / Tools / CCode / Source / GenFvMap / build.xml
1 <?xml version="1.0" ?>
2 <!--
3 Copyright (c) 2006, Intel Corporation
4 All rights reserved. This program and the accompanying materials
5 are licensed and made available under the terms and conditions of the BSD License
6 which accompanies this distribution. The full text of the license may be found at
7 http://opensource.org/licenses/bsd-license.php
8
9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
11 -->
12 <project default="GenTool" basedir=".">
13 <!--
14 EDK GenTEImage Tool
15 Copyright (c) 2006, Intel Corporation
16 -->
17 <property name="ToolName" value="GenFvMap"/>
18 <property name="FileSet" value="*.cpp"/>
19
20 <taskdef resource="net/sf/antcontrib/antlib.xml"/>
21
22
23 <property name="LINK_OUTPUT_TYPE" value="static"/>
24 <property name="BUILD_DIR" value="${PACKAGE_DIR}/${ToolName}/tmp"/>
25
26 <target name="GenTool" depends="init, Tool">
27 <echo message="The EDK Tool: ${ToolName} build has completed!"/>
28 </target>
29
30 <target name="init">
31 <echo message="Building the EDK Tool: ${ToolName}"/>
32 <mkdir dir="${BUILD_DIR}"/>
33 </target>
34
35 <target name="Tool" depends="init">
36 <condition property="gxx_extra_libs" value="stdc++ System gcc_s.10.4 gcc">
37 <os family="mac"/>
38 </condition>
39
40 <condition property="gxx_extra_libs" value="stdc++">
41 <os name="linux"/>
42 </condition>
43
44 <condition property="gxx_extra_libs" value="stdc++">
45 <os family="windows"/>
46 </condition>
47
48 <cc name="${ToolChain}" objdir="${BUILD_DIR}"
49 outfile="${BIN_DIR}/${ToolName}"
50 outtype="executable"
51 debug="true"
52 optimize="speed">
53 <compilerarg value="${ExtraArgus}" if="ExtraArgus" />
54 <compilerarg value="-x" if="gcc"/>
55 <compilerarg value="c++" if="gcc"/>
56 <compilerarg value="/EHsc" unless="gcc"/>
57 <compilerarg value="/Za" unless="gcc"/>
58
59
60 <fileset dir="${basedir}/${ToolName}"
61 includes="${FileSet}"
62 defaultexcludes="TRUE"
63 excludes="*.xml *.inf"/>
64
65 <includepath path="${PACKAGE_DIR}/Include"/>
66 <includepath path="${PACKAGE_DIR}/Include/${HostArch}"/>
67 <includepath path="${PACKAGE_DIR}/Common"/>
68 <libset dir="${LIB_DIR}" libs="CommonTools"/>
69 <syslibset libs="${gxx_extra_libs}" if="gcc"/>
70 </cc>
71 </target>
72
73 <target name="clean">
74 <echo message="Removing Intermediate Files Only"/>
75 <delete>
76 <fileset dir="${BUILD_DIR}" includes="*.obj"/>
77 </delete>
78 </target>
79
80 <target name="cleanall">
81 <echo message="Removing Object Files and the Executable: ${ToolName}${ext_exe}"/>
82 <delete failonerror="false" quiet="true" includeEmptyDirs="true">
83 <fileset dir="${BUILD_DIR}"/>
84 <fileset file="${BIN_DIR}/${ToolName}${ext_exe}"/>
85 <fileset file="${BIN_DIR}/${ToolName}.pdb"/>
86 </delete>
87 </target>
88
89 </project>