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
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.
12 <project default=
"GenTool" basedir=
".">
15 Copyright (c) 2006, Intel Corporation
17 <property name=
"ToolName" value=
"GenFvImage"/>
18 <property name=
"FileSet" value=
"BasePeCoff.c GenFvImageLib.c GenFvImageExe.c"/>
20 <taskdef resource=
"cpptasks.tasks"/>
21 <typedef resource=
"cpptasks.types"/>
22 <taskdef resource=
"net/sf/antcontrib/antlib.xml"/>
24 <property environment=
"env"/>
26 <property name=
"LINK_OUTPUT_TYPE" value=
"static"/>
27 <property name=
"BUILD_DIR_IA32" value=
"${PACKAGE_DIR}/${ToolName}/tmp/Ia32"/>
28 <property name=
"BUILD_DIR_X64" value=
"${PACKAGE_DIR}/${ToolName}/tmp/X64"/>
29 <property name=
"BUILD_DIR_IPF" value=
"${PACKAGE_DIR}/${ToolName}/tmp/Ipf"/>
31 <target name=
"GenTool" depends=
"init, Tool">
32 <echo message=
"Building the EDK Tool: ${ToolName}"/>
36 <echo message=
"The EDK Tool: ${ToolName}"/>
37 <mkdir dir=
"${BUILD_DIR_IA32}"/>
38 <mkdir dir=
"${BUILD_DIR_X64}"/>
39 <mkdir dir=
"${BUILD_DIR_IPF}"/>
41 <equals arg1=
"${GCC}" arg2=
"cygwin"/>
43 <echo message=
"Cygwin Family"/>
44 <property name=
"ToolChain" value=
"gcc"/>
49 <echo message=
"Windows Family"/>
50 <property name=
"ToolChain" value=
"msvc"/>
56 <echo message=
"UNIX Family"/>
57 <property name=
"ToolChain" value=
"gcc"/>
63 Unsupported Operating System
64 Please Contact Intel Corporation
69 <equals arg1=
"${ToolChain}" arg2=
"msvc"/>
71 <property name=
"ext_static" value=
".lib"/>
72 <property name=
"ext_dynamic" value=
".dll"/>
73 <property name=
"ext_exe" value=
".exe"/>
76 <equals arg1=
"${ToolChain}" arg2=
"gcc"/>
78 <property name=
"ext_static" value=
".a"/>
79 <property name=
"ext_dynamic" value=
".so"/>
80 <property name=
"ext_exe" value=
""/>
86 <target name=
"Tool" depends=
"init, GenFvImage, GenFvImage_Ia32, GenFvImage_X64, GenFvImage_Ipf"/>
88 <target name=
"GenFvImage" >
89 <cc name=
"${ToolChain}" objdir=
"${BUILD_DIR_IA32}"
90 outfile=
"${BIN_DIR}/${ToolName}"
95 <define name=
"BUILDING_TOOLS"/>
96 <define name=
"TOOL_BUILD_IA32_TARGET"/>
99 <fileset dir=
"${basedir}/${ToolName}"
100 includes=
"${FileSet} Ia32/PeCoffLoaderEx.c" />
102 <includepath path=
"${PACKAGE_DIR}/${ToolName}"/>
103 <includepath path=
"${env.WORKSPACE}/MdePkg/Include"/>
104 <includepath path=
"${env.WORKSPACE}/MdePkg/Include"/>
105 <includepath path=
"${env.WORKSPACE}/MdePkg/Include/Ia32"/>
106 <includepath path=
"${env.WORKSPACE}/MdePkg/Include/Common"/>
107 <includepath path=
"${env.WORKSPACE}/MdePkg/Include/Protocol"/>
108 <includepath path=
"${env.WORKSPACE}/MdePkg/Include/Library"/>
109 <includepath path=
"${env.WORKSPACE}/MdePkg/Include/ToBeRemoved"/>
110 <includepath path=
"${PACKAGE_DIR}/Common"/>
111 <libset dir=
"${LIB_DIR}" libs=
"CommonTools CustomizedCompress"/>
112 <linkerarg value=
"/nodefaultlib:libc.lib" unless=
"gcc"/>
113 <syslibset dir=
"${env.CYGWIN_HOME}/lib/e2fsprogs" libs=
"uuid" if=
"gcc"/>
114 <syslibset libs=
"RpcRT4" unless=
"gcc"/>
118 <target name=
"GenFvImage_Ia32">
119 <cc name=
"${ToolChain}" objdir=
"${BUILD_DIR_IA32}"
120 outfile=
"${BIN_DIR}/${ToolName}_Ia32"
125 <define name=
"BUILDING_TOOLS"/>
126 <define name=
"TOOL_BUILD_IA32_TARGET"/>
129 <fileset dir=
"${basedir}/${ToolName}"
130 includes=
"${FileSet} Ia32/PeCoffLoaderEx.c"
131 defaultexcludes=
"TRUE"
132 excludes=
"*.xml *.inf"/>
134 <includepath path=
"${PACKAGE_DIR}/${ToolName}"/>
135 <includepath path=
"${env.WORKSPACE}/MdePkg/Include"/>
136 <includepath path=
"${env.WORKSPACE}/MdePkg/Include"/>
137 <includepath path=
"${env.WORKSPACE}/MdePkg/Include/Ia32"/>
138 <includepath path=
"${env.WORKSPACE}/MdePkg/Include/Common"/>
139 <includepath path=
"${env.WORKSPACE}/MdePkg/Include/Protocol"/>
140 <includepath path=
"${env.WORKSPACE}/MdePkg/Include/Library"/>
141 <includepath path=
"${env.WORKSPACE}/MdePkg/Include/ToBeRemoved"/>
142 <includepath path=
"${PACKAGE_DIR}/Common"/>
143 <libset dir=
"${LIB_DIR}" libs=
"CommonTools CustomizedCompress"/>
144 <linkerarg value=
"/nodefaultlib:libc.lib" unless=
"gcc"/>
145 <syslibset dir=
"${env.CYGWIN_HOME}/lib/e2fsprogs" libs=
"uuid" if=
"gcc"/>
146 <syslibset libs=
"RpcRT4" unless=
"gcc"/>
150 <target name=
"GenFvImage_X64">
151 <cc name=
"${ToolChain}" objdir=
"${BUILD_DIR_X64}"
152 outfile=
"${BIN_DIR}/${ToolName}_X64"
154 libtool=
"${haveLibtool}"
158 <define name=
"BUILDING_TOOLS"/>
159 <define name=
"TOOL_BUILD_X64_TARGET"/>
162 <fileset dir=
"${basedir}/${ToolName}"
163 includes=
"${FileSet} X64/PeCoffLoaderEx.c"
164 defaultexcludes=
"TRUE"
165 excludes=
"*.xml *.inf"/>
167 <includepath path=
"${PACKAGE_DIR}/${ToolName}"/>
168 <includepath path=
"${env.WORKSPACE}/MdePkg/Include"/>
169 <includepath path=
"${env.WORKSPACE}/MdePkg/Include/Ia32"/>
170 <includepath path=
"${env.WORKSPACE}/MdePkg/Include/Common"/>
171 <includepath path=
"${env.WORKSPACE}/MdePkg/Include/Protocol"/>
172 <includepath path=
"${env.WORKSPACE}/MdePkg/Include/Library"/>
173 <includepath path=
"${env.WORKSPACE}/MdePkg/Include/ToBeRemoved"/>
174 <includepath path=
"${PACKAGE_DIR}/Common"/>
175 <libset dir=
"${LIB_DIR}" libs=
"CommonTools CustomizedCompress"/>
176 <linkerarg value=
"/nodefaultlib:libc.lib" unless=
"gcc"/>
177 <syslibset dir=
"${env.CYGWIN_HOME}/lib/e2fsprogs" libs=
"uuid" if=
"gcc"/>
178 <syslibset libs=
"RpcRT4" unless=
"gcc"/>
182 <target name=
"GenFvImage_Ipf">
183 <cc name=
"${ToolChain}" objdir=
"${BUILD_DIR_IPF}"
184 outfile=
"${BIN_DIR}/${ToolName}_Ipf"
186 libtool=
"${haveLibtool}"
190 <define name=
"BUILDING_TOOLS"/>
191 <define name=
"TOOL_BUILD_IPF_TARGET"/>
194 <fileset dir=
"${basedir}/${ToolName}"
195 includes=
"${FileSet} Ipf/PeCoffLoaderEx.c"
196 defaultexcludes=
"TRUE"
197 excludes=
"*.xml *.inf"/>
199 <includepath path=
"${PACKAGE_DIR}/${ToolName}"/>
200 <includepath path=
"${env.WORKSPACE}/MdePkg/Include"/>
201 <includepath path=
"${env.WORKSPACE}/MdePkg/Include/Ia32"/>
202 <includepath path=
"${env.WORKSPACE}/MdePkg/Include/Common"/>
203 <includepath path=
"${env.WORKSPACE}/MdePkg/Include/Protocol"/>
204 <includepath path=
"${env.WORKSPACE}/MdePkg/Include/Library"/>
205 <includepath path=
"${env.WORKSPACE}/MdePkg/Include/ToBeRemoved"/>
206 <includepath path=
"${PACKAGE_DIR}/Common"/>
207 <libset dir=
"${LIB_DIR}" libs=
"CommonTools CustomizedCompress"/>
208 <linkerarg value=
"/nodefaultlib:libc.lib" unless=
"gcc"/>
209 <syslibset dir=
"${env.CYGWIN_HOME}/lib/e2fsprogs" libs=
"uuid" if=
"gcc"/>
210 <syslibset libs=
"RpcRT4" unless=
"gcc"/>
214 <target name=
"clean" depends=
"init">
215 <echo message=
"Removing Intermediate Files Only"/>
217 <fileset dir=
"${BUILD_DIR_IA32}" includes=
"*.obj"/>
218 <fileset dir=
"${BUILD_DIR_X64}" includes=
"*.obj"/>
219 <fileset dir=
"${BUILD_DIR_IPF}" includes=
"*.obj"/>
223 <target name=
"cleanall" depends=
"init">
224 <echo message=
"Removing Object Files and the Executable: ${ToolName}${ext_exe}"/>
225 <delete dir=
"${PACKAGE_DIR}/${ToolName}/tmp">
227 <fileset dir=
"${BIN_DIR}" includes=
"${ToolName}_Ia32${ext_exe}"/>
228 <fileset dir=
"${BIN_DIR}" includes=
"${ToolName}_X64${ext_exe}"/>
229 <fileset dir=
"${BIN_DIR}" includes=
"${ToolName}${ext_exe}"/>
230 <fileset dir=
"${BIN_DIR}" includes=
"${ToolName}_Ipf${ext_exe}"/>