ToolchainRoadmap
Toolchain Roadmap
Status
Created: Date(2005-04-24T00:11:33Z) by MattZimmermanBR
Priority: HighPriorityBR
People: MatthiasKloseLead, JeffBaileySecondBR
Contributors: MattZimmermanBR
Interested: JimMcQuillan BR
Status: BrainDump, BreezyGoal, UduBof, DistroSpecificationBR
Packages: BR
Depends: BR
UduSessions: 1, 4, 8, etc BR
Introduction
Review toolchain status and strategy for Breezy
Rationale
- Much improved Java support.
- Better error reporting from C and C++ frontend
- Fortran 90 support
- Better optimisations from C compiler
- Faster compilation
- Better standards compliance
Scope and Use Cases
- gcc-4.0
- g++-4.0 and associated ABI transition
- glibc 2.3.5
Implementation Plan
Already done:
- Change "gcc" default to 4.0
- Change "g77" default to 3.4
- change "cpp" default to 4.0
- Upload glibc-2.3.5
- Change powerpc, ia64 to nptl-only
TODO:
- Change "g++" default to 4.0
- - Rename library packages to deal with ABI break.
- Change "gcj" default to 4.0
- Enable ppc64 glibc
- Change sparc to nptl-only
- Add to Breezy release notes intention to drop linuxthreads for remaining arch's.
- Drop gcc-2.95 (also means dropping chill)
- Look at tweaking gcc wrapper to look for archaic gcc build options (-O6, etc.)
- Binutils update (Sparc64 TLS support)
Data Preservation and Migration
Packages Affected
All packages to some degree:
- o Poorly written C applications that don't work with stricter parser o Poorly written C++ applications that don't work with stricter parser
User Interface Requirements
Outstanding Issues
Coordinating with Debian - confirm that they will follow the same library rename plan.
UDU BOF Agenda
- Status update (some work will be done prior to UDU)
- C++ ABI transition plan (if transitions are still pending)
- libssp and GCC 4.0 ?
UDU Pre-Work
Transition plan http://www.ubuntulinux.org/wiki/BreezyToolchainTransition
- Prepare packages of GCC-4.0 (currently in experimental), glibc (Done, uploaded)
- PowerPC64 biarch support
Import of known FTBFS GCC-4.0 reports from unstable, for universe see http://www.ubuntulinux.org/wiki/UniverseCxxTransition (Done)
- Determine order of library updates