more pedantry: what is the purpose of ${PREFIX}/${TARGET}?

Robert P. J. Day
Wed Sep 28 14:32:00 GMT 2005

On Wed, 28 Sep 2005, Dan Kegel wrote:

> Robert P. J. Day wrote:
> >   working my way thru the crosstool code, i'm trying to understand the
> > layout of a build's "results" directory.  using my example again, i
> > get a results directory with the structure:
> >
> >   results/
> >     gcc-4.0.1-glibc-2.3.5/		TOOLCOMBO
> >       sh3-unknown-linux-gnu/		TARGET
> >         ... the actual toolchain and intermediate stuff here ...
> >
> > with the variable
> >
> >   PREFIX=<results dir>/${TOOLCOMBO}/${TARGET}
> >
> > fair enough thus far but it's not clear why there's yet *another*
> > subdirectory there with the name:
> >
> >   ${PREFIX}/${TARGET}
> >
> > which means the directory "sh3-unknown-linux-gnu" has a subdirectory
> > with the same name, which would seem kind of redundant.
> I wasn't quite sure multiple installations of gcc for
> different targets could really coexist in the same PREFIX,
> so I use a different PREFIX for each.
> Once we verify this works, we can set PREFIX to simply
> <results dir>/${TOOLCOMBO}
> I'm pretty sure there are a couple of loose ends that
> keep this from working as intended for all versions of
> gcc.

ok, that makes sense, since it would agree philosophically with karim
yaghmour's treatment of those variables, where ${PREFIX} is a generic
dumping ground for results, and ${TARGET} further identifies the
actual target architecture.

(i realize crosstool has no obligation to follow yaghmour's usage, but
it does make it easier to understand what's going on when they match.)

i also found a web page that helps tremendously in understanding the
underlying processes:

that page does, of course, reference crosstool.  more later.


Want more information?  See the CrossGCC FAQ,
Want to unsubscribe? Send a note to

More information about the crossgcc mailing list