               The Debian GNU Compiler Collection setup
               ========================================

Please see the README.Debian in /usr/share/doc/gcc, contained in the
gcc package for a description of the setup of the different compiler
versions.

For general discussion about the Debian toolchain (GCC, glibc, binutils)
please use the mailing list debian-toolchain@lists.debian.org; for GCC
specific things, please use debian-gcc@lists.debian.org.  When in doubt
use the debian-toolchain ML.


Maintainers of these packages
-----------------------------

Matthias Klose <doko@debian.org>
Ludovic Brenta <ludovic@ludovic-brenta.org>	(gnat)
Iain Buclaw <ibuclaw@ubuntu.com>		(gdc)
Aurelien Jarno <aurel32@debian.org>		(mips*-linux)
Aurelien Jarno <aurel32@debian.org>		(s390X*-linux)

The following ports lack maintenance in Debian: powerpc, ppc64,
sparc, sparc64 (unmentioned ports are usually handled by the Debian
porters).

Former and/or inactive maintainers of these packages
----------------------------------------------------

Falk Hueffner <falk@debian.org>			(alpha-linux)
Ray Dassen <jdassen@debian.org>
Jeff Bailey <jbailey@nisa.net>			(hurd-i386)
Joel Baker <fenton@debian.org>			(netbsd-i386)
Randolph Chung <tausq@debian.org>		(ia64-linux)
Philip Blundell <pb@debian.org>			(arm-linux)
Ben Collins <bcollins@debian.org>		(sparc-linux)
Dan Jacobowitz <dan@debian.org>			(powerpc-linux)
Thiemo Seufer <ths@networkno.de>		(mips*-linux)
Matt Taggart <taggart@carmen.fc.hp.com>		(hppa-linux)
Gerhard Tonn <GerhardTonn@swol.de>		(s390-linux)
Roman Zippel <zippel@linux-m68k.org>		(m68k-linux)
Arthur Loiret <arthur.loiret@gmail.com>		(gdc)

===============================================================================


rename-info-files:
  Allow transformations on info file names. Reference the
  transformed info file names in the texinfo files.

pr67281-doc:
  Backport PR target/67281 from the trunk (HTM fixes)

gcc-gfdl-build:
  Build a dummy s-tm-texi without access to the texinfo sources

gcc-textdomain:
  Set gettext's domain and textdomain to the versioned package name.

gcc-driver-extra-langs:
  Add options and specs for languages that are not built from a source
  (but built from separate sources).

gcc-hash-style-gnu:
  Link using --hash-style=gnu (aarch64, alpha, amd64, armel, armhf, ia64,
  i386, powerpc, ppc64, s390, sparc)

libstdc++-pic:
  Build and install libstdc++_pic.a library.

libstdc++-doclink:
  adjust hrefs to point to the local documentation

libstdc++-man-3cxx:
  Install libstdc++ man pages with suffix .3cxx instead of .3

libstdc++-test-installed:
  Add support to run the libstdc++-v3 testsuite using the
  installed shared libraries.

libjava-stacktrace:
  libgcj: Lookup source file name and line number in separated
  debug files found in /usr/lib/debug

libjava-jnipath:
  - Add /usr/lib/jni and /usr/lib/<multiarch>/jni to java.library.path.
  - When running the i386 binaries on amd64, look in
  - /usr/lib32/gcj-x.y and /usr/lib32/jni instead.

libjava-sjlj:
  Don't try to use _Unwind_Backtrace on SJLJ targets.
  See bug #387875, #388505, GCC PR 29206.

libjava-disable-plugin:
  Don't build the gcjwebplugin, even when configured with --enable-plugin

alpha-no-ev4-directive:
  never emit .ev4 directive.

boehm-gc-getnprocs:
  boehm-gc/pthread_support.c (GC_get_nprocs): Use sysconf as fallback.

note-gnu-stack:
  Add .note.GNU-stack sections for gcc's crt files, libffi and boehm-gc
  Taken from FC.

libgomp-omp_h-multilib:
  Fix up omp.h for multilibs.

sparc-force-cpu:
  On sparc default to ultrasparc (v9a) in 32bit mode

gccgo-version:
  Omit the subminor number from the go libdir

pr47818:
  Fix PR ada/47818: Pragma Assert is rejected with No_Implementation_Pragmas restriction.

pr49944:
  apply proposed patch for PR ada/49444.

gcc-base-version:
  Set base version to 4.8, introduce full version 4.8.x.

libgo-testsuite:
  Only run the libgo testsuite for flags configured in RUNTESTFLAGS

gcc-target-include-asm:
  Search $(builddir)/sys-include for the asm header files

libgo-revert-timeout-exp:

arm-sanitizer:
  Enable libsanitizer on ARM.

libgo-setcontext-config:
  libgo: Overwrite the setcontext_clobbers_tls check on mips*

pr57211:
  Fix PR c++/57211, don't warn about unused parameters of defaulted functions.

kfreebsd-unwind:
  DWARF2 EH unwinding support for AMD x86-64 and x86 KFreeBSD.

libgcc-no-limits-h:
  Don't include <limits.h> in libgcc/libgcc2.c.

kfreebsd-boehm-gc:
  boehm-gc: use mmap instead of brk also on kfreebsd-*.

hurd-boehm-gc:

pr49847:
  Proposed patch for PR rtl-optimization/49847 (cc0 targets).

libffi-m68k:
  Apply #660525 fix to in-tree libffi

m68k-picflag:
  backport of trunk r204854
  fixes relocation errors when linking large libs (smokeqt, python-qt4)

sys-auxv-header:
  Check for the sys/auxv.h header file.

go-use-gold:
  Pass -fuse-ld=gold to gccgo on targets supporting -fsplit-stack

go-testsuite:
  Skip Go testcase on AArch64 which hangs on the buildds.

pr57363:
  Fix PR libgcc/57363, taken from the trunk.

fix-ffi_call_VFP-with-no-VFP-argument:
  armhf: Fix ffi_call_VFP with no VFP arguments.

pr61106:
  Proposed patch for PR driver/61106

pr61126:
  Proposed patch for PR driver/61126.

libitm-aarch64:
  Build libitm on AArch64, patch taken from the trunk.

pr61046:
  Fix PR c++/61046, taken from the trunk.

pr61336:
  Fix PR target/61336, taken from the trunk.

gcc-setmultilib-fix:

pr61841:
  Proposed backport for PR libstdc++/61841

pr62032:
  Backport PR lto/62032.

pr59586:
  Fix PR tree-optimization/59586, segfault with -Ofast -floop-parallelize-all

pr62255:
  Backport PR c++/62255 (rejects-valid)

pr62258:
  PR libstdc++/62258, fix for std::uncaught_exception.

pr65711:
  Fix PR target/65711 (ARM32), don't pass '-dynamic-linker' when '-shared' is used.

pr56158:
  Fix PR libstdc++/56158, taken from the trunk

isl-0.15:
  Build using isl 0.15 and cloog 0.18.4

pr67281:
  Backport PR target/67281 from the trunk (HTM fixes)

gdc-4.8:
  This implements D language support in the GCC back end, and adds
  relevant documentation about the GDC front end (code part).

gdc-versym-cpu:
  Implements D CPU version conditions.

gdc-versym-os:
  Implements D OS version conditions.

gdc-frontend-posix:
  Fix build of the D frontend on the Hurd and KFreeBSD.

gdc-4.8-doc:
  This implements D language support in the GCC back end, and adds
  relevant documentation about the GDC front end (documentation part).

gdc-driver-nophobos:
  Modify gdc driver to have no libphobos by default.

disable-gdc-tests:
  Disable D tests, hang on many buildds

gcc-sysroot:
  Allow building --with-sysroot=/

goarch-aarch64:
  Introduce the arm64 goarch.

libgo-explicit-reservation:
  Fix statically linked gccgo binaries on AArch64.

ada-kfreebsd:
  add support for GNU/kFreeBSD.

arm-multilib-soft-cross:
  ARM hard/soft float multilib support

arm-multilib-defaults:
  Set MULTILIB_DEFAULTS for ARM multilib builds

cross-fixes:
  Fix the linker error when creating an xcc for ia64

cross-install-location:

gdc-cross-install-location:

gcc-ice-hack:
  Retry the build on an ice, save the calling options and preprocessed
  source when the ice is reproducible.

gcc-ice-dump:
  For ICEs, dump the preprocessed source file to stderr
  when in a distro build environment.

gcc-ice-apport:
  Report an ICE to apport (if apport is available
  and the environment variable GCC_NOAPPORT is not set)

libjava-fixed-symlinks:
  Remove unneed '..' elements from symlinks in JAVA_HOME

libffi-ro-eh_frame_sect:
  PR libffi/47248, force a read only eh frame section.

gcc-multiarch:
  - Remaining multiarch patches, not yet submitted upstream.
  - Add MULTIARCH_DIRNAME definitions for multilib configurations,
  which are used for the non-multilib builds.

libjava-multiarch:
  Install libjava libraries to multiarch location

libjava-nobiarch-check:
  For biarch builds, disable the testsuite for the non-default architecture
  for runtime libraries, which are not built by default (libjava).

config-ml:
  - Disable some biarch libraries for biarch builds.
  - Fix multilib builds on kernels which don't support all multilibs.

cross-no-locale-include:
  Don't add /usr/local/include for cross compilers. Assume that
  /usr/include is ready for multiarch, but not /usr/local/include.

cross-biarch:
  Fix the location of target's libs in cross-build for biarch

gcc-multilib-multiarch:
  Don't auto-detect multilib osdirnames.

gcc-as-needed:
  On linux targets pass --as-needed by default to the linker.

mips-fix-loongson2f-nop:
  On mips, pass -mfix-loongson2f-nop to as, if -mno-fix-loongson2f-nop
  is not passed.

libgomp-kfreebsd-testsuite:
  Disable lock-2.c test on kfreebsd-*

gcc-default-ssp:
  Turn on -fstack-protector by default for C, C++, ObjC, ObjC++.
  Build libgcc using -fno-stack-protector.

gcc-default-format-security:
  Turn on -Wformat -Wformat-security by  default for C, C++, ObjC, ObjC++.

gcc-default-fortify-source:
  Turn on -D_FORTIFY_SOURCE=2 by default for C, C++, ObjC, ObjC++,
  if the optimization level is > 0

gcc-default-relro:
  Turn on -Wl,-z,relro by default.

testsuite-hardening-format:
  Description: use -Wno-format on tests that cannot be adjusted other ways.
  Author: Kees Cook <kees@ubuntu.com>
  Ubuntu: https://bugs.launchpad.net/bugs/344502

testsuite-hardening-printf-types:
  Description: adjust/standardize printf types to avoid -Wformat warnings.
  Author: Kees Cook <kees@ubuntu.com>
  Ubuntu: https://bugs.launchpad.net/bugs/344502

testsuite-hardening-updates:
  Fix some gcc and g++ testcases to pass with hardening defaults
