tech-toolchain archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

default TOOLDIR

In article <> on 
source-changes wrote:

> Something I forgot to say in the log message is that the new way is
>       make cleandir
>       make obj in tools directory
>       make and install tools
>       make obj in entire tree
>       the rest
> while the old way was
>       make cleandir
>       make obj in entire tree
>       make and install tools
>       the rest

BTW, how is the default TOOLDIR determined even in the old way?

If we don't have /usr/src/obj at the first build,
it seems to be /usr/src/tooldir.${host_ostype}.

At the second build, we already have /usr/src/obj
because the first build has created it.
In that case try_set_TOOLDIR() still returns
created at the first, but later $(getmakevar TOOLDIR) returns
then whole tools are built again in the new objdir.

If we have /usr/src/obj at the first build, tools are installed into
/usr/src/obj/tooldir.${host_ostype} as per $(getmakevar TOOLDIR).
But if the native make isn't bmake, nobomb_getmakevar() always fails
because it doesn't check that tooldir in the objdir,
so always bootstrap nbmake is rebuilt even on the second build.
(I see it on Cygwin)

- Should existing /usr/src/tooldir.${host_ostype} be prior to
  /usr/src/obj/tooldir.${host_ostype} returend by getmakevar()?
  Or should we create /usr/src/obj (or obj.${MACHINE}) earlier
  for proper default TOOLDIR?

- Should we also check
  ${guess_TOOLDIR}/obj/bin/${toolprefix}make and
  in try_set_TOOLDIR()?

Izumi Tsutsui

Home | Main Index | Thread Index | Old Index