]> git.proxmox.com Git - mirror_edk2.git/blame - Tools/CodeTools/TianoTools/VfrCompile/build.xml
Restructuring for better separation of Tool packages.
[mirror_edk2.git] / Tools / CodeTools / TianoTools / VfrCompile / build.xml
CommitLineData
878ddf1f 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
af1dd46d 12<project default="GenTool" basedir="." name="VfrCompile">\r
878ddf1f 13<!--\r
14 EDK VfrCompile Tool\r
15 Copyright (c) 2006, Intel Corporation\r
16-->\r
17 <property name="ToolName" value="VfrCompile"/>\r
18 <property name="FileSet" value="*.cpp"/>\r
19 <property name="FileSetPccts" value="ATokenBuffer.cpp DLexerBase.cpp AParser.cpp"/>\r
20 <taskdef resource="cpptasks.tasks"/>\r
21 <typedef resource="cpptasks.types"/>\r
22 <taskdef resource="net/sf/antcontrib/antlib.xml"/>\r
23\r
878ddf1f 24 <property name="LINK_OUTPUT_TYPE" value="static"/>\r
25 <property name="BUILD_DIR" value="${PACKAGE_DIR}/${ToolName}/tmp"/>\r
26\r
27 <target name="GenTool" depends="init, Antlr, Dlg, Tool">\r
af1dd46d 28 <echo message="The EDK Tool: ${ToolName} build has completed"/>\r
878ddf1f 29 </target>\r
30\r
31 <target name="init">\r
af1dd46d 32\r
33 <echo message="Building the EDK Tool: ${ToolName}"/>\r
878ddf1f 34 <mkdir dir="${BUILD_DIR}"/>\r
af1dd46d 35\r
36 <condition property="AntlrDepends">\r
37 <uptodate targetfile="${PACKAGE_DIR}/VfrCompile/parser.dlg" srcfile="${PACKAGE_DIR}/VfrCompile/VfrCompile.g" value="true"/>\r
38 </condition>\r
39\r
40 <condition property="DlgDepends">\r
41 <uptodate targetfile="${PACKAGE_DIR}/VfrCompile/DLGLexer.cpp" srcfile="${PACKAGE_DIR}/VfrCompile/parser.dlg" value="true"/>\r
42 </condition>\r
43\r
ce53a8c3 44 <condition property="CheckDepends">\r
af1dd46d 45 <or>\r
46 <isset property="AntlrDepends"/>\r
47 <isset property="DlgDepends"/>\r
48 </or>\r
ce53a8c3 49 </condition>\r
96c0505b 50\r
51 <condition property="gxx_extra_libs" value="stdc++ System gcc_s.10.4 gcc">\r
52 <os family="mac"/>\r
af1dd46d 53 </condition>\r
ce53a8c3 54 \r
96c0505b 55 <condition property="gxx_extra_libs" value="stdc++">\r
56 <os name="linux"/>\r
af1dd46d 57 </condition>\r
ce53a8c3 58 \r
96c0505b 59 <condition property="gxx_extra_libs" value="stdc++">\r
60 <os family="windows"/>\r
af1dd46d 61 </condition>\r
ce53a8c3 62 \r
878ddf1f 63 </target>\r
64\r
af1dd46d 65 <target name="Antlr" depends="init" unless="AntlrDepends">\r
66 <echo message="Executing ANTLR"/>\r
5179dda3 67 <exec dir="${basedir}/${ToolName}" executable="${env.FRAMEWORK_TOOLS_PATH}/antlr" failonerror="TRUE">\r
878ddf1f 68 <arg line="-CC -e3 -ck 3 -o . VfrCompile.g"/>\r
69 </exec>\r
70 </target>\r
71\r
af1dd46d 72 <target name="Dlg" depends="Antlr" unless="DlgDepends">\r
73 <echo message="Executing DLG"/>\r
5179dda3 74 <exec dir="${basedir}/${ToolName}" executable="${env.FRAMEWORK_TOOLS_PATH}/dlg" failonerror="TRUE">\r
621406c5 75 <arg line="-C2 -i -CC -o . parser.dlg"/>\r
878ddf1f 76 </exec>\r
77 </target>\r
78\r
af1dd46d 79 <target name="Tool" depends="init">\r
0a022784 80 <cc name="${ToolChain}" objdir="${BUILD_DIR}" \r
878ddf1f 81 outfile="${BIN_DIR}/${ToolName}"\r
82 outtype="executable"\r
b7b99c76 83 debug="true"\r
878ddf1f 84 optimize="speed">\r
85\r
86 <fileset dir="${basedir}/${ToolName}" \r
dce914c0 87 includes="${FileSet}" />\r
878ddf1f 88\r
89 <fileset dir="${basedir}/Pccts/h" \r
dce914c0 90 includes="${FileSetPccts}" />\r
878ddf1f 91\r
ce53a8c3 92 <includepath path="${PACKAGE_DIR}/Pccts/h"/>\r
21b50a27 93 <includepath path="${PACKAGE_DIR}/Include"/>\r
c7c42e40 94 <includepath path="${PACKAGE_DIR}/Include/${HostArch}"/>\r
878ddf1f 95 <includepath path="${PACKAGE_DIR}/Common"/>\r
dce914c0 96 <libset dir="${LIB_DIR}" libs="CommonTools"/>\r
f3bf0db3 97 <syslibset libs="${gxx_extra_libs}" if="gcc"/>\r
878ddf1f 98 </cc>\r
99 </target>\r
100\r
af1dd46d 101 <target name="clean">\r
dce914c0 102 <echo message="Removing Intermediate Files Only"/>\r
878ddf1f 103 <delete>\r
104 <fileset dir="${BUILD_DIR}" includes="*.obj"/>\r
105 </delete>\r
106 </target>\r
107\r
af1dd46d 108 <target name="cleanall">\r
dce914c0 109 <echo message="Removing Object Files and the Executable: ${ToolName}${ext_exe}"/>\r
af1dd46d 110 <delete failonerror="false" quiet="true" includeEmptyDirs="true">\r
111 <fileset dir="${BUILD_DIR}"/>\r
112 <fileset file="${basedir}/${ToolName}/DLGLexer.cpp"/>\r
113 <fileset file="${basedir}/${ToolName}/DLGLexer.h"/>\r
114 <fileset file="${basedir}/${ToolName}/EfiVfrParser.cpp"/>\r
115 <fileset file="${basedir}/${ToolName}/EfiVfrParser.h"/>\r
116 <fileset file="${basedir}/${ToolName}/parser.dlg"/>\r
117 <fileset file="${basedir}/${ToolName}/tokens.h"/>\r
118 <fileset file="${basedir}/${ToolName}/VfrCompile.cpp"/>\r
119 <fileset file="${BIN_DIR}/${ToolName}${ext_exe}"/>\r
878ddf1f 120 </delete>\r
121 </target>\r
122\r
123</project>\r