]> git.proxmox.com Git - mirror_edk2.git/blobdiff - BaseTools/Source/Python/Common/DscClassObject.py
BaseTools: expression can use single in instead of 3 API calls.
[mirror_edk2.git] / BaseTools / Source / Python / Common / DscClassObject.py
index 3d06288e9a026e61e06e017599c97ed311b0cb98..c2fa1c275a2d99a774e28a432307f602d114df96 100644 (file)
@@ -1,7 +1,7 @@
 ## @file\r
 # This file is used to define each component of DSC file\r
 #\r
-# Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved.<BR>\r
+# Copyright (c) 2007 - 2016, Intel Corporation. All rights reserved.<BR>\r
 # This program and the accompanying materials\r
 # are licensed and made available under the terms and conditions of the BSD License\r
 # which accompanies this distribution.  The full text of the license may be found at\r
@@ -14,7 +14,7 @@
 ##\r
 # Import Modules\r
 #\r
-import os\r
+import Common.LongFilePathOs as os\r
 import EdkLogger as EdkLogger\r
 import Database\r
 from String import *\r
@@ -28,6 +28,7 @@ from BuildToolError import *
 from Misc import sdict\r
 import GlobalData\r
 from Table.TableDsc import TableDsc\r
+from Common.LongFilePathSupport import OpenLongFilePath as open\r
 \r
 #\r
 # Global variable\r
@@ -97,11 +98,10 @@ class Dsc(DscObject):
         self.UserExtensions = ''\r
         self.WorkspaceDir = WorkspaceDir\r
         self.IsToDatabase = IsToDatabase\r
-\r
-        self.Cur = Database.Cur\r
-        self.TblFile = Database.TblFile\r
-        self.TblDsc = Database.TblDsc\r
-\r
+        if Database:\r
+            self.Cur = Database.Cur\r
+            self.TblFile = Database.TblFile\r
+            self.TblDsc = Database.TblDsc\r
 \r
         self.KeyList = [\r
             TAB_SKUIDS, TAB_LIBRARIES, TAB_LIBRARY_CLASSES, TAB_BUILD_OPTIONS, TAB_PCDS_FIXED_AT_BUILD_NULL, \\r
@@ -251,6 +251,12 @@ class Dsc(DscObject):
             Fdf = PlatformFlashDefinitionFileClass()\r
             Fdf.FilePath = NormPath(QueryDefinesItem(self.TblDsc, TAB_DSC_DEFINES_FLASH_DEFINITION, Arch, self.FileID)[0])\r
             self.Platform.FlashDefinitionFile = Fdf\r
+            Prebuild = BuildScriptClass()\r
+            Prebuild.FilePath = NormPath(QueryDefinesItem(self.TblDsc, TAB_DSC_PREBUILD, Arch, self.FileID)[0])\r
+            self.Platform.Prebuild = Prebuild\r
+            Postbuild = BuildScriptClass()\r
+            Postbuild.FilePath = NormPath(QueryDefinesItem(self.TblDsc, TAB_DSC_POSTBUILD, Arch, self.FileID)[0])\r
+            self.Platform.Postbuild = Postbuild\r
 \r
     ## GenBuildOptions\r
     #\r