I am sponsoring this fasttrack for Craig Mohrman.
The project team is requesting a minor release binding.
- Don
Template Version: @(#)sac_nextcase 1.66 04/17/08 SMI
This information is Copyright 2008 Sun Microsystems
1. Introduction
1.1. Project/Component Working Name:
Move gcc and binutils from /usr/sfw/bin to /usr/bin
1.2. Name of Document Author/Supplier:
Author: Craig Mohrman
1.3 Date of This Document:
13 June, 2008
4. Technical Description
Summary
This project moves GNU gcc and GNU binutils from /usr/sfw/bin
to /usr/bin.
4.1 Details
Please see the file MANIFEST in the materials directory for a
complete list of the file locations.
No software is being updated with this case. It is only being
moved. Commitment levels do not change.
In summary gcc and binutils will install into:
/usr/bin
/usr/gnu/bin (symlinks only)
/usr/lib
/usr/lib/{ARCH-64}
/usr/lib/gcc
/usr/sfw/bin (compatibility symlinks only)
/usr/share/locale
/usr/share/info
/usr/share/man
Here is a map of the moves:
ARCH is machine architecture.
OS is the OS version.
VERSION is the GNU version.
This supports multiple versions of the GNU utilities.
/usr/sfw/{ARCH-OS}/bin/* moves to /usr/gnu/bin/
{ ar, as, ld, nm, ranlib, strip }
/usr/sfw/bin/* moves to /usr/bin/
{ NOTE the non g-prefixed command: cpp
see notes below concerning cpp }
/usr/sfw/lib/* moves to /usr/lib/
/usr/sfw/lib/{ARCH-64}/* moves to /usr/lib/{ARCH-64}/
/usr/sfw/lib/gcc/{ARCH-OS}/{VERSION}/* moves to
/usr/lib/gcc/{ARCH-OS}/{VERSION}/
/usr/sfw/libexec/gcc/* moves to
/usr/lib/gcc/{ARCH-OS}/{VERSION}/
/usr/sfw/include/c++/{VERSION}/* moves to
/usr/lib/gcc/{ARCH-OS}/{VERSION}/c++/
/usr/sfw/{ARCH-OS}/lib/ldscripts/* moves to
/usr/lib/gcc/{ARCH-OS}/binutils-{VERSION}/lib/ldscripts/
/usr/sfw/lib/locale/* moves to /usr/share/locale/
/usr/sfw/share/info/* moves to /usr/share/info/
/usr/sfw/share/man/man1/* moves to /usr/share/man/man1/
/usr/sfw/share/man/man7/* moves to /usr/share/man/man7/
For compatibility these symlinks will be created:
/usr/sfw/bin/* symlinked to /usr/bin/* binaries.
By default the gcc build installs:
/usr/bin/c++ -> ./c++-3.4.3
/usr/bin/c++-3.4.3
The Sun DevPro compiler installs:
/usr/bin/c++filt -> /opt/SUNWspro/bin/c++filt
After discussions with DevPro engineers, we believe that
these names will be confusing to users. They have the
appearance of belonging to the same software.
To avoid possible confusion the following will NOT be installed:
/usr/bin/c++ -> ./c++-3.4.3
/usr/bin/c++-3.4.3
I will also add:
/usr/gnu/bin/c++ -> /usr/bin/g++
Also, by default the gcc build installs:
/usr/bin/cpp
While Sun installs:
/usr/lib/cpp
The 2 cpp's are functionality very different and not
inter-changeable. To help avoid confusion the following
symlink will be added:
/usr/bin/gcpp -> ./cpp
All other GNU utilities are prefixed with a 'g' for easy
identification.
In keeping with Solaris practices I am removing static
libraries when dynamic versions are also offered. Some
libraries (e.g., libiberty.a) do not offer dynamic versions.
4.2 BUG/RFE Number(s):
6620074 move gcc 3.4.3 from /usr/sfw/bin to /usr/bin
6600139 move GNU binutils from /usr/sfw/bin to /usr/bin
5. References
PSARC 2000/488: Solaris/Linux Commands Compatibility
PSARC 2005/185: Enabling Serendipitous Discovery
PSARC 2007/047: /usr/gnu
6. Resources and Schedule
6.4. Steering Committee requested information
6.4.1. Consolidation C-team Name:
SFW
6.5. ARC review type: FastTrack
6.6. ARC Exposure: open