public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [PATCH] Features/Ext4Pkg: Modularize Ext4 DSC/FDF files
@ 2022-01-25 14:12 Jake Garver
  2022-01-28  9:12 ` Pedro Falcato
  2022-02-02 17:31 ` Pedro Falcato
  0 siblings, 2 replies; 3+ messages in thread
From: Jake Garver @ 2022-01-25 14:12 UTC (permalink / raw)
  To: devel, jbrasen, ashishsingha, pedro.falcato; +Cc: Jake Garver

This change modularizes the Ext4 DSC/FDF files following the model used
in edk2/NetworkPkg.

A platform DSC can include Ext4 using "!include Features/Ext4.dsc.inc".
Ext.dsc.inc includes all the required information to enable Ext4
features.  Similarly, "!include Features/Ext4.fdf.inc" would be used in
the platform FDF.

The Ext4 feature is enabled by default, but could be disabled at build
time using:

    BLD_*_EXT4_ENABLE=FALSE

Signed-off-by: Jake Garver <jake@nvidia.com>
---
 Features/Ext4Pkg/Ext4.dsc.inc           | 16 ++++++++++++++++
 Features/Ext4Pkg/Ext4.fdf.inc           | 11 +++++++++++
 Features/Ext4Pkg/Ext4Components.dsc.inc | 14 ++++++++++++++
 Features/Ext4Pkg/Ext4Defines.dsc.inc    | 14 ++++++++++++++
 Features/Ext4Pkg/Ext4Libs.dsc.inc       | 11 +++++++++++
 5 files changed, 66 insertions(+)
 create mode 100644 Features/Ext4Pkg/Ext4.dsc.inc
 create mode 100644 Features/Ext4Pkg/Ext4.fdf.inc
 create mode 100644 Features/Ext4Pkg/Ext4Components.dsc.inc
 create mode 100644 Features/Ext4Pkg/Ext4Defines.dsc.inc
 create mode 100644 Features/Ext4Pkg/Ext4Libs.dsc.inc

diff --git a/Features/Ext4Pkg/Ext4.dsc.inc b/Features/Ext4Pkg/Ext4.dsc.inc
new file mode 100644
index 0000000000..b560b9acbb
--- /dev/null
+++ b/Features/Ext4Pkg/Ext4.dsc.inc
@@ -0,0 +1,16 @@
+## @file
+# Ext4 DSC include file for Platform DSC
+#
+# SPDX-FileCopyrightText: Copyright (c) 2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
+# SPDX-License-Identifier: BSD-2-Clause-Patent
+#
+##
+
+[Defines]
+!include Features/Ext4Pkg/Ext4Defines.dsc.inc
+
+[LibraryClasses]
+!include Features/Ext4Pkg/Ext4Libs.dsc.inc
+
+[Components.common]
+!include Features/Ext4Pkg/Ext4Components.dsc.inc
diff --git a/Features/Ext4Pkg/Ext4.fdf.inc b/Features/Ext4Pkg/Ext4.fdf.inc
new file mode 100644
index 0000000000..fb36070860
--- /dev/null
+++ b/Features/Ext4Pkg/Ext4.fdf.inc
@@ -0,0 +1,11 @@
+## @file
+# Ext4 FDF include file for All Architectures.
+#
+# SPDX-FileCopyrightText: Copyright (c) 2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
+# SPDX-License-Identifier: BSD-2-Clause-Patent
+#
+##
+
+!if $(EXT4_ENABLE) == TRUE
+  INF Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.inf
+!endif
diff --git a/Features/Ext4Pkg/Ext4Components.dsc.inc b/Features/Ext4Pkg/Ext4Components.dsc.inc
new file mode 100644
index 0000000000..34401272a0
--- /dev/null
+++ b/Features/Ext4Pkg/Ext4Components.dsc.inc
@@ -0,0 +1,14 @@
+## @file
+# Ext4 DSC include file for [Components] section of all Architectures.
+#
+# SPDX-FileCopyrightText: Copyright (c) 2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
+# SPDX-License-Identifier: BSD-2-Clause-Patent
+#
+##
+
+!if $(EXT4_ENABLE) == TRUE
+  Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.inf {
+    <PcdsFixedAtBuild>
+      gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000007
+  }
+!endif
diff --git a/Features/Ext4Pkg/Ext4Defines.dsc.inc b/Features/Ext4Pkg/Ext4Defines.dsc.inc
new file mode 100644
index 0000000000..b02eac59cf
--- /dev/null
+++ b/Features/Ext4Pkg/Ext4Defines.dsc.inc
@@ -0,0 +1,14 @@
+## @file
+# Ext4 DSC include file for [Defines] section of all Architectures.
+#
+# SPDX-FileCopyrightText: Copyright (c) 2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
+# SPDX-License-Identifier: BSD-2-Clause-Patent
+#
+##
+
+!ifndef EXT4_ENABLE
+  #
+  # This flag is to enable or disable the ext4 feature.
+  #
+  DEFINE EXT4_ENABLE = TRUE
+!endif
diff --git a/Features/Ext4Pkg/Ext4Libs.dsc.inc b/Features/Ext4Pkg/Ext4Libs.dsc.inc
new file mode 100644
index 0000000000..078183e0cc
--- /dev/null
+++ b/Features/Ext4Pkg/Ext4Libs.dsc.inc
@@ -0,0 +1,11 @@
+## @file
+# Ext4 DSC include file for [LibraryClasses] section of all Architectures.
+#
+# SPDX-FileCopyrightText: Copyright (c) 2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
+# SPDX-License-Identifier: BSD-2-Clause-Patent
+#
+##
+
+!if $(EXT4_ENABLE) == TRUE
+  BaseUcs2Utf8Lib|RedfishPkg/Library/BaseUcs2Utf8Lib/BaseUcs2Utf8Lib.inf
+!endif
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] Features/Ext4Pkg: Modularize Ext4 DSC/FDF files
  2022-01-25 14:12 [PATCH] Features/Ext4Pkg: Modularize Ext4 DSC/FDF files Jake Garver
@ 2022-01-28  9:12 ` Pedro Falcato
  2022-02-02 17:31 ` Pedro Falcato
  1 sibling, 0 replies; 3+ messages in thread
From: Pedro Falcato @ 2022-01-28  9:12 UTC (permalink / raw)
  To: Jake Garver; +Cc: edk2-devel-groups-io, Jeff Brasen, ashishsingha

[-- Attachment #1: Type: text/plain, Size: 4626 bytes --]

Hi,

Looks good to me. While I don't 100% understand why one would want this, I
know there's a similar pattern in a few packages.

All things considered,
Reviewed-by: Pedro Falcato <pedro.falcato@gmail.com>

I'll wait for a day for any possible comments by other people before
merging this.

Thanks,
Pedro

On Tue, Jan 25, 2022 at 2:13 PM Jake Garver <jake@nvidia.com> wrote:

> This change modularizes the Ext4 DSC/FDF files following the model used
> in edk2/NetworkPkg.
>
> A platform DSC can include Ext4 using "!include Features/Ext4.dsc.inc".
> Ext.dsc.inc includes all the required information to enable Ext4
> features.  Similarly, "!include Features/Ext4.fdf.inc" would be used in
> the platform FDF.
>
> The Ext4 feature is enabled by default, but could be disabled at build
> time using:
>
>     BLD_*_EXT4_ENABLE=FALSE
>
> Signed-off-by: Jake Garver <jake@nvidia.com>
> ---
>  Features/Ext4Pkg/Ext4.dsc.inc           | 16 ++++++++++++++++
>  Features/Ext4Pkg/Ext4.fdf.inc           | 11 +++++++++++
>  Features/Ext4Pkg/Ext4Components.dsc.inc | 14 ++++++++++++++
>  Features/Ext4Pkg/Ext4Defines.dsc.inc    | 14 ++++++++++++++
>  Features/Ext4Pkg/Ext4Libs.dsc.inc       | 11 +++++++++++
>  5 files changed, 66 insertions(+)
>  create mode 100644 Features/Ext4Pkg/Ext4.dsc.inc
>  create mode 100644 Features/Ext4Pkg/Ext4.fdf.inc
>  create mode 100644 Features/Ext4Pkg/Ext4Components.dsc.inc
>  create mode 100644 Features/Ext4Pkg/Ext4Defines.dsc.inc
>  create mode 100644 Features/Ext4Pkg/Ext4Libs.dsc.inc
>
> diff --git a/Features/Ext4Pkg/Ext4.dsc.inc b/Features/Ext4Pkg/Ext4.dsc.inc
> new file mode 100644
> index 0000000000..b560b9acbb
> --- /dev/null
> +++ b/Features/Ext4Pkg/Ext4.dsc.inc
> @@ -0,0 +1,16 @@
> +## @file
> +# Ext4 DSC include file for Platform DSC
> +#
> +# SPDX-FileCopyrightText: Copyright (c) 2022 NVIDIA CORPORATION &
> AFFILIATES. All rights reserved.
> +# SPDX-License-Identifier: BSD-2-Clause-Patent
> +#
> +##
> +
> +[Defines]
> +!include Features/Ext4Pkg/Ext4Defines.dsc.inc
> +
> +[LibraryClasses]
> +!include Features/Ext4Pkg/Ext4Libs.dsc.inc
> +
> +[Components.common]
> +!include Features/Ext4Pkg/Ext4Components.dsc.inc
> diff --git a/Features/Ext4Pkg/Ext4.fdf.inc b/Features/Ext4Pkg/Ext4.fdf.inc
> new file mode 100644
> index 0000000000..fb36070860
> --- /dev/null
> +++ b/Features/Ext4Pkg/Ext4.fdf.inc
> @@ -0,0 +1,11 @@
> +## @file
> +# Ext4 FDF include file for All Architectures.
> +#
> +# SPDX-FileCopyrightText: Copyright (c) 2022 NVIDIA CORPORATION &
> AFFILIATES. All rights reserved.
> +# SPDX-License-Identifier: BSD-2-Clause-Patent
> +#
> +##
> +
> +!if $(EXT4_ENABLE) == TRUE
> +  INF Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.inf
> +!endif
> diff --git a/Features/Ext4Pkg/Ext4Components.dsc.inc
> b/Features/Ext4Pkg/Ext4Components.dsc.inc
> new file mode 100644
> index 0000000000..34401272a0
> --- /dev/null
> +++ b/Features/Ext4Pkg/Ext4Components.dsc.inc
> @@ -0,0 +1,14 @@
> +## @file
> +# Ext4 DSC include file for [Components] section of all Architectures.
> +#
> +# SPDX-FileCopyrightText: Copyright (c) 2022 NVIDIA CORPORATION &
> AFFILIATES. All rights reserved.
> +# SPDX-License-Identifier: BSD-2-Clause-Patent
> +#
> +##
> +
> +!if $(EXT4_ENABLE) == TRUE
> +  Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.inf {
> +    <PcdsFixedAtBuild>
> +      gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000007
> +  }
> +!endif
> diff --git a/Features/Ext4Pkg/Ext4Defines.dsc.inc
> b/Features/Ext4Pkg/Ext4Defines.dsc.inc
> new file mode 100644
> index 0000000000..b02eac59cf
> --- /dev/null
> +++ b/Features/Ext4Pkg/Ext4Defines.dsc.inc
> @@ -0,0 +1,14 @@
> +## @file
> +# Ext4 DSC include file for [Defines] section of all Architectures.
> +#
> +# SPDX-FileCopyrightText: Copyright (c) 2022 NVIDIA CORPORATION &
> AFFILIATES. All rights reserved.
> +# SPDX-License-Identifier: BSD-2-Clause-Patent
> +#
> +##
> +
> +!ifndef EXT4_ENABLE
> +  #
> +  # This flag is to enable or disable the ext4 feature.
> +  #
> +  DEFINE EXT4_ENABLE = TRUE
> +!endif
> diff --git a/Features/Ext4Pkg/Ext4Libs.dsc.inc
> b/Features/Ext4Pkg/Ext4Libs.dsc.inc
> new file mode 100644
> index 0000000000..078183e0cc
> --- /dev/null
> +++ b/Features/Ext4Pkg/Ext4Libs.dsc.inc
> @@ -0,0 +1,11 @@
> +## @file
> +# Ext4 DSC include file for [LibraryClasses] section of all Architectures.
> +#
> +# SPDX-FileCopyrightText: Copyright (c) 2022 NVIDIA CORPORATION &
> AFFILIATES. All rights reserved.
> +# SPDX-License-Identifier: BSD-2-Clause-Patent
> +#
> +##
> +
> +!if $(EXT4_ENABLE) == TRUE
> +  BaseUcs2Utf8Lib|RedfishPkg/Library/BaseUcs2Utf8Lib/BaseUcs2Utf8Lib.inf
> +!endif
> --
> 2.17.1
>
>

-- 
Pedro Falcato

[-- Attachment #2: Type: text/html, Size: 5695 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] Features/Ext4Pkg: Modularize Ext4 DSC/FDF files
  2022-01-25 14:12 [PATCH] Features/Ext4Pkg: Modularize Ext4 DSC/FDF files Jake Garver
  2022-01-28  9:12 ` Pedro Falcato
@ 2022-02-02 17:31 ` Pedro Falcato
  1 sibling, 0 replies; 3+ messages in thread
From: Pedro Falcato @ 2022-02-02 17:31 UTC (permalink / raw)
  To: Jake Garver; +Cc: edk2-devel-groups-io, Jeff Brasen, ashishsingha

[-- Attachment #1: Type: text/plain, Size: 4401 bytes --]

Jake,

Sorry for the delay.

Pushed as 8f41641a6f29e2ae3ffe2ed44a026db7993ed94f.

On Tue, Jan 25, 2022 at 2:13 PM Jake Garver <jake@nvidia.com> wrote:

> This change modularizes the Ext4 DSC/FDF files following the model used
> in edk2/NetworkPkg.
>
> A platform DSC can include Ext4 using "!include Features/Ext4.dsc.inc".
> Ext.dsc.inc includes all the required information to enable Ext4
> features.  Similarly, "!include Features/Ext4.fdf.inc" would be used in
> the platform FDF.
>
> The Ext4 feature is enabled by default, but could be disabled at build
> time using:
>
>     BLD_*_EXT4_ENABLE=FALSE
>
> Signed-off-by: Jake Garver <jake@nvidia.com>
> ---
>  Features/Ext4Pkg/Ext4.dsc.inc           | 16 ++++++++++++++++
>  Features/Ext4Pkg/Ext4.fdf.inc           | 11 +++++++++++
>  Features/Ext4Pkg/Ext4Components.dsc.inc | 14 ++++++++++++++
>  Features/Ext4Pkg/Ext4Defines.dsc.inc    | 14 ++++++++++++++
>  Features/Ext4Pkg/Ext4Libs.dsc.inc       | 11 +++++++++++
>  5 files changed, 66 insertions(+)
>  create mode 100644 Features/Ext4Pkg/Ext4.dsc.inc
>  create mode 100644 Features/Ext4Pkg/Ext4.fdf.inc
>  create mode 100644 Features/Ext4Pkg/Ext4Components.dsc.inc
>  create mode 100644 Features/Ext4Pkg/Ext4Defines.dsc.inc
>  create mode 100644 Features/Ext4Pkg/Ext4Libs.dsc.inc
>
> diff --git a/Features/Ext4Pkg/Ext4.dsc.inc b/Features/Ext4Pkg/Ext4.dsc.inc
> new file mode 100644
> index 0000000000..b560b9acbb
> --- /dev/null
> +++ b/Features/Ext4Pkg/Ext4.dsc.inc
> @@ -0,0 +1,16 @@
> +## @file
> +# Ext4 DSC include file for Platform DSC
> +#
> +# SPDX-FileCopyrightText: Copyright (c) 2022 NVIDIA CORPORATION &
> AFFILIATES. All rights reserved.
> +# SPDX-License-Identifier: BSD-2-Clause-Patent
> +#
> +##
> +
> +[Defines]
> +!include Features/Ext4Pkg/Ext4Defines.dsc.inc
> +
> +[LibraryClasses]
> +!include Features/Ext4Pkg/Ext4Libs.dsc.inc
> +
> +[Components.common]
> +!include Features/Ext4Pkg/Ext4Components.dsc.inc
> diff --git a/Features/Ext4Pkg/Ext4.fdf.inc b/Features/Ext4Pkg/Ext4.fdf.inc
> new file mode 100644
> index 0000000000..fb36070860
> --- /dev/null
> +++ b/Features/Ext4Pkg/Ext4.fdf.inc
> @@ -0,0 +1,11 @@
> +## @file
> +# Ext4 FDF include file for All Architectures.
> +#
> +# SPDX-FileCopyrightText: Copyright (c) 2022 NVIDIA CORPORATION &
> AFFILIATES. All rights reserved.
> +# SPDX-License-Identifier: BSD-2-Clause-Patent
> +#
> +##
> +
> +!if $(EXT4_ENABLE) == TRUE
> +  INF Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.inf
> +!endif
> diff --git a/Features/Ext4Pkg/Ext4Components.dsc.inc
> b/Features/Ext4Pkg/Ext4Components.dsc.inc
> new file mode 100644
> index 0000000000..34401272a0
> --- /dev/null
> +++ b/Features/Ext4Pkg/Ext4Components.dsc.inc
> @@ -0,0 +1,14 @@
> +## @file
> +# Ext4 DSC include file for [Components] section of all Architectures.
> +#
> +# SPDX-FileCopyrightText: Copyright (c) 2022 NVIDIA CORPORATION &
> AFFILIATES. All rights reserved.
> +# SPDX-License-Identifier: BSD-2-Clause-Patent
> +#
> +##
> +
> +!if $(EXT4_ENABLE) == TRUE
> +  Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.inf {
> +    <PcdsFixedAtBuild>
> +      gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000007
> +  }
> +!endif
> diff --git a/Features/Ext4Pkg/Ext4Defines.dsc.inc
> b/Features/Ext4Pkg/Ext4Defines.dsc.inc
> new file mode 100644
> index 0000000000..b02eac59cf
> --- /dev/null
> +++ b/Features/Ext4Pkg/Ext4Defines.dsc.inc
> @@ -0,0 +1,14 @@
> +## @file
> +# Ext4 DSC include file for [Defines] section of all Architectures.
> +#
> +# SPDX-FileCopyrightText: Copyright (c) 2022 NVIDIA CORPORATION &
> AFFILIATES. All rights reserved.
> +# SPDX-License-Identifier: BSD-2-Clause-Patent
> +#
> +##
> +
> +!ifndef EXT4_ENABLE
> +  #
> +  # This flag is to enable or disable the ext4 feature.
> +  #
> +  DEFINE EXT4_ENABLE = TRUE
> +!endif
> diff --git a/Features/Ext4Pkg/Ext4Libs.dsc.inc
> b/Features/Ext4Pkg/Ext4Libs.dsc.inc
> new file mode 100644
> index 0000000000..078183e0cc
> --- /dev/null
> +++ b/Features/Ext4Pkg/Ext4Libs.dsc.inc
> @@ -0,0 +1,11 @@
> +## @file
> +# Ext4 DSC include file for [LibraryClasses] section of all Architectures.
> +#
> +# SPDX-FileCopyrightText: Copyright (c) 2022 NVIDIA CORPORATION &
> AFFILIATES. All rights reserved.
> +# SPDX-License-Identifier: BSD-2-Clause-Patent
> +#
> +##
> +
> +!if $(EXT4_ENABLE) == TRUE
> +  BaseUcs2Utf8Lib|RedfishPkg/Library/BaseUcs2Utf8Lib/BaseUcs2Utf8Lib.inf
> +!endif
> --
> 2.17.1
>
>

-- 
Pedro Falcato

[-- Attachment #2: Type: text/html, Size: 5433 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2022-02-02 17:31 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-01-25 14:12 [PATCH] Features/Ext4Pkg: Modularize Ext4 DSC/FDF files Jake Garver
2022-01-28  9:12 ` Pedro Falcato
2022-02-02 17:31 ` Pedro Falcato

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox