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