ToolchainRoadmap

Differences between revisions 9 and 11 (spanning 2 versions)
Revision 9 as of 2005-04-25 01:04:49
Size: 1467
Editor: intern146
Comment:
Revision 11 as of 2005-04-25 07:24:36
Size: 2797
Editor: intern146
Comment: More notes from BOF
Deletions are marked like this. Additions are marked like this.
Line 24: Line 24:
 * 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
Line 32: Line 39:
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", "gij" default to 4.0
 * Enable ppc64 glibc (ready to upload)
 * 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)
 * Final massive rebuild to make sure that everything is builds correctly.
Line 33: Line 60:

glibc update can cause older applications to fail to run. Failures are usually linker-time failures, so low risk of runtime dataloss.
Line 36: Line 65:
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
Line 38: Line 72:
N/A
Line 39: Line 75:

Coordinating with Debian - confirm that they will follow the same library rename plan.

Toolchain Roadmap

Status

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", "gij" default to 4.0
  • Enable ppc64 glibc (ready to upload)
  • 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)
  • Final massive rebuild to make sure that everything is builds correctly.

Data Preservation and Migration

glibc update can cause older applications to fail to run. Failures are usually linker-time failures, so low risk of runtime dataloss.

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

N/A

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

ToolchainRoadmap (last edited 2008-08-06 16:34:44 by localhost)