diff mbox series

[1/3] arm/edk2-basetools: Add edk2 base tool native recipe

Message ID 20230127192122.19338-2-gowtham.sureshkumar@arm.com
State New
Headers show
Series Add UEFI capsule generation support | expand

Commit Message

Gowtham Suresh Kumar Jan. 27, 2023, 7:21 p.m. UTC
From: Gowtham Suresh Kumar <gowtham.sureshkumar@arm.com>

The native recipe installs the UEFI capsule generation tool
along with the other base tools to native sysroot.

Signed-off-by: Gowtham Suresh Kumar <gowtham.sureshkumar@arm.com>
---
 .../edk2-basetools/edk2-basetools_202211.bb   | 24 +++++++++++++++++++
 1 file changed, 24 insertions(+)
 create mode 100644 meta-arm/recipes-devtools/edk2-basetools/edk2-basetools_202211.bb

Comments

Denys Dmytriyenko Jan. 27, 2023, 9:27 p.m. UTC | #1
On Fri, Jan 27, 2023 at 07:21:20PM +0000, Gowtham Suresh Kumar wrote:
> From: Gowtham Suresh Kumar <gowtham.sureshkumar@arm.com>
> 
> The native recipe installs the UEFI capsule generation tool
> along with the other base tools to native sysroot.
> 
> Signed-off-by: Gowtham Suresh Kumar <gowtham.sureshkumar@arm.com>
> ---
>  .../edk2-basetools/edk2-basetools_202211.bb   | 24 +++++++++++++++++++
>  1 file changed, 24 insertions(+)
>  create mode 100644 meta-arm/recipes-devtools/edk2-basetools/edk2-basetools_202211.bb
> 
> diff --git a/meta-arm/recipes-devtools/edk2-basetools/edk2-basetools_202211.bb b/meta-arm/recipes-devtools/edk2-basetools/edk2-basetools_202211.bb
> new file mode 100644
> index 00000000..c80fdae2
> --- /dev/null
> +++ b/meta-arm/recipes-devtools/edk2-basetools/edk2-basetools_202211.bb
> @@ -0,0 +1,24 @@
> +# Install EDK2 Base Tools in native sysroot. Currently the BaseTools are not
> +# built, they are just copied to native sysroot. This is sufficient for
> +# generating UEFI capsules as it only depends on some python scripts. Other
> +# tools need to be built first before adding to sysroot.
> +
> +DESCRIPTION = "EDK2 Base Tools"

This ^ should be SUMMARY


> +LICENSE = "BSD-2-Clause-Patent"
> +
> +# EDK2
> +SRC_URI = "git://github.com/tianocore/edk2.git;branch=master;protocol=https"
> +LIC_FILES_CHKSUM = "file://License.txt;md5=2b415520383f7964e96700ae12b4570a"
> +
> +SRCREV = "fff6d81270b57ee786ea18ad74f43149b9f03494"
> +
> +S = "${WORKDIR}/git"
> +
> +RDEPENDS:${PN} += "python3-core"
> +
> +do_install () {
> +    mkdir -p ${D}${bindir}/edk2-BaseTools
> +    cp -r ${WORKDIR}/git/BaseTools/* ${D}${bindir}/edk2-BaseTools/

You could potentially have a host contamination warning here.


> +}
> +
> +BBCLASSEXTEND = "native"
> -- 
> 2.17.1
>
Gowtham Suresh Kumar Feb. 10, 2023, 12:24 a.m. UTC | #2
Hello Denys,

I do not see any warnings related to host contamination when I use the recipe. Can you please provide more details on it? If you are referring to the ownership issue with cp command, does it also affect native recipes? This recipe is just populating the required edk2 tools to the native staging directory to use for UEFI capsule image generation.

Best regards,
Gowtham Suresh Kumar
Denys Dmytriyenko Feb. 10, 2023, 8:46 p.m. UTC | #3
On Fri, Feb 10, 2023 at 12:24:56AM +0000, Gowtham Suresh Kumar wrote:
> Hello Denys,
> 
> I do not see any warnings related to host contamination when I use the 
> recipe. Can you please provide more details on it? If you are referring to 
> the ownership issue with cp command, does it also affect native recipes? 

Correct, the ownership issue won't affect the native recipe. But you are 
not adding native-only recipe, you are adding a regular target recipe and 
extending it to also provide a native variant.

If you only intend to use this in a native environment exclusively and it 
doesn't make sense for a target or nativesdk variants, you should make the 
recipe native-only. By naming it edk2-basetools-native_202211.bb, having 
"inherit native" line and dropping BBCLASSEXTEND = "native"


> This recipe is just populating the required edk2 tools to the native staging 
> directory to use for UEFI capsule image generation.
> 
> Best regards,
> Gowtham Suresh Kumar
> ________________________________
> From: Denys Dmytriyenko <denis@denix.org>
> Sent: Friday, January 27, 2023 9:27 PM
> To: Gowtham Suresh Kumar <Gowtham.SureshKumar@arm.com>
> Cc: meta-arm@lists.yoctoproject.org <meta-arm@lists.yoctoproject.org>; Ross Burton <Ross.Burton@arm.com>; nd <nd@arm.com>
> Subject: Re: [meta-arm] [PATCH 1/3] arm/edk2-basetools: Add edk2 base tool native recipe
> 
> On Fri, Jan 27, 2023 at 07:21:20PM +0000, Gowtham Suresh Kumar wrote:
> > From: Gowtham Suresh Kumar <gowtham.sureshkumar@arm.com>
> >
> > The native recipe installs the UEFI capsule generation tool
> > along with the other base tools to native sysroot.
> >
> > Signed-off-by: Gowtham Suresh Kumar <gowtham.sureshkumar@arm.com>
> > ---
> >  .../edk2-basetools/edk2-basetools_202211.bb   | 24 +++++++++++++++++++
> >  1 file changed, 24 insertions(+)
> >  create mode 100644 meta-arm/recipes-devtools/edk2-basetools/edk2-basetools_202211.bb
> >
> > diff --git a/meta-arm/recipes-devtools/edk2-basetools/edk2-basetools_202211.bb b/meta-arm/recipes-devtools/edk2-basetools/edk2-basetools_202211.bb
> > new file mode 100644
> > index 00000000..c80fdae2
> > --- /dev/null
> > +++ b/meta-arm/recipes-devtools/edk2-basetools/edk2-basetools_202211.bb
> > @@ -0,0 +1,24 @@
> > +# Install EDK2 Base Tools in native sysroot. Currently the BaseTools are not
> > +# built, they are just copied to native sysroot. This is sufficient for
> > +# generating UEFI capsules as it only depends on some python scripts. Other
> > +# tools need to be built first before adding to sysroot.
> > +
> > +DESCRIPTION = "EDK2 Base Tools"
> 
> This ^ should be SUMMARY
> 
> 
> > +LICENSE = "BSD-2-Clause-Patent"
> > +
> > +# EDK2
> > +SRC_URI = "git://github.com/tianocore/edk2.git;branch=master;protocol=https"
> > +LIC_FILES_CHKSUM = "file://License.txt;md5=2b415520383f7964e96700ae12b4570a"
> > +
> > +SRCREV = "fff6d81270b57ee786ea18ad74f43149b9f03494"
> > +
> > +S = "${WORKDIR}/git"
> > +
> > +RDEPENDS:${PN} += "python3-core"
> > +
> > +do_install () {
> > +    mkdir -p ${D}${bindir}/edk2-BaseTools
> > +    cp -r ${WORKDIR}/git/BaseTools/* ${D}${bindir}/edk2-BaseTools/
> 
> You could potentially have a host contamination warning here.
> 
> 
> > +}
> > +
> > +BBCLASSEXTEND = "native"
> > --
> > 2.17.1
> >
diff mbox series

Patch

diff --git a/meta-arm/recipes-devtools/edk2-basetools/edk2-basetools_202211.bb b/meta-arm/recipes-devtools/edk2-basetools/edk2-basetools_202211.bb
new file mode 100644
index 00000000..c80fdae2
--- /dev/null
+++ b/meta-arm/recipes-devtools/edk2-basetools/edk2-basetools_202211.bb
@@ -0,0 +1,24 @@ 
+# Install EDK2 Base Tools in native sysroot. Currently the BaseTools are not
+# built, they are just copied to native sysroot. This is sufficient for
+# generating UEFI capsules as it only depends on some python scripts. Other
+# tools need to be built first before adding to sysroot.
+
+DESCRIPTION = "EDK2 Base Tools"
+LICENSE = "BSD-2-Clause-Patent"
+
+# EDK2
+SRC_URI = "git://github.com/tianocore/edk2.git;branch=master;protocol=https"
+LIC_FILES_CHKSUM = "file://License.txt;md5=2b415520383f7964e96700ae12b4570a"
+
+SRCREV = "fff6d81270b57ee786ea18ad74f43149b9f03494"
+
+S = "${WORKDIR}/git"
+
+RDEPENDS:${PN} += "python3-core"
+
+do_install () {
+    mkdir -p ${D}${bindir}/edk2-BaseTools
+    cp -r ${WORKDIR}/git/BaseTools/* ${D}${bindir}/edk2-BaseTools/
+}
+
+BBCLASSEXTEND = "native"