summaryrefslogtreecommitdiff
path: root/Tools/Source/TianoTools/PeCoffLoader/build.xml
diff options
context:
space:
mode:
authorbbahnsen <bbahnsen@6f19259b-4bc3-4df7-8a09-765794883524>2006-05-23 22:00:58 +0000
committerbbahnsen <bbahnsen@6f19259b-4bc3-4df7-8a09-765794883524>2006-05-23 22:00:58 +0000
commit4df60ea54fd2ee5bf97586f453165ab3533a1aec (patch)
tree9c40e431492aef2e037442807da93099f0db02c9 /Tools/Source/TianoTools/PeCoffLoader/build.xml
parent51d48c2666aac102c522f38609d6017f6fcdd6b1 (diff)
downloadedk2-platforms-4df60ea54fd2ee5bf97586f453165ab3533a1aec.tar.xz
Refactor the PeCoffLoader into a library. Add PeiRebase Tool.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@247 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'Tools/Source/TianoTools/PeCoffLoader/build.xml')
-rw-r--r--Tools/Source/TianoTools/PeCoffLoader/build.xml203
1 files changed, 203 insertions, 0 deletions
diff --git a/Tools/Source/TianoTools/PeCoffLoader/build.xml b/Tools/Source/TianoTools/PeCoffLoader/build.xml
new file mode 100644
index 0000000000..7106bce7a5
--- /dev/null
+++ b/Tools/Source/TianoTools/PeCoffLoader/build.xml
@@ -0,0 +1,203 @@
+<?xml version="1.0" ?>
+<!--
+Copyright (c) 2006, Intel Corporation
+All rights reserved. This program and the accompanying materials
+are licensed and made available under the terms and conditions of the BSD License
+which accompanies this distribution. The full text of the license may be found at
+http://opensource.org/licenses/bsd-license.php
+
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+-->
+<project default="GenTool" basedir=".">
+<!--
+ EDK PeCoffLoader
+ Copyright (c) 2006, Intel Corporation
+-->
+ <taskdef resource="cpptasks.tasks"/>
+ <typedef resource="cpptasks.types"/>
+ <taskdef resource="net/sf/antcontrib/antlib.xml"/>
+
+ <property name="LibName" value="PeCoffLoader"/>
+ <property environment="env"/>
+
+ <property name="LINK_OUTPUT_TYPE" value="static"/>
+ <property name="BUILD_DIR_IA32" value="${PACKAGE_DIR}/${LibName}/tmp/Ia32"/>
+ <property name="BUILD_DIR_X64" value="${PACKAGE_DIR}/${LibName}/tmp/X64"/>
+ <property name="BUILD_DIR_IPF" value="${PACKAGE_DIR}/${LibName}/tmp/Ipf"/>
+
+ <target name="GenTool" depends="init, Tool">
+ <echo message="Building the EDK Tool: ${LibName}"/>
+ </target>
+
+ <target name="init">
+ <echo message="The EDK Library: ${LibName}"/>
+ <mkdir dir="${BUILD_DIR_IA32}"/>
+ <mkdir dir="${BUILD_DIR_X64}"/>
+ <mkdir dir="${BUILD_DIR_IPF}"/>
+ <if>
+ <equals arg1="${GCC}" arg2="cygwin"/>
+ <then>
+ <echo message="Cygwin Family"/>
+ <property name="ToolChain" value="gcc"/>
+ </then>
+ <elseif>
+ <os family="dos"/>
+ <then>
+ <echo message="Windows Family"/>
+ <property name="ToolChain" value="msvc"/>
+ </then>
+ </elseif>
+ <elseif>
+ <os family="unix"/>
+ <then>
+ <echo message="UNIX Family"/>
+ <property name="ToolChain" value="gcc"/>
+ </then>
+ </elseif>
+
+ <else>
+ <echo>
+ Unsupported Operating System
+ Please Contact Intel Corporation
+ </echo>
+ </else>
+ </if>
+ <property name="ToolChain" value="gcc"/>
+ <if>
+ <equals arg1="${ToolChain}" arg2="msvc"/>
+ <then>
+ <property name="ext_static" value=".lib"/>
+ <property name="ext_dynamic" value=".dll"/>
+ <property name="ext_exe" value=".exe"/>
+ </then>
+ <elseif>
+ <equals arg1="${ToolChain}" arg2="gcc"/>
+ <then>
+ <property name="ext_static" value=".a"/>
+ <property name="ext_dynamic" value=".so"/>
+ <property name="ext_exe" value=""/>
+ </then>
+ </elseif>
+ </if>
+
+ <condition property="syslibdirs" value="">
+ <os family="mac"/>
+ </condition>
+
+ <condition property="syslibs" value="">
+ <os family="mac"/>
+ </condition>
+
+ <condition property="syslibdirs" value="${env.CYGWIN_HOME}/lib/e2fsprogs">
+ <os family="windows"/>
+ </condition>
+
+ <condition property="syslibs" value="uuid">
+ <os family="windows"/>
+ </condition>
+
+ <condition property="syslibdirs" value="/usr/lib">
+ <os name="Linux"/>
+ </condition>
+
+ <condition property="syslibs" value="uuid">
+ <os name="Linux"/>
+ </condition>
+
+ </target>
+
+ <target name="Tool" depends="init, PeCoffLoader_Ia32, PeCoffLoader_Ipf, PeCoffLoader_X64"/>
+
+ <target name="PeCoffLoader_Ia32" >
+ <cc name="${ToolChain}" objdir="${BUILD_DIR_IA32}"
+ outfile="${LIB_DIR}/${LibName}_Ia32"
+ outtype="static"
+ optimize="speed">
+
+ <defineset>
+ <define name="BUILDING_TOOLS"/>
+ <define name="TOOL_BUILD_IA32_TARGET"/>
+ </defineset>
+
+ <fileset dir="${basedir}/${LibName}"
+ includes="BasePeCoff.c Ia32/PeCoffLoaderEx.c" />
+
+ <includepath path="${PACKAGE_DIR}/${LibName}"/>
+ <includepath path="${env.WORKSPACE}/MdePkg/Include"/>
+ <includepath path="${env.WORKSPACE}/MdePkg/Include"/>
+ <includepath path="${env.WORKSPACE}/MdePkg/Include/Ia32"/>
+ <includepath path="${env.WORKSPACE}/MdePkg/Include/Common"/>
+ <includepath path="${env.WORKSPACE}/MdePkg/Include/Protocol"/>
+ <includepath path="${env.WORKSPACE}/MdePkg/Include/Library"/>
+ <includepath path="${PACKAGE_DIR}/Common"/>
+ </cc>
+ </target>
+
+ <target name="PeCoffLoader_Ipf" >
+ <cc name="${ToolChain}" objdir="${BUILD_DIR_IPF}"
+ outfile="${LIB_DIR}/${LibName}_Ipf"
+ outtype="static"
+ optimize="speed">
+
+ <defineset>
+ <define name="BUILDING_TOOLS"/>
+ <define name="TOOL_BUILD_IPF_TARGET"/>
+ </defineset>
+
+ <fileset dir="${basedir}/${LibName}"
+ includes="BasePeCoff.c Ipf/PeCoffLoaderEx.c" />
+
+ <includepath path="${PACKAGE_DIR}/${LibName}"/>
+ <includepath path="${env.WORKSPACE}/MdePkg/Include"/>
+ <includepath path="${env.WORKSPACE}/MdePkg/Include"/>
+ <includepath path="${env.WORKSPACE}/MdePkg/Include/Ia32"/>
+ <includepath path="${env.WORKSPACE}/MdePkg/Include/Common"/>
+ <includepath path="${env.WORKSPACE}/MdePkg/Include/Protocol"/>
+ <includepath path="${env.WORKSPACE}/MdePkg/Include/Library"/>
+ <includepath path="${PACKAGE_DIR}/Common"/>
+ </cc>
+ </target>
+
+ <target name="PeCoffLoader_X64" >
+ <cc name="${ToolChain}" objdir="${BUILD_DIR_X64}"
+ outfile="${LIB_DIR}/${LibName}_X64"
+ outtype="static"
+ optimize="speed">
+
+ <defineset>
+ <define name="BUILDING_TOOLS"/>
+ <define name="TOOL_BUILD_X64_TARGET"/>
+ </defineset>
+
+ <fileset dir="${basedir}/${LibName}"
+ includes="BasePeCoff.c X64/PeCoffLoaderEx.c" />
+
+ <includepath path="${PACKAGE_DIR}/${LibName}"/>
+ <includepath path="${env.WORKSPACE}/MdePkg/Include"/>
+ <includepath path="${env.WORKSPACE}/MdePkg/Include"/>
+ <includepath path="${env.WORKSPACE}/MdePkg/Include/Ia32"/>
+ <includepath path="${env.WORKSPACE}/MdePkg/Include/Common"/>
+ <includepath path="${env.WORKSPACE}/MdePkg/Include/Protocol"/>
+ <includepath path="${env.WORKSPACE}/MdePkg/Include/Library"/>
+ <includepath path="${PACKAGE_DIR}/Common"/>
+ </cc>
+ </target>
+
+
+ <target name="clean" depends="init">
+ <echo message="Removing Intermediate Files Only"/>
+ <delete>
+ <fileset dir="${BUILD_DIR_IA32}" includes="*.obj"/>
+ <fileset dir="${BUILD_DIR_X64}" includes="*.obj"/>
+ <fileset dir="${BUILD_DIR_IPF}" includes="*.obj"/>
+ </delete>
+ </target>
+
+ <target name="cleanall" depends="init">
+ <echo message="Removing Object Files and the Executable: ${LibName}${ext_exe}"/>
+ <delete dir="${PACKAGE_DIR}/${LibName}/tmp">
+ </delete>
+ </target>
+
+</project>