All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tom Rini <tom_rini@mentor.com>
To: openembedded-devel@lists.openembedded.org
Subject: Re: openembedded with a prebuilt external toolchain
Date: Thu, 10 Feb 2011 13:58:27 -0700	[thread overview]
Message-ID: <4D545173.8080904@mentor.com> (raw)
In-Reply-To: <4D544976.6010800@drewtech.com>

On 02/10/2011 01:24 PM, Joey Oravec wrote:
> Hi,
>
> I'm trying to use openembedded with an external prebuilt toolchain. The
> docs at http://docs.openembedded.org/usermanual/usermanual.html mark
> this as TODO so maybe we can "do" that in this email chain. :)
>
> Marvell provides a *.tar.gz with gcc and C libraries, which I've
> uncompressed somewhere in my home directory. My goal is to build a root
> filesystem with some assortment of packages, but at this point I'm just
> trying "bitbake nano" which is the very first example in the Getting
> Started. That seems like a logical start to board bring-up.
>
> I'm assuming that I need to add some lines to build/conf/local.conf that
> tell OE to make no attempt at building its own compiler or C library (it
> can't anyway, it doesn't know my chip!) and to call my pre-built one
> instead. It looks like I'd want to add a few lines about TOOLCHAIN_*,
> but that uses a recipe for external toolchain, which assumes that it has
> some meta toolchain, and I'm floundering and getting nowhere. Couldn't
> find any of these magic variables documented in the usermanual so I've
> been digging through recipes to learn any of this.
>
> Is it possible to add a few lines that tell OE the path and filename of
> my compiler? Or is it more complicated than that?

We talked about this a little on IRC and I provided the example of how 
to use the CodeSourcery recipes that exist today.  The marvell toolchain 
however will need it's own special love.  To start with, using the CSL 
recipe is roughly:
### CSL public ARM does <arch>-none-linux, so fill in the -none.
#TOOLCHAIN_VENDOR = "-none"
### CSL public ia32 does i686-pc-linux, so fill in the -pc.
#TOOLCHAIN_VENDOR = "-pc"

#### Bring in external-toolchain-csl.bb
#TOOLCHAIN_BRAND = "csl"
#TOOLCHAIN_TYPE = "external"

### Where the CSL version is installed.
#TOOLCHAIN_PATH = "/scratch/ia32-2010.09"
### Where inside the CSL install the target libraries exist.
#TOOLCHAIN_SYSPATH = "${TOOLCHAIN_PATH}/i686-pc-linux-gnu"
### Add tools to the PATH automatically.
#PATH_prepend = "${TOOLCHAIN_PATH}/bin:"

Now what you'll want to do is make an external-toolchain-marvell.bb and 
set TOOLCHAIN_BRAND to "marvell" and tweak TOOLCHAIN_VENDOR such that we 
go from what OE normally says TARGET_SYS is to what your tools actually 
say it is.  Then it's a matter of tweaking the contents of 
external-toolchain-marvell.bb to copy the right things out of the 
marvell install and into where OE wants them.  In this regard, the -csl 
recipe may be more instructive than the -generic recipe as the -generic 
recipe (along with external-toolchain.bb) are targeted at toolchains 
exported by OE and thus require little mangling to work.

-- 
Tom Rini
Mentor Graphics Corporation



  reply	other threads:[~2011-02-10 20:59 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-02-10 20:24 openembedded with a prebuilt external toolchain Joey Oravec
2011-02-10 20:58 ` Tom Rini [this message]
2011-02-10 23:22   ` Joey Oravec
2011-02-10 23:35     ` Tom Rini
2011-02-14 20:14       ` Joey Oravec
2011-03-02 16:02         ` Denys Dmytriyenko

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=4D545173.8080904@mentor.com \
    --to=tom_rini@mentor.com \
    --cc=openembedded-devel@lists.openembedded.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.