]> git.proxmox.com Git - mirror_edk2.git/blobdiff - Tools/Conf/BuildMacro.xml
Let specify GUID value for GUID-defined FV region, and remove potential dead loop...
[mirror_edk2.git] / Tools / Conf / BuildMacro.xml
index 2e1eec1fa8636062eef9ad6e40940c8e91df7604..0442b05b9d228d3b62e3e961ec674648df291f16 100644 (file)
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
+<?xml version="1.0" encoding="UTF-8"?>\r
 <!--\r
 Copyright (c) 2006, Intel Corporation\r
 All rights reserved. This program and the accompanying materials\r
@@ -709,16 +709,39 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
         </targetfiles>\r
 \r
         <sequential>\r
-          <cc userdefine="on">\r
-            <command type="PP" cmd="${PP}" workdir="${DEST_DIR_OUTPUT}/@{FILEPATH}" family="${PP_FAMILY}" \r
-                dpath="${PP_DPATH}" libpath="${PP_LIBPATH}" include="${PP_INCLUDEPATH}">\r
-              <argument value="${VFR_FLAGS}"/>\r
-              <!-- Output file of the preprocess -->           \r
-              <argument value="-o ${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.i"/>\r
-              <EXTRA.INC/>\r
-              <fileset casesensitive="on" file="${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>\r
-            </command>\r
-          </cc>\r
+          <!-- if "TOOLCHIAN FAMILY" is "GCC", it should point the ouput file for preprocess compiler -->         \r
+          <if>\r
+            <equals arg1="${CC_FAMILY}" arg2="GCC"/>\r
+            <then>\r
+              <cc userdefine="on">\r
+                <command type="PP" cmd="${PP}" workdir="${DEST_DIR_OUTPUT}/@{FILEPATH}" family="${PP_FAMILY}" \r
+                         dpath="${PP_DPATH}" libpath="${PP_LIBPATH}" include="${PP_INCLUDEPATH}">\r
+                  <argument value="${VFRPP_FLAGS} -o ${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.i"/>\r
+                  <!-- Output file of the preprocess -->   \r
+                  <EXTRA.INC/>            \r
+                  <fileset casesensitive="on" file="${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>              \r
+                </command>\r
+              </cc>\r
+            </then>\r
+          </if>\r
+          \r
+          <if>\r
+            <not>\r
+              <equals arg1="${CC_FAMILY}" arg2="GCC"/>\r
+            </not>\r
+            <then>\r
+              <cc userdefine="on">\r
+                <command type="PP" cmd="${PP}" workdir="${DEST_DIR_OUTPUT}/@{FILEPATH}" family="${PP_FAMILY}" \r
+                         dpath="${PP_DPATH}" libpath="${PP_LIBPATH}" include="${PP_INCLUDEPATH}">\r
+              <argument value="${VFRPP_FLAGS} ${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>\r
+                  <!-- Output file of the preprocess -->   \r
+                  <EXTRA.INC/>            \r
+                  <fileset casesensitive="on" file="${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>              \r
+                </command>\r
+              </cc>\r
+            </then>\r
+          </if>\r
+          \r
           \r
           <vfrcompile createIfrBinFile="on" createListFile="on" outPutDir="${DEST_DIR_DEBUG}/@{FILEPATH}" vfrFile="${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.i">\r
             <EXTRA.INC/>\r
@@ -1380,7 +1403,6 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
     <element name="EXTRA.ARG" optional="yes"/>\r
 \r
     <sequential>\r
-      <mkdir dir="${MODULE_DIR}/@{FILEPATH}" /> \r
       <copy file="${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}" \r
             tofile="${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.bin"/>\r
     </sequential>\r