Commit Graph

32011 Commits

Author SHA1 Message Date
Michael D Kinney 6b0f39daf1 UnitTestFrameworkPkg: Use TianoCore mirror of subhook submodule
Change subhook url from https://github.com/Zeex/subhook to
https://github.com/tianocore/edk2-subhook because old url is
no longer available.

Also align .gitmodules file to use consistent LF line endings.

Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com>
2024-11-07 12:00:53 +03:00
Mikhail Krichanov cf294d6670 README: Added link to audk-stable-202305. 2024-07-18 12:16:08 +03:00
dependabot[bot] 19fa9146a6 pip: bump edk2-pytool-extensions from 0.26.4 to 0.27.5
Bumps [edk2-pytool-extensions](https://github.com/tianocore/edk2-pytool-extensions) from 0.26.4 to 0.27.5.
- [Release notes](https://github.com/tianocore/edk2-pytool-extensions/releases)
- [Commits](https://github.com/tianocore/edk2-pytool-extensions/compare/v0.26.4...v0.27.5)

---
updated-dependencies:
- dependency-name: edk2-pytool-extensions
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-26 12:35:19 +03:00
dependabot[bot] f4df12105b pip: bump edk2-pytool-library from 0.20.0 to 0.21.5
Bumps [edk2-pytool-library](https://github.com/tianocore/edk2-pytool-library) from 0.20.0 to 0.21.5.
- [Release notes](https://github.com/tianocore/edk2-pytool-library/releases)
- [Commits](https://github.com/tianocore/edk2-pytool-library/compare/v0.20.0...v0.21.5)

---
updated-dependencies:
- dependency-name: edk2-pytool-library
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-26 12:35:11 +03:00
dependabot[bot] 0adf37e973 pip: bump regex from 2023.12.25 to 2024.5.15
Bumps [regex](https://github.com/mrabarnett/mrab-regex) from 2023.12.25 to 2024.5.15.
- [Changelog](https://github.com/mrabarnett/mrab-regex/blob/hg/changelog.txt)
- [Commits](https://github.com/mrabarnett/mrab-regex/compare/2023.12.25...2024.5.15)

---
updated-dependencies:
- dependency-name: regex
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-26 12:35:03 +03:00
Laszlo Ersek bb3bf4525e pip-requirements.txt: require edk2-basetools version 0.1.51
The edk2-basetools commit that corresponds to edk2 commit bac9c74080
("BaseTools/AutoGen: declare ProcessLibraryConstructorList() for SEC
modules", 2024-02-29) is 5b7161de22ee ("BaseTools/AutoGen: declare
ProcessLibraryConstructorList() for SEC modules", 2024-03-04); it is part
of tag v0.1.51.

Subsequent patches in this series put that feature to use. Require release
0.1.51 of edk2-basetools in "pip-requirements.txt", so that the next
patches work with in-tree and out-of-tree (e.g., CI) BaseTools.

Furthermore, require version 0.20.0 of edk2-pytool-library. This is a
dependency of edk2-basetools v0.1.50 (commit 08e5bbe755d2, "Add
pyproject.toml and fix setup.py deprecation warnings", 2024-02-13) and
v0.1.51 too (commit f3e15d654479, "Add pyproject.toml and fix setup.py
deprecation warnings", 2024-02-16).

Cc: Bob Feng <bob.c.feng@intel.com>
Cc: Joey Vagedes <joey.vagedes@gmail.com>
Cc: Liming Gao <gaoliming@byosoft.com.cn>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Rebecca Cran <rebecca@bsdio.com>
Cc: Sean Brogan <sean.brogan@microsoft.com>
Cc: Yuwei Chen <yuwei.chen@intel.com>
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=991
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Message-Id: <20240305113843.68812-2-lersek@redhat.com>
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com>
Reviewed-by: Rebecca Cran <rebecca@bsdio.com>
Acked-by: Gerd Hoffmann <kraxel@redhat.com>
2024-06-26 12:34:56 +03:00
Joey Vagedes (from Dev Box) 23b96cdb09 pip-requirements.txt: Update to latest
Updates edk2-pytool-extensions, edk2-pytool-library, and regex to their
latest respective releases.

Signed-off-by: Joey Vagedes <joey.vagedes@gmail.com>
Cc: Andrew Fish <afish@apple.com>
Cc: Leif Lindholm <quic_llindhol@quicinc.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com>
2024-06-26 12:34:47 +03:00
Joey Vagedes 30334126c7 .pytool/Plugin: UncrustifyCheck: use stat instead of os.stat
The UncrustifyCheck plugin passes os.stat.S_IWRITE to os.chmod, when
attempting to change file permissions. os.stat.S_IWRITE does not exist
as os.stat is a function. The correct value is stat.S_IWRITE.

Signed-off-by: Joey Vagedes <joey.vagedes@gmail.com>
Cc: Liming Gao <gaoliming@byosoft.com.cn>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Sean Brogan <sean.brogan@microsoft.com>
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com>
2024-06-26 12:18:45 +03:00
Abdul Lateef Attar 69dd3faa16 .pytool/Readme.md: Update matrix for DynamicTablesPkg
Update the "Basic Status" matrix for DynamicTablesPkg by
adding a check mark for Windows VS2019 IA32/X64 support.

Cc: Sean Brogan <sean.brogan@microsoft.com>
Cc: Joey Vagedes <joey.vagedes@gmail.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Liming Gao <gaoliming@byosoft.com.cn>
Cc: Pierre Gondois <pierre.gondois@arm.com>
Cc: Sami Mujawar <sami.mujawar@arm.com>
Signed-off-by: Abdul Lateef Attar <AbdulLateef.Attar@amd.com>
Reviewed-by: Sami Mujawar <sami.mujawar@arm.com>
Reviewed-by: Joey Vagedes <joey.vagedes@gmail.com>
2024-06-26 12:18:45 +03:00
Michael Kubacki 3b5822e5c0 .pytool/UncrustifyCheck: Update to 73.0.8
Updates to the latest release.

- Includes a fix for preventing endless indentation in struct
  assignment.
- Include Windows Arm, Linux Arm, and Mac OS builds.

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>
Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Sean Brogan <sean.brogan@microsoft.com>
2024-06-26 12:18:45 +03:00
Mikhail Krichanov 45f4ec63dc .github/workflows/codeql.yml: Update actions being deprecated
Currently CodeQL runs have the following warnings:

  Node.js 16 actions are deprecated. Please update the following
  actions to use Node.js 20: actions/setup-python@v4,
  actions/upload-artifact@v3, actions/cache@v3. For more information
  see:
  
https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.

And:

  CodeQL Action v2 will be deprecated on December 5th, 2024. Please
  update all occurrences of the CodeQL Action in your workflow files
  to v3. For more information, see:
  
https://github.blog/changelog/2024-01-12-code-scanning-deprecation-of-codeql-action-v2/

The first is resolved by updating the actions to the latest versions
that were released to use Node.js 20. The second is specifically
referring to the codeql-action/upload-sarif action which is at v2.

This change updates all of the actions to the latest releases to
prevent deprecated versions from continuing to be used.

---

The following breaking change was noted in actions/upload-artifact
that caused some related changes in the workflow:

  "Due to how Artifacts are created in this new version, it is no
   longer possible to upload to the same named Artifact multiple
   times. You must either split the uploads into multiple Artifacts
   with different names, or only upload once. Otherwise you will
   encounter an error."

This workflow depended on that behavior previously to append multiple
logs (e.g. setup log, update log, build log) to the same named
artifact (named per package). These were appended after each operation
so they are readily available if the operation failed and no further
actions are run.

Now the artifacts must be unique in name. The hyphenation comes in
because edk2 further builds some packages with both architectures in
a single build vs separate builds (e.g. IA32 and X64 vs IA32,X64). To
uniquely name artifacts resulting from those builds, the architecture
is also placed in the artifact name. For builds with multiple
architectures the artifact name captures each architecture separated
by a hyphen.

Cc: Sean Brogan <sean.brogan@microsoft.com>
Cc: Joey Vagedes <joey.vagedes@gmail.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com>
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com>
2024-06-24 17:44:28 +03:00
Mikhail Krichanov 2b6ddc5a1e CodeQL: Updated to 2.17.3 2024-06-24 16:29:34 +03:00
Mike Beaton b84c1aab2c MdePkg: Modify default supported image type to PE, for both FV and NON_FV
UE is experimental and non-standard, so should not be supported by default.

For platforms that opt in to UE, like OVMF and DUET, globally for the
platform (not overridden per-module) the FV PCD should either be PE | UE
or only UE, depending on where support is at.

Signed-off-by: Mike Beaton <mjsbeaton@gmail.com>
Signed-off-by: Marvin Häuser <mhaeuser@posteo.de>
2024-04-23 10:56:20 +01:00
Mike Beaton bb321e039a DxeCore: Enforce FV/NON_FV source check
There was a bool bug in an earlier version, which unfortunately inverted
the sense of this check, but the correct (and secure) fix is to continue
to enforce the check, using the enum valuues.

Signed-off-by: Mike Beaton <mjsbeaton@gmail.com>
Signed-off-by: Marvin Häuser <mhaeuser@posteo.de>
2024-04-22 08:44:07 +01:00
Mike Beaton d2e7bf7f0e
BaseTools: Enable symbolic debugging with LTO in XCODE toolchain (#64) 2024-04-16 12:49:16 +01:00
vit9696 33a4015621 BaseTools: Provide fat Mach-O binaries on Darwin
Merge pull request #63 from acidanthera/vit9696-fattools-20240327
2024-03-31 15:13:40 +01:00
Mikhail Krichanov 1cf33092f2 CI: Updated QEMU version. 2024-03-27 09:27:10 +03:00
Mike Beaton 13f99fa7cb OvmfPkg: Update LINUX_LOADER to allow unaligned user images
Required in some distros, e.g. SliTaz. In that example bootx64.efi is the
kernel plus an extra loader which fetches its params from a text file.
That image has section alignment 0x20, whereas the default (0x7)
PcdImageProtectionPolicy enforces section alignment of EFI_PAGE_SIZE=0x1000
for all images.

In OpenDuet and OpenCore native loader the Pcd is already set to 0x03,
to not enforce this for user images (to allow legacy Apple images) - so
this distro I believe would already load via Duet; but this change is
required for it to load in AUDK OVMF.
2024-03-14 07:50:10 +00:00
Mikhail Krichanov 11bfa6a102 CI: Fixed CodeQL for Ext4Pkg and OvmfPkg. 2023-12-28 16:16:50 +03:00
Mikhail Krichanov 6c5205075a CI: Fixed arm tests. 2023-12-28 15:52:50 +03:00
Mikhail Krichanov 2d4f8598ea CI: Fixed CodeQL Builds. 2023-12-28 15:15:28 +03:00
Mike Beaton 3fa1aa4fd1 DebugLib: Simplify DEBUG and ASSERT macros used when MDEPKG_NDEBUG is defined
The variants provided when MDEPKG_NDEBUG is defined will be optimised
away in RELEASE builds, but by referencing the argument (or argument list,
in the case of DEBUG) avoid unused variable errors from valid debug code,
for example when STATIC variables are used only in DEBUG statements.
2023-12-21 11:46:08 +03:00
Mike Beaton 63b4bc2d32 tools_def: Remove unneeded -Wno-unneeded-internal-declaration for CLANGDWARF
This is already worked around by the alternative version
of MDEPKG_NDEBUG DEBUG() for __clang__ which is provided
in MdePkg DebugLib.h, therefore the reason why this flag
was added in EDK-II no longer applies.
2023-12-20 14:10:27 +03:00
Mikhail Krichanov bd5aa410cb Fixed compilation of all packages tracked by CI after rebasing upon edk2-stable202311 tag. 2023-12-20 14:02:12 +03:00
Mikhail Krichanov 091fa11266 Build: Upgraded OpenCorePkg. 2023-12-20 14:02:12 +03:00
Mikhail Krichanov 5d475dc74a SecurePE: Defined new PcdImageProtectionPolicy. 2023-12-20 14:02:12 +03:00
Mikhail Krichanov 1c0e3d05c1 BaseTools: Fixed '-D EDK2_REDUCE_FW_SIZE' build option. 2023-12-20 14:02:12 +03:00
Mikhail Krichanov d1bb53b31e UE: Support UE generation and consumption. 2023-12-20 14:02:12 +03:00
Mikhail Krichanov ed6049fa00 OvmfPkg: Increased SECFV_SIZE at FVMAIN_COMPACT's expense to fix CLANGPDB compilation. 2023-12-20 14:02:12 +03:00
Mikhail Krichanov 670e3c5efa Docs: Updated README.md. 2023-12-20 14:02:12 +03:00
Mikhail Krichanov 1e5896fabf BaseTools/tools_def: Deduplicate DLINK_FLAGS from CC_FLAGS 2023-12-20 14:01:23 +03:00
Marvin Häuser 64732fb143 BaseTools/build_rule: Always pass CC_FLAGS to DLINK 2023-12-20 14:01:23 +03:00
Marvin Häuser c0ccb04541 BaseTools/CommonLib: Replace aligned_alloc with posix_memalign 2023-12-20 14:01:23 +03:00
Mikhail Krichanov 0661940f75 MdePkg/UefiImageLib: Introduce DebugAddress
Signed-off-by: Marvin Häuser <mhaeuser@posteo.de>
2023-12-20 14:01:23 +03:00
Mikhail Krichanov 04eca169da ImageTool: Rework PeEmit with dynamically-growing buffers 2023-12-20 14:01:23 +03:00
Mikhail Krichanov 9852592221 MdePkg/UefiImageLib: Support multi-format and multi-source architecture
Signed-off-by: Marvin Häuser <mhaeuser@posteo.de>
2023-12-20 14:01:23 +03:00
Marvin Häuser fe0d5cac87 MdeModulePkg/DxeCore: Re-use ImageIsFromFv for memory protection 2023-12-20 14:01:23 +03:00
Savva Mitrofanov ab361688e4 CI: Remove Dependabot configuration 2023-12-20 14:01:23 +03:00
Savva Mitrofanov df8beba585 MdePkg/BaseLib: Correct CRC-16-ANSI implementation
The ANSI implementation assumes that initial value should be 0xFFFF and
the result shouldn't be inverted

Fixes: 92288f4 ("MdePkg/BaseLib: Add CRC16-ANSI and CRC32c implementations")
Signed-off-by: Savva Mitrofanov <savvamtr@gmail.com>
2023-12-20 14:01:23 +03:00
Mikhail Krichanov 03d41cad62 BaseTools/Conf: Added EDK2_GCC_NOLTO build option. 2023-12-20 14:00:19 +03:00
Mikhail Krichanov d36d7bfc5e Build: Replaced GCC5 toolchain with GCC. 2023-12-20 14:00:19 +03:00
Mikhail Krichanov 8a56cbfb5d Fixed compilation of all packages tracked by CI after rebasing upon edk2-stable202305. 2023-12-20 14:00:19 +03:00
Mikhail Krichanov 5df2773303 Revert "MdeModulePkg: Enable forward edge CFI in mem attributes table"
This reverts commit e4ef609319.
2023-12-20 14:00:19 +03:00
Mikhail Krichanov e26eb0f9c1 MdeModulePkg/Core/Dxe: Integrate CPU Architectural producer
BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3223

In the current design, memory protection is not available till CpuDxe
is loaded. To resolve this, introduce CpuArchLib to move the
CPU Architectural initialization to DxeCore.

Cc: Eric Dong <eric.dong@intel.com>
Cc: Ray Ni <ray.ni@intel.com>
Cc: Laszlo Ersek <lersek@redhat.com>
Cc: Rahul Kumar <rahul1.kumar@intel.com>
Cc: Vitaly Cheptsov <vit9696@protonmail.com>
Signed-off-by: Marvin Häuser <mhaeuser@posteo.de>
2023-12-20 14:00:19 +03:00
Mikhail Krichanov 1ecb175538 OvmfPkg, BaseTools: Fixed Amaranth compilation for gcc-12.3.0. 2023-12-20 14:00:19 +03:00
Mikhail Krichanov 35e7b2a75f BaseTools: Introduce new HII section design 2023-12-20 14:00:19 +03:00
Mikhail Krichanov ff216ecc28 BaseTools/C: Consume UefiImageLib and ImageToolEmit 2023-12-20 14:00:19 +03:00
Marvin Häuser c3b3ef8b78 BaseTools/GenFv: Remove .text and .data from FV map 2023-12-20 14:00:19 +03:00
Marvin Häuser 6c84e6a282 Remove hacks related to former lack of XCODE5 .hii support 2023-12-20 14:00:19 +03:00
Mikhail Krichanov 41b9d0100d Added .md file summarizing current states of packages. 2023-12-20 14:00:19 +03:00