public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [PATCH 1/1] .pytool/Plugin/EccCheck: Add PACKAGES_PATH support
@ 2023-02-01 14:47 Marvin Häuser
  2023-02-01 18:09 ` Pedro Falcato
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Marvin Häuser @ 2023-02-01 14:47 UTC (permalink / raw)
  To: devel
  Cc: Marvin Häuser, Sean Brogan, Michael Kubacki,
	Michael D Kinney, Liming Gao, Pedro Falcato

REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4326

EccBuild currently assumes all packages reside in WORKSPACE. However,
this is obviously not the case for many setups. Most notably, Ext4Pkg
is located in edk2-platforms/Features and thus cannot be in WORKSPACE
in any reasonable setup.

Use Edk2Path to locate the package in WORKSPACE and PACKAGES_PATH.

Cc: Sean Brogan <sean.brogan@microsoft.com>
Cc: Michael Kubacki <mikuback@linux.microsoft.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Liming Gao <gaoliming@byosoft.com.cn>
Cc: Pedro Falcato <pedro.falcato@gmail.com>
Signed-off-by: Marvin Häuser <mhaeuser@posteo.de>
---
 .pytool/Plugin/EccCheck/EccCheck.py | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/.pytool/Plugin/EccCheck/EccCheck.py b/.pytool/Plugin/EccCheck/EccCheck.py
index 4fbc67765fdf..7235fcb55cea 100644
--- a/.pytool/Plugin/EccCheck/EccCheck.py
+++ b/.pytool/Plugin/EccCheck/EccCheck.py
@@ -69,6 +69,13 @@ class EccCheck(ICiBuildPlugin):
         env.set_shell_var('PACKAGES_PATH', os.pathsep.join(Edk2pathObj.PackagePathList))
         self.ECC_PASS = True
 
+        abs_pkg_path = Edk2pathObj.GetAbsolutePathOnThisSystemFromEdk2RelativePath(packagename)
+
+        if abs_pkg_path is None:
+            tc.SetSkipped()
+            tc.LogStdError("No Package folder {0}".format(abs_pkg_path))
+            return 0
+
         # Create temp directory
         temp_path = os.path.join(workspace_path, 'Build', '.pytool', 'Plugin', 'EccCheck')
         try:
@@ -77,7 +84,7 @@ class EccCheck(ICiBuildPlugin):
                 shutil.rmtree(temp_path)
             # Copy package being scanned to temp_path
             shutil.copytree (
-              os.path.join(workspace_path, packagename),
+              abs_pkg_path,
               os.path.join(temp_path, packagename),
               symlinks=True
               )
-- 
2.39.1


^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2023-02-08 20:24 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-02-01 14:47 [PATCH 1/1] .pytool/Plugin/EccCheck: Add PACKAGES_PATH support Marvin Häuser
2023-02-01 18:09 ` Pedro Falcato
2023-02-01 19:56 ` Michael D Kinney
2023-02-07 12:48   ` Marvin Häuser
2023-02-08  7:33     ` [edk2-devel] " Michael D Kinney
2023-02-08 20:24       ` Michael D Kinney
2023-02-02  1:04 ` Michael Kubacki

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox