From: "Denys Dmytriyenko" <denis@denix.org>
To: Jon Mason <jdmason@kudzu.us>
Cc: Diego Sueiro <diego.sueiro@arm.com>, meta-arm@lists.yoctoproject.org
Subject: Re: [meta-arm] [PATCH] arm-toolchain: gcc-aarch64-none-elf: Add recipe
Date: Thu, 28 May 2020 14:13:11 -0400 [thread overview]
Message-ID: <20200528181311.GQ17660@denix.org> (raw)
In-Reply-To: <20200528133559.GA25502@kudzu.us>
On Thu, May 28, 2020 at 09:36:00AM -0400, Jon Mason wrote:
> On Tue, May 26, 2020 at 10:59:34PM -0400, Denys Dmytriyenko wrote:
> > On Tue, May 26, 2020 at 09:40:18AM -0400, Jon Mason wrote:
> > > On Fri, May 22, 2020 at 07:17:47PM -0400, Denys Dmytriyenko wrote:
> > > > On Wed, May 20, 2020 at 10:12:59PM -0700, Diego Sueiro wrote:
> > > > > On Wed, May 20, 2020 at 09:47 AM, Denys Dmytriyenko wrote:
> > > > > > b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/gcc-aarch64-none-elf_9.2-2019.12.bb
> > > > > > @@ -0,0 +1,38 @@
> > > > > > +# Copyright (C) 2020 Texas Instruments Inc.
> > > > > > +# Released under the MIT license (see COPYING.MIT for the terms)
> > > > > > +
> > > > > > +SUMMARY = "Baremetal GCC for Aarch64 processors"
> > > > > > +LICENSE = "GPL-3.0-with-GCC-exception & GPLv3"
> > > >
> > > > <snip>
> > > >
> > > > > I see lots of commonalities (code duplication) with the
> > > > > gcc-arm-none-eabi_9-2019-q4-major.bb recipe. Isn't now a good opportunity to
> > > > > have a `.inc` to avoid this?
> > > >
> > > > Yes, there's lots of duplication in those 2 recipes. Unfortunately, there's
> > > > copyright in the original one and I cannot touch it w/o a lawyer. That's why
> > > > I don't like copyrights in recipes (nothing much to copyright there anyway)
> > >
> > > I'm confused. You mean the MIT license in
> > > gcc-arm-none-eabi_9-2019-q4-major.bb? If so, is it not the same as
> > > the license you reference above in your patch?
> > >
> > > > > The path inside the do_install can be easily controlled by a variable set
> > > > > from the recipes that are including it.
> > > >
> > > > Well, those are technical details I can handle quite easily - I've been doing
> > > > OE for 13+ years. But it is legal issues where I draw the line...
> > >
> > > Assuming it's the MIT license, and you are unwilling to do it, I can
> > > pull it in and make the common inc file.
> >
> > I've been discussing this with Joshua offline lately - give me a bit more time
> > to sort it out, hopefully I can come up with a solution. If not, I'll let you
> > know. Thanks.
> >
> > --
> > Denys
>
> 100% untested, but I think the following might work
Thanks, Jon. This is a step in the right direction, but I see you define NAME
variable and a common do_install that uses it, but you didn't remove specific
do_install versions from the corresponding recipes...
Also, for this commit you'd have to accept my original patch submission to add
aarch64 version. Or do you plan to squash them?
Denys
> commit aa673cf5cb64ddb7d91a6281556e9d02daa78546
> Author: Jon Mason <jdmason@kudzu.us>
> Date: Thu May 28 09:33:17 2020 -0400
>
> Unification of recipes
>
> Signed-off-by: Jon Mason <jdmason@kudzu.us>
>
> 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..dfb6180 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
> @@ -14,7 +14,6 @@ SRC_URI[sha256sum] = "36d2cbe7c2984f2c20f562ac2f3ba524c59151adfa8ee10f1326c88de3
>
> S = "${WORKDIR}/gcc-arm-${PV}-x86_64-aarch64-none-elf"
>
> -COMPATIBLE_HOST = "x86_64.*-linux"
>
> do_install() {
> install -d ${D}${datadir}/aarch64-none-elf/
> @@ -27,12 +26,3 @@ do_install() {
> 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..4368e85 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
> @@ -13,10 +13,6 @@ 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/
> @@ -27,13 +23,3 @@ do_install() {
> 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..67dbd19
> --- /dev/null
> +++ b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/gcc-x86host.inc
> @@ -0,0 +1,27 @@
> +
> +S = "${WORKDIR}/${BPN}-${PV}"
> +
> +COMPATIBLE_HOST = "x86_64.*-linux"
> +
> +FILES_${PN} = "${datadir} ${bindir}"
> +
> +NAME = "${BPN}".strip("gcc-")
> +
> +do_install() {
> + install -d ${D}${datadir}/${NAME}/
> + cp -r ${S}/. ${D}${datadir}/${NAME}/
> +
> + install -d ${D}${bindir}
> + # Symlink all executables into bindir
> + for f in ${D}${datadir}/${NAME}/bin/${NAME}-*; 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"
>
next prev parent reply other threads:[~2020-05-28 18:13 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-05-20 8:47 [PATCH] arm-toolchain: gcc-aarch64-none-elf: Add recipe Denys Dmytriyenko
2020-05-21 5:12 ` Diego Sueiro
2020-05-22 23:17 ` [meta-arm] " Denys Dmytriyenko
2020-05-26 13:40 ` Jon Mason
2020-05-27 2:59 ` Denys Dmytriyenko
2020-05-28 13:36 ` Jon Mason
2020-05-28 18:13 ` Denys Dmytriyenko [this message]
2020-05-28 20:44 ` Jon Mason
2020-05-28 21:10 ` Denys Dmytriyenko
2020-05-28 23:13 ` Jon Mason
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200528181311.GQ17660@denix.org \
--to=denis@denix.org \
--cc=diego.sueiro@arm.com \
--cc=jdmason@kudzu.us \
--cc=meta-arm@lists.yoctoproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.