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
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.
12 <project default=
"GenTool" basedir=
".">
15 Copyright (c) 2006, Intel Corporation
17 <property name=
"ToolName" value=
"VfrCompile"/>
18 <property name=
"FileSet" value=
"*.cpp"/>
19 <property name=
"FileSetPccts" value=
"ATokenBuffer.cpp DLexerBase.cpp AParser.cpp"/>
20 <taskdef resource=
"cpptasks.tasks"/>
21 <typedef resource=
"cpptasks.types"/>
22 <taskdef resource=
"net/sf/antcontrib/antlib.xml"/>
24 <property environment=
"env"/>
26 <property name=
"LINK_OUTPUT_TYPE" value=
"static"/>
27 <property name=
"BUILD_DIR" value=
"${PACKAGE_DIR}/${ToolName}/tmp"/>
29 <target name=
"GenTool" depends=
"init, Antlr, Dlg, Tool">
30 <echo message=
"Building the EDK Tool: ${ToolName}"/>
34 <echo message=
"The EDK Tool: ${ToolName}"/>
35 <mkdir dir=
"${BUILD_DIR}"/>
37 <equals arg1=
"${GCC}" arg2=
"cygwin"/>
39 <echo message=
"Cygwin Family"/>
40 <property name=
"ToolChain" value=
"gcc"/>
45 <echo message=
"Windows Family"/>
46 <property name=
"ToolChain" value=
"msvc"/>
52 <echo message=
"UNIX Family"/>
53 <property name=
"ToolChain" value=
"gcc"/>
59 Unsupported Operating System
60 Please Contact Intel Corporation
65 <equals arg1=
"${ToolChain}" arg2=
"msvc"/>
67 <property name=
"ext_static" value=
".lib"/>
68 <property name=
"ext_dynamic" value=
".dll"/>
69 <property name=
"ext_exe" value=
".exe"/>
72 <equals arg1=
"${ToolChain}" arg2=
"gcc"/>
74 <property name=
"ext_static" value=
".a"/>
75 <property name=
"ext_dynamic" value=
".so"/>
76 <property name=
"ext_exe" value=
""/>
80 <condition property=
"CheckDepends">
81 <uptodate targetfile=
"${WORKSPACE}/Tools/bin/VfrCompile${ext_exe}">
82 <srcfiles dir=
"${WORKSPACE}/Tools/Source/TianoTools/VfrCompile"
83 includes=
"EfiVfrParser.cpp DLGLexer.cpp VfrCompile.cpp VfrCompile.g VfrServices.cpp parser.dlg"/>
87 <condition property=
"gxx_extra_libs" value=
"stdc++ System gcc_s.10.4 gcc">
91 <condition property=
"gxx_extra_libs" value=
"stdc++">
95 <condition property=
"gxx_extra_libs" value=
"stdc++">
96 <os family=
"windows"/>
101 <target name=
"Antlr" depends=
"init" unless=
"CheckDepends">
102 <exec dir=
"${basedir}/${ToolName}" executable=
"antlr" failonerror=
"TRUE">
103 <arg line=
"-CC -e3 -ck 3 -o . VfrCompile.g"/>
107 <target name=
"Dlg" depends=
"Antlr" unless=
"CheckDepends">
108 <exec dir=
"${basedir}/${ToolName}" executable=
"dlg" failonerror=
"TRUE">
109 <arg line=
"-C2 -i -CC -o . parser.dlg"/>
113 <target name=
"Tool" depends=
"init, Dlg">
114 <cc name=
"g++" objdir=
"${BUILD_DIR}"
115 outfile=
"${BIN_DIR}/${ToolName}"
119 <fileset dir=
"${basedir}/${ToolName}"
120 includes=
"${FileSet}" />
122 <fileset dir=
"${basedir}/Pccts/h"
123 includes=
"${FileSetPccts}" />
125 <includepath path=
"${env.WORKSPACE}/Tools/Source/TianoTools/Pccts/h"/>
126 <includepath path=
"${env.WORKSPACE}/MdePkg/Include"/>
127 <includepath path=
"${env.WORKSPACE}/MdePkg/Include/Ia32"/>
128 <includepath path=
"${env.WORKSPACE}/MdePkg/Include/Common"/>
129 <includepath path=
"${env.WORKSPACE}/MdePkg/Include/Protocol"/>
130 <includepath path=
"${PACKAGE_DIR}/Common"/>
131 <libset dir=
"${LIB_DIR}" libs=
"CommonTools"/>
132 <syslibset libs=
"${gxx_extra_libs}" if=
"gcc"/>
136 <target name=
"clean" depends=
"init">
137 <echo message=
"Removing Intermediate Files Only"/>
139 <fileset dir=
"${BUILD_DIR}" includes=
"*.obj"/>
143 <target name=
"cleanall" depends=
"init">
144 <echo message=
"Removing Object Files and the Executable: ${ToolName}${ext_exe}"/>
145 <delete dir=
"${BUILD_DIR}">
146 <fileset dir=
"${BIN_DIR}" includes=
"${ToolName}${ext_exe}"/>