summaryrefslogtreecommitdiff
path: root/Tools/CCode/Source/VfrCompile/build.xml
diff options
context:
space:
mode:
Diffstat (limited to 'Tools/CCode/Source/VfrCompile/build.xml')
-rw-r--r--Tools/CCode/Source/VfrCompile/build.xml123
1 files changed, 123 insertions, 0 deletions
diff --git a/Tools/CCode/Source/VfrCompile/build.xml b/Tools/CCode/Source/VfrCompile/build.xml
new file mode 100644
index 0000000000..247f0d2315
--- /dev/null
+++ b/Tools/CCode/Source/VfrCompile/build.xml
@@ -0,0 +1,123 @@
+<?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="." name="VfrCompile">
+<!--
+ EDK VfrCompile Tool
+ Copyright (c) 2006, Intel Corporation
+-->
+ <property name="ToolName" value="VfrCompile"/>
+ <property name="FileSet" value="*.cpp"/>
+ <property name="FileSetPccts" value="ATokenBuffer.cpp DLexerBase.cpp AParser.cpp"/>
+ <taskdef resource="cpptasks.tasks"/>
+ <typedef resource="cpptasks.types"/>
+ <taskdef resource="net/sf/antcontrib/antlib.xml"/>
+
+ <property name="LINK_OUTPUT_TYPE" value="static"/>
+ <property name="BUILD_DIR" value="${PACKAGE_DIR}/${ToolName}/tmp"/>
+
+ <target name="GenTool" depends="init, Antlr, Dlg, Tool">
+ <echo message="The EDK Tool: ${ToolName} build has completed"/>
+ </target>
+
+ <target name="init">
+
+ <echo message="Building the EDK Tool: ${ToolName}"/>
+ <mkdir dir="${BUILD_DIR}"/>
+
+ <condition property="AntlrDepends">
+ <uptodate targetfile="${PACKAGE_DIR}/VfrCompile/parser.dlg" srcfile="${PACKAGE_DIR}/VfrCompile/VfrCompile.g" value="true"/>
+ </condition>
+
+ <condition property="DlgDepends">
+ <uptodate targetfile="${PACKAGE_DIR}/VfrCompile/DLGLexer.cpp" srcfile="${PACKAGE_DIR}/VfrCompile/parser.dlg" value="true"/>
+ </condition>
+
+ <condition property="CheckDepends">
+ <or>
+ <isset property="AntlrDepends"/>
+ <isset property="DlgDepends"/>
+ </or>
+ </condition>
+
+ <condition property="gxx_extra_libs" value="stdc++ System gcc_s.10.4 gcc">
+ <os family="mac"/>
+ </condition>
+
+ <condition property="gxx_extra_libs" value="stdc++">
+ <os name="linux"/>
+ </condition>
+
+ <condition property="gxx_extra_libs" value="stdc++">
+ <os family="windows"/>
+ </condition>
+
+ </target>
+
+ <target name="Antlr" depends="init" unless="AntlrDepends">
+ <echo message="Executing ANTLR"/>
+ <exec dir="${basedir}/${ToolName}" executable="${env.FRAMEWORK_TOOLS_PATH}/antlr" failonerror="TRUE">
+ <arg line="-CC -e3 -ck 3 -o . VfrCompile.g"/>
+ </exec>
+ </target>
+
+ <target name="Dlg" depends="Antlr" unless="DlgDepends">
+ <echo message="Executing DLG"/>
+ <exec dir="${basedir}/${ToolName}" executable="${env.FRAMEWORK_TOOLS_PATH}/dlg" failonerror="TRUE">
+ <arg line="-C2 -i -CC -o . parser.dlg"/>
+ </exec>
+ </target>
+
+ <target name="Tool" depends="init">
+ <cc name="${ToolChain}" objdir="${BUILD_DIR}"
+ outfile="${BIN_DIR}/${ToolName}"
+ outtype="executable"
+ debug="true"
+ optimize="speed">
+
+ <fileset dir="${basedir}/${ToolName}"
+ includes="${FileSet}" />
+
+ <fileset dir="${basedir}/Pccts/h"
+ includes="${FileSetPccts}" />
+
+ <includepath path="${PACKAGE_DIR}/Pccts/h"/>
+ <includepath path="${PACKAGE_DIR}/Include"/>
+ <includepath path="${PACKAGE_DIR}/Include/${HostArch}"/>
+ <includepath path="${PACKAGE_DIR}/Common"/>
+ <libset dir="${LIB_DIR}" libs="CommonTools"/>
+ <syslibset libs="${gxx_extra_libs}" if="gcc"/>
+ </cc>
+ </target>
+
+ <target name="clean">
+ <echo message="Removing Intermediate Files Only"/>
+ <delete>
+ <fileset dir="${BUILD_DIR}" includes="*.obj"/>
+ </delete>
+ </target>
+
+ <target name="cleanall">
+ <echo message="Removing Object Files and the Executable: ${ToolName}${ext_exe}"/>
+ <delete failonerror="false" quiet="true" includeEmptyDirs="true">
+ <fileset dir="${BUILD_DIR}"/>
+ <fileset file="${basedir}/${ToolName}/DLGLexer.cpp"/>
+ <fileset file="${basedir}/${ToolName}/DLGLexer.h"/>
+ <fileset file="${basedir}/${ToolName}/EfiVfrParser.cpp"/>
+ <fileset file="${basedir}/${ToolName}/EfiVfrParser.h"/>
+ <fileset file="${basedir}/${ToolName}/parser.dlg"/>
+ <fileset file="${basedir}/${ToolName}/tokens.h"/>
+ <fileset file="${basedir}/${ToolName}/VfrCompile.cpp"/>
+ <fileset file="${BIN_DIR}/${ToolName}${ext_exe}"/>
+ </delete>
+ </target>
+
+</project>