Subject: Re: gcc/binutils/gdb import proposal
To: Todd Vierling <tv@pobox.com>
From: Rick Byers <rickb@BigScaryChildren.net>
List: tech-toolchain
Date: 10/22/2000 10:35:48
Hi Todd.
I haven't seen any messages from you about this for a while (maybe I
missed something - I've been a little out of touch lately). I for one am
really excited about your work in this area. Whats the status on this?
Thanks a lot!
Rick
On Sun, 16 Jul 2000, Todd Vierling wrote:
> Date: Sun, 16 Jul 2000 16:32:27 -0400 (EDT)
> From: Todd Vierling <tv@pobox.com>
> To: tech-toolchain@netbsd.org
> Subject: gcc/binutils/gdb import proposal
>
> Here's a revision of the toolchain update layout, available for comment.
> No date is yet set for the import, as I do anticipate several comments. 8^)
>
> Note that this will require careful importing, for which I'll create some
> scripts to make the job less human-error-prone--and have a checked-in text
> file documenting the procedures for the future (...so we don't end up with a
> frazzled mess like we have now in gnu/dist).
>
> ***** SOURCE LAYOUT *****
>
> gnusrc/gnu/dist/toolchain/
>
> Top level directory. This keeps the tools that can be built
> as a "bulk cross-tools unit" together.
>
> The files in this directory, and in config/, will be taken on a
> datestamped basis from source.redhat.com:/cvs/src
> (formerly sourceware.cygnus.com). This keeps us as up to date as
> possible with config.guess and the other "non-source-specific" files.
>
> Once integrated, a complete set of cross tools should be creatable
> on any host platform simply by using this directory tree.
>
> gnusrc/gnu/dist/toolchain/{gcc,contrib,INSTALL,install,
> libio,libstdc++,libobjc,libchill,libf2c}
>
> These will come from gcc-2.95.2, and track gcc versions.
>
> The testsuites will be imported, and a test Makefile structure
> created to make use of them.
>
> gnusrc/gnu/dist/toolchain/{libjava,boehm-gc,zip}
>
> These will come from libgcj-2.95.1, and track libgcj as it is updated
> alongside gcc. This will use the NetBSD-supplied zlib. I am
> researching the license on a "minizip" program to allow for the creation
> of the zip (jar) files with zlib without needing the infozip code.
>
> gnusrc/gnu/dist/toolchain/{bfd,opcodes,gas,ld,gprof,include,libiberty}
>
> These will come from binutils-2.10. The testsuites will be imported.
>
> gnusrc/gnu/dist/toolchain/{gdb,sim}
>
> These will come from gdb-5.0. gdb will use libedit's readline
> emulation.
>
> gnusrc/gnu/usr.bin/gcc/frontend/{cc,c++,cpp,c89,fort77,gcj}
> gnusrc/gnu/usr.bin/gcc/backend/{collect2,common,cc1,cc1plus,cc1obj,f771,jc1}
> gnusrc/gnu/usr.bin/gcc/runtime/{libgcc,libgccP,libgcj,libstdc++,
> libobjc,libchill}
>
> Build structure for gcc-2.95.2. "libgcc" is compiled -fpic;
> "libgccP" is compiled -fPIC, only on platforms needing an alternate.
>
> This layout comes from several requests to group gcc's build structure
> into one top-level tree.
>
> gnusrc/gnu/usr.bin/binutils/{addr2line,ar,as,c++filt,common,gprof,ld,nm,
> objcopy,objdump,ranlib,size,strings,strip,
> libbfd,libopcodes,gdb}
>
> Build structure for binutils-2.10 and gdb-5.0. gdb is grouped here
> based on two factors (grouping of the libbfd-using programs, and the
> fact that Cygnus/Redhat actually maintains binutils and gdb together
> in the same source tree).
>
> Note the split of libbfd and libopcodes; some binutils tools
> do not need the overhead of resolving the libopcodes objects.
>
> ***** INSTALL LAYOUT *****
>
> /usr/bin/
>
> Contains all command line executable programs.
>
> /usr/lib/{libbfd,libopcodes}.so
>
> Shared objects for commonly reused code.
>
> /usr/libexec/gcc/
>
> Contains collect2, cc1*, f771, and jc1.
>
> /usr/share/ldscripts/
>
> Contains ld scripts for all platforms.
>
> /usr/share/locale/*/
>
> Contains the multilanguage files for gcc and binutils.
>
> --
> -- Todd Vierling (tv@pobox.com)
>
----
Rick Byers - rickb@BigScaryChildren daugt net
University of Waterloo, Computer Science
Ontario, Canada