[edk2-devel] [PATCH v1] MinPlatformPkg: If BaseTools doesn't build, try a clean build

Nate DeSimone posted 1 patch 7 months, 1 week ago
Failed in applying to current master (apply log)
Platform/Intel/build_bios.py | 17 ++++++++++++++++-
1 file changed, 16 insertions(+), 1 deletion(-)
[edk2-devel] [PATCH v1] MinPlatformPkg: If BaseTools doesn't build, try a clean build
Posted by Nate DeSimone 7 months, 1 week ago
Cc: Chasel Chiu <chasel.chiu@intel.com>
Cc: Isaac Oram <isaac.w.oram@intel.com>
Cc: Liming Gao <gaoliming@byosoft.com.cn>
Cc: Eric Dong <eric.dong@intel.com>
Signed-off-by: Nate DeSimone <nathaniel.l.desimone@intel.com>
---
 Platform/Intel/build_bios.py | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)

diff --git a/Platform/Intel/build_bios.py b/Platform/Intel/build_bios.py
index 9c95cfff76..b396017c8c 100755
--- a/Platform/Intel/build_bios.py
+++ b/Platform/Intel/build_bios.py
@@ -207,7 +207,22 @@ def pre_build(build_config, build_type="DEBUG", silent=False, toolchain=None):
 
     _, _, result, return_code = execute_script(command, config, shell=shell)
     if return_code != 0:
-        build_failed(config)
+        #
+        # If the BaseTools build fails, then run a clean build and retry
+        #
+        clean_command = ["nmake", "-f",
+                         os.path.join(config["BASE_TOOLS_PATH"], "Makefile"),
+                         "clean"]
+        if os.name == "posix":
+            clean_command = ["make", "-C",
+                             os.path.join(config["BASE_TOOLS_PATH"]), "clean"]
+        _, _, result, return_code = execute_script(clean_command, config,
+                                                   shell=shell)
+        if return_code != 0:
+            build_failed(config)
+        _, _, result, return_code = execute_script(command, config, shell=shell)
+        if return_code != 0:
+            build_failed(config)
 
     #
     # build platform silicon tools
-- 
2.39.2.windows.1



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#109055): https://edk2.groups.io/g/devel/message/109055
Mute This Topic: https://groups.io/mt/101587227/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [PATCH v1] MinPlatformPkg: If BaseTools doesn't build, try a clean build
Posted by Chiu, Chasel 5 months, 2 weeks ago
Reviewed-by: Chasel Chiu <chasel.chiu@intel.com>

Thanks,
Chasel



> -----Original Message-----
> From: Desimone, Nathaniel L <nathaniel.l.desimone@intel.com>
> Sent: Monday, September 25, 2023 5:47 PM
> To: devel@edk2.groups.io
> Cc: Chiu, Chasel <chasel.chiu@intel.com>; Isaac Oram
> <isaac.w.oram@intel.com>; Gao, Liming <gaoliming@byosoft.com.cn>; Dong,
> Eric <eric.dong@intel.com>
> Subject: [PATCH v1] MinPlatformPkg: If BaseTools doesn't build, try a clean build
> 
> Cc: Chasel Chiu <chasel.chiu@intel.com>
> Cc: Isaac Oram <isaac.w.oram@intel.com>
> Cc: Liming Gao <gaoliming@byosoft.com.cn>
> Cc: Eric Dong <eric.dong@intel.com>
> Signed-off-by: Nate DeSimone <nathaniel.l.desimone@intel.com>
> ---
>  Platform/Intel/build_bios.py | 17 ++++++++++++++++-
>  1 file changed, 16 insertions(+), 1 deletion(-)
> 
> diff --git a/Platform/Intel/build_bios.py b/Platform/Intel/build_bios.py index
> 9c95cfff76..b396017c8c 100755
> --- a/Platform/Intel/build_bios.py
> +++ b/Platform/Intel/build_bios.py
> @@ -207,7 +207,22 @@ def pre_build(build_config, build_type="DEBUG",
> silent=False, toolchain=None):
> 
>      _, _, result, return_code = execute_script(command, config, shell=shell)
>      if return_code != 0:
> -        build_failed(config)
> +        #
> +        # If the BaseTools build fails, then run a clean build and retry
> +        #
> +        clean_command = ["nmake", "-f",
> +                         os.path.join(config["BASE_TOOLS_PATH"], "Makefile"),
> +                         "clean"]
> +        if os.name == "posix":
> +            clean_command = ["make", "-C",
> +                             os.path.join(config["BASE_TOOLS_PATH"]), "clean"]
> +        _, _, result, return_code = execute_script(clean_command, config,
> +                                                   shell=shell)
> +        if return_code != 0:
> +            build_failed(config)
> +        _, _, result, return_code = execute_script(command, config, shell=shell)
> +        if return_code != 0:
> +            build_failed(config)
> 
>      #
>      # build platform silicon tools
> --
> 2.39.2.windows.1



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#111420): https://edk2.groups.io/g/devel/message/111420
Mute This Topic: https://groups.io/mt/101587227/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-