]> git.proxmox.com Git - mirror_edk2.git/blame - Tools/CodeTools/TianoTools/PeCoffLoader/build.xml
Restructuring for better separation of Tool packages.
[mirror_edk2.git] / Tools / CodeTools / TianoTools / PeCoffLoader / build.xml
CommitLineData
4df60ea5 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 PeCoffLoader\r
15 Copyright (c) 2006, Intel Corporation\r
16-->\r
17 <taskdef resource="cpptasks.tasks"/>\r
18 <typedef resource="cpptasks.types"/>\r
19 <taskdef resource="net/sf/antcontrib/antlib.xml"/>\r
20\r
21 <property name="LibName" value="PeCoffLoader"/>\r
4df60ea5 22 <property name="LINK_OUTPUT_TYPE" value="static"/>\r
23 <property name="BUILD_DIR_IA32" value="${PACKAGE_DIR}/${LibName}/tmp/Ia32"/>\r
24 <property name="BUILD_DIR_X64" value="${PACKAGE_DIR}/${LibName}/tmp/X64"/>\r
25 <property name="BUILD_DIR_IPF" value="${PACKAGE_DIR}/${LibName}/tmp/Ipf"/>\r
26\r
af1dd46d 27 <target name="GenTool" depends="init, PeCoffLoaderLib">\r
28 <echo message="The EDK Library: ${LibName} build has completed!"/>\r
4df60ea5 29 </target>\r
30\r
31 <target name="init">\r
af1dd46d 32 <echo message="Building the EDK Library: ${LibName}"/>\r
4df60ea5 33 <mkdir dir="${BUILD_DIR_IA32}"/>\r
34 <mkdir dir="${BUILD_DIR_X64}"/>\r
35 <mkdir dir="${BUILD_DIR_IPF}"/>\r
4df60ea5 36\r
37 <condition property="syslibdirs" value="">\r
38 <os family="mac"/>\r
39 </condition>\r
40 \r
41 <condition property="syslibs" value="">\r
42 <os family="mac"/>\r
43 </condition>\r
44 \r
45 <condition property="syslibdirs" value="${env.CYGWIN_HOME}/lib/e2fsprogs">\r
46 <os family="windows"/>\r
47 </condition>\r
48 \r
49 <condition property="syslibs" value="uuid">\r
50 <os family="windows"/>\r
51 </condition>\r
52 \r
53 <condition property="syslibdirs" value="/usr/lib">\r
54 <os name="Linux"/>\r
55 </condition>\r
56 \r
57 <condition property="syslibs" value="uuid">\r
58 <os name="Linux"/>\r
59 </condition>\r
60 \r
61 </target>\r
62\r
af1dd46d 63 <target name="PeCoffLoaderLib" depends="init, PeCoffLoader_Ia32, PeCoffLoader_Ipf, PeCoffLoader_X64"/>\r
4df60ea5 64\r
65 <target name="PeCoffLoader_Ia32" >\r
66 <cc name="${ToolChain}" objdir="${BUILD_DIR_IA32}" \r
67 outfile="${LIB_DIR}/${LibName}_Ia32"\r
68 outtype="static"\r
b7b99c76 69 debug="true"\r
4df60ea5 70 optimize="speed">\r
71\r
72 <defineset>\r
73 <define name="BUILDING_TOOLS"/>\r
74 <define name="TOOL_BUILD_IA32_TARGET"/>\r
75 </defineset>\r
76 \r
77 <fileset dir="${basedir}/${LibName}" \r
78 includes="BasePeCoff.c Ia32/PeCoffLoaderEx.c" />\r
79\r
80 <includepath path="${PACKAGE_DIR}/${LibName}"/>\r
21b50a27 81 <includepath path="${PACKAGE_DIR}/Include"/>\r
21b50a27 82 <includepath path="${PACKAGE_DIR}/Include/Ia32"/>\r
4df60ea5 83 <includepath path="${PACKAGE_DIR}/Common"/>\r
84 </cc>\r
85 </target>\r
86\r
87 <target name="PeCoffLoader_Ipf" >\r
88 <cc name="${ToolChain}" objdir="${BUILD_DIR_IPF}" \r
89 outfile="${LIB_DIR}/${LibName}_Ipf"\r
90 outtype="static"\r
b7b99c76 91 debug="true"\r
4df60ea5 92 optimize="speed">\r
93\r
94 <defineset>\r
95 <define name="BUILDING_TOOLS"/>\r
96 <define name="TOOL_BUILD_IPF_TARGET"/>\r
97 </defineset>\r
98 \r
99 <fileset dir="${basedir}/${LibName}" \r
100 includes="BasePeCoff.c Ipf/PeCoffLoaderEx.c" />\r
101\r
102 <includepath path="${PACKAGE_DIR}/${LibName}"/>\r
21b50a27 103 <includepath path="${PACKAGE_DIR}/Include"/>\r
21b50a27 104 <includepath path="${PACKAGE_DIR}/Include/Ia32"/>\r
4df60ea5 105 <includepath path="${PACKAGE_DIR}/Common"/>\r
106 </cc>\r
107 </target>\r
108\r
109 <target name="PeCoffLoader_X64" >\r
110 <cc name="${ToolChain}" objdir="${BUILD_DIR_X64}" \r
111 outfile="${LIB_DIR}/${LibName}_X64"\r
112 outtype="static"\r
b7b99c76 113 debug="true"\r
4df60ea5 114 optimize="speed">\r
115\r
116 <defineset>\r
117 <define name="BUILDING_TOOLS"/>\r
118 <define name="TOOL_BUILD_X64_TARGET"/>\r
119 </defineset>\r
120 \r
121 <fileset dir="${basedir}/${LibName}" \r
122 includes="BasePeCoff.c X64/PeCoffLoaderEx.c" />\r
123\r
124 <includepath path="${PACKAGE_DIR}/${LibName}"/>\r
21b50a27 125 <includepath path="${PACKAGE_DIR}/Include"/>\r
21b50a27 126 <includepath path="${PACKAGE_DIR}/Include/Ia32"/>\r
4df60ea5 127 <includepath path="${PACKAGE_DIR}/Common"/>\r
128 </cc>\r
129 </target>\r
130\r
131\r
af1dd46d 132 <target name="clean">\r
4df60ea5 133 <echo message="Removing Intermediate Files Only"/> \r
134 <delete>\r
135 <fileset dir="${BUILD_DIR_IA32}" includes="*.obj"/>\r
136 <fileset dir="${BUILD_DIR_X64}" includes="*.obj"/>\r
137 <fileset dir="${BUILD_DIR_IPF}" includes="*.obj"/>\r
138 </delete>\r
139 </target>\r
140\r
af1dd46d 141 <target name="cleanall">\r
4df60ea5 142 <echo message="Removing Object Files and the Executable: ${LibName}${ext_exe}"/> \r
143 <delete dir="${PACKAGE_DIR}/${LibName}/tmp">\r
144 </delete>\r
af1dd46d 145 <delete failonerror="false" quiet="true" includeEmptyDirs="true">\r
146 <fileset dir="${BUILD_DIR}"/>\r
147 <fileset file="${LIB_DIR}/${LibName}_Ia32${ext_static}"/>\r
148 <fileset file="${BIN_DIR}/${LibName}_X64${ext_static}"/>\r
149 <fileset file="${BIN_DIR}/${LibName}_IPF${ext_static}"/>\r
150 </delete>\r
4df60ea5 151 </target>\r
152\r
153</project>\r