diff options
Diffstat (limited to 'roms/edk2/BaseTools/Plugin/WindowsResourceCompiler')
-rw-r--r-- | roms/edk2/BaseTools/Plugin/WindowsResourceCompiler/WinRcPath.py | 29 | ||||
-rw-r--r-- | roms/edk2/BaseTools/Plugin/WindowsResourceCompiler/WinRcPath_plug_in.yaml | 13 |
2 files changed, 42 insertions, 0 deletions
diff --git a/roms/edk2/BaseTools/Plugin/WindowsResourceCompiler/WinRcPath.py b/roms/edk2/BaseTools/Plugin/WindowsResourceCompiler/WinRcPath.py new file mode 100644 index 000000000..ec2f2d129 --- /dev/null +++ b/roms/edk2/BaseTools/Plugin/WindowsResourceCompiler/WinRcPath.py @@ -0,0 +1,29 @@ +## @file WinRcPath.py
+# Plugin to find Windows SDK Resource Compiler rc.exe
+##
+# This plugin works in conjuncture with the tools_def to support rc.exe
+#
+# Copyright (c) Microsoft Corporation
+# SPDX-License-Identifier: BSD-2-Clause-Patent
+##
+import os
+from edk2toolext.environment.plugintypes.uefi_build_plugin import IUefiBuildPlugin
+import edk2toollib.windows.locate_tools as locate_tools
+from edk2toolext.environment import shell_environment
+from edk2toolext.environment import version_aggregator
+
+class WinRcPath(IUefiBuildPlugin):
+
+ def do_post_build(self, thebuilder):
+ return 0
+
+ def do_pre_build(self, thebuilder):
+ #get the locate tools module
+ path = locate_tools.FindToolInWinSdk("rc.exe")
+ if path is None:
+ thebuilder.logging.warning("Failed to find rc.exe")
+ else:
+ p = os.path.abspath(os.path.dirname(path))
+ shell_environment.GetEnvironment().set_shell_var("WINSDK_PATH_FOR_RC_EXE", p)
+ version_aggregator.GetVersionAggregator().ReportVersion("WINSDK_PATH_FOR_RC_EXE", p, version_aggregator.VersionTypes.INFO)
+ return 0
diff --git a/roms/edk2/BaseTools/Plugin/WindowsResourceCompiler/WinRcPath_plug_in.yaml b/roms/edk2/BaseTools/Plugin/WindowsResourceCompiler/WinRcPath_plug_in.yaml new file mode 100644 index 000000000..3aec35d86 --- /dev/null +++ b/roms/edk2/BaseTools/Plugin/WindowsResourceCompiler/WinRcPath_plug_in.yaml @@ -0,0 +1,13 @@ +## @file
+# Build Plugin used to set the path to rc.exe on windows.
+# The plugin is able to use python to locate the tool as to avoid
+# hard-coding the path
+#
+# Copyright (c) Microsoft Corporation.
+# SPDX-License-Identifier: BSD-2-Clause-Patent
+##
+{
+ "scope": "global-win",
+ "name": "Windows RC Path Support",
+ "module": "WinRcPath"
+}
|