# This file is used to be the main entrance of ECC tool\r
#\r
# Copyright (c) 2009 - 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
+# Copyright (c) Microsoft Corporation.<BR>\r
+# SPDX-License-Identifier: BSD-2-Clause-Patent\r
#\r
\r
##\r
self.ParseOption()\r
EdkLogger.info(time.strftime("%H:%M:%S, %b.%d %Y ", time.localtime()) + "[00:00]" + "\n")\r
\r
- #\r
- # Check EFI_SOURCE (Edk build convention). EDK_SOURCE will always point to ECP\r
- #\r
WorkspaceDir = os.path.normcase(os.path.normpath(os.environ["WORKSPACE"]))\r
os.environ["WORKSPACE"] = WorkspaceDir\r
\r
PackagesPath = os.getenv("PACKAGES_PATH")\r
mws.setWs(WorkspaceDir, PackagesPath)\r
\r
- if "ECP_SOURCE" not in os.environ:\r
- os.environ["ECP_SOURCE"] = mws.join(WorkspaceDir, GlobalData.gEdkCompatibilityPkg)\r
- if "EFI_SOURCE" not in os.environ:\r
- os.environ["EFI_SOURCE"] = os.environ["ECP_SOURCE"]\r
- if "EDK_SOURCE" not in os.environ:\r
- os.environ["EDK_SOURCE"] = os.environ["ECP_SOURCE"]\r
-\r
- #\r
- # Unify case of characters on case-insensitive systems\r
- #\r
- EfiSourceDir = os.path.normcase(os.path.normpath(os.environ["EFI_SOURCE"]))\r
- EdkSourceDir = os.path.normcase(os.path.normpath(os.environ["EDK_SOURCE"]))\r
- EcpSourceDir = os.path.normcase(os.path.normpath(os.environ["ECP_SOURCE"]))\r
-\r
- os.environ["EFI_SOURCE"] = EfiSourceDir\r
- os.environ["EDK_SOURCE"] = EdkSourceDir\r
- os.environ["ECP_SOURCE"] = EcpSourceDir\r
-\r
GlobalData.gWorkspace = WorkspaceDir\r
- GlobalData.gEfiSource = EfiSourceDir\r
- GlobalData.gEdkSource = EdkSourceDir\r
- GlobalData.gEcpSource = EcpSourceDir\r
\r
GlobalData.gGlobalDefines["WORKSPACE"] = WorkspaceDir\r
- GlobalData.gGlobalDefines["EFI_SOURCE"] = EfiSourceDir\r
- GlobalData.gGlobalDefines["EDK_SOURCE"] = EdkSourceDir\r
- GlobalData.gGlobalDefines["ECP_SOURCE"] = EcpSourceDir\r
\r
EdkLogger.info("Loading ECC configuration ... done")\r
# Generate checkpoints list\r
\r
def InitDefaultConfigIni(self):\r
paths = map(lambda p: os.path.join(p, 'Ecc', 'config.ini'), sys.path)\r
- paths = (os.path.realpath('config.ini'),) + tuple(paths)\r
+ paths = (os.path.abspath('config.ini'),) + tuple(paths)\r
for path in paths:\r
if os.path.exists(path):\r
self.ConfigFile = path\r
Op = open(EccGlobalData.gConfig.MetaDataFileCheckPathOfGenerateFileList, 'w+')\r
#SkipDirs = Read from config file\r
SkipDirs = EccGlobalData.gConfig.SkipDirList\r
- SkipDirString = string.join(SkipDirs, '|')\r
+ SkipDirString = '|'.join(SkipDirs)\r
# p = re.compile(r'.*[\\/](?:%s)[\\/]?.*' % SkipDirString)\r
p = re.compile(r'.*[\\/](?:%s^\S)[\\/]?.*' % SkipDirString)\r
for scanFolder in ScanFolders:\r
Op.write("%s\r" % Filename)\r
#Dsc(Filename, True, True, EccGlobalData.gWorkspace, EccGlobalData.gDb)\r
self.MetaFile = DscParser(PathClass(Filename, Root), MODEL_FILE_DSC, MetaFileStorage(EccGlobalData.gDb.TblDsc.Cur, Filename, MODEL_FILE_DSC, True))\r
- # alwasy do post-process, in case of macros change\r
+ # always do post-process, in case of macros change\r
self.MetaFile.DoPostProcess()\r
self.MetaFile.Start()\r
self.MetaFile._PostProcess()\r
if Options.Workspace:\r
os.environ["WORKSPACE"] = Options.Workspace\r
\r
- # Check workspace envirnoment\r
+ # Check workspace environment\r
if "WORKSPACE" not in os.environ:\r
EdkLogger.error("ECC", BuildToolError.ATTRIBUTE_NOT_AVAILABLE, "Environment variable not found",\r
ExtraData="WORKSPACE")\r
EdkLogger.Initialize()\r
EdkLogger.IsRaiseError = False\r
\r
- StartTime = time.clock()\r
+ StartTime = time.perf_counter()\r
Ecc = Ecc()\r
- FinishTime = time.clock()\r
+ FinishTime = time.perf_counter()\r
\r
BuildDuration = time.strftime("%M:%S", time.gmtime(int(round(FinishTime - StartTime))))\r
EdkLogger.quiet("\n%s [%s]" % (time.strftime("%H:%M:%S, %b.%d %Y", time.localtime()), BuildDuration))\r