Releases: microsoft/mu_oem_sample
dev-v2025020000.0.0
PRs associated with the commits can be found at the bottom of the information pane reached by clicking on the commit hash
What's Changed## 🚀 Features & ✨ Enhancements
-
CI: Switch to run release branches
-
Update OemPkg for 202502.
-
SpellCheck: Fix misspellings
-
pip: edk2-pytool-library to 0.23.2, edk2-pytool-extensions to 0.29.2, regex to 2024.11.6, pygout to 2.0.0
-
CI: Limit CI runs to AARCH64, IA32, X64 (#261)
-
Update for 202502 branch
-
OemPkg: Remove StackCheckLib instance since its inherited from MdeLibs.dsc.inc
release-v2025020000.0.0
PRs associated with the commits can be found at the bottom of the information pane reached by clicking on the commit hash
What's Changed## 🚀 Features & ✨ Enhancements
-
CI: Switch to run release branches
-
Update OemPkg for 202502.
-
SpellCheck: Fix misspellings
-
pip: edk2-pytool-library to 0.23.2, edk2-pytool-extensions to 0.29.2, regex to 2024.11.6, pygout to 2.0.0
-
CI: Limit CI runs to AARCH64, IA32, X64 (#261)
-
Update for 202502 branch
-
OemPkg: Remove StackCheckLib instance since its inherited from MdeLibs.dsc.inc
v2024050000.0.0
Initial Release notes of 202405 contain a full list of mu changes on top of edk2-stable202405
PR associated with the commit can be found at the bottom of the information pane reached by clicking on the commit hash
What's Changed## 🚀 Features & ✨ Enhancements
-
Enable CodeQL as part of PR process. Add codeql filters file for codeql issuse that should be ignored.
-
Repo File Sync: 202405 Branch Transition Updates. (#233)
-
pip: update edk2-pytool-extensions requirement from ~=0.27.10 to ~=0.27.11 (#232)
-
Repo File Sync: synced file(s) with microsoft/mu_devops (#231)
-
pip: update edk2-pytool-library requirement from ~=0.21.9 to ~=0.21.10 (#229)
-
pip: bump antlr4-python3-runtime from 4.13.1 to 4.13.2 (#230)
-
pip: update edk2-pytool-library requirement from ~=0.21.8 to ~=0.21.9 (#228)
-
pip: bump regex from 2024.5.15 to 2024.7.24 (#227)
-
pip: update edk2-pytool-extensions requirement from ~=0.27.9 to ~=0.27.10 (#226)
-
pip: update edk2-pytool-extensions requirement from ~=0.27.6 to ~=0.27.9 (#225)
-
GitHub Action: Bump robinraju/release-downloader from 1.10 to 1.11 (#223)
-
Repo File Sync: synced file(s) with microsoft/mu_devops (#222)
-
pip: update edk2-pytool-library requirement from ~=0.21.7 to ~=0.21.8 (#221)
-
pip: update edk2-pytool-extensions requirement from ~=0.27.5 to ~=0.27.6 (#220)
-
pip: update edk2-pytool-library requirement from ~=0.21.6 to ~=0.21.7 (#219)
-
pip: update edk2-pytool-library requirement from ~=0.21.5 to ~=0.21.6 (#218)
-
pip: update edk2-pytool-extensions requirement from ~=0.27.4 to ~=0.27.5 (#217)
-
Repo File Sync: synced file(s) with microsoft/mu_devops (#216)
-
pip: bump regex from 2024.5.10 to 2024.5.15 (#215)
-
pip: bump pygount from 1.6.1 to 1.8.0 (#214)
-
pip: bump regex from 2024.4.28 to 2024.5.10 (#213)
-
Repo File Sync: .gitattributes: Prevent line ending conversion (#212)
v2023110000.0.2
What's Changed
🔐 Security Impacting
-
OemPkg: DfciDeviceIdSupportLib: Fixing uninitialized variable being used @kuqin12 (#211)
Change Details
# Preface
Please ensure you have read the contribution docs prior
to submitting the pull request. In particular,
pull request guidelines.Description
There are a few instances where the variables could be used without being initialized in DfciDeviceIdSupportLib. This change is made to fix such cases.
For each item, place an "x" in between
[
and]
if true. Example:[x]
.
(you can also check items in the GitHub UI)- Impacts functionality?
- Functionality - Does the change ultimately impact how firmware functions?
- Examples: Add a new library, publish a new PPI, update an algorithm, ...
- Impacts security?
- Security - Does the change have a direct security impact on an application,
flow, or firmware? - Examples: Crypto algorithm change, buffer overflow fix, parameter
validation improvement, ...
- Security - Does the change have a direct security impact on an application,
- Breaking change?
- Breaking change - Will anyone consuming this change experience a break
in build or boot behavior? - Examples: Add a new library class, move a module to a different repo, call
a function in a new library class in a pre-existing module, ...
- Breaking change - Will anyone consuming this change experience a break
- Includes tests?
- Tests - Does the change include any explicit test code?
- Examples: Unit tests, integration tests, robot tests, ...
- Includes documentation?
- Documentation - Does the change contain explicit documentation additions
outside direct code modifications (and comments)? - Examples: Update readme file, add feature readme file, link to documentation
on an a separate Web page, ...
- Documentation - Does the change contain explicit documentation additions
How This Was Tested
Tested on QEMU Q35 and booted to UEFI shell.
Integration Instructions
N/A
</blockquote> <hr> </details>
- Impacts functionality?
Full Changelog: v2023110000.0.1...v2023110000.0.2
v2023110000.0.1
What's Changed
-
[CHERRY-PICK] Add StackCheckLib Instances to Platform DSC Files (#198) @TaylorBeebe (#199)
Change Details
## Description
An instance of StackCheckLib must be in each DSC to accommodate -fstack-protector and /GS flags.
- Impacts functionality?
- Functionality - Does the change ultimately impact how firmware functions?
- Examples: Add a new library, publish a new PPI, update an algorithm, ...
- Impacts security?
- Security - Does the change have a direct security impact on an application,
flow, or firmware?- Examples: Crypto algorithm change, buffer overflow fix, parameter validation improvement, ...
- Breaking change?
- Breaking change - Will anyone consuming this change experience a break
in build or boot behavior? - Examples: Add a new library class, move a module to a different repo, call
a function in a new library class in a pre-existing module, ... - Includes tests?
- Tests - Does the change include any explicit test code?
- Examples: Unit tests, integration tests, robot tests, ...
- Includes documentation?
- Documentation - Does the change contain explicit documentation additions
outside direct code modifications (and comments)? - Examples: Update readme file, add feature readme file, link to documentation
on an a separate Web page, ...
How This Was Tested
Tested in pipelines
Integration Instructions
N/A
-
remove edk2-basetools @Javagedes (#193)
Change Details
## Description
Removes edk2-basetools from pip-requirements.txt and any usage of it in the CISettings.py. The is done as there are changes in the build tools python source code that are available locally in BaseTools (as it is managed by Project Mu) that is not available in edk2-basetools.
- Impacts functionality?
- Functionality - Does the change ultimately impact how firmware functions?
- Examples: Add a new library, publish a new PPI, update an algorithm, ...
- Impacts security?
- Security - Does the change have a direct security impact on an application,
flow, or firmware? - Examples: Crypto algorithm change, buffer overflow fix, parameter
validation improvement, ...
- Security - Does the change have a direct security impact on an application,
- Breaking change?
- Breaking change - Will anyone consuming this change experience a break
in build or boot behavior? - Examples: Add a new library class, move a module to a different repo, call
a function in a new library class in a pre-existing module, ...
- Breaking change - Will anyone consuming this change experience a break
- Includes tests?
- Tests - Does the change include any explicit test code?
- Examples: Unit tests, integration tests, robot tests, ...
- Includes documentation?
- Documentation - Does the change contain explicit documentation additions
outside direct code modifications (and comments)? - Examples: Update readme file, add feature readme file, link to documentation
on an a separate Web page, ...
- Documentation - Does the change contain explicit documentation additions
How This Was Tested
Verified the build system continues to use the local python source
Integration Instructions
N/A - only effects this repository's CI system.
- Impacts functionality?
Full Changelog: v2023110000.0.0...v2023110000.0.1
v2023020000.0.8
What's Changed
-
Add StackCheckLib Instances to Platform DSC Files @TaylorBeebe (#198)
Change Details
## Description
An instance of StackCheckLib must be in each DSC to accommodate -fstack-protector and /GS flags.
- Impacts functionality?
- Functionality - Does the change ultimately impact how firmware functions?
- Examples: Add a new library, publish a new PPI, update an algorithm, ...
- Impacts security?
- Security - Does the change have a direct security impact on an application,
flow, or firmware? - Examples: Crypto algorithm change, buffer overflow fix, parameter
validation improvement, ...
- Security - Does the change have a direct security impact on an application,
- Breaking change?
- Breaking change - Will anyone consuming this change experience a break
in build or boot behavior? - Examples: Add a new library class, move a module to a different repo, call
a function in a new library class in a pre-existing module, ...
- Breaking change - Will anyone consuming this change experience a break
- Includes tests?
- Tests - Does the change include any explicit test code?
- Examples: Unit tests, integration tests, robot tests, ...
- Includes documentation?
- Documentation - Does the change contain explicit documentation additions
outside direct code modifications (and comments)? - Examples: Update readme file, add feature readme file, link to documentation
on an a separate Web page, ...
- Documentation - Does the change contain explicit documentation additions
How This Was Tested
Tested in pipelines
Integration Instructions
N/A
</blockquote> <hr> </details>
- Impacts functionality?
Full Changelog: v2023020000.0.7...v2023020000.0.8
v2023110000.0.0
What's Changed
First 202311 Mu OEM Sample release 🎉.
-
[Rebase \& FF] [Cherry-pick] Get all the missing commits from 202302 into 202311 @kenlautner (#186)
Change Details
## Description
Cherry-pick the commits from 202302 that are missing from 202311 since the creation of the release branch.
- Impacts functionality?
- Functionality - Does the change ultimately impact how firmware functions?
- Examples: Add a new library, publish a new PPI, update an algorithm, ...
- Impacts security?
- Security - Does the change have a direct security impact on an application,
flow, or firmware? - Examples: Crypto algorithm change, buffer overflow fix, parameter
validation improvement, ...
- Security - Does the change have a direct security impact on an application,
- Breaking change?
- Breaking change - Will anyone consuming this change experience a break
in build or boot behavior? - Examples: Add a new library class, move a module to a different repo, call
a function in a new library class in a pre-existing module, ...
- Breaking change - Will anyone consuming this change experience a break
- Includes tests?
- Tests - Does the change include any explicit test code?
- Examples: Unit tests, integration tests, robot tests, ...
- Includes documentation?
- Documentation - Does the change contain explicit documentation additions
outside direct code modifications (and comments)? - Examples: Update readme file, add feature readme file, link to documentation
on an a separate Web page, ...
- Documentation - Does the change contain explicit documentation additions
How This Was Tested
CI
Integration Instructions
N/A
- Impacts functionality?
-
Updated CISettings.py to use the edk2toolext codeql helpers @kenlautner (#178)
Change Details
## Description
The 202311 rebase moved the codeql plugin from .pytool to Basetools. This requires a change in CISettings.py to reference the correct codeql helper functions. Instead of using the internal versions we instead move to the edk2 pytool extensions version.
For each item, place an "x" in between
[
and]
if true. Example:[x]
.
(you can also check items in the GitHub UI)- Impacts functionality?
- Functionality - Does the change ultimately impact how firmware functions?
- Examples: Add a new library, publish a new PPI, update an algorithm, ...
- Impacts security?
- Security - Does the change have a direct security impact on an application,
flow, or firmware? - Examples: Crypto algorithm change, buffer overflow fix, parameter
validation improvement, ...
- Security - Does the change have a direct security impact on an application,
- Breaking change?
- Breaking change - Will anyone consuming this change experience a break
in build or boot behavior? - Examples: Add a new library class, move a module to a different repo, call
a function in a new library class in a pre-existing module, ...
- Breaking change - Will anyone consuming this change experience a break
- Includes tests?
- Tests - Does the change include any explicit test code?
- Examples: Unit tests, integration tests, robot tests, ...
- Includes documentation?
- Documentation - Does the change contain explicit documentation additions
outside direct code modifications (and comments)? - Examples: Update readme file, add feature readme file, link to documentation
on an a separate Web page, ...
- Documentation - Does the change contain explicit documentation additions
How This Was Tested
Tested with CI.
Integration Instructions
N/A
- Impacts functionality?
-
OemPkg/SecureBootKeyStoreLibOem: Delete @Javagedes (#164)
Change Details
## Description
Removes SecureBootKeyStoreLibOem from OemPkg in favor of SecureBootKeyStoreLib in MsCorePkg.
For each item, place an "x" in between
[
and]
if true. Example:[x]
.
(you can also check items in the GitHub UI)- Impacts functionality?
- Functionality - Does the change ultimately impact how firmware functions?
- Examples: Add a new library, publish a new PPI, update an algorithm, ...
- Impacts security?
- Security - Does the change have a direct security impact on an application,
flow, or firmware? - Examples: Crypto algorithm change, buffer overflow fix, parameter
validation improvement, ...
- Security - Does the change have a direct security impact on an application,
- Breaking change?
- Breaking change - Will anyone consuming this change experience a break
in build or boot behavior? - Examples: Add a new library class, move a module to a different repo, call
a function in a new library class in a pre-existing module, ...
- Breaking change - Will anyone consuming this change experience a break
- Includes tests?
- Tests - Does the change include any explicit test code?
- Examples: Unit tests, integration tests, robot tests, ...
- Includes documentation?
- Documentation - Does the change contain explicit documentation additions
outside direct code modifications (and comments)? - Examples: Update readme file, add feature readme file, link to documentation
on an a separate Web page, ...
- Documentation - Does the change contain explicit documentation additions
How This Was Tested
Verified QemuQ35Pkg continues to build with the new version of SecurebootKeyStoreLib provided by MsCorePkg.
Integration Instructions
Switch from OemPkg's SecureBootKeyStoreLib implementation. Follow integration instructions provided by the package.
- Impacts functionality?
-
Fix Possible BootMenu Failure @TaylorBeebe (#138)
Change Details
## Description BootMenu should have a DEPEX on gEdkiiFormBrowserEx2ProtocolGuid and should not return failure (to avoid unloading the driver after creating events and installing protocol interfaces).
- Impacts functionality?
- Functionality - Does the change ultimately impact how firmware functions?
- Examples: Add a new library, publish a new PPI, update an algorithm, ...
- Impacts security?
- Security - Does the change have a direct security impact on an application,
flow, or firmware? - Examples: Crypto algorithm change, buffer overflow fix, parameter
validation improvement, ...
- Security - Does the change have a direct security impact on an application,
- Breaking change?
- Breaking change - Will anyone consuming this change experience a break
in build or boot behavior? - Examples: Add a new library class, move a module to a different repo, call
a function in a new library class in a pre-existing module, ...
- Breaking change - Will anyone consuming this change experience a break
- Includes tests?
- Tests - Does the change include any explicit test code?
- Examples: Unit tests, integration tests, robot tests, ...
- Includes documentation?
- Documentation - Does the change contain explicit documentation additions
outside direct code modifications (and comments)? - Examples: Update readme file, add feature readme file, link to documentation
on an a separate Web page, ...
- Documentation - Does the change contain explicit documentation additions
How This Was Tested
Tested on Q35
Integration Instructions
N/A
- Impacts functionality?
-
Clears the DebugDirectory of the Debug information for Release builds of HelloUefi @Flickdm (#123)
Change Details
# Preface
Please ensure you have read the contribution docs prior
to submitting the pull request. In particular,
pull request guidelines.Description
This is a workaround for an issue in GenFw
On linux when building using GCC5 in RELEASE the PE DebugDirectory includes the full path to the intermittent DLL.
See:
00000330: 3403 0000 4e42 3130 0000 0000 0000 0000 4...NB10........
00000340: 0000 0000 2f68 6f6d 652f 7573 6572 2d78 ..../home/user-x
00000350: 782f 6d75 5f6f 656d 5f73 616d 706c 652f x/mu_oem_sample/
00000360: 4275 696c 642f 4f65 6d50 6b67 2f52 454c Build/OemPkg/REL
00000370: 4541 5345 5f47 4343 352f 5836 342f 4f65 EASE_GCC5/X64/Oe
00000380: 6d50 6b67 2f48 656c 6c6f 5565 6669 2f48 mPkg/HelloUefi/H
00000390: 656c 6c6f 5565 6669 2f44 4542 5547 2f48 elloUefi/DEBUG/H
000003a0: 656c 6c6f 5565 6669 2e64 6c6c 0000 0000 elloUefi.dll....
000003b0: 0000 0000 0000 0000 0000 0000 0000 0000 ................For each item, place an "x" in between
[
and]
if true. Example:[x]
.
(you can also check items in the GitHub UI)- Impacts functionality?
- Simply zeros out the timestamps and debug directory using GenFW
- Impacts security?
- Breaking change?
- If anyone is actually consuming the DebugDirectory, this would be a breaking change. This is mitigated by only removing it in this application on RELEASE builds.
- Includes tests?
- Includes documentation?
How This Was Tested
Built on WSL2 Ubuntu with GCC5 tool chain
Integration Instructions
N/A
v2023020000.0.7
What's Changed
-
Update pip-requirements.txt @Javagedes (#183)
Change Details
## Description
Updates edk2-pytool-extensions and edk2-pytool-library to work with the latest commit of MU_BASECORE
For each item, place an "x" in between
[
and]
if true. Example:[x]
.
(you can also check items in the GitHub UI)- Impacts functionality?
- Functionality - Does the change ultimately impact how firmware functions?
- Examples: Add a new library, publish a new PPI, update an algorithm, ...
- Impacts security?
- Security - Does the change have a direct security impact on an application,
flow, or firmware? - Examples: Crypto algorithm change, buffer overflow fix, parameter
validation improvement, ...
- Security - Does the change have a direct security impact on an application,
- Breaking change?
- Breaking change - Will anyone consuming this change experience a break
in build or boot behavior? - Examples: Add a new library class, move a module to a different repo, call
a function in a new library class in a pre-existing module, ...
- Breaking change - Will anyone consuming this change experience a break
- Includes tests?
- Tests - Does the change include any explicit test code?
- Examples: Unit tests, integration tests, robot tests, ...
- Includes documentation?
- Documentation - Does the change contain explicit documentation additions
outside direct code modifications (and comments)? - Examples: Update readme file, add feature readme file, link to documentation
on an a separate Web page, ...
- Documentation - Does the change contain explicit documentation additions
How This Was Tested
N/A
Integration Instructions
N/A
- Impacts functionality?
-
.git-blame-ignore-revs: Ignore Line Ending and Uncrustify only commits @makubacki (#175)
Change Details
## Description
Adds commits that only applied Uncrustify formatting or converted
line endings to a .git-blame-ignore-revs file so they are ignored
by git blame. This is supported by GitHub:
https://github.blog/changelog/2022-03-24-ignore-commits-in-the-blame-view-beta/This helps clean up git blame by filtering out these changes.
Note: This file needs to be updated on rebase branches. Processes
like filter-branch can automatically update relevant SHAs.- Impacts functionality?
- Functionality - Does the change ultimately impact how firmware functions?
- Examples: Add a new library, publish a new PPI, update an algorithm, ...
- Impacts security?
- Security - Does the change have a direct security impact on an application,
flow, or firmware? - Examples: Crypto algorithm change, buffer overflow fix, parameter
validation improvement, ...
- Security - Does the change have a direct security impact on an application,
- Breaking change?
- Breaking change - Will anyone consuming this change experience a break
in build or boot behavior? - Examples: Add a new library class, move a module to a different repo, call
a function in a new library class in a pre-existing module, ...
- Breaking change - Will anyone consuming this change experience a break
- Includes tests?
- Tests - Does the change include any explicit test code?
- Examples: Unit tests, integration tests, robot tests, ...
- Includes documentation?
- Documentation - Does the change contain explicit documentation additions
outside direct code modifications (and comments)? - Examples: Update readme file, add feature readme file, link to documentation
on an a separate Web page, ...
- Documentation - Does the change contain explicit documentation additions
How This Was Tested
git blame
Integration Instructions
N/A
- Impacts functionality?
-
OemPkg/SecureBootKeyStoreLibOem: Delete @Javagedes (#164)
Change Details
## Description
Removes SecureBootKeyStoreLibOem from OemPkg in favor of SecureBootKeyStoreLib in MsCorePkg.
For each item, place an "x" in between
[
and]
if true. Example:[x]
.
(you can also check items in the GitHub UI)- Impacts functionality?
- Functionality - Does the change ultimately impact how firmware functions?
- Examples: Add a new library, publish a new PPI, update an algorithm, ...
- Impacts security?
- Security - Does the change have a direct security impact on an application,
flow, or firmware? - Examples: Crypto algorithm change, buffer overflow fix, parameter
validation improvement, ...
- Security - Does the change have a direct security impact on an application,
- Breaking change?
- Breaking change - Will anyone consuming this change experience a break
in build or boot behavior? - Examples: Add a new library class, move a module to a different repo, call
a function in a new library class in a pre-existing module, ...
- Breaking change - Will anyone consuming this change experience a break
- Includes tests?
- Tests - Does the change include any explicit test code?
- Examples: Unit tests, integration tests, robot tests, ...
- Includes documentation?
- Documentation - Does the change contain explicit documentation additions
outside direct code modifications (and comments)? - Examples: Update readme file, add feature readme file, link to documentation
on an a separate Web page, ...
- Documentation - Does the change contain explicit documentation additions
How This Was Tested
Verified QemuQ35Pkg continues to build with the new version of SecurebootKeyStoreLib provided by MsCorePkg.
Integration Instructions
Switch from OemPkg's SecureBootKeyStoreLib implementation. Follow integration instructions provided by the package.
- Impacts functionality?
🔐 Security Impacting
-
Use New Stack Cookie Library @TaylorBeebe (#160)
Change Details
## Description
MdePkg/MdeLibs.dsc.inc contains the definitions for the new stack cookie libraries.
- Impacts functionality?
- Functionality - Does the change ultimately impact how firmware functions?
- Examples: Add a new library, publish a new PPI, update an algorithm, ...
- Impacts security?
- Security - Does the change have a direct security impact on an application,
flow, or firmware? - Examples: Crypto algorithm change, buffer overflow fix, parameter
validation improvement, ...
- Security - Does the change have a direct security impact on an application,
- Breaking change?
- Breaking change - Will anyone consuming this change experience a break
in build or boot behavior? - Examples: Add a new library class, move a module to a different repo, call
a function in a new library class in a pre-existing module, ...
- Breaking change - Will anyone consuming this change experience a break
- Includes tests?
- Tests - Does the change include any explicit test code?
- Examples: Unit tests, integration tests, robot tests, ...
- Includes documentation?
- Documentation - Does the change contain explicit documentation additions
outside direct code modifications (and comments)? - Examples: Update readme file, add feature readme file, link to documentation
on an a separate Web page, ...
- Documentation - Does the change contain explicit documentation additions
How This Was Tested
Tested on Q35 GCC and MSVC builds
Integration Instructions
N/A
- Impacts functionality?
Full Changelog: v2023020000.0.6...v2023020000.0.7
v2023020000.0.6
What's Changed
-
Fix Possible BootMenu Failure @TaylorBeebe (#138)
Change Details
## Description BootMenu should have a DEPEX on gEdkiiFormBrowserEx2ProtocolGuid and should not return failure (to avoid unloading the driver after creating events and installing protocol interfaces).
- Impacts functionality?
- Functionality - Does the change ultimately impact how firmware functions?
- Examples: Add a new library, publish a new PPI, update an algorithm, ...
- Impacts security?
- Security - Does the change have a direct security impact on an application,
flow, or firmware? - Examples: Crypto algorithm change, buffer overflow fix, parameter
validation improvement, ...
- Security - Does the change have a direct security impact on an application,
- Breaking change?
- Breaking change - Will anyone consuming this change experience a break
in build or boot behavior? - Examples: Add a new library class, move a module to a different repo, call
a function in a new library class in a pre-existing module, ...
- Breaking change - Will anyone consuming this change experience a break
- Includes tests?
- Tests - Does the change include any explicit test code?
- Examples: Unit tests, integration tests, robot tests, ...
- Includes documentation?
- Documentation - Does the change contain explicit documentation additions
outside direct code modifications (and comments)? - Examples: Update readme file, add feature readme file, link to documentation
on an a separate Web page, ...
- Documentation - Does the change contain explicit documentation additions
How This Was Tested
Tested on Q35
Integration Instructions
N/A
- Impacts functionality?
Full Changelog: v2023020000.0.5...v2023020000.0.6
v2023020000.0.5
What's Changed
-
Clears the DebugDirectory of the Debug information for Release builds of HelloUefi @Flickdm (#123)
Change Details
# Preface
Please ensure you have read the contribution docs prior
to submitting the pull request. In particular,
pull request guidelines.Description
This is a workaround for an issue in GenFw
On linux when building using GCC5 in RELEASE the PE DebugDirectory includes the full path to the intermittent DLL.
See:
00000330: 3403 0000 4e42 3130 0000 0000 0000 0000 4...NB10........
00000340: 0000 0000 2f68 6f6d 652f 7573 6572 2d78 ..../home/user-x
00000350: 782f 6d75 5f6f 656d 5f73 616d 706c 652f x/mu_oem_sample/
00000360: 4275 696c 642f 4f65 6d50 6b67 2f52 454c Build/OemPkg/REL
00000370: 4541 5345 5f47 4343 352f 5836 342f 4f65 EASE_GCC5/X64/Oe
00000380: 6d50 6b67 2f48 656c 6c6f 5565 6669 2f48 mPkg/HelloUefi/H
00000390: 656c 6c6f 5565 6669 2f44 4542 5547 2f48 elloUefi/DEBUG/H
000003a0: 656c 6c6f 5565 6669 2e64 6c6c 0000 0000 elloUefi.dll....
000003b0: 0000 0000 0000 0000 0000 0000 0000 0000 ................For each item, place an "x" in between
[
and]
if true. Example:[x]
.
(you can also check items in the GitHub UI)- Impacts functionality?
- Simply zeros out the timestamps and debug directory using GenFW
- Impacts security?
- Breaking change?
- If anyone is actually consuming the DebugDirectory, this would be a breaking change. This is mitigated by only removing it in this application on RELEASE builds.
- Includes tests?
- Includes documentation?
How This Was Tested
Built on WSL2 Ubuntu with GCC5 tool chain
Integration Instructions
N/A
Full Changelog: v2023020000.0.4...v2023020000.0.5