From af1a266670d040d2f4083ff309d732d648afba2a Mon Sep 17 00:00:00 2001 From: Angelos Mouzakitis Date: Tue, 10 Oct 2023 14:33:42 +0000 Subject: Add submodule dependency files Change-Id: Iaf8d18082d3991dec7c0ebbea540f092188eb4ec --- .../Plugin/WindowsResourceCompiler/WinRcPath.py | 29 ++++++++++++++++++++++ .../WindowsResourceCompiler/WinRcPath_plug_in.yaml | 13 ++++++++++ 2 files changed, 42 insertions(+) create mode 100644 roms/edk2/BaseTools/Plugin/WindowsResourceCompiler/WinRcPath.py create mode 100644 roms/edk2/BaseTools/Plugin/WindowsResourceCompiler/WinRcPath_plug_in.yaml (limited to 'roms/edk2/BaseTools/Plugin/WindowsResourceCompiler') 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" +} -- cgit 1.2.3-korg