Streamline the tools build and make it friendlier to gcc.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@97 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
bbahnsen 2006-05-03 22:14:18 +00:00
parent 7b778c8ee3
commit dce914c0d2
13 changed files with 64 additions and 148 deletions

View File

@ -80,7 +80,6 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
<cc name="${ToolChain}" objdir="${BUILD_DIR}"
outfile="${LIB_DIR}/CommonTools"
outtype="static"
libtool="${haveLibtool}"
optimize="speed">
<includepath path="${env.WORKSPACE}/MdePkg/Include"/>
@ -88,19 +87,8 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
<includepath path="${env.WORKSPACE}/MdePkg/Include/Ia32"/>
<fileset dir="${basedir}/Common"
includes="*.h *.c"
defaultexcludes="TRUE"
excludes="*.xml *.inf"/>
includes="*.c" />
</cc>
<if>
<os family="dos"/>
<then>
<exec dir="${BUILD_DIR}" executable="lib" failonerror="false">
<arg line="/NOLOGO *.lib /OUT:${LIB_DIR}/CommonTools${ext_static}"/>
</exec>
</then>
</if>
</target>
<target name="clean" depends="init">

View File

@ -23,7 +23,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
<taskdef resource="net/sf/antcontrib/antlib.xml"/>
<property name="LINK_OUTPUT_TYPE" value="static"/>
<property name="BUILD_DIR" value="${WORKSPACE}/Tools/Source/TianoTools/${ToolName}/tmp"/>
<target name="GenTool" depends="init,Lib,Dll">
<target name="GenTool" depends="init,Lib" >
<echo message="Building the EDK Tool: ${ToolName}"/>
</target>
<target name="init">
@ -70,16 +70,15 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
</then>
</elseif>
</if>
<condition property="CheckDepends">
<uptodate targetfile="${BIN_DIR}/${LibName}${ext_dynamic}">
<srcfiles dir="${BUILD_DIR}" includes="CommonTools.lib, CustomizedCompress.lib, CompressDll.obj"/>
</uptodate>
</condition>
</target>
<target name="Lib" depends="init">
<cc name="${ToolChain}" objdir="${BUILD_DIR}" outtype="static" optimize="speed">
<target name="Lib" depends="init" unless="gcc">
<cc name="${ToolChain}"
objdir="${BUILD_DIR}"
outtype="shared"
optimize="speed"
outfile="${BIN_DIR}/${LibName}"
>
<fileset dir="${ToolName}" includes="${LibFileSet}" defaultexcludes="TRUE" excludes="*.xml *.inf"/>
<includepath path="${env.WORKSPACE}/MdePkg/Include"/>
<includepath path="${env.WORKSPACE}/MdePkg/Include/Ia32"/>
@ -87,20 +86,10 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
<includepath path="${PACKAGE_DIR}/Common"/>
<includepath path="${env.JAVA_HOME}/include"/>
<includepath path="${env.JAVA_HOME}/include/win32"/>
<libset dir="${LIB_DIR}" libs="CommonTools"/>
<syslibset libs="kernel32" unless="gcc"/>
</cc>
</target>
<target name="Dll" unless="CheckDepends">
<if>
<os family="dos"/>
<then>
<echo message="Begin link!"/>
<exec dir="${BUILD_DIR}" executable="link" failonerror="false">
<arg line="kernel32.lib ${LIB_DIR}/CommonTools.lib ${LIB_DIR}/CustomizedCompress.lib /NOLOGO /DLL /MACHINE:I386 /OUT:${BUILD_DIR}/${LibName}${ext_dynamic} ${ToolName}"/>
</exec>
<copy todir="${BIN_DIR}" file="${BUILD_DIR}/${LibName}${ext_dynamic}"/>
</then>
</if>
</target>
<target name="clean" depends="init">
<echo message="Removing Intermediate Files Only"/>
<delete>

View File

@ -83,7 +83,6 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
<cc name="${ToolChain}" objdir="${BUILD_DIR}"
outfile="${BIN_DIR}/${ToolName}"
outtype="executable"
libtool="${haveLibtool}"
optimize="speed">
<fileset dir="${basedir}/${ToolName}"
@ -95,8 +94,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
<includepath path="${env.WORKSPACE}/MdePkg/Include/Common"/>
<includepath path="${env.WORKSPACE}/MdePkg/Include/Ia32"/>
<includepath path="${PACKAGE_DIR}/Common"/>
<linkerarg value="${LIB_DIR}/CommonTools.lib"/>
<libset dir="${LIB_DIR}" libs="CommonTools"/>
</cc>
</target>

View File

@ -67,8 +67,6 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
<property name="ext_static" value=".lib"/>
<property name="ext_dynamic" value=".dll"/>
<property name="ext_exe" value=".exe"/>
<property name="MSVC_DIR" value="C:/Program Files/Microsoft Visual Studio .NET 2003/Vc7/Include" />
<property name="MSVC_SDK_DIR" value="C:/Program Files/Microsoft Visual Studio .NET 2003/Vc7/PlatformSDK/Include" />
</then>
<elseif>
<equals arg1="${ToolChain}" arg2="gcc"/>
@ -85,29 +83,18 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
<cc name="${ToolChain}" objdir="${BUILD_DIR}"
outfile="${BIN_DIR}/${ToolName}"
outtype="executable"
libtool="${haveLibtool}"
optimize="speed">
<fileset dir="${basedir}/${ToolName}"
includes="${FileSet}"
defaultexcludes="TRUE"
excludes="*.xml *.inf"/>
includes="${FileSet}"/>
<includepath path="${env.WORKSPACE}/MdePkg/Include"/>
<includepath path="${env.WORKSPACE}/MdePkg/Include/Common"/>
<includepath path="${env.WORKSPACE}/MdePkg/Include/Ia32"/>
<includepath path="${PACKAGE_DIR}/Common"/>
<linkerarg value="${LIB_DIR}/CommonTools${ext_static}"/>
<libset dir="${LIB_DIR}" libs="CommonTools"/>
</cc>
<if>
<os family="dos"/>
<then>
<exec dir="${BUILD_DIR}" executable="lib" failonerror="false">
<arg line="/NOLOGO *.lib /OUT:${LIB_DIR}/${ToolName}${ext_exe}"/>
</exec>
</then>
</if>
</target>
<target name="clean" depends="init">

View File

@ -15,9 +15,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2006, Intel Corporation
-->
<property name="ToolName" value="GenDepex"/>
<property name="LibName" value="DepexParser"/>
<property name="FileSet" value="GenDepex.c GenDepex.h"/>
<property name="LibFileSet" value="DepexParser.c DepexParser.h" />
<property name="FileSet" value="DepexParser.c GenDepex.c GenDepex.h"/>
<taskdef resource="cpptasks.tasks"/>
<typedef resource="cpptasks.types"/>
@ -28,7 +26,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
<property name="LINK_OUTPUT_TYPE" value="static"/>
<property name="BUILD_DIR" value="${PACKAGE_DIR}/${ToolName}/tmp"/>
<target name="GenTool" depends="init, Lib, Tool">
<target name="GenTool" depends="init, Tool">
<echo message="Building the EDK Tool: ${ToolName}"/>
</target>
@ -81,54 +79,23 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
</if>
</target>
<target name="Tool" depends="init, Lib">
<target name="Tool" depends="init">
<cc name="${ToolChain}" objdir="${BUILD_DIR}"
outfile="${BIN_DIR}/${ToolName}"
outtype="executable"
libtool="${haveLibtool}"
optimize="speed">
<fileset dir="${basedir}/${ToolName}"
includes="${FileSet}"
defaultexcludes="TRUE"
excludes="*.xml *.inf"/>
includes="${FileSet}" />
<includepath path="${env.WORKSPACE}/MdePkg/Include"/>
<includepath path="${env.WORKSPACE}/MdePkg/Include/Common"/>
<includepath path="${env.WORKSPACE}/MdePkg/Include/Ia32"/>
<includepath path="${PACKAGE_DIR}/Common"/>
<linkerarg value="${LIB_DIR}/CommonTools${ext_static}"/>
<linkerarg value="${LIB_DIR}/${LibName}${ext_static}"/>
<libset dir="${LIB_DIR}" libs="CommonTools"/>
</cc>
</target>
<target name="Lib" depends="init">
<cc name="${ToolChain}" objdir="${BUILD_DIR}"
outfile="${LIB_DIR}/${LibName}"
outtype="static"
libtool="${haveLibtool}"
optimize="speed">
<fileset dir="${basedir}/${ToolName}"
includes="${LibFileSet}"
defaultexcludes="TRUE"
excludes="*.xml *.inf"/>
<includepath path="${env.WORKSPACE}/MdePkg/Include"/>
<includepath path="${env.WORKSPACE}/MdePkg/Include/Ia32"/>
<includepath path="${env.WORKSPACE}/MdePkg/Include/Common"/>
<includepath path="${PACKAGE_DIR}/Common"/>
</cc>
<if>
<os family="dos"/>
<then>
<exec dir="${BUILD_DIR}" executable="lib" failonerror="false">
<arg line="/NOLOGO *.lib /OUT:${LIB_DIR}/${LibName}${ext_static}"/>
</exec>
</then>
</if>
</target>
<target name="clean" depends="init">
<echo message="Removing Intermediate Files Only"/>
<delete>

View File

@ -96,9 +96,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
<includepath path="${env.WORKSPACE}/MdePkg/Include/Common"/>
<includepath path="${env.WORKSPACE}/MdePkg/Include/Protocol"/>
<includepath path="${PACKAGE_DIR}/Common"/>
<linkerarg value="${LIB_DIR}/CommonTools.lib"/>
<linkerarg value="${LIB_DIR}/CustomizedCompress.lib"/>
<libset dir="${LIB_DIR}" libs="CommonTools CustomizedCompress"/>
</cc>
</target>

View File

@ -85,11 +85,10 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
<target name="Tool" depends="init, GenFvImage, GenFvImage_Ia32, GenFvImage_X64, GenFvImage_Ipf"/>
<target name="GenFvImage">
<target name="GenFvImage" >
<cc name="${ToolChain}" objdir="${BUILD_DIR_IA32}"
outfile="${BIN_DIR}/${ToolName}"
outtype="executable"
libtool="${haveLibtool}"
optimize="speed">
<defineset>
@ -98,9 +97,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
</defineset>
<fileset dir="${basedir}/${ToolName}"
includes="${FileSet} Ia32/PeCoffLoaderEx.c"
defaultexcludes="TRUE"
excludes="*.xml *.inf"/>
includes="${FileSet} Ia32/PeCoffLoaderEx.c" />
<includepath path="${PACKAGE_DIR}/${ToolName}"/>
<includepath path="${env.WORKSPACE}/MdePkg/Include"/>
@ -111,12 +108,10 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
<includepath path="${env.WORKSPACE}/MdePkg/Include/Library"/>
<includepath path="${env.WORKSPACE}/MdePkg/Include/ToBeRemoved"/>
<includepath path="${PACKAGE_DIR}/Common"/>
<linkerarg value="${LIB_DIR}/CommonTools.lib"/>
<linkerarg value="${LIB_DIR}/CustomizedCompress.lib"/>
<linkerarg value="/nodefaultlib:libc.lib"/>
<linkerarg value="RpcRT4.Lib"/>
<libset dir="${LIB_DIR}" libs="CommonTools CustomizedCompress"/>
<linkerarg value="/nodefaultlib:libc.lib" unless="gcc"/>
<syslibset dir="${env.CYGWIN_HOME}/lib/e2fsprogs" libs="uuid" if="gcc"/>
<syslibset libs="RpcRT4" unless="gcc"/>
</cc>
</target>
@ -124,7 +119,6 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
<cc name="${ToolChain}" objdir="${BUILD_DIR_IA32}"
outfile="${BIN_DIR}/${ToolName}_Ia32"
outtype="executable"
libtool="${haveLibtool}"
optimize="speed">
<defineset>
@ -146,12 +140,10 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
<includepath path="${env.WORKSPACE}/MdePkg/Include/Library"/>
<includepath path="${env.WORKSPACE}/MdePkg/Include/ToBeRemoved"/>
<includepath path="${PACKAGE_DIR}/Common"/>
<linkerarg value="${LIB_DIR}/CommonTools.lib"/>
<linkerarg value="${LIB_DIR}/CustomizedCompress.lib"/>
<linkerarg value="/nodefaultlib:libc.lib"/>
<linkerarg value="RpcRT4.Lib"/>
<libset dir="${LIB_DIR}" libs="CommonTools CustomizedCompress"/>
<linkerarg value="/nodefaultlib:libc.lib" unless="gcc"/>
<syslibset dir="${env.CYGWIN_HOME}/lib/e2fsprogs" libs="uuid" if="gcc"/>
<syslibset libs="RpcRT4" unless="gcc"/>
</cc>
</target>
@ -180,12 +172,10 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
<includepath path="${env.WORKSPACE}/MdePkg/Include/Library"/>
<includepath path="${env.WORKSPACE}/MdePkg/Include/ToBeRemoved"/>
<includepath path="${PACKAGE_DIR}/Common"/>
<linkerarg value="${LIB_DIR}/CommonTools.lib"/>
<linkerarg value="${LIB_DIR}/CustomizedCompress.lib"/>
<linkerarg value="/nodefaultlib:libc.lib"/>
<linkerarg value="RpcRT4.Lib"/>
<libset dir="${LIB_DIR}" libs="CommonTools CustomizedCompress"/>
<linkerarg value="/nodefaultlib:libc.lib" unless="gcc"/>
<syslibset dir="${env.CYGWIN_HOME}/lib/e2fsprogs" libs="uuid" if="gcc"/>
<syslibset libs="RpcRT4" unless="gcc"/>
</cc>
</target>
@ -214,12 +204,10 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
<includepath path="${env.WORKSPACE}/MdePkg/Include/Library"/>
<includepath path="${env.WORKSPACE}/MdePkg/Include/ToBeRemoved"/>
<includepath path="${PACKAGE_DIR}/Common"/>
<linkerarg value="${LIB_DIR}/CommonTools.lib"/>
<linkerarg value="${LIB_DIR}/CustomizedCompress.lib"/>
<linkerarg value="/nodefaultlib:libc.lib"/>
<linkerarg value="RpcRT4.Lib"/>
<libset dir="${LIB_DIR}" libs="CommonTools CustomizedCompress"/>
<linkerarg value="/nodefaultlib:libc.lib" unless="gcc"/>
<syslibset dir="${env.CYGWIN_HOME}/lib/e2fsprogs" libs="uuid" if="gcc"/>
<syslibset libs="RpcRT4" unless="gcc"/>
</cc>
</target>

View File

@ -96,9 +96,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
<includepath path="${env.WORKSPACE}/MdePkg/Include/Common"/>
<includepath path="${env.WORKSPACE}/MdePkg/Include/Protocol"/>
<includepath path="${PACKAGE_DIR}/Common"/>
<linkerarg value="${LIB_DIR}/CommonTools.lib"/>
<linkerarg value="${LIB_DIR}/CustomizedCompress.lib"/>
<libset dir="${LIB_DIR}" libs="CommonTools CustomizedCompress"/>
</cc>
</target>

View File

@ -79,7 +79,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
</if>
</target>
<target name="Tool" depends="init">
<target name="Tool" depends="init" unless="gcc">
<cc name="${ToolChain}" objdir="${BUILD_DIR}"
outfile="${BIN_DIR}/${ToolName}"
outtype="executable"

View File

@ -95,7 +95,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
<includepath path="${env.WORKSPACE}/MdePkg/Include/Common"/>
<includepath path="${env.WORKSPACE}/MdePkg/Include/Ia32"/>
<includepath path="${PACKAGE_DIR}/Common"/>
<linkerarg value="${LIB_DIR}/CommonTools.lib"/>
<libset dir="${LIB_DIR}" libs="CommonTools"/>
</cc>
</target>

View File

@ -79,7 +79,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
</if>
</target>
<target name="Tool" depends="init">
<target name="Tool" depends="init" unless="gcc">
<cc name="${ToolChain}" objdir="${BUILD_DIR}"
outfile="${BIN_DIR}/${ToolName}"
outtype="executable"
@ -96,9 +96,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
<includepath path="${env.WORKSPACE}/MdePkg/Include/Common"/>
<includepath path="${env.WORKSPACE}/MdePkg/Include/Protocol"/>
<includepath path="${PACKAGE_DIR}/Common"/>
<linkerarg value="${LIB_DIR}/CommonTools.lib"/>
<linkerarg value="${LIB_DIR}/CustomizedCompress.lib"/>
<libset dir="${LIB_DIR}" libs="CommonTools CustomizedCompress"/>
</cc>
</target>

View File

@ -79,19 +79,20 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
</if>
<condition property="CheckDepends">
<uptodate targetfile="${WORKSPACE}/Tools/bin/VfrCompile${ext_exe}">
<srcfiles dir="${WORKSPACE}/Tools/Source/TianoTools/VfrCompile" includes="EfiVfrParser.cpp DLGLexer.cpp VfrCompile.cpp VfrCompile.g VfrServices.cpp parser.dlg"/>
<srcfiles dir="${WORKSPACE}/Tools/Source/TianoTools/VfrCompile"
includes="EfiVfrParser.cpp DLGLexer.cpp VfrCompile.cpp VfrCompile.g VfrServices.cpp parser.dlg"/>
</uptodate>
</condition>
</target>
<target name="Antlr" depends="init" unless="CheckDepends">
<exec dir="${basedir}/${ToolName}" executable="antlr.exe" failonerror="TRUE">
<exec dir="${basedir}/${ToolName}" executable="antlr" failonerror="TRUE">
<arg line="-CC -e3 -ck 3 -o . VfrCompile.g"/>
</exec>
</target>
<target name="Dlg" depends="Antlr" unless="CheckDepends">
<exec dir="${basedir}/${ToolName}" executable="dlg.exe" failonerror="TRUE">
<exec dir="${basedir}/${ToolName}" executable="dlg" failonerror="TRUE">
<arg line="-C2 -i -CC -o . Parser.dlg"/>
</exec>
</target>
@ -100,18 +101,13 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
<cc name="${ToolChain}" objdir="${BUILD_DIR}"
outfile="${BIN_DIR}/${ToolName}"
outtype="executable"
libtool="${haveLibtool}"
optimize="speed">
<fileset dir="${basedir}/${ToolName}"
includes="${FileSet}"
defaultexcludes="TRUE"
excludes="*.xml *.inf"/>
includes="${FileSet}" />
<fileset dir="${basedir}/Pccts/h"
includes="${FileSetPccts}"
defaultexcludes="TRUE"
excludes="*.xml *.inf"/>
includes="${FileSetPccts}" />
<includepath path="${env.WORKSPACE}/Tools/Source/TianoTools/Pccts/h"/>
<includepath path="${env.WORKSPACE}/MdePkg/Include"/>
@ -119,21 +115,20 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
<includepath path="${env.WORKSPACE}/MdePkg/Include/Common"/>
<includepath path="${env.WORKSPACE}/MdePkg/Include/Protocol"/>
<includepath path="${PACKAGE_DIR}/Common"/>
<linkerarg value="${LIB_DIR}/CommonTools.lib"/>
<libset dir="${LIB_DIR}" libs="CommonTools"/>
<syslibset libs="stdc++" if="gcc"/>
</cc>
</target>
<target name="clean" depends="init">
<echo message="Removing Intermediate Files Only"/>
<echo message="Removing Intermediate Files Only"/>
<delete>
<fileset dir="${BUILD_DIR}" includes="*.obj"/>
</delete>
</target>
<target name="cleanall" depends="init">
<echo message="Removing Object Files and the Executable: ${ToolName}${ext_exe}"/>
<echo message="Removing Object Files and the Executable: ${ToolName}${ext_exe}"/>
<delete dir="${BUILD_DIR}">
<fileset dir="${BIN_DIR}" includes="${ToolName}${ext_exe}"/>
</delete>

View File

@ -63,8 +63,18 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
</else>
</if>
<property name="HOST_ARCH" value="IA32"/>
<ToolChainSetup confPath="${WORKSPACE_DIR}/Tools/Conf" />
<if>
<isset property="env.TOOL_CHAIN" />
<then>
<property name="ToolChain" value="${env.TOOL_CHAIN}"/>
<condition property="gcc">
<equals arg1="${ToolChain}" arg2="gcc"/>
</condition>
</then>
</if>
</target>
<target name="Libraries">