]> git.proxmox.com Git - mirror_edk2.git/blame - Tools/Source/TianoTools/GenFvImage/build.xml
Fix GenFvImagei build on OS X
[mirror_edk2.git] / Tools / Source / TianoTools / GenFvImage / build.xml
CommitLineData
878ddf1f 1<?xml version="1.0" ?>\r
2<!--\r
3Copyright (c) 2006, Intel Corporation\r
4All rights reserved. This program and the accompanying materials\r
5are licensed and made available under the terms and conditions of the BSD License\r
6which accompanies this distribution. The full text of the license may be found at\r
7http://opensource.org/licenses/bsd-license.php\r
8\r
9THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
10WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
11-->\r
12<project default="GenTool" basedir=".">\r
13<!--\r
14 EDK GenFvImage Tool\r
15 Copyright (c) 2006, Intel Corporation\r
16-->\r
17 <property name="ToolName" value="GenFvImage"/>\r
18 <property name="FileSet" value="BasePeCoff.c GenFvImageLib.c GenFvImageExe.c"/>\r
19\r
20 <taskdef resource="cpptasks.tasks"/>\r
21 <typedef resource="cpptasks.types"/>\r
22 <taskdef resource="net/sf/antcontrib/antlib.xml"/>\r
23\r
24 <property environment="env"/>\r
25\r
26 <property name="LINK_OUTPUT_TYPE" value="static"/>\r
27 <property name="BUILD_DIR_IA32" value="${PACKAGE_DIR}/${ToolName}/tmp/Ia32"/>\r
28 <property name="BUILD_DIR_X64" value="${PACKAGE_DIR}/${ToolName}/tmp/X64"/>\r
29 <property name="BUILD_DIR_IPF" value="${PACKAGE_DIR}/${ToolName}/tmp/Ipf"/>\r
30\r
31 <target name="GenTool" depends="init, Tool">\r
32 <echo message="Building the EDK Tool: ${ToolName}"/>\r
33 </target>\r
34\r
35 <target name="init">\r
36 <echo message="The EDK Tool: ${ToolName}"/>\r
37 <mkdir dir="${BUILD_DIR_IA32}"/>\r
38 <mkdir dir="${BUILD_DIR_X64}"/>\r
39 <mkdir dir="${BUILD_DIR_IPF}"/>\r
40 <if>\r
41 <equals arg1="${GCC}" arg2="cygwin"/>\r
42 <then>\r
43 <echo message="Cygwin Family"/>\r
44 <property name="ToolChain" value="gcc"/>\r
45 </then>\r
46 <elseif>\r
47 <os family="dos"/>\r
48 <then>\r
49 <echo message="Windows Family"/>\r
50 <property name="ToolChain" value="msvc"/>\r
51 </then>\r
52 </elseif>\r
53 <elseif>\r
54 <os family="unix"/>\r
55 <then>\r
56 <echo message="UNIX Family"/>\r
57 <property name="ToolChain" value="gcc"/>\r
58 </then>\r
59 </elseif>\r
60\r
61 <else>\r
62 <echo>\r
63 Unsupported Operating System\r
64 Please Contact Intel Corporation\r
65 </echo>\r
66 </else>\r
67 </if>\r
7d828c05 68 <if>\r
69 <equals arg1="${ToolChain}" arg2="msvc"/>\r
70 <then>\r
878ddf1f 71 <property name="ext_static" value=".lib"/>\r
72 <property name="ext_dynamic" value=".dll"/>\r
73 <property name="ext_exe" value=".exe"/>\r
7d828c05 74 </then>\r
75 <elseif>\r
76 <equals arg1="${ToolChain}" arg2="gcc"/>\r
77 <then>\r
878ddf1f 78 <property name="ext_static" value=".a"/>\r
79 <property name="ext_dynamic" value=".so"/>\r
80 <property name="ext_exe" value=""/>\r
7d828c05 81 </then>\r
82 </elseif>\r
83 </if>\r
3101ac6b 84\r
878ddf1f 85 </target>\r
86\r
7d828c05 87 <target name="Tool" depends="init, GenFvImage, GenFvImage_Ia32, GenFvImage_X64, GenFvImage_Ipf"/>\r
878ddf1f 88\r
dce914c0 89 <target name="GenFvImage" >\r
878ddf1f 90 <cc name="${ToolChain}" objdir="${BUILD_DIR_IA32}" \r
91 outfile="${BIN_DIR}/${ToolName}"\r
92 outtype="executable"\r
878ddf1f 93 optimize="speed">\r
94\r
95 <defineset>\r
96 <define name="BUILDING_TOOLS"/>\r
97 <define name="TOOL_BUILD_IA32_TARGET"/>\r
98 </defineset>\r
99 \r
100 <fileset dir="${basedir}/${ToolName}" \r
dce914c0 101 includes="${FileSet} Ia32/PeCoffLoaderEx.c" />\r
878ddf1f 102\r
103 <includepath path="${PACKAGE_DIR}/${ToolName}"/>\r
104 <includepath path="${env.WORKSPACE}/MdePkg/Include"/>\r
105 <includepath path="${env.WORKSPACE}/MdePkg/Include"/>\r
106 <includepath path="${env.WORKSPACE}/MdePkg/Include/Ia32"/>\r
107 <includepath path="${env.WORKSPACE}/MdePkg/Include/Common"/>\r
108 <includepath path="${env.WORKSPACE}/MdePkg/Include/Protocol"/>\r
109 <includepath path="${env.WORKSPACE}/MdePkg/Include/Library"/>\r
110 <includepath path="${env.WORKSPACE}/MdePkg/Include/ToBeRemoved"/>\r
111 <includepath path="${PACKAGE_DIR}/Common"/>\r
dce914c0 112 <libset dir="${LIB_DIR}" libs="CommonTools CustomizedCompress"/>\r
113 <linkerarg value="/nodefaultlib:libc.lib" unless="gcc"/>\r
3101ac6b 114 <!-- <syslibset dir="${env.CYGWIN_HOME}/lib/e2fsprogs" libs="uuid" if="gcc"/> -->\r
dce914c0 115 <syslibset libs="RpcRT4" unless="gcc"/>\r
878ddf1f 116 </cc>\r
117 </target>\r
118\r
7d828c05 119 <target name="GenFvImage_Ia32">\r
878ddf1f 120 <cc name="${ToolChain}" objdir="${BUILD_DIR_IA32}" \r
7d828c05 121 outfile="${BIN_DIR}/${ToolName}_Ia32"\r
878ddf1f 122 outtype="executable"\r
878ddf1f 123 optimize="speed">\r
124\r
125 <defineset>\r
126 <define name="BUILDING_TOOLS"/>\r
127 <define name="TOOL_BUILD_IA32_TARGET"/>\r
128 </defineset>\r
129 \r
130 <fileset dir="${basedir}/${ToolName}" \r
131 includes="${FileSet} Ia32/PeCoffLoaderEx.c" \r
132 defaultexcludes="TRUE" \r
133 excludes="*.xml *.inf"/>\r
134\r
135 <includepath path="${PACKAGE_DIR}/${ToolName}"/>\r
136 <includepath path="${env.WORKSPACE}/MdePkg/Include"/>\r
137 <includepath path="${env.WORKSPACE}/MdePkg/Include"/>\r
138 <includepath path="${env.WORKSPACE}/MdePkg/Include/Ia32"/>\r
139 <includepath path="${env.WORKSPACE}/MdePkg/Include/Common"/>\r
140 <includepath path="${env.WORKSPACE}/MdePkg/Include/Protocol"/>\r
141 <includepath path="${env.WORKSPACE}/MdePkg/Include/Library"/>\r
142 <includepath path="${env.WORKSPACE}/MdePkg/Include/ToBeRemoved"/>\r
143 <includepath path="${PACKAGE_DIR}/Common"/>\r
dce914c0 144 <libset dir="${LIB_DIR}" libs="CommonTools CustomizedCompress"/>\r
145 <linkerarg value="/nodefaultlib:libc.lib" unless="gcc"/>\r
3101ac6b 146 <!-- <syslibset dir="${env.CYGWIN_HOME}/lib/e2fsprogs" libs="uuid" if="gcc"/> -->\r
dce914c0 147 <syslibset libs="RpcRT4" unless="gcc"/>\r
878ddf1f 148 </cc>\r
149 </target>\r
150\r
151 <target name="GenFvImage_X64">\r
152 <cc name="${ToolChain}" objdir="${BUILD_DIR_X64}" \r
153 outfile="${BIN_DIR}/${ToolName}_X64"\r
154 outtype="executable"\r
155 libtool="${haveLibtool}"\r
156 optimize="speed">\r
157\r
158 <defineset>\r
159 <define name="BUILDING_TOOLS"/>\r
160 <define name="TOOL_BUILD_X64_TARGET"/>\r
161 </defineset>\r
162 \r
163 <fileset dir="${basedir}/${ToolName}" \r
6e273042 164 includes="${FileSet} X64/PeCoffLoaderEx.c" \r
878ddf1f 165 defaultexcludes="TRUE" \r
166 excludes="*.xml *.inf"/>\r
167\r
168 <includepath path="${PACKAGE_DIR}/${ToolName}"/>\r
169 <includepath path="${env.WORKSPACE}/MdePkg/Include"/>\r
170 <includepath path="${env.WORKSPACE}/MdePkg/Include/Ia32"/>\r
171 <includepath path="${env.WORKSPACE}/MdePkg/Include/Common"/>\r
172 <includepath path="${env.WORKSPACE}/MdePkg/Include/Protocol"/>\r
173 <includepath path="${env.WORKSPACE}/MdePkg/Include/Library"/>\r
174 <includepath path="${env.WORKSPACE}/MdePkg/Include/ToBeRemoved"/>\r
175 <includepath path="${PACKAGE_DIR}/Common"/>\r
dce914c0 176 <libset dir="${LIB_DIR}" libs="CommonTools CustomizedCompress"/>\r
177 <linkerarg value="/nodefaultlib:libc.lib" unless="gcc"/>\r
3101ac6b 178 <!-- <syslibset dir="${env.CYGWIN_HOME}/lib/e2fsprogs" libs="uuid" if="gcc"/> -->\r
dce914c0 179 <syslibset libs="RpcRT4" unless="gcc"/>\r
878ddf1f 180 </cc>\r
181 </target>\r
182\r
7d828c05 183 <target name="GenFvImage_Ipf">\r
878ddf1f 184 <cc name="${ToolChain}" objdir="${BUILD_DIR_IPF}" \r
7d828c05 185 outfile="${BIN_DIR}/${ToolName}_Ipf"\r
878ddf1f 186 outtype="executable"\r
187 libtool="${haveLibtool}"\r
188 optimize="speed">\r
189\r
190 <defineset>\r
191 <define name="BUILDING_TOOLS"/>\r
192 <define name="TOOL_BUILD_IPF_TARGET"/>\r
193 </defineset>\r
194 \r
195 <fileset dir="${basedir}/${ToolName}" \r
196 includes="${FileSet} Ipf/PeCoffLoaderEx.c" \r
197 defaultexcludes="TRUE" \r
198 excludes="*.xml *.inf"/>\r
199\r
200 <includepath path="${PACKAGE_DIR}/${ToolName}"/>\r
201 <includepath path="${env.WORKSPACE}/MdePkg/Include"/>\r
202 <includepath path="${env.WORKSPACE}/MdePkg/Include/Ia32"/>\r
203 <includepath path="${env.WORKSPACE}/MdePkg/Include/Common"/>\r
204 <includepath path="${env.WORKSPACE}/MdePkg/Include/Protocol"/>\r
205 <includepath path="${env.WORKSPACE}/MdePkg/Include/Library"/>\r
206 <includepath path="${env.WORKSPACE}/MdePkg/Include/ToBeRemoved"/>\r
207 <includepath path="${PACKAGE_DIR}/Common"/>\r
dce914c0 208 <libset dir="${LIB_DIR}" libs="CommonTools CustomizedCompress"/>\r
209 <linkerarg value="/nodefaultlib:libc.lib" unless="gcc"/>\r
3101ac6b 210 <!-- <syslibset dir="${env.CYGWIN_HOME}/lib/e2fsprogs" libs="uuid" if="gcc"/> -->\r
dce914c0 211 <syslibset libs="RpcRT4" unless="gcc"/>\r
878ddf1f 212 </cc>\r
213 </target>\r
214\r
215 <target name="clean" depends="init">\r
216 <echo message="Removing Intermediate Files Only"/> \r
217 <delete>\r
218 <fileset dir="${BUILD_DIR_IA32}" includes="*.obj"/>\r
219 <fileset dir="${BUILD_DIR_X64}" includes="*.obj"/>\r
220 <fileset dir="${BUILD_DIR_IPF}" includes="*.obj"/>\r
221 </delete>\r
222 </target>\r
223\r
224 <target name="cleanall" depends="init">\r
225 <echo message="Removing Object Files and the Executable: ${ToolName}${ext_exe}"/> \r
226 <delete dir="${PACKAGE_DIR}/${ToolName}/tmp">\r
7d828c05 227 \r
228 <fileset dir="${BIN_DIR}" includes="${ToolName}_Ia32${ext_exe}"/>\r
878ddf1f 229 <fileset dir="${BIN_DIR}" includes="${ToolName}_X64${ext_exe}"/>\r
230 <fileset dir="${BIN_DIR}" includes="${ToolName}${ext_exe}"/>\r
7d828c05 231 <fileset dir="${BIN_DIR}" includes="${ToolName}_Ipf${ext_exe}"/>\r
878ddf1f 232 </delete>\r
233 </target>\r
234\r
235</project>\r