HEADS UP! Major GCC surgery being committed in a little while.
Matthew Dillon
dillon at apollo.backplane.com
Thu Jan 15 23:17:48 PST 2004
In the next hour or two I will be committing some major GCC surgery.
Basically what will be happening is that all the compiler-specific
data files and binaries will be moved into named subdirectories.
/usr/libdata/gcc will move to /usr/libdata/gcc2
/usr/libdata/ldscripts will move to /usr/libdata/gcc2/ldscripts
/usr/libexec/{all_gcc_binaries} -> /usr/libexec/gcc2/*
/usr/libexec/elf/* -> /usr/libexec/gcc2/elf/*
and so forth.
/usr/bin/{compiler-related-binaries} will undergo a major overhaul.
Some of the compiler support binaries in /usr/bin are direct install
targets. These will be moved into /usr/bin/gcc2.
All compiler support binaries in /usr/bin... the ones that were both
direct install AND the ones that were hardlinked to objformat will now
*ALL* be hardlinked to objformat, and objformat will exec() the correct
path.
We are implementing multiple compiler support. Eventually the
objformat wrapper will detect a compiler selection option and the
new one already understands a GCCVER environment variable. The
goal is going to be to be able to support both gcc2 and gcc3 in
the base system, tendra, and other compilers with nothing more then
a simple environment variable or compiler option.
WHAT DO YOU NEED TO DO? David Rhodus and I will be doing additional
work and life-testing ports and other things tomorrow. Theoretically
the only thing YOU need to do is when you do a full buildworld and
installworld is to also be sure to also install /usr/src/etc/rc.d/ldconfig
into /etc/rc.d. This is because libstdc++ is currently in a
per-compiler install dir.
NOTE: This material has not been committed yet so do not perform these
steps tonight! Do it tomorrow. I intend to commit tonight after I
finish bootstrap and buildworld tests.
-Matt
More information about the Kernel
mailing list