Revision: 14710
          http://sourceforge.net/p/edk2/code/14710
Author:   lgao4
Date:     2013-09-24 07:13:44 +0000 (Tue, 24 Sep 2013)
Log Message:
-----------
Sync BaseTool trunk (version r2601) into EDKII BaseTools.

Signed-off-by: Liming Gao <[email protected]>

Revision Links:
--------------
    http://sourceforge.net/p/edk2/code/2601

Modified Paths:
--------------
    trunk/edk2/BaseTools/Bin/Win32/BPDG.exe
    trunk/edk2/BaseTools/Bin/Win32/BootSectImage.exe
    trunk/edk2/BaseTools/Bin/Win32/EfiLdrImage.exe
    trunk/edk2/BaseTools/Bin/Win32/EfiRom.exe
    trunk/edk2/BaseTools/Bin/Win32/GenBootSector.exe
    trunk/edk2/BaseTools/Bin/Win32/GenCrc32.exe
    trunk/edk2/BaseTools/Bin/Win32/GenDepex.exe
    trunk/edk2/BaseTools/Bin/Win32/GenFds.exe
    trunk/edk2/BaseTools/Bin/Win32/GenFfs.exe
    trunk/edk2/BaseTools/Bin/Win32/GenFv.exe
    trunk/edk2/BaseTools/Bin/Win32/GenFw.exe
    trunk/edk2/BaseTools/Bin/Win32/GenPage.exe
    trunk/edk2/BaseTools/Bin/Win32/GenPatchPcdTable.exe
    trunk/edk2/BaseTools/Bin/Win32/GenSec.exe
    trunk/edk2/BaseTools/Bin/Win32/GenVtf.exe
    trunk/edk2/BaseTools/Bin/Win32/LzmaCompress.exe
    trunk/edk2/BaseTools/Bin/Win32/PatchPcdValue.exe
    trunk/edk2/BaseTools/Bin/Win32/Split.exe
    trunk/edk2/BaseTools/Bin/Win32/TargetTool.exe
    trunk/edk2/BaseTools/Bin/Win32/TianoCompress.exe
    trunk/edk2/BaseTools/Bin/Win32/Trim.exe
    trunk/edk2/BaseTools/Bin/Win32/UPT.exe
    trunk/edk2/BaseTools/Bin/Win32/VfrCompile.exe
    trunk/edk2/BaseTools/Bin/Win32/VolInfo.exe
    trunk/edk2/BaseTools/Bin/Win32/build.exe
    trunk/edk2/BaseTools/Source/C/Include/Common/BuildVersion.h
    
trunk/edk2/BaseTools/Source/C/Include/Common/UefiInternalFormRepresentation.h
    trunk/edk2/BaseTools/Source/C/VfrCompile/VfrFormPkg.cpp
    trunk/edk2/BaseTools/Source/C/VfrCompile/VfrFormPkg.h
    trunk/edk2/BaseTools/Source/C/VfrCompile/VfrSyntax.g
    trunk/edk2/BaseTools/Source/Python/Common/BuildVersion.py
    trunk/edk2/BaseTools/Source/Python/UPT/BuildVersion.py
    trunk/edk2/BaseTools/Source/Python/Workspace/MetaFileParser.py

Modified: trunk/edk2/BaseTools/Bin/Win32/BPDG.exe
===================================================================
(Binary files differ)

Modified: trunk/edk2/BaseTools/Bin/Win32/BootSectImage.exe
===================================================================
(Binary files differ)

Modified: trunk/edk2/BaseTools/Bin/Win32/EfiLdrImage.exe
===================================================================
(Binary files differ)

Modified: trunk/edk2/BaseTools/Bin/Win32/EfiRom.exe
===================================================================
(Binary files differ)

Modified: trunk/edk2/BaseTools/Bin/Win32/GenBootSector.exe
===================================================================
(Binary files differ)

Modified: trunk/edk2/BaseTools/Bin/Win32/GenCrc32.exe
===================================================================
(Binary files differ)

Modified: trunk/edk2/BaseTools/Bin/Win32/GenDepex.exe
===================================================================
(Binary files differ)

Modified: trunk/edk2/BaseTools/Bin/Win32/GenFds.exe
===================================================================
(Binary files differ)

Modified: trunk/edk2/BaseTools/Bin/Win32/GenFfs.exe
===================================================================
(Binary files differ)

Modified: trunk/edk2/BaseTools/Bin/Win32/GenFv.exe
===================================================================
(Binary files differ)

Modified: trunk/edk2/BaseTools/Bin/Win32/GenFw.exe
===================================================================
(Binary files differ)

Modified: trunk/edk2/BaseTools/Bin/Win32/GenPage.exe
===================================================================
(Binary files differ)

Modified: trunk/edk2/BaseTools/Bin/Win32/GenPatchPcdTable.exe
===================================================================
(Binary files differ)

Modified: trunk/edk2/BaseTools/Bin/Win32/GenSec.exe
===================================================================
(Binary files differ)

Modified: trunk/edk2/BaseTools/Bin/Win32/GenVtf.exe
===================================================================
(Binary files differ)

Modified: trunk/edk2/BaseTools/Bin/Win32/LzmaCompress.exe
===================================================================
(Binary files differ)

Modified: trunk/edk2/BaseTools/Bin/Win32/PatchPcdValue.exe
===================================================================
(Binary files differ)

Modified: trunk/edk2/BaseTools/Bin/Win32/Split.exe
===================================================================
(Binary files differ)

Modified: trunk/edk2/BaseTools/Bin/Win32/TargetTool.exe
===================================================================
(Binary files differ)

Modified: trunk/edk2/BaseTools/Bin/Win32/TianoCompress.exe
===================================================================
(Binary files differ)

Modified: trunk/edk2/BaseTools/Bin/Win32/Trim.exe
===================================================================
(Binary files differ)

Modified: trunk/edk2/BaseTools/Bin/Win32/UPT.exe
===================================================================
(Binary files differ)

Modified: trunk/edk2/BaseTools/Bin/Win32/VfrCompile.exe
===================================================================
(Binary files differ)

Modified: trunk/edk2/BaseTools/Bin/Win32/VolInfo.exe
===================================================================
(Binary files differ)

Modified: trunk/edk2/BaseTools/Bin/Win32/build.exe
===================================================================
(Binary files differ)

Modified: trunk/edk2/BaseTools/Source/C/Include/Common/BuildVersion.h
===================================================================
--- trunk/edk2/BaseTools/Source/C/Include/Common/BuildVersion.h 2013-09-24 
05:15:01 UTC (rev 14709)
+++ trunk/edk2/BaseTools/Source/C/Include/Common/BuildVersion.h 2013-09-24 
07:13:44 UTC (rev 14710)
@@ -14,4 +14,4 @@
 
 **/
 
-#define __BUILD_VERSION ""
+#define __BUILD_VERSION "Build 2601"

Modified: 
trunk/edk2/BaseTools/Source/C/Include/Common/UefiInternalFormRepresentation.h
===================================================================
--- 
trunk/edk2/BaseTools/Source/C/Include/Common/UefiInternalFormRepresentation.h   
    2013-09-24 05:15:01 UTC (rev 14709)
+++ 
trunk/edk2/BaseTools/Source/C/Include/Common/UefiInternalFormRepresentation.h   
    2013-09-24 07:13:44 UTC (rev 14710)
@@ -3,7 +3,7 @@
   IFR is primarily consumed by the EFI presentation engine, and produced by EFI
   internal application and drivers as well as all add-in card option-ROM 
drivers
 
-  Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.<BR>
+  Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.<BR>
 
   This program and the accompanying materials are licensed and made available
   under the terms and conditions of the BSD License which accompanies this
@@ -691,6 +691,7 @@
 #define EFI_IFR_SECURITY_OP            0x60
 #define EFI_IFR_MODAL_TAG_OP           0x61
 #define EFI_IFR_REFRESH_ID_OP          0x62
+#define EFI_IFR_WARNING_IF_OP          0x63
 
 
 typedef struct _EFI_IFR_OP_HEADER {
@@ -1015,6 +1016,12 @@
   EFI_STRING_ID            Error;
 } EFI_IFR_NO_SUBMIT_IF;
 
+typedef struct _EFI_IFR_WARNING_IF {
+  EFI_IFR_OP_HEADER        Header;
+  EFI_STRING_ID            Warning;
+  UINT8                    TimeOut;
+} EFI_IFR_WARNING_IF;
+
 typedef struct _EFI_IFR_REFRESH {
   EFI_IFR_OP_HEADER        Header;
   UINT8                    RefreshInterval;

Modified: trunk/edk2/BaseTools/Source/C/VfrCompile/VfrFormPkg.cpp
===================================================================
--- trunk/edk2/BaseTools/Source/C/VfrCompile/VfrFormPkg.cpp     2013-09-24 
05:15:01 UTC (rev 14709)
+++ trunk/edk2/BaseTools/Source/C/VfrCompile/VfrFormPkg.cpp     2013-09-24 
07:13:44 UTC (rev 14710)
@@ -1673,6 +1673,7 @@
   { sizeof (EFI_IFR_SECURITY), 0 },            // EFI_IFR_SECURITY_OP - 0x60
   { sizeof (EFI_IFR_MODAL_TAG), 0},            // EFI_IFR_MODAL_TAG_OP - 0x61
   { sizeof (EFI_IFR_REFRESH_ID), 0},           // EFI_IFR_REFRESH_ID_OP - 0x62
+  { sizeof (EFI_IFR_WARNING_IF), 1},           // EFI_IFR_WARNING_IF_OP - 0x63
 };
 
 #ifdef CIFROBJ_DEUBG
@@ -1695,7 +1696,7 @@
   "EFI_IFR_STRING_REF1","EFI_IFR_STRING_REF2",          "EFI_IFR_CONDITIONAL", 
  "EFI_IFR_QUESTION_REF3",   "EFI_IFR_ZERO",          "EFI_IFR_ONE",
   "EFI_IFR_ONES",       "EFI_IFR_UNDEFINED",            "EFI_IFR_LENGTH",      
  "EFI_IFR_DUP",             "EFI_IFR_THIS",          "EFI_IFR_SPAN",
   "EFI_IFR_VALUE",      "EFI_IFR_DEFAULT",              
"EFI_IFR_DEFAULTSTORE",  "EFI_IFR_FORM_MAP",        "EFI_IFR_CATENATE",      
"EFI_IFR_GUID",
-  "EFI_IFR_SECURITY",   "EFI_IFR_MODAL_TAG",            "EFI_IFR_REFRESH_ID",
+  "EFI_IFR_SECURITY",   "EFI_IFR_MODAL_TAG",            "EFI_IFR_REFRESH_ID",  
  "EFI_IFR_WARNING_IF",
 };
 
 VOID

Modified: trunk/edk2/BaseTools/Source/C/VfrCompile/VfrFormPkg.h
===================================================================
--- trunk/edk2/BaseTools/Source/C/VfrCompile/VfrFormPkg.h       2013-09-24 
05:15:01 UTC (rev 14709)
+++ trunk/edk2/BaseTools/Source/C/VfrCompile/VfrFormPkg.h       2013-09-24 
07:13:44 UTC (rev 14710)
@@ -1612,6 +1612,26 @@
   }
 };
 
+class CIfrWarningIf : public CIfrObj, public CIfrOpHeader {
+private:
+  EFI_IFR_WARNING_IF *mWarningIf;
+
+public:
+  CIfrWarningIf () : CIfrObj (EFI_IFR_WARNING_IF_OP, (CHAR8 **)&mWarningIf),
+                        CIfrOpHeader (EFI_IFR_WARNING_IF_OP, 
&mWarningIf->Header) {
+    mWarningIf->Warning = EFI_STRING_ID_INVALID;
+    mWarningIf->TimeOut = 0;
+  }
+
+  VOID SetWarning (IN EFI_STRING_ID Warning) {
+    mWarningIf->Warning = Warning;
+  }
+
+  VOID SetTimeOut (IN UINT8 TimeOut) {
+    mWarningIf->TimeOut = TimeOut;
+  }
+};
+
 class CIfrNoSubmitIf : public CIfrObj, public CIfrOpHeader {
 private:
   EFI_IFR_NO_SUBMIT_IF *mNoSubmitIf;

Modified: trunk/edk2/BaseTools/Source/C/VfrCompile/VfrSyntax.g
===================================================================
--- trunk/edk2/BaseTools/Source/C/VfrCompile/VfrSyntax.g        2013-09-24 
05:15:01 UTC (rev 14709)
+++ trunk/edk2/BaseTools/Source/C/VfrCompile/VfrSyntax.g        2013-09-24 
07:13:44 UTC (rev 14710)
@@ -184,6 +184,7 @@
 #token Goto("goto")                             "goto"
 #token FormSetGuid("formsetguid")               "formsetguid"
 #token InconsistentIf("inconsistentif")         "inconsistentif"
+#token WarningIf("warningif")                   "warningif"
 #token NoSubmitIf("nosubmitif")                 "nosubmitif"
 #token EndIf("endif")                           "endif"
 #token Key("key")                               "key"
@@ -2627,7 +2628,8 @@
   vfrStatementRefresh           |
   vfrStatementVarstoreDevice    |
   vfrStatementExtension         |
-  vfrStatementRefreshEvent
+  vfrStatementRefreshEvent      |
+  vfrStatementWarningIf
   ;
 
 vfrStatementQuestionTagList :
@@ -2825,6 +2827,15 @@
   E:EndIf                                              << CRT_END_OP (E); >>
   ;
 
+vfrStatementWarningIf :
+  << CIfrWarningIf WIObj; >>
+  L:WarningIf                                          << 
WIObj.SetLineNo(L->getLine()); >>
+  Prompt "=" "STRING_TOKEN" "\(" S:Number "\)" ","     << WIObj.SetWarning 
(_STOSID(S->getText())); >>
+  {Timeout "=" T:Number ","                            << WIObj.SetTimeOut 
(_STOU8(T->getText())); >>}
+  vfrStatementExpression[0]
+  E:EndIf                                              << CRT_END_OP (E); >>
+  ;
+
 vfrStatementDisableIfQuest :
   << 
     CIfrDisableIf DIObj; 

Modified: trunk/edk2/BaseTools/Source/Python/Common/BuildVersion.py
===================================================================
--- trunk/edk2/BaseTools/Source/Python/Common/BuildVersion.py   2013-09-24 
05:15:01 UTC (rev 14709)
+++ trunk/edk2/BaseTools/Source/Python/Common/BuildVersion.py   2013-09-24 
07:13:44 UTC (rev 14710)
@@ -13,4 +13,4 @@
 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #
 
-gBUILD_VERSION = ""
+gBUILD_VERSION = "Build 2601"

Modified: trunk/edk2/BaseTools/Source/Python/UPT/BuildVersion.py
===================================================================
--- trunk/edk2/BaseTools/Source/Python/UPT/BuildVersion.py      2013-09-24 
05:15:01 UTC (rev 14709)
+++ trunk/edk2/BaseTools/Source/Python/UPT/BuildVersion.py      2013-09-24 
07:13:44 UTC (rev 14710)
@@ -17,4 +17,4 @@
 Build version information
 '''
 
-gBUILD_VERSION = ""
+gBUILD_VERSION = "Build 2601"

Modified: trunk/edk2/BaseTools/Source/Python/Workspace/MetaFileParser.py
===================================================================
--- trunk/edk2/BaseTools/Source/Python/Workspace/MetaFileParser.py      
2013-09-24 05:15:01 UTC (rev 14709)
+++ trunk/edk2/BaseTools/Source/Python/Workspace/MetaFileParser.py      
2013-09-24 07:13:44 UTC (rev 14710)
@@ -827,6 +827,7 @@
         except:
             EdkLogger.error("Parser", FILE_READ_FAILURE, 
ExtraData=self.MetaFile)
 
+        OwnerId = {}
         for Index in range(0, len(Content)):
             Line = CleanString(Content[Index])
             # skip empty line
@@ -847,6 +848,7 @@
                 self._SubsectionType = MODEL_UNKNOWN
                 self._SubsectionName = ''
                 self._Owner[-1] = -1
+                OwnerId = {}
                 continue
             # subsection header
             elif Line[0] == TAB_OPTION_START and Line[-1] == TAB_OPTION_END:
@@ -871,6 +873,9 @@
             # LineBegin=-1, ColumnBegin=-1, LineEnd=-1, ColumnEnd=-1, 
Enabled=-1
             #
             for Arch, ModuleType in self._Scope:
+                Owner = self._Owner[-1]
+                if self._SubsectionType != MODEL_UNKNOWN:
+                    Owner = OwnerId[Arch]
                 self._LastItem = self._Store(
                                         self._ItemType,
                                         self._ValueList[0],
@@ -878,7 +883,7 @@
                                         self._ValueList[2],
                                         Arch,
                                         ModuleType,
-                                        self._Owner[-1],
+                                        Owner,
                                         self._From,
                                         self._LineIndex + 1,
                                         - 1,
@@ -886,6 +891,8 @@
                                         - 1,
                                         self._Enabled
                                         )
+                if self._SubsectionType == MODEL_UNKNOWN and 
self._InSubsection:
+                    OwnerId[Arch] = self._LastItem
 
         if self._DirectiveStack:
             Type, Line, Text = self._DirectiveStack[-1]
@@ -1040,6 +1047,11 @@
                             ExtraData=self._CurrentLine + " 
(<TokenSpaceGuidCName>.<TokenCName>|<PcdValue>)",
                             File=self.MetaFile, Line=self._LineIndex + 1)
         if self._ValueList[2] == '':
+            #
+            # The PCD values are optional for FIXEDATBUILD and 
PATCHABLEINMODULE
+            #
+            if self._SectionType in (MODEL_PCD_FIXED_AT_BUILD, 
MODEL_PCD_PATCHABLE_IN_MODULE):
+                return
             EdkLogger.error('Parser', FORMAT_INVALID, "No PCD value given",
                             ExtraData=self._CurrentLine + " 
(<TokenSpaceGuidCName>.<TokenCName>|<PcdValue>)",
                             File=self.MetaFile, Line=self._LineIndex + 1)

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


------------------------------------------------------------------------------
October Webinars: Code for Performance
Free Intel webinars can help you accelerate application performance.
Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from 
the latest Intel processors and coprocessors. See abstracts and register >
http://pubads.g.doubleclick.net/gampad/clk?id=60133471&iu=/4140/ostg.clktrk
_______________________________________________
edk2-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-commits

Reply via email to