]> git.proxmox.com Git - mirror_edk2.git/blobdiff - .pytool/CISettings.py
.pytool: Add required submodule for JsonLib
[mirror_edk2.git] / .pytool / CISettings.py
index ce177937e135f778cc811f1d53d88aa7c7b10fd5..e6c5ac700ab2348b11273ebf7917552570ee1864 100644 (file)
@@ -1,6 +1,8 @@
 # @file\r
 #\r
 # Copyright (c) Microsoft Corporation.\r
+# Copyright (c) 2020, Hewlett Packard Enterprise Development LP. All rights reserved.<BR>\r
+# Copyright (c) 2020 - 2021, ARM Limited. All rights reserved.<BR>\r
 # SPDX-License-Identifier: BSD-2-Clause-Patent\r
 ##\r
 import os\r
@@ -39,7 +41,10 @@ class Settings(CiBuildSettingsManager, UpdateSettingsManager, SetupSettingsManag
         ''' return iterable of edk2 packages supported by this build.\r
         These should be edk2 workspace relative paths '''\r
 \r
-        return ("MdePkg",\r
+        return ("ArmVirtPkg",\r
+                "DynamicTablesPkg",\r
+                "EmulatorPkg",\r
+                "MdePkg",\r
                 "MdeModulePkg",\r
                 "NetworkPkg",\r
                 "PcAtChipsetPkg",\r
@@ -47,16 +52,22 @@ class Settings(CiBuildSettingsManager, UpdateSettingsManager, SetupSettingsManag
                 "UefiCpuPkg",\r
                 "FmpDevicePkg",\r
                 "ShellPkg",\r
+                "StandaloneMmPkg",\r
                 "FatPkg",\r
-                "CryptoPkg"\r
+                "CryptoPkg",\r
+                "UnitTestFrameworkPkg",\r
+                "OvmfPkg",\r
+                "RedfishPkg"\r
                 )\r
 \r
     def GetArchitecturesSupported(self):\r
         ''' return iterable of edk2 architectures supported by this build '''\r
-        return ("IA32",\r
+        return (\r
+                "IA32",\r
                 "X64",\r
                 "ARM",\r
-                "AARCH64")\r
+                "AARCH64",\r
+                "RISCV64")\r
 \r
     def GetTargetsSupported(self):\r
         ''' return iterable of edk2 target tags supported by this build '''\r
@@ -117,7 +128,7 @@ class Settings(CiBuildSettingsManager, UpdateSettingsManager, SetupSettingsManag
 \r
     def GetActiveScopes(self):\r
         ''' return tuple containing scopes that should be active for this process '''\r
-        scopes = ("cibuild","edk2-build")\r
+        scopes = ("cibuild", "edk2-build", "host-based-test")\r
 \r
         self.ActualToolChainTag = shell_environment.GetBuildVars().GetValue("TOOL_CHAIN_TAG", "")\r
 \r
@@ -126,6 +137,8 @@ class Settings(CiBuildSettingsManager, UpdateSettingsManager, SetupSettingsManag
                 scopes += ("gcc_aarch64_linux",)\r
             if "ARM" in self.ActualArchitectures:\r
                 scopes += ("gcc_arm_linux",)\r
+            if "RISCV64" in self.ActualArchitectures:\r
+                scopes += ("gcc_riscv64_unknown",)\r
 \r
         return scopes\r
 \r
@@ -133,18 +146,29 @@ class Settings(CiBuildSettingsManager, UpdateSettingsManager, SetupSettingsManag
         ''' return iterable containing RequiredSubmodule objects.\r
         If no RequiredSubmodules return an empty iterable\r
         '''\r
-        rs=[]\r
+        rs = []\r
         rs.append(RequiredSubmodule(\r
             "ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3", False))\r
         rs.append(RequiredSubmodule(\r
             "CryptoPkg/Library/OpensslLib/openssl", False))\r
+        rs.append(RequiredSubmodule(\r
+            "UnitTestFrameworkPkg/Library/CmockaLib/cmocka", False))\r
+        rs.append(RequiredSubmodule(\r
+            "MdeModulePkg/Universal/RegularExpressionDxe/oniguruma", False))\r
+        rs.append(RequiredSubmodule(\r
+            "MdeModulePkg/Library/BrotliCustomDecompressLib/brotli", False))\r
+        rs.append(RequiredSubmodule(\r
+            "BaseTools/Source/C/BrotliCompress/brotli", False))\r
+        rs.append(RequiredSubmodule(\r
+            "RedfishPkg/Library/JsonLib/jansson", False))\r
         return rs\r
 \r
     def GetName(self):\r
         return "Edk2"\r
 \r
     def GetDependencies(self):\r
-        return []\r
+        return [\r
+        ]\r
 \r
     def GetPackagesPath(self):\r
         return ()\r
@@ -155,10 +179,11 @@ class Settings(CiBuildSettingsManager, UpdateSettingsManager, SetupSettingsManag
 \r
     def FilterPackagesToTest(self, changedFilesList: list, potentialPackagesList: list) -> list:\r
         ''' Filter potential packages to test based on changed files. '''\r
-        build_these_packages=[]\r
-        possible_packages=potentialPackagesList.copy()\r
+        build_these_packages = []\r
+        possible_packages = potentialPackagesList.copy()\r
         for f in changedFilesList:\r
-            nodes=f.split("/")  # split each part of path for comparison later\r
+            # split each part of path for comparison later\r
+            nodes = f.split("/")\r
 \r
             # python file change in .pytool folder causes building all\r
             if f.endswith(".py") and ".pytool" in nodes:\r