]> git.proxmox.com Git - mirror_edk2.git/blob - Tools/CCode/Source/GenFvImage/build.xml
398b86291e66f16fd3c894e7a21d34c4ef8be636
[mirror_edk2.git] / Tools / CCode / Source / GenFvImage / 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 GenFvImage Tool
15 Copyright (c) 2006, Intel Corporation
16 -->
17 <property name="ToolName" value="GenFvImage"/>
18 <property name="FileSet" value="GenFvImageLib.c GenFvImageExe.c"/>
19
20 <taskdef resource="net/sf/antcontrib/antlib.xml"/>
21
22 <property name="LINK_OUTPUT_TYPE" value="static"/>
23 <property name="BUILD_DIR" value="${PACKAGE_DIR}/${ToolName}/tmp"/>
24
25 <target name="GenTool" depends="init, Tool">
26 <echo message="The EDK Tool: ${ToolName} build has completed"/>
27 </target>
28
29 <target name="init">
30 <echo message="Building the EDK Tool: ${ToolName}"/>
31 <mkdir dir="${BUILD_DIR}"/>
32 <if>
33 <istrue value="${OSX}"/>
34 <then>
35 <property name="syslibdirs" value=""/>
36 <property name="syslibs" value=""/>
37 </then>
38 </if>
39
40 <if>
41 <istrue value="${cygwin}"/>
42 <then>
43 <property name="syslibdirs" value="${env.CYGWIN_HOME}/lib/e2fsprogs"/>
44 <property name="syslibs" value="uuid"/>
45 </then>
46 </if>
47
48 <if>
49 <istrue value="${msft}"/>
50 <then>
51 <property name="syslibdirs" value=""/>
52 <property name="syslibs" value="uuid"/>
53 </then>
54 </if>
55
56 <if>
57 <istrue value="${linux}"/>
58 <then>
59 <if>
60 <istrue value="${x86_64_linux}"/>
61 <then>
62 <property name="syslibdirs" value="/lib64"/>
63 </then>
64 <else>
65 <property name="syslibdirs" value="/usr/lib"/>
66 </else>
67 </if>
68 <property name="syslibs" value="uuid"/>
69 </then>
70 </if>
71 <echo message="syslibdirs set to: ${syslibdirs}"/>
72 </target>
73
74 <target name="Tool" depends="init, GenFvImage"/>
75
76 <target name="GenFvImage" >
77 <cc name="${ToolChain}" objdir="${BUILD_DIR}"
78 outfile="${BIN_DIR}/${ToolName}"
79 outtype="executable"
80 debug="true"
81 optimize="speed">
82 <compilerarg value="${ExtraArgus}" if="ExtraArgus" />
83
84 <defineset>
85 <define name="BUILDING_TOOLS"/>
86 <define name="TOOL_BUILD_IA32_TARGET"/>
87 </defineset>
88
89 <fileset dir="${basedir}/${ToolName}"
90 includes="${FileSet}"/>
91
92 <includepath path="${PACKAGE_DIR}/${ToolName}"/>
93 <includepath path="${PACKAGE_DIR}/Include"/>
94 <includepath path="${PACKAGE_DIR}/Include/${HostArch}"/>
95 <includepath path="${PACKAGE_DIR}/Common"/>
96 <libset dir="${LIB_DIR}" libs="CommonTools"/>
97
98 <linkerarg value="/nodefaultlib:libc.lib" if="msft"/>
99 <syslibset dir="${syslibdirs}" libs="${syslibs}" if="cyglinux"/>
100 <syslibset libs="RpcRT4" if="msft"/>
101 </cc>
102 </target>
103
104 <target name="clean">
105 <echo message="Removing Intermediate Files Only"/>
106 <delete>
107 <fileset dir="${BUILD_DIR}" includes="*.obj"/>
108 </delete>
109 </target>
110
111 <target name="cleanall">
112 <echo message="Removing Object Files and the Executable: ${ToolName}${ext_exe}"/>
113 <delete failonerror="false" quiet="true" includeEmptyDirs="true">
114 <fileset dir="${BUILD_DIR}"/>
115 <fileset file="${BIN_DIR}/${ToolName}_Ia32${ext_exe}"/>
116 <fileset file="${BIN_DIR}/${ToolName}_X64${ext_exe}"/>
117 <fileset file="${BIN_DIR}/${ToolName}${ext_exe}"/>
118 <fileset file="${BIN_DIR}/${ToolName}_Ipf${ext_exe}"/>
119 </delete>
120 </target>
121
122 </project>