* [edk2-devel] [PATCH v2 01/12] OvmfPkg: add ShellComponents.dsc.inc
2024-02-15 10:24 [edk2-devel] [PATCH v2 00/12] OvmfPkg: tweak shell builds Gerd Hoffmann
@ 2024-02-15 10:24 ` Gerd Hoffmann
2024-02-15 10:24 ` [edk2-devel] [PATCH v2 02/12] OvmfPkg: add ShellLibs.dsc.inc Gerd Hoffmann
` (10 subsequent siblings)
11 siblings, 0 replies; 21+ messages in thread
From: Gerd Hoffmann @ 2024-02-15 10:24 UTC (permalink / raw)
To: devel
Cc: Jiewen Yao, Gerd Hoffmann, Laszlo Ersek, Min Xu, Tom Lendacky,
Oliver Steffen, Erdem Aktas, Ard Biesheuvel, Michael Roth
Move EFI Shell components from OvmfPkgX64.dsc to
the new ShellComponents.dsc.inc include file.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
---
OvmfPkg/Include/Dsc/ShellComponents.dsc.inc | 49 +++++++++++++++++++++
OvmfPkg/OvmfPkgX64.dsc | 43 +-----------------
2 files changed, 50 insertions(+), 42 deletions(-)
create mode 100644 OvmfPkg/Include/Dsc/ShellComponents.dsc.inc
diff --git a/OvmfPkg/Include/Dsc/ShellComponents.dsc.inc b/OvmfPkg/Include/Dsc/ShellComponents.dsc.inc
new file mode 100644
index 000000000000..1a3a349a9de5
--- /dev/null
+++ b/OvmfPkg/Include/Dsc/ShellComponents.dsc.inc
@@ -0,0 +1,49 @@
+##
+# SPDX-License-Identifier: BSD-2-Clause-Patent
+##
+
+!if $(BUILD_SHELL) == TRUE
+
+!if $(TOOL_CHAIN_TAG) != "XCODE5"
+ ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf {
+ <PcdsFixedAtBuild>
+ gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
+ }
+ ShellPkg/DynamicCommand/HttpDynamicCommand/HttpDynamicCommand.inf {
+ <PcdsFixedAtBuild>
+ gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
+ }
+ ShellPkg/DynamicCommand/VariablePolicyDynamicCommand/VariablePolicyDynamicCommand.inf {
+ <PcdsFixedAtBuild>
+ gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
+ }
+ OvmfPkg/LinuxInitrdDynamicShellCommand/LinuxInitrdDynamicShellCommand.inf {
+ <PcdsFixedAtBuild>
+ gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
+ }
+!endif
+
+ ShellPkg/Application/Shell/Shell.inf {
+ <LibraryClasses>
+ ShellCommandLib|ShellPkg/Library/UefiShellCommandLib/UefiShellCommandLib.inf
+ NULL|ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.inf
+ NULL|ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1CommandsLib.inf
+ NULL|ShellPkg/Library/UefiShellLevel3CommandsLib/UefiShellLevel3CommandsLib.inf
+ NULL|ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.inf
+ NULL|ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf
+ NULL|ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf
+ NULL|ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf
+!if $(NETWORK_IP6_ENABLE) == TRUE
+ NULL|ShellPkg/Library/UefiShellNetwork2CommandsLib/UefiShellNetwork2CommandsLib.inf
+!endif
+ HandleParsingLib|ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf
+ PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
+ BcfgCommandLib|ShellPkg/Library/UefiShellBcfgCommandLib/UefiShellBcfgCommandLib.inf
+
+ <PcdsFixedAtBuild>
+ gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0xFF
+ gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
+ gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|8000
+ }
+
+!endif
diff --git a/OvmfPkg/OvmfPkgX64.dsc b/OvmfPkg/OvmfPkgX64.dsc
index bf4c7906c460..043b0a7a67e0 100644
--- a/OvmfPkg/OvmfPkgX64.dsc
+++ b/OvmfPkg/OvmfPkgX64.dsc
@@ -956,48 +956,7 @@ [Components]
MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf
MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf
-!if $(TOOL_CHAIN_TAG) != "XCODE5" && $(BUILD_SHELL) == TRUE
- ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf {
- <PcdsFixedAtBuild>
- gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
- }
- ShellPkg/DynamicCommand/HttpDynamicCommand/HttpDynamicCommand.inf {
- <PcdsFixedAtBuild>
- gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
- }
- ShellPkg/DynamicCommand/VariablePolicyDynamicCommand/VariablePolicyDynamicCommand.inf {
- <PcdsFixedAtBuild>
- gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
- }
- OvmfPkg/LinuxInitrdDynamicShellCommand/LinuxInitrdDynamicShellCommand.inf {
- <PcdsFixedAtBuild>
- gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
- }
-!endif
-!if $(BUILD_SHELL) == TRUE
- ShellPkg/Application/Shell/Shell.inf {
- <LibraryClasses>
- ShellCommandLib|ShellPkg/Library/UefiShellCommandLib/UefiShellCommandLib.inf
- NULL|ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellLevel3CommandsLib/UefiShellLevel3CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf
-!if $(NETWORK_IP6_ENABLE) == TRUE
- NULL|ShellPkg/Library/UefiShellNetwork2CommandsLib/UefiShellNetwork2CommandsLib.inf
-!endif
- HandleParsingLib|ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf
- PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
- BcfgCommandLib|ShellPkg/Library/UefiShellBcfgCommandLib/UefiShellBcfgCommandLib.inf
-
- <PcdsFixedAtBuild>
- gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0xFF
- gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
- gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|8000
- }
-!endif
+!include OvmfPkg/Include/Dsc/ShellComponents.dsc.inc
!if $(SECURE_BOOT_ENABLE) == TRUE
SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigDxe.inf
--
2.43.1
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#115505): https://edk2.groups.io/g/devel/message/115505
Mute This Topic: https://groups.io/mt/104370204/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-
^ permalink raw reply related [flat|nested] 21+ messages in thread
* [edk2-devel] [PATCH v2 02/12] OvmfPkg: add ShellLibs.dsc.inc
2024-02-15 10:24 [edk2-devel] [PATCH v2 00/12] OvmfPkg: tweak shell builds Gerd Hoffmann
2024-02-15 10:24 ` [edk2-devel] [PATCH v2 01/12] OvmfPkg: add ShellComponents.dsc.inc Gerd Hoffmann
@ 2024-02-15 10:24 ` Gerd Hoffmann
2024-02-16 17:29 ` Laszlo Ersek
2024-02-15 10:24 ` [edk2-devel] [PATCH v2 03/12] OvmfPkg: add ShellDxe.fdf.inc Gerd Hoffmann
` (9 subsequent siblings)
11 siblings, 1 reply; 21+ messages in thread
From: Gerd Hoffmann @ 2024-02-15 10:24 UTC (permalink / raw)
To: devel
Cc: Jiewen Yao, Gerd Hoffmann, Laszlo Ersek, Min Xu, Tom Lendacky,
Oliver Steffen, Erdem Aktas, Ard Biesheuvel, Michael Roth
Move EFI Shell libraries from OvmfPkgX64.dsc to
the new ShellComponents.dsc.inc include file.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
OvmfPkg/Include/Dsc/ShellLibs.dsc.inc | 10 ++++++++++
OvmfPkg/OvmfPkgX64.dsc | 4 +---
2 files changed, 11 insertions(+), 3 deletions(-)
create mode 100644 OvmfPkg/Include/Dsc/ShellLibs.dsc.inc
diff --git a/OvmfPkg/Include/Dsc/ShellLibs.dsc.inc b/OvmfPkg/Include/Dsc/ShellLibs.dsc.inc
new file mode 100644
index 000000000000..f4551ec84aeb
--- /dev/null
+++ b/OvmfPkg/Include/Dsc/ShellLibs.dsc.inc
@@ -0,0 +1,10 @@
+##
+# SPDX-License-Identifier: BSD-2-Clause-Patent
+##
+
+!if $(BUILD_SHELL) == TRUE
+
+[LibraryClasses]
+ ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
+
+!endif
diff --git a/OvmfPkg/OvmfPkgX64.dsc b/OvmfPkg/OvmfPkgX64.dsc
index 043b0a7a67e0..56c920168d25 100644
--- a/OvmfPkg/OvmfPkgX64.dsc
+++ b/OvmfPkg/OvmfPkgX64.dsc
@@ -258,9 +258,6 @@ [LibraryClasses]
TlsLib|CryptoPkg/Library/TlsLib/TlsLib.inf
!endif
-!if $(BUILD_SHELL) == TRUE
- ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
-!endif
ShellCEntryLib|ShellPkg/Library/UefiShellCEntryLib/UefiShellCEntryLib.inf
S3BootScriptLib|MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf
@@ -268,6 +265,7 @@ [LibraryClasses]
OrderedCollectionLib|MdePkg/Library/BaseOrderedCollectionRedBlackTreeLib/BaseOrderedCollectionRedBlackTreeLib.inf
!include OvmfPkg/Include/Dsc/OvmfTpmLibs.dsc.inc
+!include OvmfPkg/Include/Dsc/ShellLibs.dsc.inc
[LibraryClasses.common]
BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
--
2.43.1
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#115509): https://edk2.groups.io/g/devel/message/115509
Mute This Topic: https://groups.io/mt/104370208/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-
^ permalink raw reply related [flat|nested] 21+ messages in thread
* Re: [edk2-devel] [PATCH v2 02/12] OvmfPkg: add ShellLibs.dsc.inc
2024-02-15 10:24 ` [edk2-devel] [PATCH v2 02/12] OvmfPkg: add ShellLibs.dsc.inc Gerd Hoffmann
@ 2024-02-16 17:29 ` Laszlo Ersek
0 siblings, 0 replies; 21+ messages in thread
From: Laszlo Ersek @ 2024-02-16 17:29 UTC (permalink / raw)
To: devel, kraxel
Cc: Jiewen Yao, Min Xu, Tom Lendacky, Oliver Steffen, Erdem Aktas,
Ard Biesheuvel, Michael Roth
On 2/15/24 11:24, Gerd Hoffmann wrote:
> Move EFI Shell libraries from OvmfPkgX64.dsc to
> the new ShellComponents.dsc.inc include file.
>
> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
> ---
> OvmfPkg/Include/Dsc/ShellLibs.dsc.inc | 10 ++++++++++
> OvmfPkg/OvmfPkgX64.dsc | 4 +---
> 2 files changed, 11 insertions(+), 3 deletions(-)
> create mode 100644 OvmfPkg/Include/Dsc/ShellLibs.dsc.inc
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
>
> diff --git a/OvmfPkg/Include/Dsc/ShellLibs.dsc.inc b/OvmfPkg/Include/Dsc/ShellLibs.dsc.inc
> new file mode 100644
> index 000000000000..f4551ec84aeb
> --- /dev/null
> +++ b/OvmfPkg/Include/Dsc/ShellLibs.dsc.inc
> @@ -0,0 +1,10 @@
> +##
> +# SPDX-License-Identifier: BSD-2-Clause-Patent
> +##
> +
> +!if $(BUILD_SHELL) == TRUE
> +
> +[LibraryClasses]
> + ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
> +
> +!endif
> diff --git a/OvmfPkg/OvmfPkgX64.dsc b/OvmfPkg/OvmfPkgX64.dsc
> index 043b0a7a67e0..56c920168d25 100644
> --- a/OvmfPkg/OvmfPkgX64.dsc
> +++ b/OvmfPkg/OvmfPkgX64.dsc
> @@ -258,9 +258,6 @@ [LibraryClasses]
> TlsLib|CryptoPkg/Library/TlsLib/TlsLib.inf
> !endif
>
> -!if $(BUILD_SHELL) == TRUE
> - ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
> -!endif
> ShellCEntryLib|ShellPkg/Library/UefiShellCEntryLib/UefiShellCEntryLib.inf
>
> S3BootScriptLib|MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf
> @@ -268,6 +265,7 @@ [LibraryClasses]
> OrderedCollectionLib|MdePkg/Library/BaseOrderedCollectionRedBlackTreeLib/BaseOrderedCollectionRedBlackTreeLib.inf
>
> !include OvmfPkg/Include/Dsc/OvmfTpmLibs.dsc.inc
> +!include OvmfPkg/Include/Dsc/ShellLibs.dsc.inc
>
> [LibraryClasses.common]
> BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#115546): https://edk2.groups.io/g/devel/message/115546
Mute This Topic: https://groups.io/mt/104370208/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-
^ permalink raw reply [flat|nested] 21+ messages in thread
* [edk2-devel] [PATCH v2 03/12] OvmfPkg: add ShellDxe.fdf.inc
2024-02-15 10:24 [edk2-devel] [PATCH v2 00/12] OvmfPkg: tweak shell builds Gerd Hoffmann
2024-02-15 10:24 ` [edk2-devel] [PATCH v2 01/12] OvmfPkg: add ShellComponents.dsc.inc Gerd Hoffmann
2024-02-15 10:24 ` [edk2-devel] [PATCH v2 02/12] OvmfPkg: add ShellLibs.dsc.inc Gerd Hoffmann
@ 2024-02-15 10:24 ` Gerd Hoffmann
2024-02-15 10:24 ` [edk2-devel] [PATCH v2 04/12] OvmfPkg: Shell*.inc: allow building without network support Gerd Hoffmann
` (8 subsequent siblings)
11 siblings, 0 replies; 21+ messages in thread
From: Gerd Hoffmann @ 2024-02-15 10:24 UTC (permalink / raw)
To: devel
Cc: Jiewen Yao, Gerd Hoffmann, Laszlo Ersek, Min Xu, Tom Lendacky,
Oliver Steffen, Erdem Aktas, Ard Biesheuvel, Michael Roth
Move EFI Shell firmware volume files to
the new ShellDxe.fdf.inc file.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
---
OvmfPkg/OvmfPkgX64.fdf | 11 ++---------
OvmfPkg/Include/Fdf/ShellDxe.fdf.inc | 14 ++++++++++++++
2 files changed, 16 insertions(+), 9 deletions(-)
create mode 100644 OvmfPkg/Include/Fdf/ShellDxe.fdf.inc
diff --git a/OvmfPkg/OvmfPkgX64.fdf b/OvmfPkg/OvmfPkgX64.fdf
index f47ab1727e4c..eb3fb90cb8b6 100644
--- a/OvmfPkg/OvmfPkgX64.fdf
+++ b/OvmfPkg/OvmfPkgX64.fdf
@@ -319,15 +319,6 @@ [FV.DXEFV]
INF MdeModulePkg/Universal/Disk/UdfDxe/UdfDxe.inf
INF OvmfPkg/VirtioFsDxe/VirtioFsDxe.inf
-!if $(BUILD_SHELL) == TRUE && $(TOOL_CHAIN_TAG) != "XCODE5"
-INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf
-INF ShellPkg/DynamicCommand/HttpDynamicCommand/HttpDynamicCommand.inf
-INF OvmfPkg/LinuxInitrdDynamicShellCommand/LinuxInitrdDynamicShellCommand.inf
-!endif
-!if $(BUILD_SHELL) == TRUE
-INF ShellPkg/Application/Shell/Shell.inf
-!endif
-
INF MdeModulePkg/Logo/LogoDxe.inf
INF OvmfPkg/TdxDxe/TdxDxe.inf
@@ -402,6 +393,8 @@ [FV.DXEFV]
#
!include OvmfPkg/Include/Fdf/OvmfTpmDxe.fdf.inc
+!include OvmfPkg/Include/Fdf/ShellDxe.fdf.inc
+
################################################################################
[FV.FVMAIN_COMPACT]
diff --git a/OvmfPkg/Include/Fdf/ShellDxe.fdf.inc b/OvmfPkg/Include/Fdf/ShellDxe.fdf.inc
new file mode 100644
index 000000000000..0935f06fa368
--- /dev/null
+++ b/OvmfPkg/Include/Fdf/ShellDxe.fdf.inc
@@ -0,0 +1,14 @@
+##
+# SPDX-License-Identifier: BSD-2-Clause-Patent
+##
+
+!if $(BUILD_SHELL) == TRUE
+
+!if $(TOOL_CHAIN_TAG) != "XCODE5"
+INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf
+INF ShellPkg/DynamicCommand/HttpDynamicCommand/HttpDynamicCommand.inf
+INF OvmfPkg/LinuxInitrdDynamicShellCommand/LinuxInitrdDynamicShellCommand.inf
+!endif
+
+INF ShellPkg/Application/Shell/Shell.inf
+!endif
--
2.43.1
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#115506): https://edk2.groups.io/g/devel/message/115506
Mute This Topic: https://groups.io/mt/104370205/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-
^ permalink raw reply related [flat|nested] 21+ messages in thread
* [edk2-devel] [PATCH v2 04/12] OvmfPkg: Shell*.inc: allow building without network support
2024-02-15 10:24 [edk2-devel] [PATCH v2 00/12] OvmfPkg: tweak shell builds Gerd Hoffmann
` (2 preceding siblings ...)
2024-02-15 10:24 ` [edk2-devel] [PATCH v2 03/12] OvmfPkg: add ShellDxe.fdf.inc Gerd Hoffmann
@ 2024-02-15 10:24 ` Gerd Hoffmann
2024-02-16 17:34 ` Laszlo Ersek
2024-02-15 10:24 ` [edk2-devel] [PATCH v2 05/12] OvmfPkg: ShellDxe.fdf.inc: add VariablePolicyDynamicCommand to FV Gerd Hoffmann
` (7 subsequent siblings)
11 siblings, 1 reply; 21+ messages in thread
From: Gerd Hoffmann @ 2024-02-15 10:24 UTC (permalink / raw)
To: devel
Cc: Jiewen Yao, Gerd Hoffmann, Laszlo Ersek, Min Xu, Tom Lendacky,
Oliver Steffen, Erdem Aktas, Ard Biesheuvel, Michael Roth
Add NETWORK_ENABLE conditionals for the components
which need network support.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
OvmfPkg/Include/Dsc/ShellComponents.dsc.inc | 6 ++++++
OvmfPkg/Include/Fdf/ShellDxe.fdf.inc | 2 ++
2 files changed, 8 insertions(+)
diff --git a/OvmfPkg/Include/Dsc/ShellComponents.dsc.inc b/OvmfPkg/Include/Dsc/ShellComponents.dsc.inc
index 1a3a349a9de5..4075688e416d 100644
--- a/OvmfPkg/Include/Dsc/ShellComponents.dsc.inc
+++ b/OvmfPkg/Include/Dsc/ShellComponents.dsc.inc
@@ -5,6 +5,7 @@
!if $(BUILD_SHELL) == TRUE
!if $(TOOL_CHAIN_TAG) != "XCODE5"
+!if $(NETWORK_ENABLE) == TRUE
ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf {
<PcdsFixedAtBuild>
gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
@@ -13,6 +14,7 @@
<PcdsFixedAtBuild>
gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
}
+!endif
ShellPkg/DynamicCommand/VariablePolicyDynamicCommand/VariablePolicyDynamicCommand.inf {
<PcdsFixedAtBuild>
gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
@@ -32,9 +34,13 @@
NULL|ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.inf
NULL|ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf
NULL|ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf
+!if $(NETWORK_ENABLE) == TRUE
+!if $(NETWORK_IP4_ENABLE) == TRUE
NULL|ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf
+!endif
!if $(NETWORK_IP6_ENABLE) == TRUE
NULL|ShellPkg/Library/UefiShellNetwork2CommandsLib/UefiShellNetwork2CommandsLib.inf
+!endif
!endif
HandleParsingLib|ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf
PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
diff --git a/OvmfPkg/Include/Fdf/ShellDxe.fdf.inc b/OvmfPkg/Include/Fdf/ShellDxe.fdf.inc
index 0935f06fa368..6536c30c5413 100644
--- a/OvmfPkg/Include/Fdf/ShellDxe.fdf.inc
+++ b/OvmfPkg/Include/Fdf/ShellDxe.fdf.inc
@@ -5,8 +5,10 @@
!if $(BUILD_SHELL) == TRUE
!if $(TOOL_CHAIN_TAG) != "XCODE5"
+!if $(NETWORK_ENABLE) == TRUE
INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf
INF ShellPkg/DynamicCommand/HttpDynamicCommand/HttpDynamicCommand.inf
+!endif
INF OvmfPkg/LinuxInitrdDynamicShellCommand/LinuxInitrdDynamicShellCommand.inf
!endif
--
2.43.1
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#115508): https://edk2.groups.io/g/devel/message/115508
Mute This Topic: https://groups.io/mt/104370207/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-
^ permalink raw reply related [flat|nested] 21+ messages in thread
* Re: [edk2-devel] [PATCH v2 04/12] OvmfPkg: Shell*.inc: allow building without network support
2024-02-15 10:24 ` [edk2-devel] [PATCH v2 04/12] OvmfPkg: Shell*.inc: allow building without network support Gerd Hoffmann
@ 2024-02-16 17:34 ` Laszlo Ersek
0 siblings, 0 replies; 21+ messages in thread
From: Laszlo Ersek @ 2024-02-16 17:34 UTC (permalink / raw)
To: devel, kraxel
Cc: Jiewen Yao, Min Xu, Tom Lendacky, Oliver Steffen, Erdem Aktas,
Ard Biesheuvel, Michael Roth
On 2/15/24 11:24, Gerd Hoffmann wrote:
> Add NETWORK_ENABLE conditionals for the components
> which need network support.
>
> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
> ---
> OvmfPkg/Include/Dsc/ShellComponents.dsc.inc | 6 ++++++
> OvmfPkg/Include/Fdf/ShellDxe.fdf.inc | 2 ++
> 2 files changed, 8 insertions(+)
>
> diff --git a/OvmfPkg/Include/Dsc/ShellComponents.dsc.inc b/OvmfPkg/Include/Dsc/ShellComponents.dsc.inc
> index 1a3a349a9de5..4075688e416d 100644
> --- a/OvmfPkg/Include/Dsc/ShellComponents.dsc.inc
> +++ b/OvmfPkg/Include/Dsc/ShellComponents.dsc.inc
> @@ -5,6 +5,7 @@
> !if $(BUILD_SHELL) == TRUE
>
> !if $(TOOL_CHAIN_TAG) != "XCODE5"
> +!if $(NETWORK_ENABLE) == TRUE
> ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf {
> <PcdsFixedAtBuild>
> gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
> @@ -13,6 +14,7 @@
> <PcdsFixedAtBuild>
> gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
> }
> +!endif
> ShellPkg/DynamicCommand/VariablePolicyDynamicCommand/VariablePolicyDynamicCommand.inf {
> <PcdsFixedAtBuild>
> gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
> @@ -32,9 +34,13 @@
> NULL|ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.inf
> NULL|ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf
> NULL|ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf
> +!if $(NETWORK_ENABLE) == TRUE
> +!if $(NETWORK_IP4_ENABLE) == TRUE
> NULL|ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf
> +!endif
> !if $(NETWORK_IP6_ENABLE) == TRUE
> NULL|ShellPkg/Library/UefiShellNetwork2CommandsLib/UefiShellNetwork2CommandsLib.inf
> +!endif
> !endif
> HandleParsingLib|ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf
> PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
> diff --git a/OvmfPkg/Include/Fdf/ShellDxe.fdf.inc b/OvmfPkg/Include/Fdf/ShellDxe.fdf.inc
> index 0935f06fa368..6536c30c5413 100644
> --- a/OvmfPkg/Include/Fdf/ShellDxe.fdf.inc
> +++ b/OvmfPkg/Include/Fdf/ShellDxe.fdf.inc
> @@ -5,8 +5,10 @@
> !if $(BUILD_SHELL) == TRUE
>
> !if $(TOOL_CHAIN_TAG) != "XCODE5"
> +!if $(NETWORK_ENABLE) == TRUE
> INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf
> INF ShellPkg/DynamicCommand/HttpDynamicCommand/HttpDynamicCommand.inf
> +!endif
> INF OvmfPkg/LinuxInitrdDynamicShellCommand/LinuxInitrdDynamicShellCommand.inf
> !endif
>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#115547): https://edk2.groups.io/g/devel/message/115547
Mute This Topic: https://groups.io/mt/104370207/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-
^ permalink raw reply [flat|nested] 21+ messages in thread
* [edk2-devel] [PATCH v2 05/12] OvmfPkg: ShellDxe.fdf.inc: add VariablePolicyDynamicCommand to FV
2024-02-15 10:24 [edk2-devel] [PATCH v2 00/12] OvmfPkg: tweak shell builds Gerd Hoffmann
` (3 preceding siblings ...)
2024-02-15 10:24 ` [edk2-devel] [PATCH v2 04/12] OvmfPkg: Shell*.inc: allow building without network support Gerd Hoffmann
@ 2024-02-15 10:24 ` Gerd Hoffmann
2024-02-15 10:24 ` [edk2-devel] [PATCH v2 06/12] OvmfPkg: switch OvmfPkgIa32 to new shell include files Gerd Hoffmann
` (6 subsequent siblings)
11 siblings, 0 replies; 21+ messages in thread
From: Gerd Hoffmann @ 2024-02-15 10:24 UTC (permalink / raw)
To: devel
Cc: Jiewen Yao, Gerd Hoffmann, Laszlo Ersek, Min Xu, Tom Lendacky,
Oliver Steffen, Erdem Aktas, Ard Biesheuvel, Michael Roth
Needed to make the new 'varpolicy' EFI shell command
actually available in the OVMF firmware builds.
Fixes: fe6cd1c18721 ("OvmfPkg: Add varpolicy shell command")
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
---
OvmfPkg/Include/Fdf/ShellDxe.fdf.inc | 1 +
1 file changed, 1 insertion(+)
diff --git a/OvmfPkg/Include/Fdf/ShellDxe.fdf.inc b/OvmfPkg/Include/Fdf/ShellDxe.fdf.inc
index 6536c30c5413..3081ac41780a 100644
--- a/OvmfPkg/Include/Fdf/ShellDxe.fdf.inc
+++ b/OvmfPkg/Include/Fdf/ShellDxe.fdf.inc
@@ -9,6 +9,7 @@
INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf
INF ShellPkg/DynamicCommand/HttpDynamicCommand/HttpDynamicCommand.inf
!endif
+INF ShellPkg/DynamicCommand/VariablePolicyDynamicCommand/VariablePolicyDynamicCommand.inf
INF OvmfPkg/LinuxInitrdDynamicShellCommand/LinuxInitrdDynamicShellCommand.inf
!endif
--
2.43.1
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#115512): https://edk2.groups.io/g/devel/message/115512
Mute This Topic: https://groups.io/mt/104370211/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-
^ permalink raw reply related [flat|nested] 21+ messages in thread
* [edk2-devel] [PATCH v2 06/12] OvmfPkg: switch OvmfPkgIa32 to new shell include files
2024-02-15 10:24 [edk2-devel] [PATCH v2 00/12] OvmfPkg: tweak shell builds Gerd Hoffmann
` (4 preceding siblings ...)
2024-02-15 10:24 ` [edk2-devel] [PATCH v2 05/12] OvmfPkg: ShellDxe.fdf.inc: add VariablePolicyDynamicCommand to FV Gerd Hoffmann
@ 2024-02-15 10:24 ` Gerd Hoffmann
2024-02-15 10:24 ` [edk2-devel] [PATCH v2 07/12] OvmfPkg: switch OvmfPkgIa32X64 " Gerd Hoffmann
` (5 subsequent siblings)
11 siblings, 0 replies; 21+ messages in thread
From: Gerd Hoffmann @ 2024-02-15 10:24 UTC (permalink / raw)
To: devel
Cc: Jiewen Yao, Gerd Hoffmann, Laszlo Ersek, Min Xu, Tom Lendacky,
Oliver Steffen, Erdem Aktas, Ard Biesheuvel, Michael Roth
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
---
OvmfPkg/OvmfPkgIa32.dsc | 47 ++---------------------------------------
OvmfPkg/OvmfPkgIa32.fdf | 11 ++--------
2 files changed, 4 insertions(+), 54 deletions(-)
diff --git a/OvmfPkg/OvmfPkgIa32.dsc b/OvmfPkg/OvmfPkgIa32.dsc
index 28379961a78e..713f08764b07 100644
--- a/OvmfPkg/OvmfPkgIa32.dsc
+++ b/OvmfPkg/OvmfPkgIa32.dsc
@@ -237,9 +237,6 @@ [LibraryClasses]
TlsLib|CryptoPkg/Library/TlsLib/TlsLib.inf
!endif
-!if $(BUILD_SHELL) == TRUE
- ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
-!endif
ShellCEntryLib|ShellPkg/Library/UefiShellCEntryLib/UefiShellCEntryLib.inf
S3BootScriptLib|MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf
@@ -247,6 +244,7 @@ [LibraryClasses]
OrderedCollectionLib|MdePkg/Library/BaseOrderedCollectionRedBlackTreeLib/BaseOrderedCollectionRedBlackTreeLib.inf
!include OvmfPkg/Include/Dsc/OvmfTpmLibs.dsc.inc
+!include OvmfPkg/Include/Dsc/ShellLibs.dsc.inc
[LibraryClasses.common]
BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
@@ -874,48 +872,7 @@ [Components]
MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf
MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf
-!if $(TOOL_CHAIN_TAG) != "XCODE5" && $(BUILD_SHELL) == TRUE
- ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf {
- <PcdsFixedAtBuild>
- gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
- }
- ShellPkg/DynamicCommand/HttpDynamicCommand/HttpDynamicCommand.inf {
- <PcdsFixedAtBuild>
- gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
- }
- ShellPkg/DynamicCommand/VariablePolicyDynamicCommand/VariablePolicyDynamicCommand.inf {
- <PcdsFixedAtBuild>
- gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
- }
- OvmfPkg/LinuxInitrdDynamicShellCommand/LinuxInitrdDynamicShellCommand.inf {
- <PcdsFixedAtBuild>
- gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
- }
-!endif
-!if $(BUILD_SHELL) == TRUE
- ShellPkg/Application/Shell/Shell.inf {
- <LibraryClasses>
- ShellCommandLib|ShellPkg/Library/UefiShellCommandLib/UefiShellCommandLib.inf
- NULL|ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellLevel3CommandsLib/UefiShellLevel3CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf
-!if $(NETWORK_IP6_ENABLE) == TRUE
- NULL|ShellPkg/Library/UefiShellNetwork2CommandsLib/UefiShellNetwork2CommandsLib.inf
-!endif
- HandleParsingLib|ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf
- PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
- BcfgCommandLib|ShellPkg/Library/UefiShellBcfgCommandLib/UefiShellBcfgCommandLib.inf
-
- <PcdsFixedAtBuild>
- gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0xFF
- gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
- gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|8000
- }
-!endif
+!include OvmfPkg/Include/Dsc/ShellComponents.dsc.inc
!if $(SECURE_BOOT_ENABLE) == TRUE
SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigDxe.inf
diff --git a/OvmfPkg/OvmfPkgIa32.fdf b/OvmfPkg/OvmfPkgIa32.fdf
index 501b4de4695e..6c56c5e53f21 100644
--- a/OvmfPkg/OvmfPkgIa32.fdf
+++ b/OvmfPkg/OvmfPkgIa32.fdf
@@ -293,15 +293,6 @@ [FV.DXEFV]
INF MdeModulePkg/Universal/Disk/UdfDxe/UdfDxe.inf
INF OvmfPkg/VirtioFsDxe/VirtioFsDxe.inf
-!if $(BUILD_SHELL) == TRUE && $(TOOL_CHAIN_TAG) != "XCODE5"
-INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf
-INF ShellPkg/DynamicCommand/HttpDynamicCommand/HttpDynamicCommand.inf
-INF OvmfPkg/LinuxInitrdDynamicShellCommand/LinuxInitrdDynamicShellCommand.inf
-!endif
-!if $(BUILD_SHELL) == TRUE
-INF ShellPkg/Application/Shell/Shell.inf
-!endif
-
INF MdeModulePkg/Logo/LogoDxe.inf
#
@@ -361,6 +352,8 @@ [FV.DXEFV]
#
!include OvmfPkg/Include/Fdf/OvmfTpmDxe.fdf.inc
+!include OvmfPkg/Include/Fdf/ShellDxe.fdf.inc
+
!if $(LOAD_X64_ON_IA32_ENABLE) == TRUE
INF OvmfPkg/CompatImageLoaderDxe/CompatImageLoaderDxe.inf
!endif
--
2.43.1
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#115511): https://edk2.groups.io/g/devel/message/115511
Mute This Topic: https://groups.io/mt/104370210/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-
^ permalink raw reply related [flat|nested] 21+ messages in thread
* [edk2-devel] [PATCH v2 07/12] OvmfPkg: switch OvmfPkgIa32X64 to new shell include files
2024-02-15 10:24 [edk2-devel] [PATCH v2 00/12] OvmfPkg: tweak shell builds Gerd Hoffmann
` (5 preceding siblings ...)
2024-02-15 10:24 ` [edk2-devel] [PATCH v2 06/12] OvmfPkg: switch OvmfPkgIa32 to new shell include files Gerd Hoffmann
@ 2024-02-15 10:24 ` Gerd Hoffmann
2024-02-15 10:24 ` [edk2-devel] [PATCH v2 08/12] OvmfPkg: switch AmdSevX64 " Gerd Hoffmann
` (4 subsequent siblings)
11 siblings, 0 replies; 21+ messages in thread
From: Gerd Hoffmann @ 2024-02-15 10:24 UTC (permalink / raw)
To: devel
Cc: Jiewen Yao, Gerd Hoffmann, Laszlo Ersek, Min Xu, Tom Lendacky,
Oliver Steffen, Erdem Aktas, Ard Biesheuvel, Michael Roth
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
---
OvmfPkg/OvmfPkgIa32X64.dsc | 47 ++------------------------------------
OvmfPkg/OvmfPkgIa32X64.fdf | 11 ++-------
2 files changed, 4 insertions(+), 54 deletions(-)
diff --git a/OvmfPkg/OvmfPkgIa32X64.dsc b/OvmfPkg/OvmfPkgIa32X64.dsc
index 5e9eee628aea..90b15dc27097 100644
--- a/OvmfPkg/OvmfPkgIa32X64.dsc
+++ b/OvmfPkg/OvmfPkgIa32X64.dsc
@@ -242,9 +242,6 @@ [LibraryClasses]
TlsLib|CryptoPkg/Library/TlsLib/TlsLib.inf
!endif
-!if $(BUILD_SHELL) == TRUE
- ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
-!endif
ShellCEntryLib|ShellPkg/Library/UefiShellCEntryLib/UefiShellCEntryLib.inf
S3BootScriptLib|MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf
@@ -252,6 +249,7 @@ [LibraryClasses]
OrderedCollectionLib|MdePkg/Library/BaseOrderedCollectionRedBlackTreeLib/BaseOrderedCollectionRedBlackTreeLib.inf
!include OvmfPkg/Include/Dsc/OvmfTpmLibs.dsc.inc
+!include OvmfPkg/Include/Dsc/ShellLibs.dsc.inc
[LibraryClasses.common]
BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
@@ -888,48 +886,7 @@ [Components.X64]
MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf
MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf
-!if $(TOOL_CHAIN_TAG) != "XCODE5" && $(BUILD_SHELL) == TRUE
- ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf {
- <PcdsFixedAtBuild>
- gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
- }
- ShellPkg/DynamicCommand/HttpDynamicCommand/HttpDynamicCommand.inf {
- <PcdsFixedAtBuild>
- gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
- }
- ShellPkg/DynamicCommand/VariablePolicyDynamicCommand/VariablePolicyDynamicCommand.inf {
- <PcdsFixedAtBuild>
- gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
- }
- OvmfPkg/LinuxInitrdDynamicShellCommand/LinuxInitrdDynamicShellCommand.inf {
- <PcdsFixedAtBuild>
- gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
- }
-!endif
-!if $(BUILD_SHELL) == TRUE
- ShellPkg/Application/Shell/Shell.inf {
- <LibraryClasses>
- ShellCommandLib|ShellPkg/Library/UefiShellCommandLib/UefiShellCommandLib.inf
- NULL|ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellLevel3CommandsLib/UefiShellLevel3CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf
-!if $(NETWORK_IP6_ENABLE) == TRUE
- NULL|ShellPkg/Library/UefiShellNetwork2CommandsLib/UefiShellNetwork2CommandsLib.inf
-!endif
- HandleParsingLib|ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf
- PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
- BcfgCommandLib|ShellPkg/Library/UefiShellBcfgCommandLib/UefiShellBcfgCommandLib.inf
-
- <PcdsFixedAtBuild>
- gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0xFF
- gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
- gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|8000
- }
-!endif
+!include OvmfPkg/Include/Dsc/ShellComponents.dsc.inc
!if $(SECURE_BOOT_ENABLE) == TRUE
SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigDxe.inf
diff --git a/OvmfPkg/OvmfPkgIa32X64.fdf b/OvmfPkg/OvmfPkgIa32X64.fdf
index 74cfb58f06cd..ee8068ad55dc 100644
--- a/OvmfPkg/OvmfPkgIa32X64.fdf
+++ b/OvmfPkg/OvmfPkgIa32X64.fdf
@@ -294,15 +294,6 @@ [FV.DXEFV]
INF MdeModulePkg/Universal/Disk/UdfDxe/UdfDxe.inf
INF OvmfPkg/VirtioFsDxe/VirtioFsDxe.inf
-!if $(BUILD_SHELL) == TRUE && $(TOOL_CHAIN_TAG) != "XCODE5"
-INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf
-INF ShellPkg/DynamicCommand/HttpDynamicCommand/HttpDynamicCommand.inf
-INF OvmfPkg/LinuxInitrdDynamicShellCommand/LinuxInitrdDynamicShellCommand.inf
-!endif
-!if $(BUILD_SHELL) == TRUE
-INF ShellPkg/Application/Shell/Shell.inf
-!endif
-
INF MdeModulePkg/Logo/LogoDxe.inf
#
@@ -368,6 +359,8 @@ [FV.DXEFV]
#
!include OvmfPkg/Include/Fdf/OvmfTpmDxe.fdf.inc
+!include OvmfPkg/Include/Fdf/ShellDxe.fdf.inc
+
################################################################################
[FV.FVMAIN_COMPACT]
--
2.43.1
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#115510): https://edk2.groups.io/g/devel/message/115510
Mute This Topic: https://groups.io/mt/104370209/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-
^ permalink raw reply related [flat|nested] 21+ messages in thread
* [edk2-devel] [PATCH v2 08/12] OvmfPkg: switch AmdSevX64 to new shell include files
2024-02-15 10:24 [edk2-devel] [PATCH v2 00/12] OvmfPkg: tweak shell builds Gerd Hoffmann
` (6 preceding siblings ...)
2024-02-15 10:24 ` [edk2-devel] [PATCH v2 07/12] OvmfPkg: switch OvmfPkgIa32X64 " Gerd Hoffmann
@ 2024-02-15 10:24 ` Gerd Hoffmann
2024-02-16 17:38 ` Laszlo Ersek
2024-02-15 10:25 ` [edk2-devel] [PATCH v2 09/12] OvmfPkg: switch IntelTdxX64 " Gerd Hoffmann
` (3 subsequent siblings)
11 siblings, 1 reply; 21+ messages in thread
From: Gerd Hoffmann @ 2024-02-15 10:24 UTC (permalink / raw)
To: devel
Cc: Jiewen Yao, Gerd Hoffmann, Laszlo Ersek, Min Xu, Tom Lendacky,
Oliver Steffen, Erdem Aktas, Ard Biesheuvel, Michael Roth
Note that AmdSevX64 is compiled without network support, so thanks to
the network conditionals in the include files the build result (network
shell commands excluded) should be identical before and after the patch.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Acked-by: Laszlo Ersek <lersek@redhat.com>
---
OvmfPkg/AmdSev/AmdSevX64.dsc | 30 ++----------------------------
OvmfPkg/AmdSev/AmdSevX64.fdf | 8 ++------
2 files changed, 4 insertions(+), 34 deletions(-)
diff --git a/OvmfPkg/AmdSev/AmdSevX64.dsc b/OvmfPkg/AmdSev/AmdSevX64.dsc
index a31a89344a60..60e916b4fd18 100644
--- a/OvmfPkg/AmdSev/AmdSevX64.dsc
+++ b/OvmfPkg/AmdSev/AmdSevX64.dsc
@@ -194,16 +194,14 @@ [LibraryClasses]
VariablePolicyHelperLib|MdeModulePkg/Library/VariablePolicyHelperLib/VariablePolicyHelperLib.inf
VariableFlashInfoLib|MdeModulePkg/Library/BaseVariableFlashInfoLib/BaseVariableFlashInfoLib.inf
-!if $(BUILD_SHELL) == TRUE
- ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
ShellCEntryLib|ShellPkg/Library/UefiShellCEntryLib/UefiShellCEntryLib.inf
-!endif
SmbusLib|MdePkg/Library/BaseSmbusLibNull/BaseSmbusLibNull.inf
OrderedCollectionLib|MdePkg/Library/BaseOrderedCollectionRedBlackTreeLib/BaseOrderedCollectionRedBlackTreeLib.inf
S3BootScriptLib|MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf
!include OvmfPkg/Include/Dsc/OvmfTpmLibs.dsc.inc
+!include OvmfPkg/Include/Dsc/ShellLibs.dsc.inc
[LibraryClasses.common]
BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
@@ -729,34 +727,10 @@ [Components]
MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf
MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf
-!if $(TOOL_CHAIN_TAG) != "XCODE5" && $(BUILD_SHELL) == TRUE
- OvmfPkg/LinuxInitrdDynamicShellCommand/LinuxInitrdDynamicShellCommand.inf {
- <PcdsFixedAtBuild>
- gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
- }
-!endif
OvmfPkg/AmdSev/SecretDxe/SecretDxe.inf
OvmfPkg/AmdSev/Grub/Grub.inf
-!if $(BUILD_SHELL) == TRUE
- ShellPkg/Application/Shell/Shell.inf {
- <LibraryClasses>
- ShellCommandLib|ShellPkg/Library/UefiShellCommandLib/UefiShellCommandLib.inf
- NULL|ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellLevel3CommandsLib/UefiShellLevel3CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf
- HandleParsingLib|ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf
- PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
- BcfgCommandLib|ShellPkg/Library/UefiShellBcfgCommandLib/UefiShellBcfgCommandLib.inf
- <PcdsFixedAtBuild>
- gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0xFF
- gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
- gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|8000
- }
-!endif
+!include OvmfPkg/Include/Dsc/ShellComponents.dsc.inc
OvmfPkg/PlatformDxe/Platform.inf
OvmfPkg/AmdSevDxe/AmdSevDxe.inf {
diff --git a/OvmfPkg/AmdSev/AmdSevX64.fdf b/OvmfPkg/AmdSev/AmdSevX64.fdf
index 9dd409596780..b84981e7ba04 100644
--- a/OvmfPkg/AmdSev/AmdSevX64.fdf
+++ b/OvmfPkg/AmdSev/AmdSevX64.fdf
@@ -277,14 +277,8 @@ [FV.DXEFV]
INF FatPkg/EnhancedFatDxe/Fat.inf
INF MdeModulePkg/Universal/Disk/UdfDxe/UdfDxe.inf
-!if $(TOOL_CHAIN_TAG) != "XCODE5" && $(BUILD_SHELL) == TRUE
-INF OvmfPkg/LinuxInitrdDynamicShellCommand/LinuxInitrdDynamicShellCommand.inf
-!endif
INF OvmfPkg/AmdSev/SecretDxe/SecretDxe.inf
INF OvmfPkg/AmdSev/Grub/Grub.inf
-!if $(BUILD_SHELL) == TRUE
-INF ShellPkg/Application/Shell/Shell.inf
-!endif
INF MdeModulePkg/Logo/LogoDxe.inf
@@ -320,6 +314,8 @@ [FV.DXEFV]
#
!include OvmfPkg/Include/Fdf/OvmfTpmDxe.fdf.inc
+!include OvmfPkg/Include/Fdf/ShellDxe.fdf.inc
+
################################################################################
[FV.FVMAIN_COMPACT]
--
2.43.1
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#115513): https://edk2.groups.io/g/devel/message/115513
Mute This Topic: https://groups.io/mt/104370213/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-
^ permalink raw reply related [flat|nested] 21+ messages in thread
* Re: [edk2-devel] [PATCH v2 08/12] OvmfPkg: switch AmdSevX64 to new shell include files
2024-02-15 10:24 ` [edk2-devel] [PATCH v2 08/12] OvmfPkg: switch AmdSevX64 " Gerd Hoffmann
@ 2024-02-16 17:38 ` Laszlo Ersek
0 siblings, 0 replies; 21+ messages in thread
From: Laszlo Ersek @ 2024-02-16 17:38 UTC (permalink / raw)
To: devel, kraxel
Cc: Jiewen Yao, Min Xu, Tom Lendacky, Oliver Steffen, Erdem Aktas,
Ard Biesheuvel, Michael Roth
On 2/15/24 11:24, Gerd Hoffmann wrote:
> Note that AmdSevX64 is compiled without network support, so thanks to
> the network conditionals in the include files the build result (network
> shell commands excluded) should be identical before and after the patch.
>
> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
> Acked-by: Laszlo Ersek <lersek@redhat.com>
> ---
> OvmfPkg/AmdSev/AmdSevX64.dsc | 30 ++----------------------------
> OvmfPkg/AmdSev/AmdSevX64.fdf | 8 ++------
> 2 files changed, 4 insertions(+), 34 deletions(-)
Thanks for the update.
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#115548): https://edk2.groups.io/g/devel/message/115548
Mute This Topic: https://groups.io/mt/104370213/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-
^ permalink raw reply [flat|nested] 21+ messages in thread
* [edk2-devel] [PATCH v2 09/12] OvmfPkg: switch IntelTdxX64 to new shell include files
2024-02-15 10:24 [edk2-devel] [PATCH v2 00/12] OvmfPkg: tweak shell builds Gerd Hoffmann
` (7 preceding siblings ...)
2024-02-15 10:24 ` [edk2-devel] [PATCH v2 08/12] OvmfPkg: switch AmdSevX64 " Gerd Hoffmann
@ 2024-02-15 10:25 ` Gerd Hoffmann
2024-02-16 17:40 ` Laszlo Ersek
2024-02-15 10:25 ` [edk2-devel] [PATCH v2 10/12] OvmfPkg: switch MicrovmX64 " Gerd Hoffmann
` (2 subsequent siblings)
11 siblings, 1 reply; 21+ messages in thread
From: Gerd Hoffmann @ 2024-02-15 10:25 UTC (permalink / raw)
To: devel
Cc: Jiewen Yao, Gerd Hoffmann, Laszlo Ersek, Min Xu, Tom Lendacky,
Oliver Steffen, Erdem Aktas, Ard Biesheuvel, Michael Roth
Note that IntelTdxX64 is compiled without network support, so thanks to
the network conditionals in the include files the build result (network
shell commands excluded) should be identical before and after the patch.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Acked-by: Laszlo Ersek <lersek@redhat.com>
---
OvmfPkg/IntelTdx/IntelTdxX64.dsc | 32 +++-----------------------------
OvmfPkg/IntelTdx/IntelTdxX64.fdf | 9 ++-------
2 files changed, 5 insertions(+), 36 deletions(-)
diff --git a/OvmfPkg/IntelTdx/IntelTdxX64.dsc b/OvmfPkg/IntelTdx/IntelTdxX64.dsc
index 82e3e41cfc57..7a767324ffda 100644
--- a/OvmfPkg/IntelTdx/IntelTdxX64.dsc
+++ b/OvmfPkg/IntelTdx/IntelTdxX64.dsc
@@ -201,9 +201,6 @@ [LibraryClasses]
VariablePolicyHelperLib|MdeModulePkg/Library/VariablePolicyHelperLib/VariablePolicyHelperLib.inf
VariableFlashInfoLib|MdeModulePkg/Library/BaseVariableFlashInfoLib/BaseVariableFlashInfoLib.inf
-!if $(BUILD_SHELL) == TRUE
- ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
-!endif
ShellCEntryLib|ShellPkg/Library/UefiShellCEntryLib/UefiShellCEntryLib.inf
S3BootScriptLib|MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf
SmbusLib|MdePkg/Library/BaseSmbusLibNull/BaseSmbusLibNull.inf
@@ -212,6 +209,8 @@ [LibraryClasses]
Tcg2PhysicalPresenceLib|OvmfPkg/Library/Tcg2PhysicalPresenceLibNull/DxeTcg2PhysicalPresenceLib.inf
TpmMeasurementLib|SecurityPkg/Library/DxeTpmMeasurementLib/DxeTpmMeasurementLib.inf
+!include OvmfPkg/Include/Dsc/ShellLibs.dsc.inc
+
[LibraryClasses.common]
BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
CcExitLib|OvmfPkg/Library/CcExitLib/CcExitLib.inf
@@ -717,32 +716,7 @@ [Components]
MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf
MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf
-!if $(TOOL_CHAIN_TAG) != "XCODE5" && $(BUILD_SHELL) == TRUE
- OvmfPkg/LinuxInitrdDynamicShellCommand/LinuxInitrdDynamicShellCommand.inf {
- <PcdsFixedAtBuild>
- gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
- }
-!endif
-!if $(BUILD_SHELL) == TRUE
- ShellPkg/Application/Shell/Shell.inf {
- <LibraryClasses>
- ShellCommandLib|ShellPkg/Library/UefiShellCommandLib/UefiShellCommandLib.inf
- NULL|ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellLevel3CommandsLib/UefiShellLevel3CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf
- HandleParsingLib|ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf
- PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
- BcfgCommandLib|ShellPkg/Library/UefiShellBcfgCommandLib/UefiShellBcfgCommandLib.inf
-
- <PcdsFixedAtBuild>
- gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0xFF
- gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
- gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|8000
- }
-!endif
+!include OvmfPkg/Include/Dsc/ShellComponents.dsc.inc
!if $(SECURE_BOOT_ENABLE) == TRUE
SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigDxe.inf
diff --git a/OvmfPkg/IntelTdx/IntelTdxX64.fdf b/OvmfPkg/IntelTdx/IntelTdxX64.fdf
index e844a0988d68..f3b5126254c6 100644
--- a/OvmfPkg/IntelTdx/IntelTdxX64.fdf
+++ b/OvmfPkg/IntelTdx/IntelTdxX64.fdf
@@ -307,13 +307,6 @@ [FV.NCCFV]
INF MdeModulePkg/Universal/Disk/UdfDxe/UdfDxe.inf
INF OvmfPkg/VirtioFsDxe/VirtioFsDxe.inf
-!if $(BUILD_SHELL) == TRUE && $(TOOL_CHAIN_TAG) != "XCODE5"
-INF OvmfPkg/LinuxInitrdDynamicShellCommand/LinuxInitrdDynamicShellCommand.inf
-!endif
-!if $(BUILD_SHELL) == TRUE
-INF ShellPkg/Application/Shell/Shell.inf
-!endif
-
INF MdeModulePkg/Logo/LogoDxe.inf
#
@@ -332,6 +325,8 @@ [FV.NCCFV]
INF OvmfPkg/VirtioGpuDxe/VirtioGpu.inf
INF OvmfPkg/PlatformDxe/Platform.inf
+!include OvmfPkg/Include/Fdf/ShellDxe.fdf.inc
+
################################################################################
[FV.FVMAIN_COMPACT]
--
2.43.1
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#115516): https://edk2.groups.io/g/devel/message/115516
Mute This Topic: https://groups.io/mt/104370217/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-
^ permalink raw reply related [flat|nested] 21+ messages in thread
* Re: [edk2-devel] [PATCH v2 09/12] OvmfPkg: switch IntelTdxX64 to new shell include files
2024-02-15 10:25 ` [edk2-devel] [PATCH v2 09/12] OvmfPkg: switch IntelTdxX64 " Gerd Hoffmann
@ 2024-02-16 17:40 ` Laszlo Ersek
0 siblings, 0 replies; 21+ messages in thread
From: Laszlo Ersek @ 2024-02-16 17:40 UTC (permalink / raw)
To: devel, kraxel
Cc: Jiewen Yao, Min Xu, Tom Lendacky, Oliver Steffen, Erdem Aktas,
Ard Biesheuvel, Michael Roth
On 2/15/24 11:25, Gerd Hoffmann wrote:
> Note that IntelTdxX64 is compiled without network support, so thanks to
> the network conditionals in the include files the build result (network
> shell commands excluded) should be identical before and after the patch.
>
> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
> Acked-by: Laszlo Ersek <lersek@redhat.com>
> ---
> OvmfPkg/IntelTdx/IntelTdxX64.dsc | 32 +++-----------------------------
> OvmfPkg/IntelTdx/IntelTdxX64.fdf | 9 ++-------
> 2 files changed, 5 insertions(+), 36 deletions(-)
Thanks for the commit message update here too.
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#115549): https://edk2.groups.io/g/devel/message/115549
Mute This Topic: https://groups.io/mt/104370217/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-
^ permalink raw reply [flat|nested] 21+ messages in thread
* [edk2-devel] [PATCH v2 10/12] OvmfPkg: switch MicrovmX64 to new shell include files
2024-02-15 10:24 [edk2-devel] [PATCH v2 00/12] OvmfPkg: tweak shell builds Gerd Hoffmann
` (8 preceding siblings ...)
2024-02-15 10:25 ` [edk2-devel] [PATCH v2 09/12] OvmfPkg: switch IntelTdxX64 " Gerd Hoffmann
@ 2024-02-15 10:25 ` Gerd Hoffmann
2024-02-15 10:25 ` [edk2-devel] [PATCH v2 11/12] OvmfPkg/CI: copy shell to virtual drive Gerd Hoffmann
2024-02-15 10:25 ` [edk2-devel] [PATCH v2 12/12] OvmfPkg: only add shell to FV in case secure boot is disabled Gerd Hoffmann
11 siblings, 0 replies; 21+ messages in thread
From: Gerd Hoffmann @ 2024-02-15 10:25 UTC (permalink / raw)
To: devel
Cc: Jiewen Yao, Gerd Hoffmann, Laszlo Ersek, Min Xu, Tom Lendacky,
Oliver Steffen, Erdem Aktas, Ard Biesheuvel, Michael Roth
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Acked-by: Laszlo Ersek <lersek@redhat.com>
---
OvmfPkg/Microvm/MicrovmX64.dsc | 49 ++++++----------------------------
OvmfPkg/Microvm/MicrovmX64.fdf | 9 ++-----
2 files changed, 10 insertions(+), 48 deletions(-)
diff --git a/OvmfPkg/Microvm/MicrovmX64.dsc b/OvmfPkg/Microvm/MicrovmX64.dsc
index 063324cd0572..2c6bb83beb85 100644
--- a/OvmfPkg/Microvm/MicrovmX64.dsc
+++ b/OvmfPkg/Microvm/MicrovmX64.dsc
@@ -33,6 +33,11 @@ [Defines]
DEFINE SMM_REQUIRE = FALSE
DEFINE SOURCE_DEBUG_ENABLE = FALSE
+ #
+ # Shell can be useful for debugging but should not be enabled for production
+ #
+ DEFINE BUILD_SHELL = TRUE
+
#
# Network definition
#
@@ -230,7 +235,6 @@ [LibraryClasses]
TlsLib|CryptoPkg/Library/TlsLib/TlsLib.inf
!endif
- ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
ShellCEntryLib|ShellPkg/Library/UefiShellCEntryLib/UefiShellCEntryLib.inf
S3BootScriptLib|MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf
SmbusLib|MdePkg/Library/BaseSmbusLibNull/BaseSmbusLibNull.inf
@@ -239,6 +243,8 @@ [LibraryClasses]
Tcg2PhysicalPresenceLib|OvmfPkg/Library/Tcg2PhysicalPresenceLibNull/DxeTcg2PhysicalPresenceLib.inf
TpmMeasurementLib|MdeModulePkg/Library/TpmMeasurementLibNull/TpmMeasurementLibNull.inf
+!include OvmfPkg/Include/Dsc/ShellLibs.dsc.inc
+
[LibraryClasses.common]
BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
CcExitLib|OvmfPkg/Library/CcExitLib/CcExitLib.inf
@@ -837,46 +843,7 @@ [Components]
MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf
MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf
-!if $(TOOL_CHAIN_TAG) != "XCODE5"
- ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf {
- <PcdsFixedAtBuild>
- gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
- }
- ShellPkg/DynamicCommand/HttpDynamicCommand/HttpDynamicCommand.inf {
- <PcdsFixedAtBuild>
- gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
- }
- ShellPkg/DynamicCommand/VariablePolicyDynamicCommand/VariablePolicyDynamicCommand.inf {
- <PcdsFixedAtBuild>
- gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
- }
- OvmfPkg/LinuxInitrdDynamicShellCommand/LinuxInitrdDynamicShellCommand.inf {
- <PcdsFixedAtBuild>
- gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
- }
-!endif
- ShellPkg/Application/Shell/Shell.inf {
- <LibraryClasses>
- ShellCommandLib|ShellPkg/Library/UefiShellCommandLib/UefiShellCommandLib.inf
- NULL|ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellLevel3CommandsLib/UefiShellLevel3CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf
- NULL|ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf
-!if $(NETWORK_IP6_ENABLE) == TRUE
- NULL|ShellPkg/Library/UefiShellNetwork2CommandsLib/UefiShellNetwork2CommandsLib.inf
-!endif
- HandleParsingLib|ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf
- PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
- BcfgCommandLib|ShellPkg/Library/UefiShellBcfgCommandLib/UefiShellBcfgCommandLib.inf
-
- <PcdsFixedAtBuild>
- gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0xFF
- gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
- gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|8000
- }
+!include OvmfPkg/Include/Dsc/ShellComponents.dsc.inc
!if $(SECURE_BOOT_ENABLE) == TRUE
SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigDxe.inf
diff --git a/OvmfPkg/Microvm/MicrovmX64.fdf b/OvmfPkg/Microvm/MicrovmX64.fdf
index c877b3f088f9..825bf9f5e41f 100644
--- a/OvmfPkg/Microvm/MicrovmX64.fdf
+++ b/OvmfPkg/Microvm/MicrovmX64.fdf
@@ -257,13 +257,6 @@ [FV.DXEFV]
INF EmbeddedPkg/Drivers/FdtClientDxe/FdtClientDxe.inf
INF OvmfPkg/Fdt/VirtioFdtDxe/VirtioFdtDxe.inf
-!if $(TOOL_CHAIN_TAG) != "XCODE5"
-INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf
-INF ShellPkg/DynamicCommand/HttpDynamicCommand/HttpDynamicCommand.inf
-INF OvmfPkg/LinuxInitrdDynamicShellCommand/LinuxInitrdDynamicShellCommand.inf
-!endif
-INF ShellPkg/Application/Shell/Shell.inf
-
INF MdeModulePkg/Logo/LogoDxe.inf
#
@@ -302,6 +295,8 @@ [FV.DXEFV]
INF MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteDxe.inf
INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf
+!include OvmfPkg/Include/Fdf/ShellDxe.fdf.inc
+
################################################################################
[FV.FVMAIN_COMPACT]
--
2.43.1
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#115514): https://edk2.groups.io/g/devel/message/115514
Mute This Topic: https://groups.io/mt/104370214/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-
^ permalink raw reply related [flat|nested] 21+ messages in thread
* [edk2-devel] [PATCH v2 11/12] OvmfPkg/CI: copy shell to virtual drive
2024-02-15 10:24 [edk2-devel] [PATCH v2 00/12] OvmfPkg: tweak shell builds Gerd Hoffmann
` (9 preceding siblings ...)
2024-02-15 10:25 ` [edk2-devel] [PATCH v2 10/12] OvmfPkg: switch MicrovmX64 " Gerd Hoffmann
@ 2024-02-15 10:25 ` Gerd Hoffmann
2024-02-16 17:42 ` Laszlo Ersek
2024-02-15 10:25 ` [edk2-devel] [PATCH v2 12/12] OvmfPkg: only add shell to FV in case secure boot is disabled Gerd Hoffmann
11 siblings, 1 reply; 21+ messages in thread
From: Gerd Hoffmann @ 2024-02-15 10:25 UTC (permalink / raw)
To: devel
Cc: Jiewen Yao, Gerd Hoffmann, Laszlo Ersek, Min Xu, Tom Lendacky,
Oliver Steffen, Erdem Aktas, Ard Biesheuvel, Michael Roth
Place the EFI shell as EFI/BOOT/BOOT{ARCH}.EFI on the virtual drive.
This allows the "run to shell" CI test case to work even in case the
shell is not included in the firmware image.
This is needed because an followup patch will exclude the shell from
secure boot enabled builds.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
OvmfPkg/PlatformCI/PlatformBuildLib.py | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/OvmfPkg/PlatformCI/PlatformBuildLib.py b/OvmfPkg/PlatformCI/PlatformBuildLib.py
index f829738cdda4..00d454954bff 100644
--- a/OvmfPkg/PlatformCI/PlatformBuildLib.py
+++ b/OvmfPkg/PlatformCI/PlatformBuildLib.py
@@ -5,6 +5,7 @@
# SPDX-License-Identifier: BSD-2-Clause-Patent
##
import os
+import shutil
import logging
import io
@@ -181,7 +182,8 @@ class PlatformBuilder( UefiBuilder, BuildSettingsManager):
def FlashRomImage(self):
VirtualDrive = os.path.join(self.env.GetValue("BUILD_OUTPUT_BASE"), "VirtualDrive")
- os.makedirs(VirtualDrive, exist_ok=True)
+ VirtualDriveBoot = os.path.join(VirtualDrive, "EFI", "BOOT")
+ os.makedirs(VirtualDriveBoot, exist_ok=True)
OutputPath_FV = os.path.join(self.env.GetValue("BUILD_OUTPUT_BASE"), "FV")
if (self.env.GetValue("QEMU_SKIP") and
@@ -189,6 +191,14 @@ class PlatformBuilder( UefiBuilder, BuildSettingsManager):
logging.info("skipping qemu boot test")
return 0
+ # copy shell to VirtualDrive
+ for arch in self.env.GetValue("TARGET_ARCH").split():
+ src = os.path.join(self.env.GetValue("BUILD_OUTPUT_BASE"), arch, "Shell.efi")
+ dst = os.path.join(VirtualDriveBoot, f'BOOT{arch}.EFI')
+ if os.path.exists(src):
+ logging.info("copy %s -> %s", src, dst)
+ shutil.copyfile(src, dst)
+
#
# QEMU must be on the path
#
--
2.43.1
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#115515): https://edk2.groups.io/g/devel/message/115515
Mute This Topic: https://groups.io/mt/104370215/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-
^ permalink raw reply related [flat|nested] 21+ messages in thread
* Re: [edk2-devel] [PATCH v2 11/12] OvmfPkg/CI: copy shell to virtual drive
2024-02-15 10:25 ` [edk2-devel] [PATCH v2 11/12] OvmfPkg/CI: copy shell to virtual drive Gerd Hoffmann
@ 2024-02-16 17:42 ` Laszlo Ersek
0 siblings, 0 replies; 21+ messages in thread
From: Laszlo Ersek @ 2024-02-16 17:42 UTC (permalink / raw)
To: devel, kraxel
Cc: Jiewen Yao, Min Xu, Tom Lendacky, Oliver Steffen, Erdem Aktas,
Ard Biesheuvel, Michael Roth
On 2/15/24 11:25, Gerd Hoffmann wrote:
> Place the EFI shell as EFI/BOOT/BOOT{ARCH}.EFI on the virtual drive.
> This allows the "run to shell" CI test case to work even in case the
> shell is not included in the firmware image.
>
> This is needed because an followup patch will exclude the shell from
> secure boot enabled builds.
>
> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
> ---
> OvmfPkg/PlatformCI/PlatformBuildLib.py | 12 +++++++++++-
> 1 file changed, 11 insertions(+), 1 deletion(-)
Thanks for the commit message update.
Acked-by: Laszlo Ersek <lersek@redhat.com>
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#115550): https://edk2.groups.io/g/devel/message/115550
Mute This Topic: https://groups.io/mt/104370215/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-
^ permalink raw reply [flat|nested] 21+ messages in thread
* [edk2-devel] [PATCH v2 12/12] OvmfPkg: only add shell to FV in case secure boot is disabled
2024-02-15 10:24 [edk2-devel] [PATCH v2 00/12] OvmfPkg: tweak shell builds Gerd Hoffmann
` (10 preceding siblings ...)
2024-02-15 10:25 ` [edk2-devel] [PATCH v2 11/12] OvmfPkg/CI: copy shell to virtual drive Gerd Hoffmann
@ 2024-02-15 10:25 ` Gerd Hoffmann
2024-02-16 17:56 ` Laszlo Ersek
11 siblings, 1 reply; 21+ messages in thread
From: Gerd Hoffmann @ 2024-02-15 10:25 UTC (permalink / raw)
To: devel
Cc: Jiewen Yao, Gerd Hoffmann, Laszlo Ersek, Min Xu, Tom Lendacky,
Oliver Steffen, Erdem Aktas, Ard Biesheuvel, Michael Roth
The EFI Shell allows to bypass secure boot, do not allow
to include the shell in the firmware images of secure boot
enabled builds.
This prevents misconfigured downstream builds.
Ref: https://bugs.launchpad.net/ubuntu/+source/edk2/+bug/2040137
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=4641
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
OvmfPkg/Include/Fdf/ShellDxe.fdf.inc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/OvmfPkg/Include/Fdf/ShellDxe.fdf.inc b/OvmfPkg/Include/Fdf/ShellDxe.fdf.inc
index 3081ac41780a..38f69747b02c 100644
--- a/OvmfPkg/Include/Fdf/ShellDxe.fdf.inc
+++ b/OvmfPkg/Include/Fdf/ShellDxe.fdf.inc
@@ -2,7 +2,7 @@
# SPDX-License-Identifier: BSD-2-Clause-Patent
##
-!if $(BUILD_SHELL) == TRUE
+!if $(BUILD_SHELL) == TRUE && $(SECURE_BOOT_ENABLE) == FALSE
!if $(TOOL_CHAIN_TAG) != "XCODE5"
!if $(NETWORK_ENABLE) == TRUE
--
2.43.1
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#115517): https://edk2.groups.io/g/devel/message/115517
Mute This Topic: https://groups.io/mt/104370218/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-
^ permalink raw reply related [flat|nested] 21+ messages in thread
* Re: [edk2-devel] [PATCH v2 12/12] OvmfPkg: only add shell to FV in case secure boot is disabled
2024-02-15 10:25 ` [edk2-devel] [PATCH v2 12/12] OvmfPkg: only add shell to FV in case secure boot is disabled Gerd Hoffmann
@ 2024-02-16 17:56 ` Laszlo Ersek
2024-02-19 10:21 ` Gerd Hoffmann
0 siblings, 1 reply; 21+ messages in thread
From: Laszlo Ersek @ 2024-02-16 17:56 UTC (permalink / raw)
To: devel, kraxel
Cc: Jiewen Yao, Min Xu, Tom Lendacky, Oliver Steffen, Erdem Aktas,
Ard Biesheuvel, Michael Roth
On 2/15/24 11:25, Gerd Hoffmann wrote:
> The EFI Shell allows to bypass secure boot, do not allow
> to include the shell in the firmware images of secure boot
> enabled builds.
>
> This prevents misconfigured downstream builds.
>
> Ref: https://bugs.launchpad.net/ubuntu/+source/edk2/+bug/2040137
> Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=4641
> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
> ---
> OvmfPkg/Include/Fdf/ShellDxe.fdf.inc | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/OvmfPkg/Include/Fdf/ShellDxe.fdf.inc b/OvmfPkg/Include/Fdf/ShellDxe.fdf.inc
> index 3081ac41780a..38f69747b02c 100644
> --- a/OvmfPkg/Include/Fdf/ShellDxe.fdf.inc
> +++ b/OvmfPkg/Include/Fdf/ShellDxe.fdf.inc
> @@ -2,7 +2,7 @@
> # SPDX-License-Identifier: BSD-2-Clause-Patent
> ##
>
> -!if $(BUILD_SHELL) == TRUE
> +!if $(BUILD_SHELL) == TRUE && $(SECURE_BOOT_ENABLE) == FALSE
>
> !if $(TOOL_CHAIN_TAG) != "XCODE5"
> !if $(NETWORK_ENABLE) == TRUE
This does the job:
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
An alternative could be (perhaps informing the user better):
!if $(BUILD_SHELL) == TRUE
!if $(SECURE_BOOT_ENABLE) == TRUE
!error BUILD_SHELL and SECURE_BOOT_ENABLE conflict
!endif
...
!endif
If you prefer that approach, feel free to submit a v3 (you can add my
R-b for that variant immediately).
A disadvantage might be that, with such a patch in place, people having
built OVMF with "-D SECURE_BOOT_ENABLE" thus far would start getting
build failures, and they'd have to explicitly pass "-D
BUILD_SHELL=FALSE", IIUC.
(Well, some might consider such a build failure an advantage actually:
near the BUILD_SHELL define, we have a comment saying "Shell can be
useful for debugging but should not be enabled for production". Pick
your poison, I guess...)
A repost might be worth your while either way, because some of the
patches are identical to their first versions, and Jiewen's v1 Acked-by,
from [1], is missing from the unchanged (or trivially rebased) patches
in v2.
I strongly prefer capturing all feedback tags in the git history; after
all, that keeps a record of reviewer *work* (not just the mere approval
itself).
[1] https://edk2.groups.io/g/devel/message/114362
msgid <MW4PR11MB5872132F77F29DC6758C71178C7A2@MW4PR11MB5872.namprd11.prod.outlook.com>
Thanks,
Laszlo
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#115551): https://edk2.groups.io/g/devel/message/115551
Mute This Topic: https://groups.io/mt/104370218/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [edk2-devel] [PATCH v2 12/12] OvmfPkg: only add shell to FV in case secure boot is disabled
2024-02-16 17:56 ` Laszlo Ersek
@ 2024-02-19 10:21 ` Gerd Hoffmann
2024-02-19 20:06 ` Laszlo Ersek
0 siblings, 1 reply; 21+ messages in thread
From: Gerd Hoffmann @ 2024-02-19 10:21 UTC (permalink / raw)
To: Laszlo Ersek
Cc: devel, Jiewen Yao, Min Xu, Tom Lendacky, Oliver Steffen,
Erdem Aktas, Ard Biesheuvel, Michael Roth
> > -!if $(BUILD_SHELL) == TRUE
> > +!if $(BUILD_SHELL) == TRUE && $(SECURE_BOOT_ENABLE) == FALSE
> >
> > !if $(TOOL_CHAIN_TAG) != "XCODE5"
> > !if $(NETWORK_ENABLE) == TRUE
>
> This does the job:
>
> Reviewed-by: Laszlo Ersek <lersek@redhat.com>
>
> An alternative could be (perhaps informing the user better):
>
> !if $(BUILD_SHELL) == TRUE
> !if $(SECURE_BOOT_ENABLE) == TRUE
> !error BUILD_SHELL and SECURE_BOOT_ENABLE conflict
> !endif
> ...
> !endif
That would break CI.
Patch 11/12 depends on the shell being built even if not included in the
firmware image, so it can be copied to the virtual drive used by the
qemu test.
> A repost might be worth your while either way, because some of the
> patches are identical to their first versions, and Jiewen's v1 Acked-by,
> from [1], is missing from the unchanged (or trivially rebased) patches
> in v2.
Oops, right, went over all individual patches updating them, then forgot
the Jiewen's ack for the whole series.
take care,
Gerd
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#115589): https://edk2.groups.io/g/devel/message/115589
Mute This Topic: https://groups.io/mt/104370218/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [edk2-devel] [PATCH v2 12/12] OvmfPkg: only add shell to FV in case secure boot is disabled
2024-02-19 10:21 ` Gerd Hoffmann
@ 2024-02-19 20:06 ` Laszlo Ersek
0 siblings, 0 replies; 21+ messages in thread
From: Laszlo Ersek @ 2024-02-19 20:06 UTC (permalink / raw)
To: Gerd Hoffmann
Cc: devel, Jiewen Yao, Min Xu, Tom Lendacky, Oliver Steffen,
Erdem Aktas, Ard Biesheuvel, Michael Roth
On 2/19/24 11:21, Gerd Hoffmann wrote:
>>> -!if $(BUILD_SHELL) == TRUE
>>> +!if $(BUILD_SHELL) == TRUE && $(SECURE_BOOT_ENABLE) == FALSE
>>>
>>> !if $(TOOL_CHAIN_TAG) != "XCODE5"
>>> !if $(NETWORK_ENABLE) == TRUE
>>
>> This does the job:
>>
>> Reviewed-by: Laszlo Ersek <lersek@redhat.com>
>>
>> An alternative could be (perhaps informing the user better):
>>
>> !if $(BUILD_SHELL) == TRUE
>> !if $(SECURE_BOOT_ENABLE) == TRUE
>> !error BUILD_SHELL and SECURE_BOOT_ENABLE conflict
>> !endif
>> ...
>> !endif
>
> That would break CI.
>
> Patch 11/12 depends on the shell being built even if not included in the
> firmware image, so it can be copied to the virtual drive used by the
> qemu test.
Ah, understood. We don't conditionalize in the DSC files, only in the FDFs.
Laszlo
>
>> A repost might be worth your while either way, because some of the
>> patches are identical to their first versions, and Jiewen's v1 Acked-by,
>> from [1], is missing from the unchanged (or trivially rebased) patches
>> in v2.
>
> Oops, right, went over all individual patches updating them, then forgot
> the Jiewen's ack for the whole series.
>
> take care,
> Gerd
>
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#115597): https://edk2.groups.io/g/devel/message/115597
Mute This Topic: https://groups.io/mt/104370218/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-
^ permalink raw reply [flat|nested] 21+ messages in thread