# This file is used to generate DEPEX file for module's dependency expression\r
#\r
# Copyright (c) 2007 - 2018, 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
-# http://opensource.org/licenses/bsd-license.php\r
-#\r
-# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
-# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+# SPDX-License-Identifier: BSD-2-Clause-Patent\r
\r
## Import Modules\r
#\r
from Common.BuildToolError import *\r
from Common.Misc import SaveFileOnChange\r
from Common.Misc import GuidStructureStringToGuidString\r
+from Common.Misc import GuidStructureByteArrayToGuidString\r
+from Common.Misc import GuidStringToGuidStructureString\r
from Common import EdkLogger as EdkLogger\r
from Common.BuildVersion import gBUILD_VERSION\r
from Common.DataType import *\r
def GetGuidValue(self, Guid):\r
GuidValueString = Guid.replace("{", "").replace("}", "").replace(" ", "")\r
GuidValueList = GuidValueString.split(",")\r
+ if len(GuidValueList) != 11 and len(GuidValueList) == 16:\r
+ GuidValueString = GuidStringToGuidStructureString(GuidStructureByteArrayToGuidString(Guid))\r
+ GuidValueString = GuidValueString.replace("{", "").replace("}", "").replace(" ", "")\r
+ GuidValueList = GuidValueString.split(",")\r
if len(GuidValueList) != 11:\r
EdkLogger.error("GenDepex", PARSER_ERROR, "Invalid GUID value string or opcode: %s" % Guid)\r
return pack("1I2H8B", *(int(value, 16) for value in GuidValueList))\r