* [PATCH v2] arm-toolchain: merge binary toolchain recipes
@ 2020-06-02 0:05 Jon Mason
2020-06-02 6:57 ` Diego Sueiro
0 siblings, 1 reply; 5+ messages in thread
From: Jon Mason @ 2020-06-02 0:05 UTC (permalink / raw)
To: meta-arm
Merge the majority of the binary toolchain recipes for building on an
x86 host into a common include file.
Also, found and fixed an error with both install commands where the name
was double nested on the copy. For example,
/usr/share/arm-none-eabi/arm-none-eabi/ due to the way it was being
copied.
Signed-off-by: Jon Mason <jdmason@kudzu.us>
---
.../gcc-aarch64-none-elf_9.2-2019.12.bb | 27 ++-----------------
.../gcc-arm-none-eabi_9-2019-q4-major.bb | 27 ++-----------------
.../external-arm-toolchain/gcc-x86host.inc | 26 ++++++++++++++++++
3 files changed, 30 insertions(+), 50 deletions(-)
create mode 100644 meta-arm-toolchain/recipes-devtools/external-arm-toolchain/gcc-x86host.inc
diff --git a/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/gcc-aarch64-none-elf_9.2-2019.12.bb b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/gcc-aarch64-none-elf_9.2-2019.12.bb
index 2ec0f9c..1e4689c 100644
--- a/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/gcc-aarch64-none-elf_9.2-2019.12.bb
+++ b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/gcc-aarch64-none-elf_9.2-2019.12.bb
@@ -1,6 +1,8 @@
# Copyright (C) 2020 Texas Instruments Inc.
# Released under the MIT license (see COPYING.MIT for the terms)
+require gcc-x86host.inc
+
SUMMARY = "Baremetal GCC for Aarch64 processors"
LICENSE = "GPL-3.0-with-GCC-exception & GPLv3"
@@ -11,28 +13,3 @@ PROVIDES = "virtual/aarch64-none-elf-gcc"
SRC_URI = "https://developer.arm.com/-/media/Files/downloads/gnu-a/9.2-2019.12/binrel/gcc-arm-${PV}-x86_64-aarch64-none-elf.tar.xz"
SRC_URI[sha256sum] = "36d2cbe7c2984f2c20f562ac2f3ba524c59151adfa8ee10f1326c88de337b6d1"
-
-S = "${WORKDIR}/gcc-arm-${PV}-x86_64-aarch64-none-elf"
-
-COMPATIBLE_HOST = "x86_64.*-linux"
-
-do_install() {
- install -d ${D}${datadir}/aarch64-none-elf/
- cp -r ${S}/. ${D}${datadir}/aarch64-none-elf/
-
- install -d ${D}${bindir}
- # Symlink all executables into bindir
- for f in ${D}${datadir}/aarch64-none-elf/bin/aarch64-none-elf-*; do
- lnr $f ${D}${bindir}/$(basename $f)
- done
-}
-
-FILES_${PN} = "${datadir} ${bindir}"
-
-INSANE_SKIP_${PN} = "already-stripped libdir staticdev file-rdeps"
-
-INHIBIT_SYSROOT_STRIP = "1"
-INHIBIT_PACKAGE_STRIP = "1"
-INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/gcc-arm-none-eabi_9-2019-q4-major.bb b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/gcc-arm-none-eabi_9-2019-q4-major.bb
index 84f6dba..a36f0aa 100644
--- a/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/gcc-arm-none-eabi_9-2019-q4-major.bb
+++ b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/gcc-arm-none-eabi_9-2019-q4-major.bb
@@ -1,6 +1,8 @@
# Copyright (C) 2019 Garmin Ltd. or its subsidiaries
# Released under the MIT license (see COPYING.MIT for the terms)
+require gcc-x86host.inc
+
SUMMARY = "Baremetal GCC for ARM-R and ARM-M processors"
LICENSE = "GPL-3.0-with-GCC-exception & GPLv3"
@@ -12,28 +14,3 @@ SRC_URI = "https://developer.arm.com/-/media/Files/downloads/gnu-rm/9-2019q4/${B
SRC_URI[md5sum] = "fe0029de4f4ec43cf7008944e34ff8cc"
SRC_URI[sha256sum] = "bcd840f839d5bf49279638e9f67890b2ef3a7c9c7a9b25271e83ec4ff41d177a"
-
-S = "${WORKDIR}/${BPN}-${PV}"
-
-COMPATIBLE_HOST = "x86_64.*-linux"
-
-do_install() {
- install -d ${D}${datadir}/arm-none-eabi/
- cp -r ${S}/. ${D}${datadir}/arm-none-eabi/
-
- install -d ${D}${bindir}
- # Symlink all executables into bindir
- for f in ${D}${datadir}/arm-none-eabi/bin/arm-none-eabi-*; do
- lnr $f ${D}${bindir}/$(basename $f)
- done
-}
-
-FILES_${PN} = "${datadir} ${bindir}"
-
-INSANE_SKIP_${PN} = "already-stripped libdir staticdev file-rdeps"
-
-INHIBIT_SYSROOT_STRIP = "1"
-INHIBIT_PACKAGE_STRIP = "1"
-INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/gcc-x86host.inc b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/gcc-x86host.inc
new file mode 100644
index 0000000..332ffab
--- /dev/null
+++ b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/gcc-x86host.inc
@@ -0,0 +1,26 @@
+S = "${WORKDIR}/${BPN}-${PV}"
+
+COMPATIBLE_HOST = "x86_64.*-linux"
+
+FILES_${PN} = "${datadir} ${bindir}"
+
+BINNAME = "${@d.getVar("BPN").strip("gcc-")}"
+
+do_install() {
+ install -d ${D}${datadir}/${BINNAME}/
+ cp -r ${S}/. ${D}${datadir}/
+
+ install -d ${D}${bindir}
+ # Symlink all executables into bindir
+ for f in ${D}${datadir}/${BINNAME}/bin/${BINNAME}-*; do
+ lnr $f ${D}${bindir}/$(basename $f)
+ done
+}
+
+INSANE_SKIP_${PN} = "already-stripped libdir staticdev file-rdeps"
+
+INHIBIT_SYSROOT_STRIP = "1"
+INHIBIT_PACKAGE_STRIP = "1"
+INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
+
+BBCLASSEXTEND = "native nativesdk"
--
2.20.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH v2] arm-toolchain: merge binary toolchain recipes
2020-06-02 0:05 [PATCH v2] arm-toolchain: merge binary toolchain recipes Jon Mason
@ 2020-06-02 6:57 ` Diego Sueiro
2020-06-02 10:16 ` Diego Sueiro
2020-06-02 12:11 ` Jon Mason
0 siblings, 2 replies; 5+ messages in thread
From: Diego Sueiro @ 2020-06-02 6:57 UTC (permalink / raw)
To: meta-arm
> diff --git
> a/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/gcc-x86host.inc
> b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/gcc-x86host.inc
> new file mode 100644
> index 0000000..332ffab
> --- /dev/null
> +++
> b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/gcc-x86host.inc
> @@ -0,0 +1,26 @@
> +S = "${WORKDIR}/${BPN}-${PV}"
As @Ross mentioned, this is already the default value for the S variable.
> +
> +COMPATIBLE_HOST = "x86_64.*-linux"
> +
> +FILES_${PN} = "${datadir} ${bindir}"
> +
> +BINNAME = "${@d.getVar("BPN").strip("gcc-")}"
> +
> +do_install() {
> + install -d ${D}${datadir}/${BINNAME}/
> + cp -r ${S}/. ${D}${datadir}/
> +
> + install -d ${D}${bindir}
> + # Symlink all executables into bindir
> + for f in ${D}${datadir}/${BINNAME}/bin/${BINNAME}-*; do
> + lnr $f ${D}${bindir}/$(basename $f)
> + done
> +}
> +
> +INSANE_SKIP_${PN} = "already-stripped libdir staticdev file-rdeps"
> +
> +INHIBIT_SYSROOT_STRIP = "1"
> +INHIBIT_PACKAGE_STRIP = "1"
> +INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
> +
> +BBCLASSEXTEND = "native nativesdk"
> --
> 2.20.1
>
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v2] arm-toolchain: merge binary toolchain recipes
2020-06-02 6:57 ` Diego Sueiro
@ 2020-06-02 10:16 ` Diego Sueiro
2020-06-02 11:05 ` [meta-arm] " Richard Purdie
2020-06-02 12:11 ` Jon Mason
1 sibling, 1 reply; 5+ messages in thread
From: Diego Sueiro @ 2020-06-02 10:16 UTC (permalink / raw)
To: meta-arm
On Tue, Jun 2, 2020 at 07:57 AM, Diego Sueiro wrote:
>
>
> > diff --git
> > a/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/gcc-x86host.inc
> > b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/gcc-x86host.inc
> > new file mode 100644
> > index 0000000..332ffab
> > --- /dev/null
> > +++
> > b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/gcc-x86host.inc
> > @@ -0,0 +1,26 @@
> > +S = "${WORKDIR}/${BPN}-${PV}"
>
> As @Ross mentioned, this is already the default value for the S variable.
It seems that the documentation[1] needs to be updated since the S now defaults to "${WORKDIR}/${BP}" [2] :
[1] - https://www.yoctoproject.org/docs/current/mega-manual/mega-manual.html#var-S
[2] - http://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta/conf/bitbake.conf#n372
>
> > +
> > +COMPATIBLE_HOST = "x86_64.*-linux"
> > +
> > +FILES_${PN} = "${datadir} ${bindir}"
> > +
> > +BINNAME = "${@d.getVar("BPN").strip("gcc-")}"
> > +
> > +do_install() {
> > + install -d ${D}${datadir}/${BINNAME}/
> > + cp -r ${S}/. ${D}${datadir}/
> > +
> > + install -d ${D}${bindir}
> > + # Symlink all executables into bindir
> > + for f in ${D}${datadir}/${BINNAME}/bin/${BINNAME}-*; do
> > + lnr $f ${D}${bindir}/$(basename $f)
> > + done
> > +}
> > +
> > +INSANE_SKIP_${PN} = "already-stripped libdir staticdev file-rdeps"
> > +
> > +INHIBIT_SYSROOT_STRIP = "1"
> > +INHIBIT_PACKAGE_STRIP = "1"
> > +INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
> > +
> > +BBCLASSEXTEND = "native nativesdk"
> > --
> > 2.20.1
> >
> >
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [meta-arm] [PATCH v2] arm-toolchain: merge binary toolchain recipes
2020-06-02 10:16 ` Diego Sueiro
@ 2020-06-02 11:05 ` Richard Purdie
0 siblings, 0 replies; 5+ messages in thread
From: Richard Purdie @ 2020-06-02 11:05 UTC (permalink / raw)
To: Diego Sueiro, meta-arm
On Tue, 2020-06-02 at 03:16 -0700, Diego Sueiro wrote:
> On Tue, Jun 2, 2020 at 07:57 AM, Diego Sueiro wrote:
>
> >
> > > diff --git
> > > a/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/gcc-
> > > x86host.inc
> > > b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/gcc-
> > > x86host.inc
> > > new file mode 100644
> > > index 0000000..332ffab
> > > --- /dev/null
> > > +++
> > > b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/gcc-
> > > x86host.inc
> > > @@ -0,0 +1,26 @@
> > > +S = "${WORKDIR}/${BPN}-${PV}"
> >
> > As @Ross mentioned, this is already the default value for the S
> > variable.
>
> It seems that the documentation[1] needs to be updated since the S now defaults to "${WORKDIR}/${BP}" [2] :
>
> [1] - https://www.yoctoproject.org/docs/current/mega-manual/mega-manual.html#var-S
> [2] - http://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta/conf/bitbake.conf#n372
I'd note that BP = "${BPN}-${PV}" so it is essentially correct.
Cheers,
Richard
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [meta-arm] [PATCH v2] arm-toolchain: merge binary toolchain recipes
2020-06-02 6:57 ` Diego Sueiro
2020-06-02 10:16 ` Diego Sueiro
@ 2020-06-02 12:11 ` Jon Mason
1 sibling, 0 replies; 5+ messages in thread
From: Jon Mason @ 2020-06-02 12:11 UTC (permalink / raw)
To: Diego Sueiro; +Cc: meta-arm
On Mon, Jun 01, 2020 at 11:57:39PM -0700, Diego Sueiro wrote:
>
> > diff --git
> > a/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/gcc-x86host.inc
> > b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/gcc-x86host.inc
> > new file mode 100644
> > index 0000000..332ffab
> > --- /dev/null
> > +++
> > b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/gcc-x86host.inc
> > @@ -0,0 +1,26 @@
> > +S = "${WORKDIR}/${BPN}-${PV}"
>
> As @Ross mentioned, this is already the default value for the S variable.
I still saw it in the Poky tree. So, I thought it okay to keep in.
See meta/recipes-extended/logrotate/logrotate_3.16.0.bb:S = "${WORKDIR}/${BPN}-${PV}"
I'll remove it and do a v3.
Thanks,
Jon
>
> > +
> > +COMPATIBLE_HOST = "x86_64.*-linux"
> > +
> > +FILES_${PN} = "${datadir} ${bindir}"
> > +
> > +BINNAME = "${@d.getVar("BPN").strip("gcc-")}"
> > +
> > +do_install() {
> > + install -d ${D}${datadir}/${BINNAME}/
> > + cp -r ${S}/. ${D}${datadir}/
> > +
> > + install -d ${D}${bindir}
> > + # Symlink all executables into bindir
> > + for f in ${D}${datadir}/${BINNAME}/bin/${BINNAME}-*; do
> > + lnr $f ${D}${bindir}/$(basename $f)
> > + done
> > +}
> > +
> > +INSANE_SKIP_${PN} = "already-stripped libdir staticdev file-rdeps"
> > +
> > +INHIBIT_SYSROOT_STRIP = "1"
> > +INHIBIT_PACKAGE_STRIP = "1"
> > +INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
> > +
> > +BBCLASSEXTEND = "native nativesdk"
> > --
> > 2.20.1
> >
> >
>
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2020-06-02 12:11 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-06-02 0:05 [PATCH v2] arm-toolchain: merge binary toolchain recipes Jon Mason
2020-06-02 6:57 ` Diego Sueiro
2020-06-02 10:16 ` Diego Sueiro
2020-06-02 11:05 ` [meta-arm] " Richard Purdie
2020-06-02 12:11 ` Jon Mason
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.