--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.patch
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.patch
@@ -0,0 +1,372 @@
+# -*- makefile -*-
+# rules to patch the unpacked files in the source directory
+# ---------------------------------------------------------------------------
+# various rules to unpack addons and (un)apply patches.
+# 	- patch / apply-patches
+#	- unpatch / reverse-patches
+
+.NOTPARALLEL:
+
+patchdir	?= debian/patches
+
+# which patches should be applied?
+debian_patches = \
+	svn-updates
+
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+  debian_patches += \
+	svn-doc-updates
+  debian_patches += \
+	rename-info-files \
+	gcc-long-double-doc \
+
+#	gcc-vis-r116505-doc \
+#	gcc-vis-r116507-doc \
+
+endif
+
+debian_patches += \
+	gcc-version \
+	gcc-textdomain \
+	gcc-driver-extra-langs \
+	gcc-long-double \
+	libstdc++-long-double \
+	libstdc++-pic \
+	libstdc++-doclink \
+	gcc-hash-style-both \
+	gccbug \
+	gccbug-posix \
+	boehm-gc-backport \
+	boehm-gc-nocheck \
+	boehm-gc-getnprocs \
+	fastjar-version \
+	fastjar-doc \
+	libstdc++-doxygen \
+	pr20218 \
+	pr20218-mips \
+	pr31868 \
+	gcc-directives-only \
+	arm-libffi \
+	libffi-backport \
+	libffi-backport2 \
+	libjava-backport-updates \
+	libjava-backport-updates2 \
+	libjava-backport-updates3 \
+	libjava-backport-updates4 \
+	pr32844 \
+	pr32862 \
+	libjava-jar \
+	libjava-visibility \
+	libjava-subdir \
+	libjava-jnipath \
+	libjava-stacktrace \
+	libjava-soname \
+	libjava-disable-static \
+	libjava-rpath \
+	libjava-maxhostnamelen \
+	libjava-class-igf \
+	gcc-expandv \
+	alpha-no-ev4-directive \
+	note-gnu-stack \
+	arm-gij \
+	hppa-cbranch \
+	hppa-cbranch2 \
+	m68k-fjump \
+	m68k-gc \
+	m68k-save_pic \
+	m68k-libffi2 \
+	m68k-dwarf \
+	m68k-split_shift \
+	m68k-prevent-qipush \
+	m68k-jumptable \
+	m68k-peephole \
+	m68k-return \
+	m68k-sig-unwind \
+	m68k-align-code \
+	m68k-align-stack \
+	m68k-dwarf3 \
+	m68k-fpcompare \
+	m68k-secondary-addr-reload \
+	m68k-notice-move \
+	m68k-symbolic-operand \
+	m68k-bitfield-offset \
+	mips-libspec \
+	pr25524 \
+	pr26864 \
+	pr26208 \
+	pr26208-r111674 \
+	libjava-sjlj \
+	gcc-dwarf2-h \
+	gcc-unwind-r111705 \
+	gcc-unwind-r120406 \
+	pr9861-nojava \
+	classpath-config-guess \
+	arm-pr28516 \
+	arm-pr30486 \
+	arm-unbreak-eabi-armv4t \
+	pr22244 \
+	libgcc-tramp-ppc32 \
+	pr33639 \
+	pr33765 \
+	pr28322 \
+
+#	gcc-vis-r115693 \
+#	gcc-vis-r116504 \
+#	gcc-vis-r116505 \
+#	gcc-vis-r116506 \
+#	gcc-vis-r116507 \
+#	gcc-vis-r117139 \
+
+# gdc fixed in gdc-pr26885.dpatch.
+#ifneq ($(with_d),yes)
+  debian_patches += pr26885
+#endif
+
+debian_patches += gcc-r109242 gcc-r109581 gcc-4.1-x86-blended gcc-pfrs-2
+ifneq ($(DEB_TARGET_ARCH),lpia)
+  debian_patches += cpu-default-generic
+endif
+
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+  debian_patches += pr25524-doc gcc-4.1-x86-blended-doc \
+	libjava-backport-doc-updates2
+# gdc fixed in gdc-pr26885.dpatch.
+#  ifneq ($(with_d),yes)
+    debian_patches += pr26885-doc
+#  endif
+endif
+
+ifneq (,$(filter $(DEB_TARGET_ARCH), amd64 i386 powerpc ppc64 sparc s390))
+  debian_patches += pr20218
+endif
+
+ifeq ($(with_libffi),yes)
+  debian_patches += \
+	libffi-configure
+endif
+
+ifeq ($(with_ssp)-$(with_ssp_default),yes-yes)
+  debian_patches += gcc-ssp-default
+endif
+
+ifeq ($(with_ssp),yes)
+  debian_patches += libssp-gnu
+endif
+
+ifeq ($(with_multiarch_lib),yes)
+  debian_patches += multiarch-lib
+endif
+
+ifeq ($(with_java),yes)
+  debian_patches += mips-libjava-interp
+
+  ifeq ($(with_native_ecj),yes)
+    debian_patches += native-ecj
+  endif
+endif
+
+ifeq ($(with_proto),yes)
+  debian_patches += deb-protoize
+endif
+
+ifeq ($(with_ada),yes)
+  debian_patches += ada-gcc-name ada-default-project-path #ada-names
+  debian_patches += ada-symbolic-tracebacks ada-driver-check
+  debian_patches += ada-pr15802
+  ifeq ($(with_libgnat),yes)
+    debian_patches += ada-gnatvsn ada-link-lib ada-libgnatvsn ada-libgnatprj
+    debian_patches += ada-acats
+  endif
+  ifeq ($(DEB_TARGET_ARCH)-$(distribution),ia64-Debian)
+    debian_patches += ignore-comp-fail
+  endif
+endif
+
+ifeq ($(with_pascal),yes)
+  debian_patches += gpc-4.1 gpc-gcc-4.x gpc-names
+else
+  debian_patches += gcc-pascal-lang
+endif
+
+ifeq ($(with_d),yes)
+# debian_patches += svn-gdc-updates
+  debian_patches += gdc-4.1
+  debian_patches += gdc-pr26885
+  debian_patches += gdc-driver-zlib
+  debian_patches += gdc-driver-defaultlib
+  ifeq ($(with_libphobos),yes)
+    debian_patches += gdc-libphobos-build
+  else
+    debian_patches += gdc-driver-nophobos
+  endif
+  debian_patches += gdc-fix-build
+  debian_patches += gdc-arm-unwind_ptr
+  debian_patches += gdc-libphobos-std-format
+  debian_patches += gdc-libstdcxx-nobuild
+  debian_patches += gdc-array-concat
+else
+  debian_patches += gcc-d-lang
+endif
+
+ifeq ($(DEB_TARGET_ARCH_OS),hurd)
+  debian_patches += hurd-changes hurd-fast-math hurd-profiling
+endif
+
+ifeq ($(DEB_TARGET_ARCH),alpha)
+  debian_patches += alpha-ieee mudflap-nocheck
+  ifneq ($(GFDL_INVARIANT_FREE),yes)
+    debian_patches += alpha-ieee-doc
+  endif
+endif
+
+ifeq ($(DEB_TARGET_ARCH),arm)
+  debian_patches += arm-pragma-pack
+endif
+
+ifeq ($(DEB_TARGET_ARCH),m68k)
+  debian_patches += m68k-bitfield m68k-autoinc
+  debian_patches += m68k-dwarf2 m68k-peephole-note m68k-java
+  debian_patches += m68k-prevent-swap m68k-reg-inc m68k-noautoinc-setjmp
+endif
+
+ifeq ($(DEB_TARGET_ARCH),sparc)
+  debian_patches += sparc-niagara
+  debian_patches += sparc-g7
+  debian_patches += sparc-niagara2
+  ifneq ($(GFDL_INVARIANT_FREE),yes)
+    debian_patches += sparc-niagara-doc
+    debian_patches += sparc-niagara2-doc
+  endif
+endif
+
+ifneq (,$(filter $(DEB_TARGET_ARCH), ia64))
+  debian_patches += pr27880 no-getipinfo
+endif
+
+ifeq ($(DEB_TARGET_ARCH_OS),kfreebsd)
+  debian_patches += kbsd-gnu
+  debian_patches += kbsd-gnu-ada
+  debian_patches += kbsd-gnu-java
+endif
+ifeq ($(DEB_TARGET_ARCH_OS),knetbsd)
+  debian_patches += # kbsd-gnu
+endif
+ifeq ($(DEB_TARGET_ARCH_OS),netbsd)
+  debian_patches += # netbsd-all-gcc netbsd-archs-gcc
+endif
+ifeq ($(DEB_TARGET_ARCH_OS),hurd)
+  debian_patches += libjava-hurdfix
+endif
+
+ifdef DEB_CROSS
+  debian_patches += cross-include cross-fixes
+endif
+
+debian_patches += link-libs
+
+# all patches below this line are applied for gcc-snapshot builds as well
+
+ifeq ($(PKGSOURCE),gcc-snapshot)
+  debian_patches =
+endif
+
+debian_patches += reporting gcc-ice-hack gcc-ice-apport
+
+ifneq ($(DEB_TARGET_ARCH),sh4)
+  debian_patches += multiarch-include
+endif
+
+ifeq ($(biarch),yes)
+  ifeq (,$(findstring libjava, $(biarch_multidir_names)))
+    debian_patches += disable-biarch-check
+  endif
+  debian_patches += config-ml
+
+  ifeq ($(DEB_TARGET_ARCH),powerpc)
+    debian_patches += powerpc-biarch
+  endif
+  ifeq ($(DEB_TARGET_ARCH),s390)
+    debian_patches += s390-biarch
+  endif
+  ifeq ($(DEB_TARGET_ARCH),sparc)
+      debian_patches += sparc-biarch
+  endif
+  ifeq ($(DEB_TARGET_ARCH),i386)
+    debian_patches += i386-biarch
+    debian_patches += gcc-biarch-generic
+  endif
+  ifneq ($(with_64bit_check),yes)
+    debian_patches += disable-configure-run-check
+  endif
+endif
+
+ifeq ($(biarch32),yes)
+  ifeq (,$(findstring libjava, $(biarch_multidir_names)))
+    debian_patches += disable-biarch-check
+  endif
+  debian_patches += config-ml gcc-multilib64dir
+
+  ifeq ($(DEB_TARGET_ARCH),ppc64)
+    debian_patches += ppc64-ada
+  endif
+  ifneq ($(with_32bit_check),yes)
+    debian_patches += disable-configure-run-check
+  endif
+endif
+
+
+patch: $(patch_stamp)
+$(patch_stamp): $(unpack_stamp) pre-patch \
+    $(foreach p,$(debian_patches),$(patch_stamp)-$(p))
+	echo -e "\nPatches that $(distribution) applied in this version:" > pxxx
+	for i in $(debian_patches); do \
+	  echo -e "\n$$i:" >> pxxx; \
+	  sed -n 's/^# *DP: */  /p' $(patchdir)/$$i.dpatch >> pxxx; \
+	done
+ifeq ($(with_libphobos),yes)
+	[ ! -d $(srcdir)/libphobos ] || rm -rf $(srcdir)/libphobos
+	mkdir $(srcdir)/libphobos && \
+	  cd $(srcdir)/libphobos && \
+	    ../symlink-tree ../gcc/d/phobos$(libphobos_version) 2>&1 && \
+	cd $(srcdir)
+	chmod a+x $(srcdir)/gcc/d/phobos$(libphobos_version)/config/x3
+endif
+	mv -f pxxx $@
+
+pre-patch:
+	@if [ -x /usr/bin/automake-1.4 ]; then \
+	  : ; \
+	else \
+	  mkdir -p $(PWD)/bin; \
+	  ln -sf /usr/bin/automake $(PWD)/bin/automake-1.4; \
+	fi
+
+unpatch:
+	for stamp in none `ls -1t $(patch_stamp)-*`; do \
+	  case "$$stamp" in none|patched-stamp|patched-\*) continue; esac; \
+	  patch=`echo $$stamp | sed -e 's,$(patch_stamp)-,,'`; \
+	  echo "trying to revert patch $$patch ..."; \
+	  if [ -x $(patchdir)/$$patch.dpatch ]; then true; else \
+	    chmod +x $(patchdir)/$$patch.dpatch; fi; \
+	  if $(patchdir)/$$patch.dpatch -unpatch -d $(srcdir); then \
+	    echo "reverted $$patch patch."; \
+	    rm -f $$stamp; \
+	  else \
+	    echo "error in reverting $$patch patch."; \
+	    exit 1; \
+	  fi; \
+	done
+	rm -f patched-stamp
+
+# debian/rules.conf isn't yet sourced
+SOURCE_VERSION := $(call vafilt,$(CHANGELOG_VARS),Version)
+
+$(patch_stamp)-%: $(patchdir)/%.dpatch
+	@if [ -x $< ]; then true; else chmod +x $<; fi
+	@if [ -f $@ ]; then \
+	  echo "$* patches already applied."; exit 1; \
+	fi
+	DEB_VERSION=$$(echo $(SOURCE_VERSION) | sed 's/ds[0-9]*//'); \
+	export DEB_VERSION; set -x; \
+	$< -patch -d $(srcdir)
+	@echo "$* patches applied." > $@
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gpc-BV-doc.doc-base.gpcs
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gpc-BV-doc.doc-base.gpcs
@@ -0,0 +1,23 @@
+Document: gpcs-@BV@-doc
+Title: The GNU Pascal Coding Standards
+Author: Various
+Abstract: The GNU Pascal Coding Standards were designed by a group of
+ GNU Pascal project volunteers. The aim of this document is extending
+ the GNU Coding Standards with specific information relating Pascal
+ programming.  As a matter of fact, the information contained in the
+ GNU Coding Standards mainly pertains to programs written in the C
+ language. On the other hand, they also explain many of the rules and
+ principles that are useful for writing portable, robust and reliable
+ programs. Most of those general topics could be shared with this
+ document with just a few specific notes, thus cross references are
+ provided which will lead you to the more extensive information
+ contained in the GNU Coding Standards.
+Section: Apps/Programming
+
+Format: html
+Index: /usr/share/doc/gcc-@BV@-base/pascal/gpcs.html
+Files: /usr/share/doc/gcc-@BV@-base/pascal/gpcs.html
+
+Format: info
+Index: /usr/share/info/gpcs-@BV@.info.gz
+Files: /usr/share/info/gpcs-@BV@*
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gcj-BV.doc-base
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gcj-BV.doc-base
@@ -0,0 +1,15 @@
+Document: gcj-@BV@
+Title: The GNU Ahead-of-time Compiler for the Java Language
+Author: Various
+Abstract: This manual describes how to use gcj, the GNU compiler for
+ the Java programming language.  gcj can generate both .class files and
+ object files, and it can read both Java source code and .class files.
+Section: Apps/Programming
+
+Format: html
+Index: /usr/share/doc/gcc-@BV@-base/java/gcj.html
+Files: /usr/share/doc/gcc-@BV@-base/java/gcj.html
+
+Format: info
+Index: /usr/share/info/gcj-@BV@.info.gz
+Files: /usr/share/info/gcj-@BV@*
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gfortran-BV-doc.prerm
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gfortran-BV-doc.prerm
@@ -0,0 +1,5 @@
+#! /bin/sh -e
+
+install-info --quiet --remove gfortran-@BV@
+
+#DEBHELPER#
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/README.cross
+++ gdc-4.1-0.25-20080616-4.1.2/debian/README.cross
@@ -0,0 +1,149 @@
+Building cross-compiler Debian packages
+---------------------------------------
+
+It is possible to build C and C++ cross compilers and support libraries
+from gcc-4.0 source package. This document describes how to do so.
+Cross-compiler build support is not perfect yet, please send fixes
+and improvements to debian-gcc@lists.debian.org and 
+debian-embedded@lists.debian.org
+
+Before you start, you should probably check available pre-built
+cross-toolchain debs. Available at http://www.emdebian.org
+
+Old patches could be reached at
+  http://zigzag.lvk.cs.msu.su/~nikita/debian/
+  
+If they are no longer there, you may check EmDebian web site at
+  http://www.emdebian.org/
+or ask debian-embedded@lists.debian.org for newer location.
+
+Please check http://bugs.debian.org/391445 if you are about building
+gcc-4.1 or above.
+
+Most of them has been merged with gcc debian sources.
+
+0. What's wrong with toolchain-source approach
+
+Package toolchain-source contains sources for binutils and gcc, as well as
+some support scripts to build cross-compiler packages. They seem to work.
+
+However, there is one fundamental problem with this approach.
+Gcc package is actively maintained and frequently updated. These updates
+do contain bug fixes and improvements, especially for non-x86 architectures.
+Cross-compilers built using toolchain-source will not get those fixes unless
+toolchain-source package is updated after each binutils and gcc update.
+The later is not hapenning in real life. For example, toolchain-source
+was upgraded from gcc-3.2 to gcc-3.3 half a year later than gcc-3.3 became
+Debian default compiler.
+
+Keeping toolchain-source package up-to-date requires lots of work, and seems
+to be a waste of time. It is much better to build cross-compilers directly
+from gcc source package.
+
+
+1. What is needed to build a cross-compiler from gcc-4.1 source
+
+1.1. dpkg-cross package
+
+Dpkg-cross package contains several tools to manage cross-compile environment.
+
+It can convert native debian library and lib-dev packages for the target
+architecture to binary-all packages that keep libraries and headers under
+/usr/$(TARGET)/.
+
+Also it contains helper tools for cross-compiling debian packages. Some of
+these tools are used while building libgcc1 and libstdc++ library packages.
+The resulting library packages follow the same convensions as library packages
+converted by dpkg-cross.
+
+Currently, at least version 1.18 of dpkg-cross is needed for cross-gcc
+package build. Version 1.32 of dpkg-cross is needed in order to build gcc-4.1.
+
+1.2. cross-binutils for the target
+
+You need cross-binutils for your target to build cross-compiler.
+Binutils-multiarch package will not work because it does not provide cross-
+assemblers.
+
+If you don't want to use pre-built cross-binutils packages, you may build
+your own from binutils debian source package, using patches posted to
+bug #231707. Please use the latest of patch versions available there.
+
+Alternatively, you may use toolchain-source package to build cross-binutils
+(but in this case you will probably also want to use toolchain-source
+to build cross-compiler itself). However, multilib'ed cross-compilers may
+not build or work with these binutils.
+
+1.3. libc for target
+
+You also need libc library and development packages for the target
+architecture installed.
+
+To get those, download linux-kernel-headers, libc6, and libc6-dev binary
+debs for your target, convert those using dpkg-cross -b, and install
+resulting -arch-cross debs. Consult dpkg-cross manual page for more
+information.
+
+Building with/for alternative libc's is not supported yet (but this is in
+TODO).
+
+Note that if you plan to use your cross-toolchain to develop kernel drivers
+or similar low-level things, you will probably also need kernel headers
+for the exact kernel version that your target hardware uses.
+
+
+2. Building cross-compiler packages
+
+Get gcc-4.1 source package.
+
+Unpack it using dpkg-source -x, and cd to the package directory.
+
+Set GCC_TARGET environment variable to the target architectire name. Note
+that currently you should use debian architecture name (i.e 'powerpc' or 'arm'),
+not GNU system type (i.e. 'powerpc-linux' or 'arm-linux'). Setting GCC_TARGET
+to GNU system type will cause cross-compiler build to fail.
+
+Instead of setting GCC_TARGET, target architecture name may be put into
+debian/target file. If both GCC_TARGET is defined and debian/target file
+exists, GCC_TARGET is used.
+
+Run debian/rules control. This will change debian/control file,
+adjusting build-depends.  By default, the packages will depend on the
+system -base package.  This means future upgrades of the system gcc
+will require you to keep your cross compilers in sync by rebuilding.
+If you want to depend on a separate -base package for your cross
+compiler, specify DEB_CROSS_INDEPENDENT=yes on the command line,
+
+You can then build with either
+
+$ GCC_TARGET=[arch] dpkg-buildpackage -rfakeroot
+or
+$ GCC_TARGET=[arch] DEB_CROSS_INDEPENDENT=yes dpkg-buildpackage -rfakeroot
+
+3. Using crosshurd
+
+Jeff Bailey <jbailey@raspberryginger.com> suggests alternate way to setup
+environment to build cross-compiler, using 'crosshurd' package. 
+Crosshurd is like debootstrap but cross-arch, and works on the Hurd,
+Linux and FreeBSD.  (The name is historical).
+
+If you setup your environment with crosshurd, you will need to fix symlinks
+in lib and usr/lib to be relative instead of absolute. For example:
+
+lrwxrwxrwx    1 root     root           20 2004-05-06 23:02 libcom_err.so -> /lib/libcom_err.so.2
+
+Needs to be changed to:
+
+lrwxrwxrwx    1 root     root           20 2004-05-06 23:02 libcom_err.so -> ../../lib/libcom_err.so.2
+
+Also, if you choose this method, set the environment variable 'with_sysroot'
+to point to the ABSOLUTE PATH where the crosshurd was done.
+
+Note however that build-depends of cross-gcc and dependencies in generated
+libgcc1 and libstdc++ packages assume that you use dpkg-cross to set up
+your environment, and may be wrong or incomplete if you use alternate methods.
+But probably you don't care.
+
+--
+Nikita V. Youshchenko <yoush@debian.org> - Jun 2004
+Hector Oron Martinez  <hector.oron@gmail.com> - Oct 2006
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/locale-gen
+++ gdc-4.1-0.25-20080616-4.1.2/debian/locale-gen
@@ -0,0 +1,43 @@
+#!/bin/sh
+
+LOCPATH=`pwd`/locales
+export LOCPATH
+
+[ -d $LOCPATH ] || mkdir -p $LOCPATH
+
+umask 022
+
+echo "Generating locales..."
+while read locale charset; do
+	case $locale in \#*) continue;; esac
+	[ -n "$locale" -a -n "$charset" ] || continue
+	echo -n "  `echo $locale | sed 's/\([^.\@]*\).*/\1/'`"
+	echo -n ".$charset"
+	echo -n `echo $locale | sed 's/\([^\@]*\)\(\@.*\)*/\2/'`
+	echo -n '...'
+        if [ -f $LOCPATH/$locale ]; then
+	    input=$locale
+	else
+            input=`echo $locale | sed 's/\([^.]*\)[^@]*\(.*\)/\1\2/'`
+	fi
+	localedef -i $input -c -f $charset $LOCPATH/$locale #-A /etc/locale.alias
+	echo ' done'; \
+done <<EOF
+# This file lists locales that the libstdc++ testsuite depends on
+de_DE			ISO-8859-1
+de_DE@euro		ISO-8859-15
+en_HK			ISO-8859-1
+en_PH			ISO-8859-1
+en_US			ISO-8859-1
+en_US.ISO-8859-1	ISO-8859-1
+en_US.ISO-8859-15	ISO-8859-15
+en_US.UTF-8		UTF-8
+es_MX			ISO-8859-1
+fr_FR			ISO-8859-1
+fr_FR@euro		ISO-8859-15
+it_IT			ISO-8859-1
+ja_JP.eucjp		EUC-JP
+se_NO.UTF-8		UTF-8
+EOF
+
+echo "Generation complete."
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/g77-BV-doc.postinst
+++ gdc-4.1-0.25-20080616-4.1.2/debian/g77-BV-doc.postinst
@@ -0,0 +1,10 @@
+#! /bin/sh -e
+
+case "$1" in
+    configure)
+	install-info --quiet --section "Development" "Development" \
+	    --description="The GNU Fortran 77 compiler (Version @BV@)." \
+	    /usr/share/info/g77-@BV@.info
+esac
+
+#DEBHELPER#
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/fixincludes.in
+++ gdc-4.1-0.25-20080616-4.1.2/debian/fixincludes.in
@@ -0,0 +1,8 @@
+#! /bin/sh
+
+PATH="/@LIBEXECDIR@/install-tools:$PATH"
+
+TARGET_MACHINE=`dpkg-architecture -qDEB_HOST_GNU_TYPE`
+export TARGET_MACHINE
+
+exec fixinc.sh "$@"
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gnat.1
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gnat.1
@@ -0,0 +1,39 @@
+.\" Hey, Emacs!  This is an -*- nroff -*- source file.
+.\"
+.\" Copyright (C) 1996 Erick Branderhorst <branderh@debian.org>
+.\"
+.\" This is free software; you can redistribute it and/or modify it under
+.\" the terms of the GNU General Public License as published by the Free
+.\" Software Foundation; either version 2, or (at your option) any later
+.\" version.
+.\"
+.\" This is distributed in the hope that it will be useful, but WITHOUT
+.\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+.\" FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+.\" for more details.
+.\"
+.\" You should have received a copy of the GNU General Public License with
+.\" your Debian GNU/Linux system, in /usr/doc/copyright/GPL, or with the
+.\" dpkg source package as the file COPYING.  If not, write to the Free
+.\" Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+.\"
+.\"
+.TH "GNAT TOOLBOX" 1 "Jun 2002" "Debian Project" "Debian Linux"
+.SH NAME
+gnat, gnatbind, gnatbl, gnatchop, gnatfind, gnatkr, gnatlink,
+gnatls, gnatmake, gnatprep, gnatpsta, gnatpsys, gnatxref \-
+GNAT toolbox
+.SH DESCRIPTION
+Those programs are part of GNU GNAT 4.1, a freely available Ada 95 compiler.
+.PP
+For accessing the full GNAT manuals, use
+.B info gnat-ug-4.1
+and
+.B info gnat-rm-4.1
+for the sections related to the reference manual.  If those sections cannot
+be found, you will have to install the gnat-3.4-doc package as well.
+.SH SEE ALSO
+.BR gcc-4.1 (1)
+.SH AUTHOR
+This manpage has been written by Samuel Tardieu <sam@debian.org>, for the
+Debian GNU/Linux project.
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/libgccLC.postinst
+++ gdc-4.1-0.25-20080616-4.1.2/debian/libgccLC.postinst
@@ -0,0 +1,12 @@
+#! /bin/sh -e
+
+case "$1" in
+    configure)
+	docdir=/usr/share/doc/libgcc@LC@
+	if [ -d $docdir ] && [ ! -h $docdir ]; then
+	    rm -rf $docdir
+	    ln -s gcc-@BV@-base $docdir
+	fi
+esac
+
+#DEBHELPER#
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/FAQ.gcj
+++ gdc-4.1-0.25-20080616-4.1.2/debian/FAQ.gcj
@@ -0,0 +1,494 @@
+The GCJ FAQ
+===========
+
+      The latest version of this document is always available at
+      http://gcc.gnu.org/java/faq.html.
+
+        General Questions
+
+            What license is used for libgcj?
+            How can I report a bug in libgcj?
+            How can I contribute to libgcj
+            Is libgcj part of GCC?
+            Will gcj and libgcj work on my machine?
+            How can I debug my Java program?
+            Can I interface byte-compiled and native java code?
+
+
+        Java Feature Support
+
+            What Java API's are supported? How complete is
+              the support?
+            Does GCJ support using straight C native methods
+              ala JNI?
+            Why does GCJ use CNI?
+            What is the state of AWT support?
+            How about support for Swing ?
+            What support is there for RMI ?
+            Can I use any code from other OpenSource projects
+              to supplement libgcj's current features ?
+            What features of the Java language are/arn't supported
+
+
+        Build Issues
+
+            I need something more recent than the last release; how
+                  should I build it?
+            Linker bug on Solaris
+            Can I configure/build in the source tree?
+            My libgcj build fails with "invalid use of undefined type
+                  struct sigcontext_struct"
+
+
+        Gcj Compile/Link Questions
+
+            Why do I get undefined reference to `main' errors?
+            Can GCJ only handle source code?
+            "gcj -C" Doesn't seem to work like javac/jikes. Whats going on?
+            Where does GCJ look for files?
+            How does gcj resolve wether to compile .class or .java files?
+            I'm getting link errors!
+            I'm getting 'undefined symbol: __dso_handle'
+
+
+        Runtime Questions
+
+            My program is dumping core! What's going on?
+            When I run the debugger I get a SEGV in the GC! What's going on?
+            I have just compiled and benchmarked my Java application
+            and it seems to be running slower than than XXX JIT JVM. Is there
+            anything I can do to make it go faster?
+            Can I profile Garbage Collection?
+            How do I increase the runtime's initial and maximum heap sizes?
+            How can I profile my application?
+            My program seems to hang and doesn't produce any output
+
+
+        Programming Issues
+
+            Are there any examples of how to use CNI?
+            Is it possible to invoke GCJ compiled Java code from a
+            C++ application?
+
+General Questions
+=================
+
+      1.1 What license is used for libgcj?
+
+          libgcj is distributed under the GPL, with the 'libgcc exception'.
+          This means that linking with libgcj does not by itself cause
+          your program to fall under the GPL.  See LIBGCJ_LICENSE in
+          the source tree for more details.
+
+      1.2 How can I report a bug in libgcj?
+
+          libgcj has a corresponding Gnats bug database which you can
+          browse. You can also submit new bug reports from the Gnats
+          page.
+
+      1.3 How can I contribute to libgcj?
+
+          You can send simple bug fixes in as patches. Please follow
+          the GCC guidelines for submitting patches. For more complex
+          changes, you must sign copyright over to the Free Software
+          Foundation. See the contribution page for details.
+
+      1.4 Is libgcj part of GCC?
+
+          Yes, libgcj is now part of GCC. It can be downloaded,
+          configured and built as one single tree.
+
+      1.5 Will gcj and libgcj work on my machine?
+
+          Gcj and libgcj are known to work more or less with IA-32 and
+          Sparc Solaris, Tru64 Unix, as well as IA-32, IA-64, Alpha,
+          and PowerPC Linux. They might work on other
+          systems. Generally speaking, porting to a new system should
+          not be hard. This would be a good way to volunteer.
+
+      1.6 How can I debug my Java program?
+
+          gdb 5.0 includes support for debugging gcj-compiled Java
+          programs. For more information please read Java Debugging
+          with gdb.
+
+      1.7 Can I interface byte-compiled and native java code
+
+          libgcj has a bytecode interpreter that allows you to mix
+          .class files with compiled code. It works pretty
+          transparently: if a compiled version of a class is not found
+          in the application binary or linked shared libraries, the
+          class loader will search for a bytecode version in your
+          classpath, much like a VM would. Be sure to build libgcj
+          with the --enable-interpreter option to enable this
+          functionality.
+
+          The program "gij" provides a front end to the interpreter
+          that behaves much like a traditional virtual machine. You
+          can even use "gij" to run a shared library which is compiled
+          from java code and contains a main method:
+
+          $ gcj -shared -o lib-HelloWorld.so HelloWorld.java
+          $ gij HelloWorld
+
+          This works because gij uses Class.forName, which knows how
+          to load shared objects.
+
+Java Feature Support
+====================
+
+      2.1 What Java API's are supported? How complete is
+        the support?
+
+          Matt Welsh writes:
+
+            Just look in the 'libjava' directory of libgcj and see
+            what classes are there. Most GUI stuff isn't there yet,
+            that's true, but many of the other classes are easy to add
+            if they don't yet exist.
+
+            I think it's important to stress that there is a big
+            difference between Java and the many libraries which Java
+            supports. Unfortunately, Sun's promise of "write once, run
+            everywhere" assumes much more than a JVM: you also need
+            the full set of JDK libraries. Considering that new Java
+            APIs come out every week, it's going to be impossible to
+            track everything.
+
+            To make things worse, you can't simply run Sun's JDK
+            classes on any old JVM -- they assume that a bunch of
+            native methods are also defined. Since this native method
+            requirement isn't defined by the JDK specs, you're
+            effectively constrained to using Sun's JVMs if you want to
+            use Sun's JDK libraries. Oh yes -- you could also
+            reimplement all of those native methods yourself, and make
+            sure they behave exactly as Sun's do. Note that they're
+            undocumented!
+
+      2.2 Does GCJ support using straight C native methods
+         ala JNI?
+
+          Yes. libgcj now has experimental support for JNI, in
+          addition to its native Compiled Native Interface (CNI). gcjh
+          will generate JNI stubs and headers using the "-jni"
+          option. However, we do prefer CNI: it is more efficient,
+          easier to write, and (at least potentially) easier to debug.
+
+      2.3 Why does GCJ use CNI?
+
+          Per Bothner explains:
+
+            We use CNI because we think it is a better solution,
+            especially for a Java implementation that is based on the
+            idea that Java is just another programming language that
+            can be implemented using standard compilation
+            techniques. Given that, and the idea that languages
+            implemented using Gcc should be compatible where it makes
+            sense, it follows that the Java calling convention should
+            be as similar as practical to that used for other
+            languages, especially C++, since we can think of Java as a
+            subset of C++. CNI is just a set of helper functions and
+            conventions built on the idea that C++ and Java have the
+            *same* calling convention and object layout; they are
+            binary compatible. (This is a simplification, but close
+            enough.)
+
+      2.4 What is the state of AWT support?
+
+          Work is in progress to implement AWT and Java2D. We intend
+          to support both GTK and xlib peers written using CNI. Some
+          components are already working atop the xlib peers.
+
+      2.5 How about support for Swing?
+
+          Once AWT support is working then Swing support can be
+          considered. There is at least one free-software partial
+          implementations of Swing that may be usable.
+
+      2.6 What support is there for RMI?
+
+         RMI code exists on the CVS trunk (aka gcc 3.1), but it has
+         not been heavily tested.  This code was donated by
+         Transvirtual Technologies.
+
+      2.7 Can I use any code from other OpenSource
+          projects to supplement libgcj's current features?
+
+           Certainly. However, in many cases, if you wanted to
+           contribute the code back into the official libgcj
+           distribution, we would require that the original author(s)
+           assign copyright to the Free Software Foundation.  As of
+           March 6, 2000, libgcj has been relicenced, and copyright
+           has been assigned to the FSF. This allows us to share and
+           merge much of the libgcj codebase with the Classpath
+           project.  Our eventual goal is for Classpath to be an
+           upstream source provider for libgcj, however it will be
+           some time before this becomes reality: libgcj and Classpath
+           have different implementations of many core java
+           classes. In order to merge them, we need to select the best
+           (most efficient, cleanest) implementation of each
+           method/class/package, resolve any conflicts created by the
+           merge, and test the final result.  Needless to say, this is
+           a lot of work. If you can help out, please let us know!
+
+      2.8 What features of the Java language are/aren't supported.
+
+          GCJ supports all Java language constructs as per the Java
+          language Specification.  Recent GCJ snapshots have added
+          support for most JDK1.1 (and beyond) language features,
+          including inner classes.
+
+Build Issues
+============
+
+      3.1 I need something more recent than the last release.
+          How should I build it?
+
+          Please read here: http://gcc.gnu.org/java/build-snapshot.html
+
+      3.2 Linker bug on Solaris
+
+          There is a known problem with the native Solaris linker when
+          using gcc/gcj. A good indication you've run into this
+          problem is if you get an error that looks like the following
+          when building libgcj:
+
+ld: warning: option -o appears more than once, first setting taken
+ld: fatal: file libfoo.so: cannot open file: No such file or directory
+ld: fatal: File processing errors. No output written to .libs/libfoo.so
+collect2: ld returned 1 exit status
+
+          A known workaround for this and other reported link problems
+          on the various releases of Solaris is to build gcc/gcj with
+          the latest GNU binutils instead of the native Solaris
+          ld. The most straightforward way to do this is to build and
+          install binutils, and then reference it in the configure for
+          gcc via --with-ld=/path_to_binutils_install/bin/ld
+          (--with-as may also be similarly specified but is not
+          believed to be required).
+
+          Please note, gcc/gcj must be built using GNU ld prior to
+          doing a clean build of libgcj!
+
+      3.3 Can I configure/build in the source tree?
+
+          No.  You cannot configure/build in the source tree.  If you
+          try, you'll see something like:
+
+              $ ./configure [...]
+              Configuring for a i686-pc-linux-gnu host.
+              *** Cannot currently configure in source tree.
+
+          Instead, you must build in another directory.  E.g.:
+
+              $ mkdir build
+              $ cd build
+              $ ../configure [...]
+
+      3.4 My libgcj build fails with "invalid use of undefined type
+          struct sigcontext_struct"
+
+          If you're using Linux, this probably means you need to
+          upgrade to a newwer, glibc (libc6) based Linux
+          distribution. libgcj does not support the older linux libc5.
+          It might be possible to get a working libgcj by changing
+          occurances of "sigcontext_struct" to "sigcontext", however
+          this has not been tested.  Even if it works, it is likely
+          that there are other issues with older libc versions that
+          would prevent libgcj from working correctly (threads bugs,
+          for example).
+
+Gcj Compile/Link Questions
+==========================
+
+      4.1 Why do I get undefined reference to `main' errors?
+
+          When using gcj to link a Java program, you must use the --main=
+          option to indicate the class that has the desired main method.
+          This is because every Java class can have a main method, thus
+          you have to tell gcj which one to use.
+
+      4.2 Can GCJ only handle source code?
+
+          GCJ will compile both source (.java) and bytecode (.class)
+          files. However, in many cases the native code produced by
+          compiling from source is better optimized than that compiled
+          from .class files.
+
+          Per Bothner explains:
+
+            The reason is that when you compile to bytecode you lose a
+            lot of information about program structure etc. That
+            information helps in generating better code. We can in
+            theory recover the information we need by analysing the
+            structure of the bytecodes, but it is sometimes difficult
+            - or sometimes it just that no-one has gotten around to
+            it.  Specific examples include loop structure (gcc
+            generates better code with explicit loops rather than with
+            the equivalent spaghetti code), array initializers, and
+            the JDK 1.1 `CLASS.class' syntax, all of which are
+            represented using more low-level constructs in bytecode.
+
+      4.3 "gcj -C" Doesn't seem to work like javac/jikes.  Whats going on?
+
+          The behavior of "gcj -C" is not at all like javac or jikes,
+          which will compile (not just scan) all .java's which are out
+          of date with regard to their .class's.
+
+      4.4 Where does GCJ look for files?
+
+          GCJ looks for classes to compile based on the CLASSPATH
+          environment variable. libgcj.jar and other files are found
+          relative to the path of the compiler itself, so it is safe
+          to move the entire compiler tree to a different path, and
+          there is no need to include libgcj.jar in your CLASSPATH.
+
+      4.5 How does gcj resolve whether to compile .class or .java files?
+
+          GCJ compiles only the files presented to it on the command
+          line. However, it also needs to scan other files in order to
+          determine the layout of other classes and check for errors
+          in your code.  For these dependencies, GCJ will favour
+          .class files if they are available because it is faster to
+          parse a class file than source code.
+
+      4.6 I'm getting link errors
+
+          If you get errors at link time that refer to 'undefined
+          reference to `java::lang::Object type_info function', verify
+          that you have compiled any CNI C++ files with the -fno-rtti
+          option. This is only required for versions of GCJ earlier
+          than 3.0.
+
+      4.7 I'm getting 'undefined symbol: __dso_handle'
+
+          Some versions of the GNU linker have broken support for the
+          '.hidden' directive, which results in problems with shared
+          libraries built with recent versions of gcc.
+
+          There are three solutions:
+
+            - downgrade to binutils that don't support .hidden at all,
+            - upgrade to a recent binutils, or
+            - undef the HAVE_GAS_HIDDEN definition in gcc's auto-host.h
+              (and rebuild gcc).
+
+Runtime Questions
+=================
+
+      5.1 My program is dumping core! What's going on?
+
+          It could be any number of things. One common mistake is
+          having your CLASSPATH environment variable pointing at a
+          third party's java.lang and friends. Either unset CLASSPATH,
+          or make sure it does not refer to core libraries other than
+          those found in libgcj.jar.Note that newwer versions of GCJ
+          will reject the core class library if it wasn't generated by
+          GCJ itself.
+
+      5.2 When I run the debugger I get a SEGV in the GC! What's going on?
+
+          This is "normal"; the Garbage Collector (GC) uses it to
+          determine stack boundaries. It is ordinarily caught and
+          handled by the GC -- you can see this in the debugger by
+          using cont to continue to the "real" segv.
+
+      5.3 I have just compiled and benchmarked my Java application
+          and it seems to be running slower than than XXX JIT JVM. Is there
+          anything I can do to make it go faster?
+
+        A few things:
+
+          - If your programs allocate many small, short lived objects,
+            the heap could be filling and triggering GC too
+            regularly. Try increasing the initial and maximum heap sizes
+            as per 5.5 How do I increase the runtime's initial and
+            maximum heap size?
+          - RE - array accesses. We have sub-optimal runtime checking
+            code, and the compiler is still not so smart about
+            automatically removing array checks. If your code is ready,
+            and it doesn't rely on them, try compiling with
+            --no-bounds-check.
+          - Try static linking.  On many platforms, dynamic (PIC)
+            function calls are more expensive than static ones. In
+            particular, the interaction with boehm-gc seems to incur
+            extra overhead when shared libraries are used.
+          - If your Java application doesn't need threads, try
+            building libgcj using --enable-threads=none. Portions of the
+            libgcj runtime are still more efficient when
+            single-threaded.
+
+       5.4 Can I profile Garbage Collection?
+
+          It is possible to turn on verbose GC output by supressing
+          the -DSILENT flag during build. One way to do this is to
+          comment out the line with #define SILENT 1 from
+          boehm-gc/configure before configuring libgcj.  The GC will
+          print collection statistics to stdout. (Rebuilding boehm-gc
+          alone without this flag doesn't seem to work.)
+
+      5.5 How do I increase the runtime's initial and maximum heap sizes?
+
+          Some programs that allocate many small, short-lived objects
+          can cause the default-sized heap to fill quickly and GC
+          often. With the 2.95.1 release there is no means to adjust
+          the heap at runtime. Recent snapshots provide the -ms and
+          -mx arguments to gij to specify the initial and maximum heap
+          sizes, respectively.
+
+      5.6 How can I profile my application?
+
+          Currently, only single threaded Java code may be used by the
+          profiler (gprof). POSIX threads seem to be incompatible with
+          the gmon stuff.  A couple of other tools that have been
+          mentioned on the GCJ mailing list are sprof and cprof.  The
+          former is part of GNU libc.
+
+      5.7 My program seems to hang and doesn't produce any output
+
+          Some versions had a bug in the iconv support. You can work
+          around it by setting LANG=en_US.UTF-8 at runtime, or give
+          the following option during compile time
+          -Dfile.encoding=UTF-8.  This problem should no longer occur
+          as of November 1, 2000.
+
+Programming Issues
+==================
+
+      6.1 Are there any examples of how to use CNI?
+
+          Glenn Chambers has created a couple of trivial examples for
+          version 2.95 and version 3.0.  As a comparison, here is the
+          same example as a JNI application using Kaffe.  The same
+          code will work with GCJ, as shown here.
+
+          Note that for version 2.95, you must compile the C++ files
+          used for CNI with the -fno-rtti option.  This constraint
+          does not apply in version 3.0 and later.
+
+          The primary source of documentation for CNI is at
+          http://gcc.gnu.org/java/papers/cni/t1.html
+
+      6.2 Is it possible to invoke GCJ compiled Java code from a
+          C++ application?
+
+          Yes, GCJ 3.1 supports a CNI-based invocation interface as
+          well as the traditional JNI invocation API.  See the GCJ
+          Manual for more details on how to use the CNI interface.
+
+Please send FSF & GNU inquiries & questions tognu@gnu.org.There are
+also other waysto contact the FSF.
+
+These pages are maintained by The GCC team.
+
+Please send comments on these web pages and GCC to our publicmailing
+list at gcc@gnu.org orgcc@gcc.gnu.org, send other questions to
+gnu@gnu.org.
+
+Copyright (C) Free Software Foundation, Inc.,
+59 Temple Place - Suite 330, Boston, MA  02111,  USA.
+
+Verbatim copying and distribution of this entire article is permitted
+in any medium, provided this notice is preserved.
+
+Last modified 2003-04-30
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/libgcj-common.preinst
+++ gdc-4.1-0.25-20080616-4.1.2/debian/libgcj-common.preinst
@@ -0,0 +1,12 @@
+#! /bin/sh -e
+
+case "$1" in
+    upgrade|install)
+	if [ -n "$2" ] && [ -h /usr/share/doc/libgcj-common ] \
+	   && dpkg --compare-versions "$2" lt 1:4.0.2-10
+	then
+	    rm -f /usr/share/doc/libgcj-common
+	fi
+esac
+
+#DEBHELPER#
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/copyright
+++ gdc-4.1-0.25-20080616-4.1.2/debian/copyright
@@ -0,0 +1,345 @@
+These is the D compiler frontend for GCC. See below for information
+how to obtain the source. The upstream version is at
+  http://dgcc.sourceforge.net/
+
+D Frontend to gcc and parts of the runtime libary (phobos):
+
+   Copyright (C) 2004, 2007 David Friedman
+   
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2 of the License, or
+   (at your option) any later version.
+ 
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+ 
+Digital Mars has kindly licensed the contents of the dmd and dmd2
+directories under the GNU General Public License version 1 or above or
+the artistic license, this extends the license grant indicated in the
+source tarball.
+Below is his mail to this end (irrelevant parts edited at [...]).
+
+  Subject: Re: D compiler front end license
+  From: Walter Bright [...]
+  Date: Wed, 01 Oct 2008 17:55:07 -0700
+  Message-ID: <48E41BEB.1040208@digitalmars.com>
+  To: Thomas Viehmann <tv@beamnet.de>
+
+  I agree to it. You have my permission to forward it there. Thanks, -Walter Bright
+
+  Thomas Viehmann wrote:
+  [...]
+  > How about the one below?
+  [...]
+  > If you could mail the two bugs at 499931@bugs.debian.org,
+  > 499927@bugs.debian.org with it (to create a public record), or permit me
+  > to forward it there, it would be most helpful.
+  [...]
+  > ----
+  >
+  > Digital Mars licenses
+  >     The D Programming Language
+  >     Compiler Front End Source
+  >     Copyright (c) 1999-2008, by Digital Mars
+  >
+  > as free software; you can redistribute it and/or modify
+  > it under the terms of the GNU General Public License as published by
+  > the Free Software Foundation; either version 1 of the License, or
+  > (at your option) any later version, or alternatively under the Artistic
+  > License (distributed with the source as artistic.txt).
+  >
+  > This program is distributed in the hope that it will be useful,
+  > but WITHOUT ANY WARRANTY; without even the implied warranty of
+  > MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+  > license you choose for details.
+  >
+  > This grant of license also applies to previously published versions of
+  > the D Programming Language Compiler Front End Source.
+
+
+On Debian GNU/Linux the GNU General Public License systems can be
+found in `/usr/share/common-licenses/GPL'.
+
+
+The D runtime library (phobos) is copyrighted and licensed as follows:
+
+  Copyright (C) 2004-2005 by Digital Mars, www.digitalmars.com
+     Written by Walter Bright
+  Copyright (C) 2003-2004,2005 by Matthew Wilson and Synesis Software
+     Written by Matthew Wilson
+  Copyright (C) 2004-2005 by Christopher E. Miller
+
+  This software is provided 'as-is', without any express or implied
+  warranty. In no event will the authors be held liable for any damages
+  arising from the use of this software.
+
+  Permission is granted to anyone to use this software for any purpose,
+  including commercial applications, and to alter it and redistribute it
+  freely, in both source and binary form, subject to the following
+  restrictions:
+
+  o  The origin of this software must not be misrepresented; you must not
+     claim that you wrote the original software. If you use this software
+     in a product, an acknowledgment in the product documentation would be
+     appreciated but is not required.
+  o  Altered source versions must be plainly marked as such, and must not
+     be misrepresented as being the original software.
+  o  This notice may not be removed or altered from any source
+     distribution.
+
+d/phobos/std/stream.d:
+  Copyright (c) 2001-2005
+  Pavel "EvilOne" Minayev
+   with buffering and endian support added by Ben Hinkle
+   with buffered readLine performance improvements by Dave Fladebo
+   with opApply inspired by (and mostly copied from) Regan Heath
+   with bug fixes and MemoryStream/SliceStream enhancements by Derick Eddington
+ 
+  Permission to use, copy, modify, distribute and sell this software
+  and its documentation for any purpose is hereby granted without fee,
+  provided that the above copyright notice appear in all copies and
+  that both that copyright notice and this permission notice appear
+  in supporting documentation.  Author makes no representations about
+  the suitability of this software for any purpose. It is provided
+  "as is" without express or implied warranty.
+
+Several files of the phobos library have been put in the public domain
+by their authors.
+
+In the tarball d/phobos/etc/c/zlib, a copy of zlib is included with
+the following copyright and license:
+
+  Copyright (C) 1995-2005 Jean-loup Gailly and Mark Adler
+  
+  This software is provided 'as-is', without any express or implied
+  warranty.  In no event will the authors be held liable for any damages
+  arising from the use of this software.
+  
+  Permission is granted to anyone to use this software for any
+  purpose, including commercial applications, and to alter it and redistribute it
+  freely, subject to the following restrictions:
+    
+  1. The origin of this software must not be misrepresented; you must not
+     claim that you wrote the original software. If you use this software
+     in a product, an acknowledgment in the product documentation would be
+     appreciated but is not required.
+  2. Altered source versions must be plainly marked as such, and must not be
+     misrepresented as being the original software.
+  3. This notice may not be removed or altered from any source distribution.
+
+  Jean-loup Gailly        Mark Adler
+  jloup@gzip.org          madler@alumni.caltech.edu
+
+
+Here is general information about the source added by the packager:
+
+This is the Debian GNU/Linux prepackaged version of the GNU compiler
+collection, containing Ada, C, C++, Fortran 95, Java, Objective-C,
+Objective-C++, and Treelang compilers, documentation, and support
+libraries.  In addition, Debian provides the GNU Pascal compiler in the
+same source package.  Packaging is done by the Debian GCC Maintainers
+<debian-gcc@lists.debian.org>, with sources obtained from:
+
+  ftp://gcc.gnu.org/pub/gcc/releases/  (for full releases)
+  svn://gcc.gnu.org/svn/gcc/           (for prereleases)
+  http://gnu-pascal.de/alpha/          (for GNU Pascal)
+  http://dgcc.sourceforge.net/         (for D)
+
+Changes: See changelog.Debian.gz
+
+Debian splits the GNU Compiler Collection into packages for each language,
+library, and documentation as follows:
+
+Language       Compiler package  Library package    Documentation
+---------------------------------------------------------------------------
+Ada            gnat-4.1          libgnat-4.1        gnat-4.1-doc
+C              gcc-4.1                              gcc-4.1-doc
+C++            g++-4.1           libstdc++6         libstdc++6-4.1-doc
+Fortran 95     gfortran-4.1      libgfortran1       gfortran-4.1-doc
+Java           gcj-4.1           libgcj7            libgcj-doc
+Objective C    gobjc-4.1         libobjc1
+Objective C++  gobjc++-4.1
+Pascal         gpc-4.1
+D              gdc-4.1
+Treelang       treelang-4.1
+
+For some language run-time libraries, Debian provides source files,
+development files, debugging symbols and libraries containing position-
+independent code in separate packages:
+
+Language  Sources     Development  Debugging           Position-Independent
+---------------------------------------------------------------------------
+C++                                libstdc++6-4.1-dbg  libstdc++6-4.1-pic
+Java      libgcj7-src libgcj7-dev  libgcj7-dbg
+
+Additional packages include:
+
+All languages:
+libgcc1, libgcc2, libgcc4       GCC intrinsics (platform-dependent)
+libffi4-dev, libffi4            Foreign Function Interface library
+gcc-4.1-base                    Base files common to all compilers
+gcc-4.1-soft-float              Software floating point (ARM only)
+gcc-4.1-source                  The sources with patches
+
+Ada:
+libgnatvsn-dev, libgnatvsn4.1   GNAT version library
+libgnatprj-dev, libgnatprj4.1   GNAT Project Manager library
+
+C:
+cpp-4.1, cpp-4.1-doc            GNU C Preprocessor
+libmudflap0-dev, libmudflap0    Library for instrumenting pointers
+libssp0-dev, libssp0            GCC stack smashing protection library
+fixincludes                     Fix non-ANSI header files
+protoize                        Create/remove ANSI prototypes from C code
+
+Java:
+fastjar                         Jar creation utility
+gij                             The Java bytecode interpreter and VM
+libgcj-common                   Common files for the Java run-time
+libgcj7-awt                     The Abstract Windowing Toolkit
+libgcj7-jar                     Java ARchive for the Java run-time
+
+Biarch support: On some 64-bit platforms which can also run 32-bit code,
+Debian provides additional packages containing 32-bit versions of some
+libraries.  These packages have names beginning with 'lib32' instead of
+'lib', for example lib32stdc++6.  Similarly, on some 32-bit platforms which
+can also run 64-bit code, Debian provides additional packages with names
+beginning with 'lib64' instead of 'lib'.  These packages contain 64-bit
+versions of the libraries.  (At this time, not all platforms and not all
+libraries support biarch.)  The license terms for these lib32 or lib64
+packages are identical to the ones for the lib packages.
+
+
+COPYRIGHT STATEMENTS AND LICENSING TERMS
+
+
+GCC is Copyright (C) 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994,
+1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006
+Free Software Foundation, Inc.
+
+This program is free software; you can redistribute it and/or modify it
+under the terms of the GNU General Public License as published by the
+Free Software Foundation; either version 2, or (at your option) any
+later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
+
+On Debian GNU/Linux systems, the complete text of the GNU General
+Public License is in `/usr/share/common-licenses/GPL'.
+
+The libstdc++-v3 library is licensed under the terms of the GNU General
+Public License, with this special exception:
+
+   As a special exception, you may use this file as part of a free software
+   library without restriction.  Specifically, if other files instantiate
+   templates or use macros or inline functions from this file, or you compile
+   this file and link it with other files to produce an executable, this
+   file does not by itself cause the resulting executable to be covered by
+   the GNU General Public License.  This exception does not however
+   invalidate any other reasons why the executable file might be covered by
+   the GNU General Public License.
+
+The libgnat-4.1 Ada support library and libgnatvsn are licensed under the
+terms of the GNU General Public License, with this special exception:
+
+   As a special exception, if other files instantiate generics from this
+   unit, or you link this unit with other files to produce an executable,
+   this unit does not by itself cause the resulting executable to be
+   covered by the GNU General Public License. This exception does not
+   however invalidate any other reasons why the executable file might be
+   covered by the GNU Public License.
+
+In contrast, libgnatprj is licensed under the terms of the pure GNU
+General Public License.
+
+gpc is copyright Free Software Foundation, and is licensed under the
+GNU General Public License which on Debian GNU/Linux systems can be
+found as `/usr/share/common-licenses/GPL3'.
+
+The gpc runtime library is licensed under the terms of the GNU General
+Public License, with this special exception:
+
+  As a special exception, if you link this file with files compiled
+  with a GNU compiler to produce an executable, this does not cause
+  the resulting executable to be covered by the GNU General Public
+  License. This exception does not however invalidate any other
+  reasons why the executable file might be covered by the GNU
+  General Public License. }
+
+The libgcj library is licensed under the terms of the GNU General
+Public License, with a special exception:
+
+    Linking this library statically or dynamically with other modules
+    is making a combined work based on this library.  Thus, the terms
+    and conditions of the GNU General Public License cover the whole
+    combination.
+
+    As a special exception, the copyright holders of this library give
+    you permission to link this library with independent modules to
+    produce an executable, regardless of the license terms of these
+    independent modules, and to copy and distribute the resulting
+    executable under terms of your choice, provided that you also
+    meet, for each linked independent module, the terms and conditions
+    of the license of that module.  An independent module is a module
+    which is not derived from or based on this library.  If you modify
+    this library, you may extend this exception to your version of the
+    library, but you are not obligated to do so.  If you do not wish
+    to do so, delete this exception statement from your version.
+
+gcc/libgcc2.c (source for libgcc) has the following addition:
+
+    In addition to the permissions in the GNU General Public License,
+    the Free Software Foundation gives you unlimited permission to
+    link the compiled version of this file into combinations with
+    other programs, and to distribute those combinations without any
+    restriction coming from the use of this file.  (The General Public
+    License restrictions do apply in other respects; for example, they
+    cover modification of the file, and distribution when not linked
+    into a combine executable.)
+
+gcc/unwind-libunwind.c (source for libgcc) has the following addition:
+
+    As a special exception, if you link this library with other files,
+    some of which are compiled with GCC, to produce an executable,
+    this library does not by itself cause the resulting executable to
+    be covered by the GNU General Public License.  This exception does
+    not however invalidate any other reasons why the executable file
+    might be covered by the GNU General Public License.
+
+The mudflap library is licensed under the terms of the GNU General
+Public License, and has the following addition:
+
+    In addition to the permissions in the GNU General Public License,
+    the Free Software Foundation gives you unlimited permission to
+    link the compiled version of this file into combinations with
+    other programs, and to distribute those combinations without any
+    restriction coming from the use of this file.  (The General Public
+    License restrictions do apply in other respects; for example, they
+    cover modification of the file, and distribution when not linked
+    into a combine executable.)
+
+The ssp library is licensed under the terms of the GNU General
+Public License, with a special exception:
+
+    As a special exception, if you link this library with other files,
+    some of which are compiled with GCC, to produce an executable,
+    this library does not by itself cause the resulting executable to
+    be covered by the GNU General Public License.  This exception does
+    not however invalidate any other reasons why the executable file
+    might be covered by the GNU General Public License.
+
+
+The documentation is licensed under the GNU Free Documentation License
+(v1.2), appended at the end of this file.
+On Debian GNU/Linux systems the GNU Free Documentation License version 1.2
+can be found in /usr/share/common-licenses/GFDL-1.2.
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gcj-BV.prerm
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gcj-BV.prerm
@@ -0,0 +1,18 @@
+#! /bin/sh -e
+
+update-alternatives --quiet --remove javac /usr/bin/gcj-wrapper-@BV@
+update-alternatives --quiet --remove jar /usr/bin/gjar-@BV@
+update-alternatives --quiet --remove jarsigner /usr/bin/gjarsigner-@BV@
+update-alternatives --quiet --remove javah /usr/bin/gjavah-@BV@
+update-alternatives --quiet --remove native2ascii /usr/bin/gnative2ascii-@BV@
+update-alternatives --quiet --remove rmic /usr/bin/grmic-@BV@
+update-alternatives --quiet --remove tnameserv /usr/bin/gtnameserv-@BV@
+
+if [ -f /usr/share/info/gcj-@BV@.info.gz ]; then
+  install-info --quiet --remove gcj-@BV@
+else
+  # GFDL invariant free
+  true
+fi
+
+#DEBHELPER#
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/README.Bugs
+++ gdc-4.1-0.25-20080616-4.1.2/debian/README.Bugs
@@ -0,0 +1,304 @@
+Reporting Bugs in the Debian/GNU GNU Compiler Setup
+===================================================
+
+Before reporting a bug, please
+------------------------------
+
+- Check that the behaviour really is a bug. Have a look into some
+  ANSI standards document.
+
+- Check the list of well known bugs: http://gcc.gnu.org/bugs.html#known
+
+- Try to reproduce the bug with a current GCC development snapshot. For
+  Debian GNU/Linux you can get a recent development snapshot from the
+  gcc-snapshot package in the unstable distribution.
+  See: http://packages.debian.org/gcc-snapshot
+
+- Try to find out if the bug is a regression (an older GCC version does
+  not show the bug).
+
+- Check if the bug is already reported in the bug tracking systems.
+
+    Debian:   http://bugs.debian.org/debian-gcc@lists.debian.org
+    Upstream: http://gcc.gnu.org/bugzilla/
+
+
+Where to report a bug
+---------------------
+
+Report bugs found in the packaging of GCC to the Debian bug tracking system.
+See http://www.debian.org/Bugs/ for instructions (or use the reportbug
+script).
+
+Debian's current policy is to closely follow the upstream development and
+only apply a minimal set of patches (which are summarized in the README.Debian
+document).
+
+If you think you have found an upstream bug, you did check the section
+above ("Before reporting a bug") and are able to provide a complete bug
+report (see below "How to report a bug"), then you may help the Debian
+GCC package maintainers, if you report the bug upstream and then submit
+a bug report to the Debian BTS and tell us the upstream report number.
+This way you are able to follow the upstream bug handling as well. If in
+doubt, report the bug to the Debian BTS (but read "How to report a bug"
+below.
+
+
+How to report a bug
+-------------------
+
+There are complete instructions in the gcc info manual (found in the
+gcc-doc package), section Bugs.
+
+The manual can be read using `M-x info' in Emacs, or if the GNU info
+program is installed on your system by `info --node "(gcc)Bugs"'. Or see
+the file BUGS included with the gcc source code.
+
+Online bug reporting instructions can be found at
+
+	http://gcc.gnu.org/bugs.html
+
+[Some paragraphs taken from the above URL]
+
+The main purpose of a bug report is to enable us to fix the bug. The
+most important prerequisite for this is that the report must be
+complete and self-contained, which we explain in detail below.
+
+Before you report a bug, please check the list of well-known bugs and,
+if possible in any way, try a current development snapshot.
+
+Summarized bug reporting instructions
+-------------------------------------
+
+What we need
+
+Please include in your bug report all of the following items, the
+first three of which can be obtained from the output of gcc -v:
+
+    * the exact version of GCC;
+    * the system type;
+    * the options given when GCC was configured/built;
+    * the complete command line that triggers the bug;
+    * the compiler output (error messages, warnings, etc.); and
+    * the preprocessed file (*.i*) that triggers the bug, generated by
+      adding -save-temps to the complete compilation command, or, in
+      the case of a bug report for the GNAT front end, a complete set
+      of source files (see below).
+
+What we do not want
+
+    * A source file that #includes header files that are left out
+      of the bug report (see above)
+    * That source file and a collection of header files.
+    * An attached archive (tar, zip, shar, whatever) containing all
+      (or some :-) of the above.
+    * A code snippet that won't cause the compiler to produce the
+      exact output mentioned in the bug report (e.g., a snippet with
+      just a few lines around the one that apparently triggers the
+      bug, with some pieces replaced with ellipses or comments for
+      extra obfuscation :-)
+    * The location (URL) of the package that failed to build (we won't
+      download it, anyway, since you've already given us what we need
+      to duplicate the bug, haven't you? :-)
+    * An error that occurs only some of the times a certain file is
+      compiled, such that retrying a sufficient number of times
+      results in a successful compilation; this is a symptom of a
+      hardware problem, not of a compiler bug (sorry)
+    * E-mail messages that complement previous, incomplete bug
+      reports. Post a new, self-contained, full bug report instead, if
+      possible as a follow-up to the original bug report
+    * Assembly files (*.s) produced by the compiler, or any binary files,
+      such as object files, executables, core files, or precompiled
+      header files
+    * Duplicate bug reports, or reports of bugs already fixed in the
+      development tree, especially those that have already been
+      reported as fixed last week :-)
+    * Bugs in the assembler, the linker or the C library. These are
+      separate projects, with separate mailing lists and different bug
+      reporting procedures
+    * Bugs in releases or snapshots of GCC not issued by the GNU
+      Project. Report them to whoever provided you with the release
+    * Questions about the correctness or the expected behavior of
+      certain constructs that are not GCC extensions. Ask them in
+      forums dedicated to the discussion of the programming language
+
+
+Known Bugs and Non-Bugs
+-----------------------
+
+[Please see /usr/share/doc/gcc/FAQ or http://gcc.gnu.org/faq.html first]
+
+
+C++ exceptions don't work with C libraries
+------------------------------------------
+
+[Taken from the closed bug report #22769] C++ exceptions don't work
+with C libraries, if the C code wasn't designed to be thrown through.
+A solution could be to translate all C libraries with -fexceptions.
+Mostly trying to throw an exception in a callback function (qsort,
+Tcl command callbacks, etc ...). Example:
+
+    #include <stdio.h>
+    #include <tcl.h>
+
+    class A {};
+
+    static
+    int SortCondition(void const*, void const*)
+    {
+        printf("throwing 'sortcondition' exception\n");
+        throw A();
+    }
+
+    int main(int argc, char *argv[])
+    {
+        int list[2];
+
+        try {
+            SortCondition(NULL,NULL);
+        } catch (A) {
+            printf("caught test-sortcondition exception\n");
+        }
+        try {
+            qsort(&list, sizeof(list)/sizeof(list[0]),sizeof(list[0]),
+                 &SortCondition);
+        } catch (A) {
+            printf("caught real-sortcondition exception\n");
+        }
+        return 0;
+}
+
+Andrew Macleod <amacleod@cygnus.com> responded:
+
+When compiled with the table driven exception handling, exception can only
+be thrown through functions which have been compiled with the table driven EH.
+If a function isn't compiled that way, then we do not have the frame
+unwinding information required to restore the registers when unwinding.
+
+I believe the setjmp/longjmp mechanism will throw through things like this, 
+but its produces much messier code.  (-fsjlj-exceptions)
+
+The C compiler does support exceptions, you just have to turn them on
+with -fexceptions.
+
+Your main options are to:
+  a) Don't use callbacks, or at least don't throw through them.
+  b) Get the source and compile the library with -fexceptions (You have to
+     explicitly turn on exceptions in the C compiler)
+  c) always use -fsjlj-exceptions (boo, bad choice :-)
+
+
+g++: "undefined reference" to static const array in class
+---------------------------------------------------------
+
+The following code compiles under GNU C++ 2.7.2 with correct results,
+but produces the same linker error with GNU C++ 2.95.2.
+Alexandre Oliva <oliva@lsd.ic.unicamp.br> responded:
+
+All of them are correct.  A static data member *must* be defined
+outside the class body even if it is initialized within the class
+body, but no diagnostic is required if the definition is missing.  It
+turns out that some releases do emit references to the missing symbol,
+while others optimize it away.
+
+#include <iostream>
+
+class Test
+{
+  public:
+    Test(const char *q);
+  protected:
+    static const unsigned char  Jam_signature[4]   = "JAM";
+};
+
+Test::Test(const char *q)
+{
+  if (memcmp(q, Jam_signature, sizeof(Jam_signature)) != 0)
+  cerr << "Hello world!\n";
+}
+
+int main(void)
+{
+  Test::Test("JAM");
+  return 0;
+}
+
+g++: g++ causes passing non const ptr to ptr to a func with const arg
+     to cause an error (not a bug)
+---------------------------------------------------------------------
+
+Example:
+
+#include <stdio.h>
+void test(const char **b){
+        printf ("%s\n",*b);
+}
+int main(void){
+        char *test1="aoeu";
+        test(&test1);
+}
+
+make const
+g++     const.cc   -o const
+const.cc: In function `int main()':
+const.cc:7: passing `char **' as argument 1 of `test(const char **)' adds cv-quals without intervening `const'
+make: *** [const] Error 1
+
+Answer from "Martin v. Loewis" <martin@loewis.home.cs.tu-berlin.de>:
+
+> ok... maybe I missed something.. I haven't really kept up with the latest in
+> C++ news.  But I've never heard anything even remotly close to passing a non
+> const var into a const arg being an error before.
+
+Thanks for your bug report. This is a not a bug in the compiler, but
+in your code. The standard, in 4.4/4, puts it that way
+
+# A conversion can add cv-qualifiers at levels other than the first in
+# multi-level pointers, subject to the following rules:
+# Two pointer types T1 and T2 are similar if there exists a type T and
+# integer n > 0 such that:
+#   T1 is cv(1,0) pointer to cv(1,1) pointer to ... cv(1,n-1)
+#   pointer to cv(1,n) T
+# and
+#   T2 is cv(2,0) pointer to cv(2,1) pointer to ... cv(2,n-1)
+#   pointer to cv(2,n) T
+# where each cv(i,j) is const, volatile, const volatile, or
+# nothing. The n-tuple of cv-qualifiers after the first in a pointer
+# type, e.g., cv(1,1) , cv(1,2) , ... , cv(1,n) in the pointer type
+# T1, is called the cv-qualification signature of the pointer type. An
+# expression of type T1 can be converted to type T2 if and only if the
+# following conditions are satisfied:
+#  - the pointer types are similar.
+#  - for every j > 0, if const is in cv(1,j) then const is in cv(2,j) ,
+#    and similarly for volatile.
+#  - if the cv(1,j) and cv(2,j) are different, then const is in every
+#    cv(2,k) for 0 < k < j.
+
+It is the last rule that your code violates. The standard gives then
+the following example as a rationale:
+
+# [Note: if a program could assign a pointer of type T** to a pointer
+# of type const T** (that is, if line //1 below was allowed), a
+# program could inadvertently modify a const object (as it is done on
+# line //2). For example,
+# int main() { 
+#   const char c = 'c'; 
+#   char* pc; 
+#   const char** pcc = &pc; //1: not allowed 
+#   *pcc = &c; 
+#   *pc = 'C'; //2: modifies a const object 
+# }
+# - end note]
+
+If you question this line of reasoning, please discuss it in one of
+the public C++ fora first, eg. comp.lang.c++.moderated, or
+comp.std.c++.
+
+
+cpp removes blank lines
+-----------------------
+
+With the new cpp, you need to add -traditional to the "cpp -P" args, else 
+blank lines get removed.
+
+[EDIT ME: scan Debian bug reports and write some nice summaries ...]
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/g77-BV-doc.doc-base
+++ gdc-4.1-0.25-20080616-4.1.2/debian/g77-BV-doc.doc-base
@@ -0,0 +1,14 @@
+Document: g77-@BV@
+Title: The GNU Fortran 77 Compiler 
+Author: Various
+Abstract: This manual documents how to run, install and port `g77', as well as
+ its new features and incompatibilities, and how to report bugs.
+Section: Apps/Programming
+
+Format: html
+Index: /usr/share/doc/gcc-@BV@-base/fortran/g77.html
+Files: /usr/share/doc/gcc-@BV@-base/fortran/g77.html
+
+Format: info
+Index: /usr/share/info/g77-@BV@.info.gz
+Files: /usr/share/info/g77-@BV@*
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/lib32gccLC.preinst
+++ gdc-4.1-0.25-20080616-4.1.2/debian/lib32gccLC.preinst
@@ -0,0 +1,8 @@
+#! /bin/sh -e
+
+if [ ! -h /usr/lib32 -a -d /usr/lib32 -a -d /emul/ia32-linux/usr/lib ]; then
+  rm -rf /usr/lib32
+  ln -s /emul/ia32-linux/usr/lib /usr/lib32
+fi
+
+#DEBHELPER#
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gcj-BV.postinst
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gcj-BV.postinst
@@ -0,0 +1,45 @@
+#! /bin/sh -e
+
+if [ -d /usr/share/doc/gcc-@BV@-base/java ] && [ ! -h /usr/share/doc/gcc-@BV@-base/java ]; then
+    rm -rf /usr/share/doc/gcc-@BV@-base/java
+    ln -s ../gcj-@BV@-base /usr/share/doc/gcc-@BV@-base/java
+fi
+
+prio=$(echo @BV@ | sed 's/\.//g')
+update-alternatives --quiet \
+    --install /usr/bin/javac javac /usr/bin/gcj-wrapper-@BV@ $prio \
+    @GFDL@--slave /usr/share/man/man1/javac.1.gz javac.1.gz /usr/share/man/man1/gcj-wrapper-@BV@.1.gz
+
+update-alternatives --quiet \
+    --install /usr/bin/jar jar /usr/bin/gjar-@BV@ $prio \
+    --slave /usr/share/man/man1/jar.1.gz jar.1.gz /usr/share/man/man1/gjar-@BV@.1.gz
+
+update-alternatives --quiet \
+    --install /usr/bin/jarsigner jarsigner /usr/bin/gjarsigner-@BV@ $prio \
+    --slave /usr/share/man/man1/jarsigner.1.gz jarsigner.1.gz /usr/share/man/man1/gjarsigner-@BV@.1.gz
+
+update-alternatives --quiet \
+    --install /usr/bin/javah javah /usr/bin/gjavah-@BV@ $prio \
+    --slave /usr/share/man/man1/javah.1.gz javah.1.gz /usr/share/man/man1/gjavah-@BV@.1.gz
+
+update-alternatives --quiet \
+    --install /usr/bin/native2ascii native2ascii /usr/bin/gnative2ascii-@BV@ $prio \
+    --slave /usr/share/man/man1/native2ascii.1.gz native2ascii.1.gz /usr/share/man/man1/gnative2ascii-@BV@.1.gz
+
+update-alternatives --quiet \
+    --install /usr/bin/rmic rmic /usr/bin/grmic-@BV@ $prio \
+    --slave /usr/share/man/man1/rmic.1.gz rmic.1.gz /usr/share/man/man1/grmic-@BV@.1.gz
+
+update-alternatives --quiet \
+    --install /usr/bin/tnameserv tnameserv /usr/bin/gtnameserv-@BV@ $prio \
+    --slave /usr/share/man/man1/tnameserv.1.gz tnameserv.1.gz /usr/share/man/man1/gtnameserv-@BV@.1.gz
+
+if [ -f /usr/share/info/gcj-@BV@.info.gz ]; then
+  install-info --quiet --section "Development" "Development" \
+	/usr/share/info/gcj-@BV@.info.gz
+else
+  # GFDL invariant free
+  :
+fi
+
+#DEBHELPER#
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gnat-BV-doc.prerm
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gnat-BV-doc.prerm
@@ -0,0 +1,7 @@
+#! /bin/sh -e
+
+install-info --quiet --remove gnat_ugn_unw-@BV@
+install-info --quiet --remove gnat_rm-@BV@
+install-info --quiet --remove gnat-style-@BV@
+
+#DEBHELPER#
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gfortran-BV-doc.postinst
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gfortran-BV-doc.postinst
@@ -0,0 +1,10 @@
+#! /bin/sh -e
+
+case "$1" in
+    configure)
+	install-info --quiet --section "Development" "Development" \
+	    --description="The GNU Fortran compiler (Version @BV@)." \
+	    /usr/share/info/gfortran-@BV@.info
+esac
+
+#DEBHELPER#
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/multiarch.inc
+++ gdc-4.1-0.25-20080616-4.1.2/debian/multiarch.inc
@@ -0,0 +1,40 @@
+
+#if defined(__i486_linux_gnu__)
+  { "64",  "x86_64-linux-gnu"},
+#endif
+
+#if defined(__powerpc64_linux_gnu__)
+  { "32",  "powerpc-linux-gnu"},
+#endif
+
+#if defined(__x86_64_linux_gnu__)
+  { "32",  "i486-linux-gnu"},
+#endif
+
+#if defined(__powerpc_linux_gnu__)
+  { "64",  "powerpc64-linux-gnu"},
+#endif
+
+#if defined(__sparc_linux_gnu__)
+  { "64",  "sparc64-linux-gnu"},
+#endif
+
+#if defined(__s390_linux_gnu__)
+  { "64",  "s390x-linux-gnu"},
+#endif
+
+#if defined(__mips_linux_gnu__)
+  { "n32",  "mips64-linux-gnuabin32"},
+  { "64",  "mips64-linux-gnuabi64"},
+#endif
+
+#if defined(__mipsel_linux_gnu__)
+  { "n32",  "mips64el-linux-gnuabin32"},
+  { "64",  "mips64el-linux-gnuabi64"},
+#endif
+
+#if defined(__x86_64_kfreebsd_gnu__)
+  { "32",  "i486-kfreebsd-gnu"},
+#endif
+
+
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/cpp-BV-doc.doc-base.cppint
+++ gdc-4.1-0.25-20080616-4.1.2/debian/cpp-BV-doc.doc-base.cppint
@@ -0,0 +1,17 @@
+Document: cppinternals-@BV@
+Title: The GNU C preprocessor (internals)
+Author: Various
+Abstract: This brief manual documents the internals of cpplib, and
+ explains some of the tricky issues.  It is intended that, along with
+ the comments in the source code, a reasonably competent C programmer
+ should be able to figure out what the code is doing, and why things
+ have been implemented the way they have.
+Section: Apps/Programming
+
+Format: html
+Index: /usr/share/doc/gcc-@BV@-base/cppinternals.html
+Files: /usr/share/doc/gcc-@BV@-base/cppinternals.html
+
+Format: info
+Index: /usr/share/info/cppinternals-@BV@.info.gz
+Files: /usr/share/info/cppinternals-@BV@*
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/libmudflap.copyright
+++ gdc-4.1-0.25-20080616-4.1.2/debian/libmudflap.copyright
@@ -0,0 +1,30 @@
+This package was debianized by Matthias Klose <doko@debian.org> on
+Mon,  5 Jul 2004 21:29:57 +0200
+
+Mudflap is part of GCC.
+
+Authors: Frank Ch. Eigler <fche@redhat.com>, Graydon Hoare <graydon@redhat.com>
+
+Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
+
+GCC is free software; you can redistribute it and/or modify it under
+the terms of the GNU General Public License as published by the Free
+Software Foundation; either version 2, or (at your option) any later
+version.
+
+In addition to the permissions in the GNU General Public License, the
+Free Software Foundation gives you unlimited permission to link the
+compiled version of this file into combinations with other programs,
+and to distribute those combinations without any restriction coming
+from the use of this file.  (The General Public License restrictions
+do apply in other respects; for example, they cover modification of
+the file, and distribution when not linked into a combine
+executable.)
+
+GCC is distributed in the hope that it will be useful, but WITHOUT ANY
+WARRANTY; without even the implied warranty of MERCHANTABILITY or
+FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+for more details.
+
+On Debian GNU/Linux systems, the complete text of the GNU General
+Public License can be found in `/usr/share/common-licenses/GPL'.
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/cpp-BV-doc.doc-base.cpp
+++ gdc-4.1-0.25-20080616-4.1.2/debian/cpp-BV-doc.doc-base.cpp
@@ -0,0 +1,16 @@
+Document: cpp-@BV@
+Title: The GNU C preprocessor
+Author: Various
+Abstract: The C preprocessor is a "macro processor" that is used automatically
+ by the C compiler to transform your program before actual compilation.
+ It is called a macro processor because it allows you to define "macros",
+ which are brief abbreviations for longer constructs.
+Section: Apps/Programming
+
+Format: html
+Index: /usr/share/doc/gcc-@BV@-base/cpp.html
+Files: /usr/share/doc/gcc-@BV@-base/cpp.html
+
+Format: info
+Index: /usr/share/info/cpp-@BV@.info.gz
+Files: /usr/share/info/cpp-@BV@*
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/lib64gccLC.postinst
+++ gdc-4.1-0.25-20080616-4.1.2/debian/lib64gccLC.postinst
@@ -0,0 +1,12 @@
+#! /bin/sh -e
+
+case "$1" in
+    configure)
+	docdir=/usr/share/doc/lib64gcc@LC@
+	if [ -d $docdir ] && [ ! -h $docdir ]; then
+	    rm -rf $docdir
+	    ln -s gcc-@BV@-base $docdir
+	fi
+esac
+
+#DEBHELPER#
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gcc-BV-doc.doc-base.gcc
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gcc-BV-doc.doc-base.gcc
@@ -0,0 +1,14 @@
+Document: gcc-@BV@
+Title: The GNU C and C++ compiler
+Author: Various
+Abstract: This manual documents how to run, install and port the GNU compiler,
+ as well as its new features and incompatibilities, and how to report bugs.
+Section: Apps/Programming
+
+Format: html
+Index: /usr/share/doc/gcc-@BV@-base/gcc.html
+Files: /usr/share/doc/gcc-@BV@-base/gcc.html
+
+Format: info
+Index: /usr/share/info/gcc-@BV@.info.gz
+Files: /usr/share/info/gcc-@BV@*
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gcjh-wrapper-BV.1
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gcjh-wrapper-BV.1
@@ -0,0 +1,20 @@
+.TH GCJH-WRAPPER 1 "June 6, 2002" gcjh-wrapper "Java User's Manual"
+.SH NAME
+gcjh-wrapper \- a wrapper around gcjh
+
+.SH SYNOPSIS
+gcjh-wrapper [\fB\s-1OPTION\s0\fR] ... [\fI\s-1ARGS\s0\fR...]
+
+.SH DESCRIPTION
+
+\fBgcjh-wrapper\fR is a wrapper around gcjh(1) to be called as the java header
+compiler. Options different for javah(1) and gcjh(1) are translated,
+options unknown to gcjh(1) are silently ignored.
+
+.SH OPTIONS
+See gcjh-@BV@(1) for a list of options that gcj understands.
+
+.SH "SEE ALSO"
+.BR gcjh-@BV@(1)
+,
+.BR javah(1)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules
@@ -0,0 +1,83 @@
+#! /usr/bin/make -f
+# -*- makefile -*-
+# Build rules for gcc (>= 2.95) and gcc-snapshot
+# Targets found in this makefile:
+#	- unpack tarballs
+#	- patch sources
+#	- (re)create the control file
+#	- create a debian/rules.parameters file, which is included
+#	  by debian/rules2
+# All other targets are passed to the debian/rules2 file
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+unexport LANG LC_ALL LC_CTYPE LC_COLLATE LC_TIME LC_NUMERIC LC_MESSAGES
+
+default: build
+
+include debian/rules.defs
+include debian/rules.unpack
+include debian/rules.patch
+
+control: $(control_dependencies)
+	-mkdir -p $(stampdir)
+	$(MAKE) -f debian/rules.conf $@
+
+configure: $(configure_dependencies)
+$(configure_stamp): control $(unpack_stamp) $(patch_stamp)
+	$(MAKE) -f debian/rules2 $@
+$(configure_dummy_stamp): control
+	$(MAKE) -f debian/rules2 $@
+$(configure_hppa64_stamp): $(build_stamp)
+	$(MAKE) -f debian/rules2 $@
+
+build: $(build_dependencies)
+$(build_stamp): $(unpack_stamp) $(patch_stamp) $(configure_stamp)
+	$(MAKE) -f debian/rules2 $@
+$(build_dummy_stamp): $(configure_dummy_stamp)
+	$(MAKE) -f debian/rules2 $@
+$(build_hppa64_stamp): $(configure_hppa64_stamp)
+	$(MAKE) -f debian/rules2 $@
+
+check: $(build_stamp)
+	$(MAKE) -f debian/rules2 $@
+
+clean:
+	rm -rf $(stampdir)
+# remove temporary dirs used for unpacking
+	rm -rf $(gcc_srcdir) $(gpc_srcdir) p $(gdc_srcdir) d
+	-$(MAKE) -f debian/rules2 $@
+	rm -rf $(srcdir) $(builddir)* debian/tmp* html
+	rm -f bootstrap-* first-move-stamp
+	rm -f debian/*.tmp
+	rm -f debian/soname-cache
+	find debian -name '.#*' | xargs -r rm -f
+	find debian/patches -name '*.dpatch' -type f ! -perm 644 | xargs -r chmod 644
+	dh_clean
+
+install: $(install_dependencies)
+$(install_stamp): $(build_stamp)
+	$(MAKE) -f debian/rules2 $@
+$(install_dummy_stamp): $(build_dummy_stamp)
+	$(MAKE) -f debian/rules2 $@
+$(install_hppa64_stamp): $(build_hppa64_stamp)
+	$(MAKE) -f debian/rules2 $@
+
+html-docs doxygen-docs update-doxygen-docs update-ada-files xxx:
+	$(MAKE) -f debian/rules2 $@
+
+binary-indep binary-arch binary: install
+	$(MAKE) -f debian/rules2 $@
+
+source diff:
+	@echo >&2 'source and diff are obsolete - use dpkg-source -b'; false
+
+release:
+	foo=$(shell basename $(CURDIR)); \
+		if [ "$$foo" != "gcc-3.4" ]; then \
+			find -name CVS -o -name .cvsignore -o -name '.#*' | \
+				xargs rm -rf; \
+		fi
+
+.PHONY: build clean binary-indep binary-arch binary release
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gnat-BV-doc.doc-base.rm
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gnat-BV-doc.doc-base.rm
@@ -0,0 +1,16 @@
+Document: gnat_rm-@BV@
+Title: GNAT (GNU Ada) Reference Manual
+Author: Various
+Abstract: This manual contains useful information in writing programs
+ using the GNAT compiler.  It includes information on implementation
+ dependent characteristics of GNAT, including all the information
+ required by Annex M of the standard.
+Section: Apps/Programming
+
+Format: html
+Index: /usr/share/doc/gcc-@BV@-base/Ada/gnat_rm.html
+Files: /usr/share/doc/gcc-@BV@-base/Ada/gnat_rm.html
+
+Format: info
+Index: /usr/share/info/gnat_rm-@BV@.info.gz
+Files: /usr/share/info/gnat_rm-@BV@*
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/README.gnat
+++ gdc-4.1-0.25-20080616-4.1.2/debian/README.gnat
@@ -0,0 +1,34 @@
+If you want to develop Ada programs and libraries on Debian, please
+read the Debian Policy for Ada:
+
+http://www.ada-france.org/debian/debian-ada-policy.html
+
+The default Ada compiler is and always will be the package `gnat'.
+Debian contains many programs and libraries compiled with it, which
+are all ABI-compatible.
+
+Currently, in Etch and Sid, the default Ada compiler is gnat 3.15p.  A
+transition to gnat-4.1 has started, but is work in progress.  If you
+would like to help with this transition, please contact Ludovic Brenta
+<ludovic@ludovic-brenta.org>.
+
+Here are the steps in the transition:
+
+* link the GNAT tools dynamically against libgnat-4.1.so, not
+  statically. [done: 2006-03-21]
+
+* change the default directory for project files to
+  /usr/share/ada/adainclude, per the Debian Policy for Ada and the GNU
+  Ada Environment Specification.
+
+* port support for symbolic tracebacks from gnat.
+
+* port libgnatvsn and libgnatprj from gnat.
+
+* port ASIS to gnat-4.1.
+
+* port GLADE to gnat-4.1.
+
+When the transition completes, the package `gnat' will become a dummy
+package requiring gnat-4.1, and then all Ada packages will be rebuilt
+with the new compiler (with soname change for libraries).
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/lib32stdc++CXX.postinst
+++ gdc-4.1-0.25-20080616-4.1.2/debian/lib32stdc++CXX.postinst
@@ -0,0 +1,12 @@
+#! /bin/sh -e
+
+case "$1" in
+    configure)
+	docdir=/usr/share/doc/lib32stdc++@CXX@
+	if [ -d $docdir ] && [ ! -h $docdir ]; then
+	    rm -rf $docdir
+	    ln -s gcc-@BV@-base $docdir
+	fi
+esac
+
+#DEBHELPER#
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/NEWS.gcc
+++ gdc-4.1-0.25-20080616-4.1.2/debian/NEWS.gcc
@@ -0,0 +1,674 @@
+GCC 4.1 Release SeriesChanges, New Features, and Fixes
+======================================================
+
+The latest release in the 4.1 release series is GCC 4.1.2.
+
+
+Caveats
+=======
+
+
+General Optimizer Improvements
+==============================
+
+
+- GCC now has infrastructure for inter-procedural optimizations and
+  the following inter-procedural optimizations are implemented:
+	
+  - Profile guided inlining.  When doing profile feedback guided
+    optimization, GCC can now use the profile to make better informed
+    decisions on whether inlining of a function is profitable or not.
+    This means that GCC will no longer inline functions at call sites
+    that are not executed very often, and that functions at hot call
+    sites are more likely to be inlined.
+
+    A new parameter min-inline-recursive-probability is also now
+    available to throttle recursive inlining of functions with small
+    average recursive depths.
+
+  - Discovery of pure and const functions, a form of side-effects
+    analysis.  While older GCC releases could also discover such special
+    functions, the new IPA-based pass runs earlier so that the results
+    are available to more optimizers.  The pass is also simply more
+    powerful than the old one.
+
+  - Analysis of references to static variables and type escape
+    analysis, also forms of side-effects analysis.  The results of these
+    passes allow the compiler to be less conservative about
+    call-clobbered variables and references.  This results in more
+    redundant loads being eliminated and in making static variables
+    candidates for register promotion.
+
+  - Improvement of RTL-based alias analysis.  The results of type
+    escape analysis are fed to the RTL type-based alias analyzer,
+    allowing it to disambiguate more memory references.
+
+  - Interprocedural constant propagation and function versioning.
+    This pass looks for functions that are always called with the same
+    constant value for one or more of the function arguments, and
+    propagates those constants into those functions.
+
+  - GCC will now eliminate static variables whose usage was optimized out.
+
+  - -fwhole-program --combine can now be used to make all functions in
+    program static allowing whole program optimization.  As an
+    exception, the main function and all functions marked with the new
+    externally_visible attribute are kept global so that programs can
+    link with runtime libraries.
+	
+
+- GCC can now do a form of partial dead code elimination (PDCE) that
+  allows code motion of expressions to the paths where the result of the
+  expression is actually needed.  This is not always a win, so the pass
+  has been limited to only consider profitable cases.  Here is an example:
+
+    int foo (int *, int *);
+    int
+    bar (int d)
+    {
+      int a, b, c;
+      b = d + 1;
+      c = d + 2;
+      a = b + c;
+      if (d)
+        {
+          foo (&b, &c);
+          a = b + c;
+        }
+      printf ("%d\n", a);
+    }
+	
+
+  The a = b + c can be sunk to right before the printf.  Normal code
+  sinking will not do this, it will sink the first one above into the
+  else-branch of the conditional jump, which still gives you two
+  copies of the code.
+
+- GCC now has a value range propagation pass.  This allows the
+  compiler to eliminate bounds checks and branches.  The results of the
+  pass can also be used to accurately compute branch probabilities.
+
+- The pass to convert PHI nodes to straight-line code (a form of
+  if-conversion for GIMPLE) has been improved significantly.  The two
+  most significant improvements are an improved algorithm to determine
+  the order in which the PHI nodes are considered, and an improvement
+  that allow the pass to consider if-conversions of basic blocks with
+  more than two predecessors.
+
+- Alias analysis improvements.  GCC can now differentiate between
+  different fields of structures in Tree-SSA's virtual operands
+  form. This lets stores/loads from non-overlapping structure fields not
+  conflict.  A new algorithm to compute points-to sets was contributed
+  that can allows GCC to see now that p->a and p->b, where p is a
+  pointer to a structure, can never point to the same field.
+
+- Various enhancements to auto-vectorization:
+	
+  - Incrementally preserve SSA form when vectorizing.
+
+  - Incrementally preserve loop-closed form when vectorizing.
+
+  - Improvements to peeling for alignment: generate better code when
+    the misalignment of an access is known at compile time, or when
+    different accesses are known to have the same misalignment, even if
+    the misalignment amount itself is unknown.
+
+  - Consider dependence distance in the vectorizer.
+
+  - Externalize generic parts of data reference analysis to make this
+    analysis available to other passes.
+
+  - Vectorization of conditional code.
+
+  - Reduction support.
+	
+- GCC can now partition functions in sections of hot and cold
+  code. This can significantly improve performance due to better
+  instruction cache locality.  This feature works best together with
+  profile feedback driven optimization.
+
+- A new pass to avoid saving of unneeded arguments to the stack in
+  vararg functions if the compiler can prove that they will not be
+  needed.
+
+- Transition of basic block profiling to tree level implementation has
+  been completed.  The new implementation should be considerably more
+  reliable (hopefully avoiding profile mismatch errors when using
+  -fprofile-use or -fbranch-probabilities) and can be used to drive
+  higher level optimizations, such as inlining.
+	
+  The -ftree-based-profiling command line option was removed and
+  -fprofile-use now implies disabling old RTL level loop optimizer
+  (-fno-loop-optimize).  Speculative prefetching optimization
+  (originally enabled by -fspeculative-prefetching) was removed.
+
+
+New Languages and Language specific improvements
+================================================
+
+C and Objective-C
+-----------------
+
+- The old Bison-based C and Objective-C parser has been replaced by a
+  new, faster hand-written recursive-descent parser.
+
+
+Ada
+---
+
+- The build infrastructure for the Ada runtime library and tools has
+  been changed to be better integrated with the rest of the build
+  infrastructure of GCC.  This should make doing cross builds of Ada a
+  bit easier.
+
+
+C++
+---
+
+- ARM-style name-injection of friend declarations is no longer the
+  default.  For example:
+
+    struct S {
+      friend void f();
+    };
+
+    void g() { f(); }
+
+  will not be accepted; instead a declaration of f will need to be
+  present outside of the scope of S.  The new -ffriend-injection
+  option will enable the old behavior.
+
+
+- The (undocumented) extension which permitted templates with default
+  arguments to be bound to template template parameters with fewer
+  parameters has been deprecated, and will be removed in the next major
+  release of G++.  For example:
+
+    template <template <typename> class C>
+    void f(C<double>) {}
+
+    template <typename T, typename U = int>
+    struct S {};
+
+    template void f(S<double>);
+
+
+  makes use of the deprecated extension.  The reason this code is not
+  valid ISO C++ is that S is a template with two parameters;
+  therefore, it cannot be bound to C which has only one parameter.
+
+
+Runtime Library (libstdc++)
+---------------------------
+
+- Optimization work:
+
+  - A new implementation of std::search_n is provided, better
+    performing in case of random access iterators.
+
+  - Added further efficient specializations of istream functions,
+    i.e., character array and string extractors.
+
+  - Other smaller improvements throughout.
+
+- Policy-based associative containers, designed for high-performance,
+  flexibility and semantic safety are delivered in ext/pb_assoc.
+
+- A versatile string class, __gnu_cxx::__versa_string, providing
+  facilities conforming to the standard requirements for basic_string,
+  is delivered in <ext/vstring.h>.  In particular:
+
+  - Two base classes are provided: the default one avoids reference
+    counting and is optimized for short strings; the alternate one,
+    still uses it while improving in a few low level areas (e.g.,
+    alignment).  See vstring_fwd.h for some useful typedefs.
+
+  - Various algorithms have been rewritten (e.g., replace), the code
+    streamlined and simple optimizations added.
+
+  - Option 3 of DR 431 is implemented for both available bases, thus
+    improving the support for stateful allocators.
+
+  - As usual, many bugs have been fixed (e.g., libstdc++/13583,
+    libstdc++/23953) and LWG resolutions put into effect for the first
+    time (e.g., DR 280, DR 464, N1780 recommendations for DR 233,
+    TR1 Issue 6.19).  The implementation status of TR1 is now tracked in
+    the docs in tr1.html.
+
+
+Objective-C++
+-------------
+
+- A new language front end for Objective-C++ has been added.  This
+  language allows users to mix the object oriented features of
+  Objective-C with those of C++.
+
+
+Java (GCJ)
+----------
+
+- Core library (libgcj) updates based on GNU Classpath 0.15 - 0.19
+  features (plus some 0.20 bug-fixes)
+
+  - Networking
+
+    - The java.net.HttpURLConnection implementation no longer buffers
+      the entire response body in memory.  This means that response
+      bodies larger than available memory can now be handled.
+
+  - (N)IO
+
+    - NIO FileChannel.map implementation, fast bulk put implementation
+      for DirectByteBuffer (speeds up this method 10x).
+
+    - FileChannel.lock() and FileChannel.force() implemented.
+
+  - XML
+
+    - gnu.xml fix for nodes created outside a namespace context.
+
+    - Add support for output indenting and cdata-section-elements
+      output instruction in xml.transform.
+
+    - xml.xpath corrections for cases where elements/attributes might
+      have been created in non-namespace-aware mode.  Corrections to
+      handling of XSL variables and minor conformance updates.
+
+  - AWT
+
+    - GNU JAWT implementation, the AWT Native Interface, which allows
+      direct access to native screen resources from within a Canvas's
+      paint method.  GNU Classpath Examples comes with a Demo, see
+      libjava/classpath/examples/README.
+
+    - awt.datatransfer updated to 1.5 with support for FlavorEvents.
+      The gtk+ awt peers now allow copy/paste of text, images,
+      URIs/files and serialized objects with other applications and
+      tracking clipboard change events with gtk+ 2.6 (for gtk+ 2.4 only
+      text and serialized objects are supported). A GNU Classpath
+      Examples datatransfer Demo was added to show the new functionality.
+
+    - Split gtk+ awt peers event handling in two threads and improve
+      gdk lock handling (solves several awt lock ups).
+
+    - Speed up awt Image loading.
+
+    - Better gtk+ scrollbar peer implementation when using gtk+ >= 2.6.
+
+    - Handle image loading errors correctly for gdkpixbuf and
+      MediaTracker.
+
+    - Better handle GDK lock. Properly prefix gtkpeer native functions
+      (cp_gtk).
+
+    - GdkGraphics2D has been updated to use Cairo 0.5.x or higher.
+
+    - BufferedImage and GtkImage rewrites. All image drawing
+      operations should now work correctly (flipping requires gtk+ >= 2.6)
+
+    - Future Graphics2D, image and text work is documented at:
+      http://developer.classpath.org/mediation/ClasspathGraphicsImagesText
+	
+
+    - When gtk+ 2.6 or higher is installed the default log handler
+      will produce stack traces whenever a WARNING, CRITICAL or ERROR
+      message is produced.
+	
+  - Free Swing
+	
+    - The RepaintManager has been reworked for more efficient
+      painting, especially for large GUIs.
+
+    - The layout manager OverlayLayout has been implemented, the
+      BoxLayout has been rewritten to make use of the SizeRequirements
+      utility class and caching for more efficient layout.
+
+    - Improved accessibility support.
+
+    - Significant progress has been made in the implementation of the
+      javax.swing.plaf.metal package, with most UI delegates in a
+      working state now.  Please test this with your own applications
+      and provide feedback that will help us to improve this package.
+
+    - The GUI demo (gnu.classpath.examples.swing.Demo) has been
+      extended to highlight various features in our Free Swing
+      implementation. And it includes a look and feel switcher for Metal
+      (default), Ocean and GNU themes.
+
+    - The javax.swing.plaf.multi package is now implemented.
+
+    - Editing and several key actions for JTree and JTable were implemented.
+
+    - Lots of icons and look and feel improvements for Free Swing
+      basic and metal themes were added.  Try running the GNU Classpath
+      Swing Demo in examples (gnu.classpath.examples.swing.Demo) with:
+      -Dswing.defaultlaf=javax.swing.plaf.basic.BasicLookAndFeel or
+      -Dswing.defaultlaf=javax.swing.plaf.metal.MetalLookAndFeel
+
+    - Start of styled text capabilites for java.swing.text.
+
+    - DefaultMutableTreeNode pre-order, post-order, depth-first and
+      breadth-first traversal enumerations implemented.
+
+    - JInternalFrame colors and titlebar draw properly.
+
+    - JTree is working up to par (icons, selection and keyboard traversal).
+
+    - JMenus were made more compatible in visual and programmatic behavior.
+
+    - JTable changeSelection and multiple selections implemented.
+
+    - JButton and JToggleButton change states work properly now.
+
+    - JFileChooser fixes.
+
+    - revalidate() and repaint() fixes which make Free Swing much more
+      responsive.
+
+    - MetalIconFactory implemented.
+
+    - Free Swing Top-Level Compatibility. JFrame, JDialog, JApplet,
+      JInternalFrame, and JWindow are now 1.5 compatible in the sense
+      that you can call add() and setLayout() directly on them, which
+      will have the same effect as calling getContentPane().add() and
+      getContentPane().setLayout().
+
+    - The JTree interface has been completed.  JTrees now recognizes
+      mouse clicks and selections work.
+
+    - BoxLayout works properly now.
+
+    - Fixed GrayFilter to actually work.
+
+    - Metal SplitPane implemented.
+
+    - Lots of Free Swing text and editor stuff work now.
+	
+
+  - Free RMI and Corba
+	
+    - Andrew Watson, Vice President and Technical Director of the
+      Object Management Group, has officially assigned us 20 bit Vendor
+      Minor Code Id: 0x47430 ("GC") that will mark remote
+      classpath-specific system exceptions.  Obtaining the VMCID means
+      that GNU Classpath now is a recogniseable type of node in a highly
+      interoperable CORBA world.
+
+    - GNU Classpath now includes the first working draft to support
+      the RMI over IIOP protocol. The current implementation is capable
+      of remote invocations, transferring various Serializables and
+      Externalizables via RMI-IIOP protocol.  It can flatten graphs and,
+      at least for the simple cases, is interoperable with 1.5 JDKs.
+
+    - org.omg.PortableInterceptor and related functionality in other
+      packages is now implemented:
+	
+      - The sever and client interceptors work as required since 1.4.
+
+      - The IOR interceptor works as needed for 1.5.
+	
+    - The org.omg.DynamicAny package is completed and passes the
+      prepared tests.
+
+    - The Portable Object Adapter should now support the output of the
+      recent IDL to java compilers. These compilers now generate
+      servants and not CORBA objects as before, making the output depend
+      on the existing POA implementation. Completing POA means that such
+      code can already be tried to run on Classpath. Our POA is tested
+      for the following usager scenarios:
+	
+      - POA converts servant to the CORBA object.
+      - Servant provides to the CORBA object.
+      - POA activates new CORBA object with the given Object
+      - Id (byte array) that is later accessible for the servant.
+      - During the first call, the ServantActivator provides servant
+        for this and all subsequent calls on the current object.
+      - During each call, the ServantLocator provides servant for this
+        call only.
+      - ServantLocator or ServantActivator forwards call to another server.
+      - POA has a single servant, responsible for all objects.
+      - POA has a default servant, but some objects are explicitly
+        connected to they specific servants.
+	
+      The POA is verified using tests from the former cost.omg.org.
+
+    - The CORBA implementation is now a working prototype that should
+      support features up to 1.3 inclusive.  We invite groups writing
+      CORBA dependent applications to try Classpath implementation,
+      reporting any possible bugs.  The CORBA prototype is interoperable
+      with Sun's implementation v 1.4, transferring object references,
+      primitive types, narrow and wide strings, arrays, structures,
+      trees, abstract interfaces and value types (feature of CORBA 2.3)
+      between these two platforms.  Remote exceptions are transferred
+      and handled correctly.  The stringified object references (IORs)
+      from various sources are parsed as required.  The transient (for
+      current session) and permanent (till jre restart) redirections
+      work.  Both Little and Big Endian encoded messages are accepted.
+      The implementation is verified using tests from the former
+      cost.omg.org.  The current release includes working examples (see
+      the examples directory), demonstrating the client-server
+      communication, using either CORBA Request or IDL-based stub
+      (usually generated by a IDL to java compiler).  These examples
+      also show how to use the Classpath CORBA naming service.  The IDL
+      to java compiler is not yet written, but as our library must be
+      compatible, it naturally accepts the output of other idlj
+      implementations.
+	
+  - Misc
+	
+    - Updated TimeZone data against Olson tzdata2005l.
+
+    - Make zip and jar packages UTF-8 clean.
+
+    - "native" code builds and compiles (warning free) on Darwin and Solaris.
+
+    - java.util.logging.FileHandler now rotates files.
+
+    - Start of a generic JDWP framework in gnu/classpath/jdwp.  This
+      is unfinished, but feedback (at classpath@gnu.org) from runtime
+      hackers is greatly appreciated. Although most of the work is
+      currently being done around gcj/gij we want this framework to be
+      as VM neutral as possible.  Early design is described in:
+      http://gcc.gnu.org/ml/java/2005-05/msg00260.html
+
+    - QT4 AWT peers, enable by giving configure --enable-qt-peer.
+      Included, but not ready for production yet. They are explicitly
+      disabled and not supported.  But if you want to help with the
+      development of these new features we are interested in
+      feedback. You will have to explicitly enable them to try them
+      out (and they will most likely contain bugs).
+
+    - Documentation fixes all over the place.  See
+      http://developer.classpath.org/doc/
+	
+	
+New Targets and Target Specific Improvements
+============================================
+
+IA-32/x86-64
+------------
+
+- The x86-64 medium model (that allows building applications whose
+  data segment exceeds 4GB) was redesigned to match latest ABI draft.
+  New implementation split large datastructures into separate segment
+  improving performance of accesses to small datastructures and also
+  allows linking of small model libraries into medium model programs as
+  long as the libraries are not accessing the large datastructures
+  directly.  Medium model is also supported in position independent code
+  now.
+
+  The ABI change results in partial incompatibility among medium model
+  objects. Linking medium model libraries (or objects) compiled with
+  new compiler into medium model program compiled with older will
+  likely result in exceeding ranges of relocations.
+	
+  Binutils 2.16.91 or newer are required for compiling medium model now.
+
+
+RS6000 (POWER/PowerPC)
+----------------------
+
+- The AltiVec vector primitives in <altivec.h> are now implemented in
+  a way that puts a smaller burden on the preprocessor, instead
+  processing the "overloading" in the front ends. This should benefit
+  compilation speed on AltiVec vector code.
+
+- AltiVec initializers now are generated more efficiently.
+
+- The popcountb instruction available on POWER5 now is generated.
+
+- The floating point round to integer instructions available on
+  POWER5+ now is generated.
+
+- Floating point divides can be synthesized using the floating point
+  reciprocal estimate instructions.
+
+- Double precision floating point constants are initialized as single
+  precision values if they can be represented exactly.
+
+
+S/390, zSeries and System z9
+----------------------------
+
+- Support for the IBM System z9 109 processor has been added.  When
+  using the -march=z9-109 option, the compiler will generate code making
+  use of instructions provided by the extended immediate facility.  -
+
+- Support for 128-bit IEEE floating point has been added.  When using
+  the -mlong-double-128 option, the compiler will map the long double
+  data type to 128-bit IEEE floating point. Using this option
+  constitutes an ABI change, and requires glibc support.
+
+- Various changes to improve performance of generated code have been
+  implemented, including:
+
+  - In functions that do not require a literal pool, register %r13
+    (which is traditionally reserved as literal pool pointer), can now
+    be freely used for other purposes by the compiler.
+
+  - More precise tracking of register use allows the compiler to
+    generate more efficient function prolog and epilog code in certain
+    cases.
+
+  - The SEARCH STRING, COMPARE LOGICAL STRING, and MOVE STRING
+    instructions are now used to implement C string functions.
+
+  - The MOVE CHARACTER instruction with single byte overlap is now
+    used to implement the memset function with non-zero fill byte.
+
+  - The LOAD ZERO instructions are now used where appropriate.
+
+  - The INSERT CHARACTERS UNDER MASK, STORE CHARACTERS UNDER MASK, and
+    INSERT IMMEDIATE instructions are now used more frequently to
+    optimize bitfield operations.
+
+  - The BRANCH ON COUNT instruction is now used more frequently.  In
+    particular, the fact that a loop contains a subroutine call no
+    longer prevents the compiler from using this instruction.
+
+  - The compiler is now aware that all shift and rotate instructions
+    implicitly truncate the shift count to six bits.
+
+- Back-end support for the following generic features has been implemented:
+
+  - The full set of built-in functions for atomic memory access.
+
+  - The -fstack-protector feature.
+
+  - The optimization pass avoiding unnecessary stores of incoming
+    argument registers in functions with variable argument list.
+
+
+SPARC
+-----
+
+- The default code model in 64-bit mode has been changed from
+  Medium/Anywhere to Medium/Middle on Solaris.
+
+- TLS support is disabled by default on Solaris prior to release
+  10. It can be enabled on TLS-capable Solaris 9 versions (4/04 release
+  and later) by specifying --enable-tls at configure time.
+
+
+MorphoSys
+---------
+
+- Support has been added for this new architecture.
+
+
+Obsolete Systems
+================
+
+
+Documentation improvements
+==========================
+
+
+Other significant improvements
+==============================
+
+- GCC can now emit code for protecting applications from
+  stack-smashing attacks.  The protection is realized by buffer overflow
+  detection and reordering of stack variables to avoid pointer
+  corruption.
+
+- Some built-in functions have been fortified to protect them against
+  various buffer overflow (and format string) vulnerabilities. Compared
+  to the mudflap bounds checking feature, the safe builtins have far
+  smaller overhead.  This means that programs built using safe builtins
+  should not experience any measurable slowdown.
+
+
+GCC 4.1.2
+=========
+
+This is the list [1] of problem reports (PRs) from GCC's bug tracking
+system that are known to be fixed in the 4.1.2 release. This list
+might not be complete (that is, it is possible that some PRs that have
+been fixed are not listed here).
+
+[1] http://gcc.gnu.org/bugzilla/buglist.cgi?bug_status=RESOLVED&resolution=FIXED&target_milestone=4.1.2
+
+
+When generating code for a shared library, GCC now recognizes that
+global functions may be replaced when the program runs.  Therefore, it
+is now more conservative in deducing information from the bodies of
+functions.  For example, in this example:
+
+    void f() {}
+    void g() { 
+     try { f(); } 
+     catch (...) { 
+       cout << "Exception";
+     }
+    }
+
+G++ would previously have optimized away the catch clause, since it
+would have concluded that f cannot throw exceptions.  Because users
+may replace f with another function in the main body of the program,
+this optimization is unsafe, and is no longer performed.  If you wish
+G++ to continue to optimize as before, you must add a throw() clause
+to the declaration of f to make clear that it does not throw
+exceptions.
+
+
+------------------------------------------------------------------------------
+Please send FSF & GNU inquiries & questions tognu@gnu.org.There are
+also other ways to contact the FSF.
+
+These pages are maintained by the GCC team.
+
+For questions related to the use of GCC, please consult these web
+pages and the GCC manuals. If that fails, the gcc-help@gcc.gnu.org
+mailing list might help.  Please send comments on these web pages and
+the development of GCC to our public developer mailing list at
+gcc@gnu.org or gcc@gcc.gnu.org.
+
+Copyright (C) Free Software Foundation, Inc.,
+51 Franklin St - Suite 330, Boston, MA 02110, USA.
+
+Verbatim copying and distribution of this entire article is permitted
+in any medium, provided this notice is preserved.
+
+
+Last modified 2006-02-27
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gcc-BV-base.postinst
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gcc-BV-base.postinst
@@ -0,0 +1,15 @@
+#! /bin/sh -e
+
+case "$1" in
+    configure)
+	# see #355439, packaging error in 4.0.2-9*
+	docdir=/usr/share/doc/gcc-@BV@-base
+	if [ ! -f $docdir/copyright ]; then
+	    ln $docdir/.copyright $docdir/copyright
+	fi
+	if [ ! -f $docdir/changelog.Debian.gz ]; then
+	    ln $docdir/.changelog.Debian.gz $docdir/changelog.Debian.gz
+	fi
+esac
+
+#DEBHELPER#
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gnatvsn.gpr
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gnatvsn.gpr
@@ -0,0 +1,36 @@
+--  Project file for use with GNAT
+--  Copyright (c) 2005 Ludovic Brenta <ludovic@ludovic-brenta.org>
+--
+--  This program is free software; you can redistribute it and/or modify
+--  it under the terms of the GNU General Public License as published by
+--  the Free Software Foundation; either version 2 of the License, or
+--  (at your option) any later version.
+--
+--  This program is distributed in the hope that it will be useful,
+--  but WITHOUT ANY WARRANTY; without even the implied warranty of
+--  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+--  GNU General Public License for more details.
+--
+--  This project file is designed to help build applications that use
+--  GNAT project files.  Here is an example of how to use this project file:
+--
+--  with "/usr/share/ada/adainclude/gnatvsn";
+--  project Example is
+--     for Object_Dir use "obj";
+--     for Exec_Dir use ".";
+--     for Main use ("example");
+--     package Linker renames Gnatvsn.Linker;
+--     --  Alternatively, if you need additional switches:
+--     --  package Linker is
+--     --     for Default_Switches ("Ada") use (Gnatvsn.Linker_Switches & ...)
+--     --  end Linker;
+--  end Example;
+
+project Gnatvsn is
+   for Source_Dirs use ("/usr/share/ada/adainclude/gnatvsn");
+   for Object_Dir use "/usr/lib/ada/adalib/gnatvsn";
+   Linker_Switches := "-lgnatvsn";
+   package Linker is
+      for Default_Switches ("Ada") use (Linker_Switches);
+   end Linker;
+end Gnatvsn;
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/libstdc++CXX-BV-doc.overrides
+++ gdc-4.1-0.25-20080616-4.1.2/debian/libstdc++CXX-BV-doc.overrides
@@ -0,0 +1,2 @@
+libstdc++@CXX@-@BV@-doc: extra-license-file
+libstdc++@CXX@-@BV@-doc: manpage-has-errors-from-man usr/share/man/man3/__gnu_internal.3.gz
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gcc-BV-hppa64.prerm
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gcc-BV-hppa64.prerm
@@ -0,0 +1,10 @@
+#! /bin/sh -e
+
+if [ "$1" != "upgrade" ]; then
+  update-alternatives --quiet \
+    --remove hppa64-linux-gcc /usr/bin/hppa64-linux-gnu-gcc-@BV@
+fi
+
+#DEBHELPER#
+
+exit 0
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/libgcj-doc.doc-base
+++ gdc-4.1-0.25-20080616-4.1.2/debian/libgcj-doc.doc-base
@@ -0,0 +1,10 @@
+Document: libgcj-doc
+Title: The GNU LibGCJ Classpath library
+Author: Various
+Abstract: Autogenerated documentation describing the libgcj
+ library (GCC 4.1), based on the classpath library.
+Section: Apps/Programming
+
+Format: html
+Index: /usr/share/doc/gcj-4.1-base/html/index.html
+Files: /usr/share/doc/gcj-4.1-base/html/*.html
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/libgcjGCJ-dev.overrides
+++ gdc-4.1-0.25-20080616-4.1.2/debian/libgcjGCJ-dev.overrides
@@ -0,0 +1 @@
+libgcj@GCJ@-dev: library-not-linked-against-libc
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.source
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.source
@@ -0,0 +1,21 @@
+SOURCE_DIR := $(dir $(lastword $(MAKEFILE_LIST)))
+patchdir = $(SOURCE_DIR)/patches
+
+include $(SOURCE_DIR)/debian/rules.defs
+include $(SOURCE_DIR)/debian/rules.patch
+include $(SOURCE_DIR)/debian/rules.unpack
+
+patch-source: $(patch_stamp)
+	( \
+	  echo '#define __$(subst -,_,$(DEB_TARGET_GNU_TYPE))__'; \
+	  echo ''; \
+	  echo '  { "",  "$(DEB_TARGET_GNU_TYPE)"},'; \
+	  cat $(SOURCE_DIR)/debian/multiarch.inc; \
+	) > $(srcdir)/gcc/multiarch.inc
+
+clean-source:
+	rm -rf $(stampdir)
+	rm -rf $(gcc_srcdir) $(gpc_srcdir) p $(gdc_srcdir) d
+	rm -rf bin
+	rm -rf $(srcdir)
+
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/libgcj-common.postinst
+++ gdc-4.1-0.25-20080616-4.1.2/debian/libgcj-common.postinst
@@ -0,0 +1,12 @@
+#! /bin/sh -e
+
+case "$1" in
+    configure)
+	docdir=/usr/share/doc/libgcj-common
+	if [ -d $docdir ] && [ ! -h $docdir ]; then
+	    rm -rf $docdir
+	    ln -s gcj-@BV@-base $docdir
+	fi
+esac
+
+#DEBHELPER#
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gcjwebplugin-BV.prerm
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gcjwebplugin-BV.prerm
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+browser_dirs="@browser_dirs@"
+PLUGINPTH=/usr/lib/gcj-@BV@/libgcjwebplugin.so
+
+for browser in $browser_dirs; do
+    update-alternatives --quiet --remove \
+	$browser-javaplugin.so \
+	$PLUGINPTH
+done
+
+#DEBHELPER#
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/fastjar.prerm
+++ gdc-4.1-0.25-20080616-4.1.2/debian/fastjar.prerm
@@ -0,0 +1,16 @@
+#! /bin/sh -e
+
+if [ -f /usr/share/info/fastjar.info.gz ]; then
+  install-info --quiet --remove fastjar
+else
+  # GFDL invariant free
+  true
+fi
+
+if [ "$1" != "upgrade" ]; then
+  update-alternatives --quiet --remove jar /usr/bin/fastjar
+fi
+
+#DEBHELPER#
+
+exit 0
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/g77-BV-doc.prerm
+++ gdc-4.1-0.25-20080616-4.1.2/debian/g77-BV-doc.prerm
@@ -0,0 +1,5 @@
+#! /bin/sh -e
+
+install-info --quiet --remove g77-@BV@
+
+#DEBHELPER#
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gcc-BV-hppa64.postinst
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gcc-BV-hppa64.postinst
@@ -0,0 +1,13 @@
+#! /bin/sh -e
+
+prio=$(echo @BV@ | sed 's/\.//g')
+
+update-alternatives --quiet \
+	--install /usr/bin/hppa64-linux-gnu-gcc \
+		hppa64-linux-gnu-gcc \
+		/usr/bin/hppa64-linux-gnu-gcc-@BV@ \
+		$prio
+
+#DEBHELPER#
+
+exit 0
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/dh_doclink
+++ gdc-4.1-0.25-20080616-4.1.2/debian/dh_doclink
@@ -0,0 +1,12 @@
+#! /bin/sh
+
+pkg=`echo $1 | sed 's/^-p//'`
+target=$2
+
+[ -d debian/$pkg/usr/share/doc ] || mkdir -p debian/$pkg/usr/share/doc
+if [ -d debian/$pkg/usr/share/doc/$p -a ! -h debian/$pkg/usr/share/doc/$p ]
+then
+    echo "WARNING: removing doc directory  $pkg"
+    rm -rf debian/$pkg/usr/share/doc/$pkg
+fi
+ln -sf $target debian/$pkg/usr/share/doc/$pkg
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gcc-dummy.texi
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gcc-dummy.texi
@@ -0,0 +1,41 @@
+\input texinfo  @c -*-texinfo-*-
+@c %**start of header
+
+@settitle The GNU Compiler Collection (GCC)
+
+@c Create a separate index for command line options.
+@defcodeindex op
+@c Merge the standard indexes into a single one.
+@syncodeindex fn cp
+@syncodeindex vr cp
+@syncodeindex ky cp
+@syncodeindex pg cp
+@syncodeindex tp cp
+
+@paragraphindent 1
+
+@c %**end of header
+
+@copying
+The current documentation is licensed under the same terms as the Debian packaging.
+@end copying
+@ifnottex
+@dircategory Programming
+@direntry
+* @name@: (@name@).                  The GNU Compiler Collection (@name@).
+@end direntry
+@sp 1
+@end ifnottex
+
+@summarycontents
+@contents
+@page
+
+@node Top
+@top Introduction
+@cindex introduction
+The official GNU compilers' documentation is released under the terms
+of the GNU Free Documentation License with cover texts. This has been
+considered non free by the Debian Project. Thus you will find it in the
+non-free section of the Debian archive.
+@bye
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gcc-BV-doc.postinst
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gcc-BV-doc.postinst
@@ -0,0 +1,9 @@
+#! /bin/sh -e
+
+install-info --quiet --section "Development" "Development" \
+	/usr/share/info/gcc-@BV@.info.gz
+
+install-info --quiet --section "Development" "Development" \
+	/usr/share/info/gccint-@BV@.info.gz
+
+#DEBHELPER#
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gpc-BV-doc.doc-base.gpc
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gpc-BV-doc.doc-base.gpc
@@ -0,0 +1,15 @@
+Document: gpc-@BV@-doc
+Title: The GNU Pascal Compiler
+Author: Various
+Abstract: This manual documents how to run, install and maintain the
+ GNU Pascal compiler (GPC), as well as its new features and
+ incompatibilities, and how to report bugs.
+Section: Apps/Programming
+
+Format: html
+Index: /usr/share/doc/gcc-@BV@-base/pascal/gpc.html
+Files: /usr/share/doc/gcc-@BV@-base/pascal/gpc.html
+
+Format: info
+Index: /usr/share/info/gpc-@BV@.info.gz
+Files: /usr/share/info/gpc-@BV@*
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gij-wrapper-BV
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gij-wrapper-BV
@@ -0,0 +1,98 @@
+#!/usr/bin/perl -w
+#
+# Starts the GNU Java interpreter.
+#
+# Command-line arguments should be in the style of Sun's Java runtime;
+# these will be converted to gij arguments before being passed to the
+# gij itself.
+#
+# The Debian JNI module directory and any other specified JNI
+# directories will be included on the JNI search path.
+#
+# Copyright (C) 2002-2003 by Ben Burton <bab@debian.org>
+# Based on the original gij-wrapper-3.2 shell script.
+
+use strict;
+
+# The real Java runtime:
+my $javaRuntime = '/usr/bin/gij-@BV@';
+
+# The debian JNI module directory:
+my $debianJNIDir = '/usr/lib/jni';
+
+# The command-line arguments to pass to the real Java runtime:
+my @commandLine;
+
+# The full JNI search path to use:
+my $JNIPath = '';
+
+# Build the command-line from the arguments given.
+my $parsingOptions = 1;
+
+# Flag used to copy argument to -classpath or -cp.
+my $copyNext = 0;
+foreach my $arg (@ARGV) {
+  if (not $parsingOptions) {
+    # We're done parsing options; just copy all remaining arguments directly.
+    push @commandLine, $arg;
+    next;
+  }
+  if ($copyNext) {
+    push @commandLine, $arg;
+    $copyNext = 0;
+    next;
+  }
+
+  # Try to interpret Sun-style options.
+  if ($arg eq '-version') {
+    push @commandLine, '--version';
+  } elsif ($arg eq '-h' or $arg eq '-help') {
+    push @commandLine, '--help';
+  } elsif ($arg eq '-cp' or $arg eq '--cp') {
+    push @commandLine, '-cp';
+    $copyNext = 1;
+  } elsif ($arg eq '-classpath' or $arg eq '--classpath') {
+    push @commandLine, '-classpath';
+    $copyNext = 1;
+  } elsif ($arg =~ /^-Djava.library.path=(.+)$/) {
+    # A component of the JNI search path has been given.
+    if ($JNIPath) {
+      $JNIPath = $JNIPath . ':' . $1;
+    } else {
+      $JNIPath = $1;
+    }
+  } elsif ($arg eq '-jar' or $arg =~ /^-D/) {
+    # Copy the argument directly.
+    push @commandLine, $arg;
+  } elsif ($arg =~ /^-/) {
+    # An unrecognised option has been passed - just drop it.
+  } else {
+    # Some non-option argument has been given.
+    # Stop parsing options at this point.
+    push @commandLine, $arg;
+    $parsingOptions = 0;
+  }
+}
+
+# Add the debian JNI module directory to the JNI search path if it's not
+# already there.
+if ($JNIPath !~ /(^|:)$debianJNIDir($|:)/) {
+  if ($JNIPath) {
+    $JNIPath = $JNIPath . ':' . $debianJNIDir;
+  } else {
+    $JNIPath = $debianJNIDir;
+  }
+}
+
+# Use environment variable $LTDL_LIBRARY_PATH to store the JNI path,
+# since gij uses libltdl to dlopen JNI modules.
+if ($ENV{LTDL_LIBRARY_PATH}) {
+    $ENV{LTDL_LIBRARY_PATH} = $ENV{LTDL_LIBRARY_PATH} . ':' . $JNIPath;
+} else {
+    $ENV{LTDL_LIBRARY_PATH} = $JNIPath;
+}
+
+# Call the real Java runtime.
+my @fullCommandLine = ( $javaRuntime );
+push @fullCommandLine, @commandLine;
+exec @fullCommandLine or exit(1);
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gnatprj.gpr
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gnatprj.gpr
@@ -0,0 +1,37 @@
+--  Project file for use with GNAT 3.15p
+--  Copyright (c) 2005 Ludovic Brenta <ludovic@ludovic-brenta.org>
+--
+--  This program is free software; you can redistribute it and/or modify
+--  it under the terms of the GNU General Public License as published by
+--  the Free Software Foundation; either version 2 of the License, or
+--  (at your option) any later version.
+--
+--  This program is distributed in the hope that it will be useful,
+--  but WITHOUT ANY WARRANTY; without even the implied warranty of
+--  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+--  GNU General Public License for more details.
+--
+--  This project file is designed to help build applications that use
+--  GNAT project files.  Here is an example of how to use this project file:
+--
+--  with "/usr/share/ada/adainclude/gnatprj";
+--  project Example is
+--     for Object_Dir use "obj";
+--     for Exec_Dir use ".";
+--     for Main use ("example");
+--     package Linker renames Gnatprj.Linker;
+--     --  Alternatively, if you need additional switches:
+--     --  package Linker is
+--     --     for Default_Switches ("Ada") use (Gnatprj.Linker_Switches & ...)
+--     --  end Linker;
+--  end Example;
+
+with "gnatvsn.gpr";
+project Gnatprj is
+   for Source_Dirs use ("/usr/share/ada/adainclude/gnatprj");
+   for Object_Dir use "/usr/lib/ada/adalib/gnatprj";
+   Linker_Switches := "-lgnatprj";
+   package Linker is
+      for Default_Switches ("Ada") use (Linker_Switches);
+   end Linker;
+end Gnatprj;
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/control
+++ gdc-4.1-0.25-20080616-4.1.2/debian/control
@@ -0,0 +1,31 @@
+Source: gdc-4.1
+Section: devel
+Priority: optional
+Maintainer: Debian GCC Maintainers <debian-gcc@lists.debian.org>
+Uploaders: Arthur Loiret <arthur.loiret@gmail.com>
+Standards-Version: 3.8.0
+Build-Depends: dpkg-dev (>= 1.13.9), gcc-4.1-multilib [amd64 i386 powerpc ppc64 s390 sparc kfreebsd-amd64], libc6.1-dev (>= 2.5) [alpha ia64] | libc0.3-dev (>= 2.5) [hurd-i386] | libc0.1-dev (>= 2.5) [kfreebsd-i386 kfreebsd-amd64] | libc6-dev (>= 2.5), libc6-dev-amd64 [i386], libc6-dev-sparc64 [sparc], libc6-dev-s390x [s390], libc6-dev-i386 [amd64], libc6-dev-powerpc [ppc64], libc6-dev-ppc64 [powerpc], libc0.1-dev-i386 [kfreebsd-amd64], lib32gcc1 [amd64 ppc64 kfreebsd-amd64], lib64gcc1 [i386 powerpc sparc s390], lib64z1-dev [i386 powerpc sparc s390], lib32z1-dev [amd64 ppc64 kfreebsd-amd64], libunwind7-dev (>= 0.98.5-6) [ia64], libatomic-ops-dev [ia64], m4, autoconf, autoconf2.13, automake1.9, libtool, autogen, gawk, expect-tcl8.3 [hppa], dejagnu [!hurd-i386], bzip2, binutils (>= 2.17cvs20070426) | binutils-multiarch (>= 2.17cvs20070426), binutils-hppa64 (>= 2.17cvs20070426) [hppa], debhelper (>= 5.0), gperf (>= 3.0.1), bison (>= 1:2.3), flex, gettext, texinfo (>= 4.3), zlib1g-dev, libmpfr-dev (>= 2.3.0~rc1.dfsg.1) [!avr], locales [!hurd-i386 !m68k], procps [!hurd-i386], sharutils, gcc-4.1-source (>= 4.1.2), gcc-4.1-source (<< 4.1.3), realpath (>= 1.9.12), chrpath, lsb-release, make (>= 3.81)
+Build-Depends-Indep:  
+
+Package: gdc-4.1
+Architecture: any
+Priority: optional
+Depends: gcc-4.1-base (>= ${gcc:SoftVersion}), g++-4.1 (>= ${gcc:SoftVersion}), libphobos-4.1-dev (= ${gdc:Version}) [!sparc !hurd-i386], ${shlibs:Depends}
+Provides: d-compiler
+Description: The D compiler
+ This is the D compiler, which compiles D on platforms supported by the gcc
+ compiler. It uses the GCC backend to generate optimised code.
+ .
+  Homepage: http://dgcc.sourceforge.net/
+
+Package: libphobos-4.1-dev
+Architecture: any
+Priority: optional
+Depends: ${shlibs:Depends}, gdc-4.1 (= ${gdc:Version}), zlib1g-dev (>= 1:1.2.3.3)
+Provides: libphobos-dev
+Replaces: gdc-4.1 (<< 0.25-4.1.2-17)
+Description: The phobos D standard library
+ This is the Phobos standard library that comes with the D compiler.
+ .
+  Homepage: http://www.digitalmars.com/d/phobos/phobos.html
+
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/README.ssp
+++ gdc-4.1-0.25-20080616-4.1.2/debian/README.ssp
@@ -0,0 +1,28 @@
+Stack smashing protection is a feature of GCC that enables a program to
+detect buffer overflows and immediately terminate execution, rather than
+continuing execution with corrupt internal data structures. It uses
+"canaries" and local variable reordering to reduce the likelihood of
+stack corruption through buffer overflows.
+
+Options that affect stack smashing protection:
+
+-fstack-protector
+    Enables protection for functions that are vulnerable to stack
+    smashing, such as those that call alloca() or use pointers.
+
+-fstack-protector-all
+    Enables protection for all functions.
+
+-Wstack-protector
+    Warns about functions that will not be protected. Only active when
+    -fstack-protector has been used.
+
+Applications built with stack smashing protection should link with the
+ssp library by using the option "-lssp" for systems with glibc-2.3.x or
+older; glibc-2.4 and newer versions provide this functionality in libc.
+
+The Debian architectures alpha, hppa, ia64, m68k, mips, mipsel do not
+have support for stack smashing protection.
+
+More documentation can be found at the project's website:
+http://researchweb.watson.ibm.com/trl/projects/security/ssp/
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/dummy.texi
+++ gdc-4.1-0.25-20080616-4.1.2/debian/dummy.texi
@@ -0,0 +1 @@
+@c This file is empty because the original one has a non DFSG free license (GFDL)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gcc-BV-doc.doc-base.gccint
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gcc-BV-doc.doc-base.gccint
@@ -0,0 +1,17 @@
+Document: gccint-@BV@
+Title: Internals of the GNU C and C++ compiler
+Author: Various
+Abstract: This manual documents the internals of the GNU compilers,
+ including how to port them to new targets and some information about
+ how to write front ends for new languages.  It corresponds to GCC
+ version @BV@.x.  The use of the GNU compilers is documented in a
+ separate manual.
+Section: Apps/Programming
+
+Format: html
+Index: /usr/share/doc/gcc-@BV@-base/gccint.html
+Files: /usr/share/doc/gcc-@BV@-base/gccint.html
+
+Format: info
+Index: /usr/share/info/gccint-@BV@.info.gz
+Files: /usr/share/info/gccint-@BV@*
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gcc-cross.postinst
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gcc-cross.postinst
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+update-alternatives --quiet \
+	--install /usr/bin/cross-gcc cross-gcc /usr/bin/cross-gcc-ver 41 \
+	--slave /usr/share/man/man1/cross-gcc.1.gz cross-gcc.1.gz /usr/share/man/man1/cross-gcc-ver.1.gz
+
+exit 0
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/runcheck.sh
+++ gdc-4.1-0.25-20080616-4.1.2/debian/runcheck.sh
@@ -0,0 +1,20 @@
+#! /bin/sh
+
+mkdir -p build
+
+cat >build/runcheck.c <<EOF
+#include <stdio.h>
+int main()
+{
+	return printf("yes\n") != 4;
+}
+EOF
+
+if m=$(${CC:-gcc} -o build/runcheck build/runcheck.c 2>&1); then
+    m=$(build/runcheck 2>&1)
+    echo ${m#* } > build/runcheck.out
+    echo ${m#* }
+else
+    echo ${m##*:} > build/runcheck.out
+    echo ${m##*:}
+fi
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/lib32gccLC.postinst
+++ gdc-4.1-0.25-20080616-4.1.2/debian/lib32gccLC.postinst
@@ -0,0 +1,12 @@
+#! /bin/sh -e
+
+case "$1" in
+    configure)
+	docdir=/usr/share/doc/lib32gcc@LC@
+	if [ -d $docdir ] && [ ! -h $docdir ]; then
+	    rm -rf $docdir
+	    ln -s gcc-@BV@-base $docdir
+	fi
+esac
+
+#DEBHELPER#
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/NEWS.html
+++ gdc-4.1-0.25-20080616-4.1.2/debian/NEWS.html
@@ -0,0 +1,793 @@
+  <?xml version="1.0" encoding="ISO-8859-1"?>
+  <!DOCTYPE html
+            PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+            "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+ 
+
+
+ 
+
+
+
+
+
+
+
+
+
+
+
+
+
+     <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+  
+  
+   <head>
+ 
+    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+    <link rev="made" href="mailto:gcc@gcc.gnu.org" />
+    <link rel="shortcut icon" href="http://gcc.gnu.org/favicon.ico" />
+    <link rel="stylesheet" type="text/css" href="/gnu.css" />
+    <link rel="stylesheet" type="text/css" href="http://gcc.gnu.org/gcc.css" />
+  
+ <title>
+GCC 4.1 Release Series &mdash; Changes, New Features, and Fixes
+- GNU Project - Free Software Foundation (FSF)</title>
+   </head>
+ 
+
+<!-- GCC maintainers, please do not hesitate to update/contribute entries
+     concerning those part of GCC you maintain!  2002-03-23, Gerald.
+-->
+
+<body bgcolor="#FFFFFF" text="#000000" link="#1F00FF" alink="#FF0000" vlink="#9900DD">
+
+
+
+<h1 align="center">
+GCC 4.1 Release Series<br />Changes, New Features, and Fixes
+</h1>
+
+<p>The latest release in the 4.1 release series is
+<a href="#4.1.2">GCC 4.1.2</a>.</p>
+
+<h2>Caveats</h2>
+
+<h2>General Optimizer Improvements</h2>
+
+  <ul>
+
+    <li>GCC now has infrastructure for inter-procedural optimizations and
+	the following inter-procedural optimizations are implemented:<br />
+	<ul>
+	    <li>Profile guided inlining.  When doing profile feedback
+		guided optimization, GCC can now use the profile to make
+		better informed decisions on whether inlining of a function
+		is profitable or not.  This means that GCC will no longer
+		inline functions at call sites that are not executed very
+		often, and that functions at hot call sites are more likely
+		to be inlined.<br />
+		A new parameter <code>min-inline-recursive-probability</code>
+		is also now available to throttle recursive inlining
+		of functions with small average recursive depths.</li>
+	    <li>Discovery of <code>pure</code> and <code>const</code>
+		functions, a form of side-effects analysis.  While older GCC
+		releases could also discover such special functions, the new
+		IPA-based pass runs earlier so that the results are available
+		to more optimizers.  The pass is also simply more powerful
+		than the old one.</li>
+	    <li>Analysis of references to static variables and type escape
+		analysis, also forms of side-effects analysis.  The results
+		of these passes allow the compiler to be less conservative
+		about call-clobbered variables and references.  This results
+		in more redundant loads being eliminated and in making static
+		variables candidates for register promotion.</li>
+	    <li>Improvement of RTL-based alias analysis.  The results of type
+		escape analysis are fed to the RTL type-based alias analyzer,
+		allowing it to disambiguate more memory references.</li>
+	    <li>Interprocedural constant propagation and function versioning.
+		This pass looks for functions that are always called with the
+		same constant value for one or more of the function arguments,
+		and propagates those constants into those functions.</li>
+	    <li>GCC will now eliminate static variables whose usage was
+		optimized out.</li>
+	    <li><code>-fwhole-program --combine</code> can now be used to
+	        make all functions in program static allowing whole program
+		optimization.  As an exception, the <code>main</code> function
+		and all functions marked with the new
+		<code>externally_visible</code> attribute are kept global so
+		that programs can link with runtime libraries.</li>
+	</ul></li>
+
+    <li>GCC can now do a form of partial dead code elimination (PDCE) that
+	allows code motion of expressions to the paths where the result of
+	the expression is actually needed.  This is not always a win, so
+	the pass has been limited to only consider profitable cases.  Here
+	is an example:
+
+	<pre>
+    int foo (int *, int *);
+    int
+    bar (int d)
+    {
+      int a, b, c;
+      b = d + 1;
+      c = d + 2;
+      a = b + c;
+      if (d)
+        {
+          foo (&amp;b, &amp;c);
+          a = b + c;
+        }
+      printf ("%d\n", a);
+    }
+	</pre>
+
+	The <code>a = b + c</code> can be sunk to right before the
+	<code>printf</code>.  Normal code sinking will not do this, it will
+	sink the first one above into the else-branch of the conditional
+	jump, which still gives you two copies of the code.</li>
+
+    <li>GCC now has a value range propagation pass.  This allows the compiler
+	to eliminate bounds checks and branches.  The results of the pass
+	can also be used to accurately compute branch probabilities.</li>
+
+    <li>The pass to convert PHI nodes to straight-line code (a form of
+	if-conversion for GIMPLE) has been improved significantly.  The two
+	most significant improvements are an improved algorithm to determine
+	the order in which the PHI nodes are considered, and an improvement
+	that allow the pass to consider if-conversions of basic blocks with
+	more than two predecessors.</li>
+
+    <li>Alias analysis improvements.  GCC can now differentiate between
+	different fields of structures in Tree-SSA's virtual operands form.
+	This lets stores/loads from non-overlapping structure fields not
+	conflict.  A new algorithm to compute points-to sets was contributed
+	that can allows GCC to see now that <code>p-&gt;a</code> and
+	<code>p-&gt;b</code>, where <code>p</code> is a pointer to a
+	structure, can never point to the same field.</li>
+
+    <li>Various enhancements to auto-vectorization:<br />
+	<ul>
+	    <li>Incrementally preserve SSA form when vectorizing.</li>
+	    <li>Incrementally preserve loop-closed form when vectorizing.</li>
+	    <li>Improvements to peeling for alignment:
+                generate better code when the misalignment of an access
+                is known at compile time, or when different accesses are
+                known to have the same misalignment, even if the
+                misalignment amount itself is unknown.</li>
+	    <li>Consider dependence distance in the vectorizer.</li>
+	    <li>Externalize generic parts of data reference analysis to
+		make this analysis available to other passes.</li>
+	    <li>Vectorization of conditional code.</li>
+	    <li>Reduction support.</li>
+	</ul></li>
+
+    <li>GCC can now partition functions in sections of hot and cold code.
+	This can significantly improve performance due to better instruction
+	cache locality.  This feature works best together with profile
+	feedback driven optimization.</li>
+
+    <li>A new pass to avoid saving of unneeded arguments to the stack in
+	<code>vararg</code> functions if the compiler can prove that they
+	will not be needed.</li>
+
+    <li>Transition of basic block profiling to tree level implementation has
+        been completed.  The new implementation should be considerably more
+	reliable (hopefully avoiding profile mismatch errors when using
+	<code>-fprofile-use</code> or <code>-fbranch-probabilities</code>) and
+	can be used to drive higher level optimizations, such as inlining.
+	<p>
+	The <code>-ftree-based-profiling</code> command line option was
+	removed and <code>-fprofile-use</code> now implies disabling old RTL
+	level loop optimizer (<code>-fno-loop-optimize</code>).  Speculative
+	prefetching optimization (originally enabled by
+	<code>-fspeculative-prefetching</code>) was removed.</p></li>
+  </ul>
+
+ 
+<h2>New Languages and Language specific improvements</h2>
+
+<h3>C and Objective-C</h3>
+  <ul>
+    <li>The old Bison-based C and Objective-C parser has been replaced
+	by a new, faster hand-written recursive-descent parser.</li>
+  </ul>
+
+  <h3>Ada</h3>
+  <ul>
+    <li>The build infrastructure for the Ada runtime library and tools
+	has been changed to be better integrated with the rest of the build
+	infrastructure of GCC.  This should make doing cross builds of Ada a
+	bit easier.</li>
+  </ul>
+
+<h3 id="cplusplus">C++</h3>
+  <ul>
+    <li>ARM-style name-injection of friend declarations is no longer
+        the default.  For example:
+
+	<pre>
+          struct S {
+            friend void f();
+          };
+
+          void g() { f(); }</pre>
+
+        will not be accepted; instead a declaration of <code>f</code>
+        will need to be present outside of the scope of
+        <code>S</code>.  The new <code>-ffriend-injection</code>
+        option will enable the old behavior.</li>
+
+    <li>
+     The (undocumented) extension which permitted templates with
+     default arguments to be bound to template template parameters with
+     fewer parameters has been deprecated, and will be removed in the
+     next major release of G++.  For example:
+
+     <pre>
+       template &lt;template &lt;typename&gt; class C&gt;
+       void f(C&lt;double&gt;) {}
+
+       template &lt;typename T, typename U = int&gt;
+       struct S {};
+
+       template void f(S&lt;double&gt;);
+     </pre>      
+
+     makes use of the deprecated extension.  The reason this code is
+     not valid ISO C++ is that <code>S</code> is a template with two
+     parameters; therefore, it cannot be bound to <code>C</code> which
+     has only one parameter.
+    </li>
+  </ul>
+
+  <h4>Runtime Library (libstdc++)</h4>
+
+  <ul>
+    <li>Optimization work:
+      <ul>
+        <li>A new implementation of <code>std::search_n</code> is provided,
+	    better performing in case of random access iterators.</li>
+	<li>Added further efficient specializations of <code>istream</code>
+            functions, i.e., character array and string extractors.</li>
+        <li>Other smaller improvements throughout.</li>
+      </ul></li>
+    <li>Policy-based associative containers, designed for high-performance,
+        flexibility and semantic safety are delivered in 
+	<code>ext/pb_assoc</code>.</li>
+    <li>A versatile string class, <code>__gnu_cxx::__versa_string</code>,
+        providing facilities conforming to the standard requirements for
+	<code>basic_string</code>, is delivered in
+	<code>&lt;ext/vstring.h&gt;</code>.  In particular:
+      <ul>
+        <li>Two base classes are provided:  the default one avoids reference
+	    counting and is optimized for short strings;  the alternate one,
+            still uses it while improving in a few low level areas (e.g.,
+	    alignment).  See <code>vstring_fwd.h</code> for some useful
+	    typedefs.</li>
+	<li>Various algorithms have been rewritten (e.g., replace), the code
+            streamlined and simple optimizations added.</li>
+	<li>Option 3 of DR 431 is implemented for both available bases, thus
+            improving the support for stateful allocators.</li>  
+      </ul></li>
+     <li>As usual, many bugs have been fixed (e.g., libstdc++/13583,
+         libstdc++/23953) and LWG resolutions put into effect for the first
+         time (e.g., DR 280, DR 464, N1780 recommendations for DR 233,
+	 TR1 Issue 6.19).  The implementation status of TR1 is now tracked in
+	 the docs in <code>tr1.html</code>.</li>
+  </ul>
+
+<h3>Objective-C++</h3>
+  <ul>
+    <li>A new language front end for Objective-C++ has been added.  This language allows
+        users to mix the object oriented features of Objective-C with those of C++.</li>
+  </ul>
+
+<h3>Java (GCJ)</h3>
+  <ul>
+    <li>Core library (libgcj) updates based on GNU Classpath 0.15 - 0.19
+        features (plus some 0.20 bug-fixes)
+      <ul>
+        <li>Networking
+          <ul>
+	    <li>The <code>java.net.HttpURLConnection</code> implementation no
+                longer buffers the entire response body in memory.
+                This means that response bodies larger than available
+                memory can now be handled.</li>
+          </ul>
+        </li>
+
+        <li>(N)IO
+          <ul>
+            <li><code>NIO FileChannel.map</code> implementation, fast bulk put
+                implementation for <code>DirectByteBuffer</code>
+		(speeds up this method 10x).</li>
+            <li><code>FileChannel.lock()</code> and
+	        <code>FileChannel.force()</code> implemented.</li>
+          </ul>
+        </li>
+
+        <li>XML
+          <ul>
+            <li><code>gnu.xml</code> fix for nodes created outside a
+	        namespace context.</li>
+            <li>Add support for output indenting and cdata-section-elements
+                output instruction in <code>xml.transform</code>.</li>
+            <li><code>xml.xpath</code> corrections for cases where
+                elements/attributes might have been created in
+                non-namespace-aware mode.  Corrections to handling of
+                XSL variables and minor conformance updates.</li>
+          </ul>
+        </li>
+
+	<li>AWT
+	  <ul>
+	    <li>GNU JAWT implementation, the AWT Native Interface,
+	    which allows direct access to native screen resources from
+	    within a Canvas's paint method.  GNU Classpath Examples
+	    comes with a Demo, see
+	    <code>libjava/classpath/examples/README</code>.</li>
+
+	    <li><code>awt.datatransfer</code> updated to 1.5 with support
+	    for <code>FlavorEvents</code>.  The gtk+ awt peers now allow
+	    copy/paste of text, images, URIs/files and serialized objects
+	    with other applications and tracking clipboard change events with
+	    gtk+ 2.6 (for gtk+ 2.4 only text and serialized objects
+	    are supported). A GNU Classpath Examples datatransfer Demo
+	    was added to show the new functionality.</li>
+
+	    <li>Split gtk+ awt peers event handling in two threads and
+	    improve gdk lock handling (solves several awt lock ups).</li>
+
+	    <li>Speed up awt Image loading.</li>
+
+	    <li>Better gtk+ scrollbar peer implementation when using
+	    gtk+ &gt;= 2.6.</li>
+
+	    <li>Handle image loading errors correctly for gdkpixbuf
+	    and <code>MediaTracker</code>.</li>
+
+	    <li>Better handle GDK lock. Properly prefix gtkpeer native
+	    functions (<code>cp_gtk</code>).</li>
+
+	    <li><code>GdkGraphics2D</code> has been updated to use
+	    Cairo 0.5.x or higher.</li>
+
+	    <li><code>BufferedImage</code> and <code>GtkImage</code>
+	    rewrites. All image drawing operations should now work
+	    correctly (flipping requires gtk+ &gt;= 2.6)</li>
+
+	    <li>Future <code>Graphics2D</code>, image and text work is
+	    documented at: <a href="http://developer.classpath.org/mediation/ClasspathGraphicsImagesText">
+	    http://developer.classpath.org/mediation/ClasspathGraphicsImagesText
+	    </a></li>
+
+	    <li>When gtk+ 2.6 or higher is installed the default log
+	    handler will produce stack traces whenever a WARNING,
+	    CRITICAL or ERROR message is produced.</li>
+	  </ul>
+	</li>
+
+	<li>Free Swing
+	  <ul>
+	    <li>The <code>RepaintManager</code> has been reworked for more
+	    efficient painting, especially for large GUIs.</li>
+
+	    <li>The layout manager <code>OverlayLayout</code> has been
+	    implemented, the <code>BoxLayout</code> has been rewritten to
+	    make use of the <code>SizeRequirements</code> utility class and
+	    caching for more efficient layout.</li>
+
+	    <li>Improved accessibility support.</li>
+
+	    <li>Significant progress has been made in the
+	    implementation of the <code>javax.swing.plaf.metal</code>
+	    package, with most UI delegates in a working state now.
+	    Please test this with your own applications and provide feedback
+	    that will help us to improve this package.</li>
+
+	    <li>The GUI demo (<code>gnu.classpath.examples.swing.Demo</code>)
+	    has been extended to highlight various features in our
+	    Free Swing implementation. And it includes a look and feel
+	    switcher for Metal (default), Ocean and GNU themes.</li>
+
+	    <li>The <code>javax.swing.plaf.multi</code> package is now
+	    implemented.</li>
+
+	    <li>Editing and several key actions for <code>JTree</code> and
+	    <code>JTable</code> were implemented.</li>
+
+	    <li>Lots of icons and look and feel improvements for Free
+	    Swing basic and metal themes were added.  Try running the
+	    GNU Classpath Swing Demo in examples
+	    (<code>gnu.classpath.examples.swing.Demo</code>) with:
+	    <code>-Dswing.defaultlaf=javax.swing.plaf.basic.BasicLookAndFeel</code>
+	    or
+	    <code>-Dswing.defaultlaf=javax.swing.plaf.metal.MetalLookAndFeel</code></li>
+
+	    <li>Start of styled text capabilites for
+	    <code>java.swing.text</code>.</li>
+
+	    <li><code>DefaultMutableTreeNode</code> pre-order, post-order,
+	    depth-first and breadth-first traversal enumerations
+	    implemented.</li>
+
+	    <li><code>JInternalFrame</code> colors and titlebar draw
+	    properly.</li>
+
+	    <li><code>JTree</code> is working up to par (icons, selection and
+	    keyboard traversal).</li>
+
+	    <li><code>JMenus</code> were made more compatible in visual and
+	    programmatic behavior.</li>
+
+	    <li><code>JTable</code> <code>changeSelection</code> and
+	    multiple selections implemented.</li>
+
+	    <li><code>JButton</code> and <code>JToggleButton</code> change
+	    states work properly now.</li>
+
+	    <li><code>JFileChooser</code> fixes.</li>
+
+	    <li><code>revalidate()</code> and <code>repaint()</code>
+	    fixes which make Free Swing much more responsive.</li>
+
+	    <li><code>MetalIconFactory</code> implemented.</li>
+
+	    <li>Free Swing Top-Level Compatibility. <code>JFrame</code>,
+	    <code>JDialog</code>, <code>JApplet</code>,
+	    <code>JInternalFrame</code>, and <code>JWindow</code> are now
+	    1.5 compatible in the sense that you can call <code>add()</code>
+	    and <code>setLayout()</code> directly on them, which will have
+	    the same effect as calling <code>getContentPane().add()</code>
+	    and <code>getContentPane().setLayout()</code>.</li>
+
+	    <li>The <code>JTree</code> interface has been completed.
+	    <code>JTree</code>s now recognizes mouse clicks and selections
+	    work.</li>
+
+	    <li><code>BoxLayout</code> works properly now.</li>
+
+	    <li>Fixed <code>GrayFilter</code> to actually work.</li>
+
+	    <li>Metal <code>SplitPane</code> implemented.</li>
+
+	    <li>Lots of Free Swing text and editor stuff work now.</li>
+	  </ul>
+	</li>
+
+	<li>Free RMI and Corba
+	  <ul>
+	    <li>Andrew Watson, Vice President and Technical
+	    Director of the Object Management Group, has officially
+	    assigned us 20 bit Vendor Minor Code Id: <code>0x47430</code>
+	    ("GC") that will mark remote classpath-specific system
+	    exceptions.  Obtaining the VMCID means that GNU Classpath
+	    now is a recogniseable type of node in a highly
+	    interoperable CORBA world.</li>
+
+	    <li>GNU Classpath now includes the first working draft to
+	    support the RMI over IIOP protocol. The current
+	    implementation is capable of remote invocations,
+	    transferring various Serializables and Externalizables via
+	    RMI-IIOP protocol.  It can flatten graphs and, at least
+	    for the simple cases, is interoperable with 1.5 JDKs.</li>
+
+	    <li><code>org.omg.PortableInterceptor</code> and related
+	    functionality in other packages is now implemented:
+	    <ul>
+	      <li>The sever and client interceptors work as required
+	      since 1.4.</li>
+	      <li>The <code>IOR</code> interceptor works as needed for
+	      1.5.</li>
+	    </ul>
+	    </li>
+
+	    <li>The <code>org.omg.DynamicAny</code> package is completed
+	    and passes the prepared tests.</li>
+
+	    <li>The Portable Object Adapter should now support the
+	    output of the recent IDL to java compilers. These
+	    compilers now generate servants and not CORBA objects as
+	    before, making the output depend on the existing POA
+	    implementation. Completing POA means that such code can
+	    already be tried to run on Classpath. Our POA is tested
+	    for the following usager scenarios:
+	    <ul>
+	      <li>POA converts servant to the CORBA object.</li>
+	      <li>Servant provides to the CORBA object.</li>
+	      <li>POA activates new CORBA object with the given Object
+	      Id (byte array) that is later accessible for the
+	      servant.</li>
+	      <li>During the first call, the ServantActivator provides
+	      servant for this and all subsequent calls on the current
+	      object.</li>
+	      <li>During each call, the ServantLocator provides
+	      servant for this call only.</li>
+	      <li>ServantLocator or ServantActivator forwards call to
+	      another server.</li>
+	      <li>POA has a single servant, responsible for all
+	      objects.</li>
+	      <li>POA has a default servant, but some objects are
+	      explicitly connected to they specific servants.</li>
+	    </ul>
+	    The POA is verified using tests from the former
+	    <code>cost.omg.org</code>.</li>
+
+	    <li>The CORBA implementation is now a working prototype
+	    that should support features up to 1.3 inclusive.  We
+	    invite groups writing CORBA dependent applications
+	    to try Classpath implementation, reporting any possible
+	    bugs.
+	    The CORBA prototype is interoperable with Sun's
+	    implementation v 1.4, transferring object references,
+	    primitive types, narrow and wide strings, arrays,
+	    structures, trees, abstract interfaces and value types
+	    (feature of CORBA 2.3) between these two platforms.
+	    Remote exceptions are transferred and handled correctly.
+	    The stringified object references (IORs) from various
+	    sources are parsed as required.  The transient (for
+	    current session) and permanent (till jre restart)
+	    redirections work.  Both Little and Big Endian encoded
+	    messages are accepted.  The implementation is verified
+	    using tests from the former cost.omg.org.  The current
+	    release includes working examples (see the examples
+	    directory), demonstrating the client-server communication,
+	    using either CORBA Request or IDL-based stub (usually
+	    generated by a IDL to java compiler).  These examples also
+	    show how to use the Classpath CORBA naming service.  The
+	    IDL to java compiler is not yet written, but as our
+	    library must be compatible, it naturally accepts the
+	    output of other idlj implementations.</li>
+	  </ul>
+	</li>
+
+	<li>Misc
+	  <ul>
+
+	    <li>Updated <code>TimeZone</code> data against Olson
+	    tzdata2005l.</li>
+
+	    <li>Make <code>zip</code> and <code>jar</code> packages UTF-8
+	    clean.</li>
+
+	    <li>"native" code builds and compiles (warning free) on
+	    Darwin and Solaris.</li>
+
+	    <li><code>java.util.logging.FileHandler</code> now rotates
+	    files.</li>
+
+	    <li>Start of a generic JDWP framework in
+	    <code>gnu/classpath/jdwp</code>.  This is unfinished,
+	    but feedback (at <code>classpath@gnu.org</code>) from
+	    runtime hackers is greatly appreciated. Although most of
+	    the work is currently being done around <code>gcj/gij</code>
+	    we want this framework to be as VM neutral as possible.
+	    Early design is described in: <a
+	    href="http://gcc.gnu.org/ml/java/2005-05/msg00260.html">
+	    http://gcc.gnu.org/ml/java/2005-05/msg00260.html</a></li>
+
+	    <li>QT4 AWT peers, enable by giving configure
+	    <code>--enable-qt-peer</code>.  Included, but not ready for
+	    production yet. They are explicitly disabled and not supported.
+	    But if you want to help with the development of these new
+	    features we are interested in feedback. You will have to
+	    explicitly enable them to try them out (and they will most
+	    likely contain bugs).</li>
+
+	    <li>Documentation fixes all over the place.  See
+	    <a href="http://developer.classpath.org/doc/">
+	    http://developer.classpath.org/doc/</a></li>
+	  </ul>
+	</li>
+      </ul>
+    </li>
+  </ul>
+<h2>New Targets and Target Specific Improvements</h2>
+
+<h3>IA-32/x86-64</h3>
+  <ul>
+    <li>The x86-64 medium model (that allows building applications whose data
+	segment exceeds 4GB) was redesigned to match latest ABI draft.  New
+	implementation split large datastructures into separate segment
+	improving performance of accesses to small datastructures and also
+	allows linking of small model libraries into medium model programs as
+	long as the libraries are not accessing the large datastructures
+	directly.  Medium model is also supported in position independent code
+	now.
+        <p>
+	The ABI change results in partial incompatibility among medium
+	model objects. Linking medium model libraries (or objects) compiled
+	with new compiler into medium model program compiled with older will
+	likely result in exceeding ranges of relocations.</p>
+	<p>
+	Binutils 2.16.91 or newer are required for compiling medium model
+	now.</p></li>
+  </ul>
+
+<h3>RS6000 (POWER/PowerPC)</h3>
+  <ul>
+    <li>The AltiVec vector primitives in <code>&lt;altivec.h&gt;</code> are
+	now implemented in a way that puts a smaller burden on the
+	preprocessor, instead processing the "overloading" in the front ends.
+	This should benefit compilation speed on AltiVec vector code.</li>
+    <li>AltiVec initializers now are generated more efficiently.</li>
+    <li>The popcountb instruction available on POWER5 now is generated.</li>
+    <li>The floating point round to integer instructions available on
+	POWER5+ now is generated.</li>
+    <li>Floating point divides can be synthesized using the floating
+	point reciprocal estimate instructions.</li>
+    <li>Double precision floating point constants are initialized as single
+	precision values if they can be represented exactly.</li>
+  </ul>
+
+<h3>S/390, zSeries and System z9</h3>
+  <ul>
+    <li>Support for the IBM System z9 109 processor has been added.  When
+	using the <code>-march=z9-109</code> option, the compiler will
+	generate code making use of instructions provided by the extended
+	immediate facility.</li>
+    <li>Support for 128-bit IEEE floating point has been added.  When using
+	the <code>-mlong-double-128</code> option, the compiler will map the
+	<code>long double</code> data type to 128-bit IEEE floating point.
+	Using this option constitutes an ABI change, and requires glibc
+	support.</li>
+    <li>Various changes to improve performance of generated code have been
+	implemented, including:
+      <ul>
+	<li>In functions that do not require a literal pool, register
+	    <code>%r13</code> (which is traditionally reserved as literal pool
+	    pointer), can now be freely used for other purposes by the
+	    compiler.</li>
+	<li>More precise tracking of register use allows the compiler to
+	    generate more efficient function prolog and epilog code in certain
+	    cases.</li>
+	<li>The <code>SEARCH STRING</code>, <code>COMPARE LOGICAL
+	    STRING</code>, and <code>MOVE STRING</code> instructions are now
+	    used to implement C string functions.</li>
+	<li>The <code>MOVE CHARACTER</code> instruction with single byte
+	    overlap is now used to implement the <code>memset</code> function
+	    with non-zero fill byte.</li>
+	<li>The <code>LOAD ZERO</code> instructions are now used where
+	    appropriate.</li>
+	<li>The <code>INSERT CHARACTERS UNDER MASK</code>, <code>STORE
+	    CHARACTERS UNDER MASK</code>, and <code>INSERT IMMEDIATE</code>
+	    instructions are now used more frequently to optimize bitfield
+	    operations.</li>
+	<li>The <code>BRANCH ON COUNT</code> instruction is now used more
+	    frequently.  In particular, the fact that a loop contains a
+	    subroutine call no longer prevents the compiler from using this
+	    instruction.</li>
+	<li>The compiler is now aware that all shift and rotate instructions
+	    implicitly truncate the shift count to six bits.</li>
+      </ul></li>
+    <li>Back-end support for the following generic features has been
+	implemented:
+      <ul>
+	<li>The full set of
+	    <a href="http://gcc.gnu.org/onlinedocs/gcc-4.1.0/gcc/Atomic-Builtins.html">
+	    built-in functions for atomic memory access</a>.</li>
+	<li>The <code>-fstack-protector</code> feature.</li>
+	<li>The optimization pass avoiding unnecessary stores of incoming 
+	    argument registers in functions with variable argument list.</li>
+      </ul></li>
+  </ul>
+
+<h3>SPARC</h3>
+  <ul>
+    <li>The default code model in 64-bit mode has been changed from
+	Medium/Anywhere to Medium/Middle on Solaris.</li>
+    <li>TLS support is disabled by default on Solaris prior to release 10.
+	It can be enabled on TLS-capable Solaris 9 versions (4/04 release and
+	later) by specifying <code>--enable-tls</code> at configure time.</li>
+  </ul>
+
+<h3>MorphoSys</h3>
+  <ul>
+    <li>Support has been added for this new architecture.</li>
+  </ul>
+
+<h2><a name="obsolete_systems">Obsolete Systems</a></h2>
+
+<h2>Documentation improvements</h2>
+
+<h2>Other significant improvements</h2>
+
+  <ul>
+    <li>GCC can now emit code for protecting applications from stack-smashing
+	attacks.  The protection is realized by buffer overflow detection and
+	reordering of stack variables to avoid pointer corruption.</li>
+
+    <li>Some built-in functions have been fortified to protect them against
+	various buffer overflow (and format string) vulnerabilities. Compared
+	to the mudflap bounds checking feature, the safe builtins have far
+	smaller overhead.  This means that programs built using safe builtins
+	should not experience any measurable slowdown.</li>
+  </ul>
+
+<h2><a name="4.1.2">GCC 4.1.2</a></h2>
+
+<p>This is the <a
+href="http://gcc.gnu.org/bugzilla/buglist.cgi?bug_status=RESOLVED&amp;resolution=FIXED&amp;target_milestone=4.1.2">list
+of problem reports (PRs)</a> from GCC's bug tracking system that are
+known to be fixed in the 4.1.2 release. This list might not be
+complete (that is, it is possible that some PRs that have been fixed
+are not listed here).</p>
+
+<p>
+  When generating code for a shared library, GCC now recognizes that
+  global functions may be replaced when the program runs.  Therefore,
+  it is now more conservative in deducing information from the bodies
+  of functions.  For example, in this example:
+</p>
+
+  <pre>
+    void f() {}
+    void g() { 
+     try { f(); } 
+     catch (...) { 
+       cout &lt;&lt; "Exception";
+     }
+    }
+  </pre>
+
+<p>
+  G++ would previously have optimized away the catch clause, since it
+  would have concluded that <code>f</code> cannot throw exceptions.
+  Because users may replace <code>f</code> with another function in
+  the main body of the program, this optimization is unsafe, and is no
+  longer performed.  If you wish G++ to continue to optimize as
+  before, you must add a <code>throw()</code> clause to the
+  declaration of <code>f</code> to make clear that it does not throw
+  exceptions. 
+</p>  
+
+
+
+
+<!-- ==================================================================== -->
+
+<div class="copyright">
+
+<p>Please send FSF &amp; GNU inquiries &amp; questions to
+<a href="mailto:gnu@gnu.org">gnu@gnu.org</a>.
+There are also <a href="http://www.gnu.org/home.html#ContactInfo">other ways
+to contact</a> the FSF.</p>
+
+<p>These pages are maintained by
+<a href="http://gcc.gnu.org/about.html">the GCC team</a>.</p>
+
+<address>For questions related to the use of GCC, please consult these web
+pages and the <a href="http://gcc.gnu.org/onlinedocs/">GCC manuals</a>. If
+that fails, the <a href="mailto:gcc-help@gcc.gnu.org">gcc-help@gcc.gnu.org</a>
+mailing list might help.<br />
+Please send comments on these web pages and the development of GCC to our
+developer mailing list at <a href="mailto:gcc@gnu.org">gcc@gnu.org</a>
+or <a href="mailto:gcc@gcc.gnu.org">gcc@gcc.gnu.org</a>.  All of our lists
+have <a href="http://gcc.gnu.org/lists.html">public archives</a>.
+</address>
+
+<p>Copyright (C) Free Software Foundation, Inc.,
+51 Franklin St, Fifth Floor, Boston, MA 02110, USA.</p>
+<p>Verbatim copying and distribution of this entire article is
+permitted in any medium, provided this notice is preserved.</p>
+
+<table width="100%" border="0"><tr><td>
+  <!-- IGNORE DIFF -->Last modified 2007-02-14
+</td><td align="right" valign="bottom">
+  <a href="http://validator.w3.org/check/referer">
+      <img src="http://www.w3.org/Icons/valid-xhtml10"
+     alt="Valid XHTML 1.0" border="0" width="88" height="31" />
+   
+  </a>
+</td></tr></table>
+
+</div>
+
+<!-- ==================================================================== -->
+
+</body>
+     </html>
+  
+ 
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gij-BV.postrm
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gij-BV.postrm
@@ -0,0 +1,10 @@
+#! /bin/sh -e
+
+case "$1" in
+    purge)
+	rm -f /var/lib/gcj-@BV@/classmap.db
+esac
+
+#DEBHELPER#
+
+exit 0
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/README.Debian
+++ gdc-4.1-0.25-20080616-4.1.2/debian/README.Debian
@@ -0,0 +1,401 @@
+		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>
+Ray Dassen <jdassen@debian.org>
+Jeff Bailey <jbailey@nisa.net>			(hurd-i386)
+Joel Baker <fenton@debian.org>			(netbsd-i386)
+Philip Blundell <pb@debian.org>			(arm-linux)
+Ben Collins <bcollins@debian.org>		(sparc-linux)
+Randolph Chung <tausq@debian.org>		(ia64-linux)
+Falk Hueffner <falk@debian.org>			(alpha-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)
+Ludovic Brenta <ludovic@ludovic-brenta.org>	(gnat)
+Arthur Loiret <arthur.loiret@gmail.com>		(gdc)
+
+===============================================================================
+
+Patches that Debian applied in this version:
+
+svn-updates:
+  SVN updates from the 4.1 branch upto 20080623.
+
+gcc-version:
+  Add package identification to the gcc version string
+
+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-long-double:
+  Add --with{,out}-long-double-128 configure option.
+  Taken from http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25864#c14
+
+libstdc++-long-double:
+  PR target/25864, libstdc++-v3 parts.
+  Taken from http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25864#c13
+
+libstdc++-pic:
+  Build and install libstdc++_pic.a library.
+
+libstdc++-doclink:
+  adjust hrefs to point to the local documentation
+
+gcc-hash-style-both:
+  Link using --hash-style=both (alpha, amd64, ia64, i386, powerpc, ppc64, s390, sparc)
+
+gccbug:
+  Use sensible-editor instead of vi as fallback editor
+
+gccbug-posix:
+  Make gccbug POSIX compliant (patch by David Weinehall)
+  http://www.opengroup.org/onlinepubs/009695399/utilities/test.html
+
+boehm-gc-backport:
+  gcc/java / libjava backport / classpath-0.92
+
+boehm-gc-nocheck:
+  Disable running the boehm-gc testsuite. Hangs the buildd at least on hppa.
+
+boehm-gc-getnprocs:
+  boehm-gc/pthread_support.c (GC_get_nprocs): Use sysconf as fallback.
+
+fastjar-version:
+  Append GCC version to the fastjar version string.
+
+fastjar-doc:
+  fastjar.texi: Directly define the gcctabopt and gccoptlist macros.
+
+libstdc++-doxygen:
+  libstdc++ doxygen docs: Set SHORT_NAMES to YES
+
+pr20218:
+  Backport of PR middle-end/20218 to the 4.1 branch.
+
+pr20218-mips:
+  Backport from mainline for PR middle-end/20218, mips part.
+
+pr31868:
+  Backport from mainline for PR target/31868.
+
+gcc-directives-only:
+  Backport from trunk: -fdirectives-only (when preprocessing,
+  handle directives, but do not expand macros).
+
+arm-libffi:
+  Add closure support to libffi for arm
+
+libffi-backport:
+  libffi backport
+
+libffi-backport2:
+  Add missing bits for the libffi backport from the trunk
+  - parisc chunks
+  - missing testcases in testsuite/libffi.call
+
+libjava-backport-updates:
+  SVN updates from the gcc-4_1-branch-java-merge-20070117 branch upto 20070221.
+
+libjava-backport-updates2:
+  SVN updates from the gcc-4_1-rh-branch branch upto 20070428.
+
+libjava-backport-updates3:
+  SVN updates from the gcc-4_1-rh-branch branch upto 20070504.
+
+libjava-backport-updates4:
+  SVN updates from the gcc-4_1-rh-branch branch upto 20070718.
+
+pr32844:
+  backport PR classpath/32844 (java/util/EnumSet.java).
+
+pr32862:
+  Fix PR java/32862, bugs in EnumMap implementation.
+
+libjava-jar:
+  gjar: support @ arguments.
+
+libjava-visibility:
+  Reduce the number of symbols in libgcj.so by 20%; taken from the trunk.
+
+libjava-subdir:
+  - Set the libjava sublibdir to /usr/lib/gcj-4_1
+  - Set the default libgcj database dir to /var/lib/gcj-4.1
+
+libjava-jnipath:
+  - Add /usr/lib/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-stacktrace:
+  libgcj: Lookup source file name and line number in separated
+  debug files found in /usr/lib/debug
+
+libjava-soname:
+  Bump the libgcj soversion.
+
+libjava-disable-static:
+  Disable building the static libjava.
+
+libjava-rpath:
+  - Link ecjx and gij with -rpath $(dbexecdir)
+
+libjava-maxhostnamelen:
+  libjava: Avoid dependency on MAXHOSTNAMELEN
+
+libjava-class-igf:
+  * java/lang/Class.java (internalGetFields): Use LinkedHashSet.
+
+gcc-expandv:
+  * gcc.c (main): Call expandargv.
+
+alpha-no-ev4-directive:
+
+note-gnu-stack:
+  Add .note.GNU-stack sections for gcc's crt files, libffi and boehm-gc
+  Taken from FC.
+
+arm-gij:
+  Enable gij interpreter on arm
+
+hppa-cbranch:
+  Fix for PR target/26743 (hppa)
+  Backport from gcc trunk 2006-04-12 by tausq@debian.org
+
+hppa-cbranch2:
+  Fix for PR target/26743 (hppa)
+  Backport from gcc trunk 2006-04-12 by tausq@debian.org
+
+m68k-fjump:
+  gcc/config/m68k/m68k.md:
+  always use as fjcc pseudo op, we rely heavily on as 
+  to generate the right size for the jump instructions
+  fixes #359281
+
+m68k-gc:
+  boehm-gc:
+  the thread suspend handler has to save all registers
+  reenable MPROTECT_VDB, it should work, otherwise it's probably a kernel bug
+  change STACKBOTTOM to LINUX_STACKBOTTOM so it works with 2.6 kernel
+
+m68k-save_pic:
+  gcc/config/m68k/m68k.c:
+  correctly save the pic register, when not done by reload()
+  (fixes _Unwind_RaiseException and thus exception handling)
+  fixes 345574
+
+m68k-libffi2:
+  add closure support to libffi for m68k
+
+m68k-dwarf:
+  correct the dwarf frame information, but preserve compatibility
+
+m68k-split_shift:
+  use correct predicates for long long shifts and use more splits
+  fixes 381572
+
+m68k-prevent-qipush:
+  prevent combine from creating a byte push on the stack (invalid on m68k)
+
+m68k-jumptable:
+  Don't force byte offset when accessing the jumptable, gas can
+  generate the correct offset size instead.
+
+m68k-peephole:
+  Convert some text peepholes to rtl peepholes, so the correct
+  DWARF2 information can be generated for stack manipulations.
+  (Keep a few peepholes temporarily disabled.)
+
+m68k-return:
+  don't use single return if fp register have to be restored
+  fixes 386864
+
+m68k-sig-unwind:
+  add support for unwinding over signal frames
+
+m68k-align-code:
+  use "move.l %a4,%a4" to advance within code.
+
+m68k-align-stack:
+  try to keep the stack word aligned
+
+m68k-dwarf3:
+  emit correct dwarf info for cfa offset and register with -fomit-frame-pointer
+
+m68k-fpcompare:
+  bring fp compare early to its desired form to relieve reload,
+  allow any fp constant during and after reload (even special constants)
+  in case reload can't find a free register for them.
+
+m68k-secondary-addr-reload:
+  add secondary reloads to allow reload to get byte values into addr regs
+
+m68k-notice-move:
+  don't set cc_status for fp move without fp register
+
+m68k-symbolic-operand:
+  better recognize symbolic operands in addresses
+
+m68k-bitfield-offset:
+  only use constant offset for register bitfields
+  (combine expects shifts, but does a rotate)
+
+mips-libspec:
+  mips*-linux: Always imply -lpthread for -pthread
+
+pr25524:
+  Backport PR libstdc++/25524 from the trunk
+
+pr26864:
+  Backport fix for PR libmudflap/26864 from the trunk.
+
+pr26208:
+  PR other/26208
+
+pr26208-r111674:
+  PR other/26208, fix arm pasto
+
+libjava-sjlj:
+  Don't try to use _Unwind_Backtrace on SJLJ targets.
+  See bug #387875, #388505, GCC PR 29206.
+
+gcc-dwarf2-h:
+  gcc dwarf2.h header additions (r107384, r111620), taken from the trunk
+
+gcc-unwind-r111705:
+  gcc unwind r11705, taken from the trunk
+
+gcc-unwind-r120406:
+  gcc unwind r120406, taken from the trunk
+
+pr9861-nojava:
+  Non-java parts of PR java/9861 (java changes in gcj-ecj-generics.tar.bz2).
+
+classpath-config-guess:
+  Update config.guess/config.sub in the classpath directory.
+
+arm-pr28516:
+  Fix PR28516 on ARM
+
+arm-pr30486:
+  Fix 30486 on ARM
+
+arm-unbreak-eabi-armv4t:
+  Fix armv4t build on ARM
+
+pr22244:
+  Improve debug info for packed arrays with constant bounds (PR fortran/22244)
+
+libgcc-tramp-ppc32:
+  Fix libgcc.a(tramp.o) on ppc32
+
+pr33639:
+  Fix PR java/33639
+
+pr33765:
+  Fix PR java/33765, ignore ZIPEMPTYMAGIC files.
+
+pr28322:
+  Fix PR other/28322, GCC new warnings and compatibility.
+
+pr26885:
+  Proposed patch for PR driver/26885
+
+gcc-r109242:
+  Backport r109242 from the trunk
+
+gcc-r109581:
+  Backport r109581 from the trunk
+
+gcc-4.1-x86-blended:
+  Backport x86 "generic" patches from the trunk
+
+gcc-pfrs-2:
+  Fix a regression in the backport of PR 28946 from the trunk (H.J. Lu).
+
+cpu-default-generic:
+  set default 32bit ix86 architecture to i486
+
+pr20218:
+  Backport of PR middle-end/20218 to the 4.1 branch.
+
+libssp-gnu:
+  GNU/k*BSD support
+
+gcc-pascal-lang:
+  Add pascal options and specs for the gcc driver.
+
+gdc-4.1:
+  Setup gcc-4.1.x for D
+
+gdc-pr26885:
+  Update Make-lang.in for pr26885: use $(GCC_OBJS) instead of gcc.o.
+
+gdc-driver-zlib:
+  Update the gdc driver to use the up-to-date system zlib.
+
+gdc-driver-defaultlib:
+  Add -defaultlib -debuglib switches to d-spec.c.
+
+gdc-libphobos-build:
+  Setup gcc build system for libphobos.
+
+gdc-fix-build:
+  Fix gdc build.
+
+gdc-arm-unwind_ptr:
+  Fix build on arm.
+
+gdc-libphobos-std-format:
+  Replace assert by FormatError on untested archs.
+
+gdc-libstdcxx-nobuild:
+  Don't build libstdc++ when building gdc.
+
+link-libs:
+
+reporting:
+  Add Debian URL for bug reporting instructions.
+
+gcc-ice-hack:
+  2004-01-23  Jakub Jelinek  <jakub@redhat.com>
+  
+  	* system.h (ICE_EXIT_CODE): Define.
+  	* gcc.c (execute): Don't free first string early, but at the end
+  	of the function.  Call retry_ice if compiler exited with
+  	ICE_EXIT_CODE.
+  	(retry_ice): New function.
+  	* diagnostic.c (diagnostic_count_diagnostic,
+  	diagnostic_action_after_output, error_recursion): Exit with
+  	ICE_EXIT_CODE instead of FATAL_EXIT_CODE.
+
+gcc-ice-apport:
+  Report an ICE to apport (if apport is available
+  and the environment variable GCC_NOAPPORT is not set)
+
+multiarch-include:
+  biarch-include.dpatch
+  
+  Adds biarch include directories
+  /usr/local/include/<arch>-linux-gnu
+  /usr/include/<arch>-linux-gnu
+  to the system include paths, depending on 32/64 bit mode.
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gcj-BV.overrides
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gcj-BV.overrides
@@ -0,0 +1 @@
+gcj-@BV@: wrong-name-for-upstream-changelog
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/README.C++
+++ gdc-4.1-0.25-20080616-4.1.2/debian/README.C++
@@ -0,0 +1,43 @@
+libstdc++ is an implementation of the Standard C++ Library, including the
+Standard Template Library (i.e. as specified by ANSI and ISO).
+
+Some notes on porting applications from libstdc++-2.90 (or earlier versions)    
+to libstdc++-v3 can be found in the libstdc++6-4.1-doc package. After the       
+installation of the package, look at:
+
+  file:///usr/share/doc/gcc-4.1-base/libstdc++/html/17_intro/porting-howto.html
+
+On Debian GNU/Linux you find additional documentation in the
+libstdc++6-4.1-doc package. After installing these packages,
+point your browser to
+
+  file:///usr/share/doc/libstdc++6-4.1-doc/libstdc++/html/index.html
+
+Other documentation can be found:
+
+    http://www.cs.rpi.edu/~musser/stl.html
+    http://www.sgi.com/tech/stl/
+    http://www.dinkumware.com/htm_cpl/
+
+with a good, recent, book on C++.
+
+A great deal of useful C++ documentation can be found in the C++ FAQ-Lite,
+maintained by Marshall Cline <cline@parashift.com>.  It can be found at the
+following locations (this list was last updated on 2000/11/19):
+
+USA: http://www.cerfnet.com/~mpcline/c++-faq-lite/
+
+Canada: http://new-brunswick.net/workshop/c++/faq
+
+Finland: http://www.utu.fi/~sisasa/oasis/cppfaq/
+
+France: http://caor.ensmp.fr/FAQ/c++-faq-lite/
+
+Spain: http://geneura.ugr.es/~jmerelo/c++-faq/
+
+Taiwan: http://www.cis.nctu.edu.tw/c++/C++FAQ-English/
+
+U.K.: http://www.cs.bham.ac.uk/~jdm/CPP/index.html
+
+
+Please send updates to this list as bug report for the g++ package.
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.defs
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.defs
@@ -0,0 +1,1203 @@
+# -*- makefile -*-
+# definitions used in more than one Makefile / rules file
+
+SHELL		= /bin/bash -e	# brace expansion used in rules file
+PWD		:= $(shell pwd)
+srcdir		= $(PWD)/src
+builddir	= $(PWD)/build
+builddir_hppa64	= $(PWD)/build-hppa64
+builddir_ia6432	= $(PWD)/build-ia6432
+stampdir	= stamps
+distribution	:= $(shell lsb_release -is)
+
+# architecture dependent variables
+vafilt = $(subst $(2)=,,$(filter $(2)=%,$(1)))
+
+DPKG_VARS		:= $(shell dpkg-architecture)
+DEB_BUILD_GNU_TYPE	?= $(call vafilt,$(DPKG_VARS),DEB_BUILD_GNU_TYPE)
+DEB_HOST_ARCH		?= $(call vafilt,$(DPKG_VARS),DEB_HOST_ARCH)
+DEB_HOST_GNU_CPU	?= $(call vafilt,$(DPKG_VARS),DEB_HOST_GNU_CPU)
+DEB_HOST_GNU_SYSTEM	?= $(call vafilt,$(DPKG_VARS),DEB_HOST_GNU_SYSTEM)
+DEB_HOST_GNU_TYPE	?= $(call vafilt,$(DPKG_VARS),DEB_HOST_GNU_TYPE)
+
+ifdef DEB_TARGET_GNU_TYPE
+  TARGET_VARS := $(shell dpkg-architecture -f \
+			-t$(DEB_TARGET_GNU_TYPE) 2>/dev/null)
+  DEB_TARGET_ARCH	?= $(call vafilt,$(TARGET_VARS),DEB_HOST_ARCH)
+  DEB_TARGET_ARCH_OS	?= $(call vafilt,$(TARGET_VARS),DEB_HOST_ARCH_OS)
+  DEB_TARGET_ARCH_CPU	?= $(call vafilt,$(TARGET_VARS),DEB_HOST_ARCH_CPU)
+  DEB_TARGET_GNU_CPU	?= $(call vafilt,$(TARGET_VARS),DEB_HOST_GNU_CPU)
+  DEB_TARGET_GNU_TYPE	?= $(call vafilt,$(TARGET_VARS),DEB_HOST_GNU_TYPE)
+  DEB_TARGET_GNU_SYSTEM	?= $(call vafilt,$(TARGET_VARS),DEB_HOST_GNU_SYSTEM)
+else
+
+  # allow debian/target to be used instead of GCC_TARGET - this was requested
+  # by toolchain-source maintainer
+  DEBIAN_TARGET_FILE := $(strip $(if $(wildcard debian/target), \
+				  $(shell cat debian/target 2>/dev/null)))
+
+  ifdef DEB_TARGET_ARCH
+    # empty
+  else ifdef GCC_TARGET
+    DEB_TARGET_ARCH = $(GCC_TARGET)
+  else ifneq ($(DEBIAN_TARGET_FILE),)
+    DEB_TARGET_ARCH := $(DEBIAN_TARGET_FILE)
+  else
+    DEB_TARGET_ARCH = $(DEB_HOST_ARCH)
+  endif
+
+  TARGET_VARS := $(shell dpkg-architecture -f \
+			-a$(DEB_TARGET_ARCH) 2>/dev/null)
+  DEB_TARGET_ARCH	?= $(call vafilt,$(TARGET_VARS),DEB_HOST_ARCH)
+  DEB_TARGET_ARCH_OS	?= $(call vafilt,$(TARGET_VARS),DEB_HOST_ARCH_OS)
+  DEB_TARGET_ARCH_CPU	?= $(call vafilt,$(TARGET_VARS),DEB_HOST_ARCH_CPU)
+  DEB_TARGET_GNU_CPU	?= $(call vafilt,$(TARGET_VARS),DEB_HOST_GNU_CPU)
+  DEB_TARGET_GNU_TYPE	?= $(call vafilt,$(TARGET_VARS),DEB_HOST_GNU_TYPE)
+  DEB_TARGET_GNU_SYSTEM	?= $(call vafilt,$(TARGET_VARS),DEB_HOST_GNU_SYSTEM)
+endif
+
+ifeq ($(DEB_TARGET_ARCH),)
+  $(error Target is not a valid Debian architecture)
+endif
+
+# ---------------------------------------------------------------------------
+# which binary packages are built?
+
+ifneq ($(DEB_HOST_GNU_TYPE),$(DEB_TARGET_GNU_TYPE))
+  DEB_CROSS = yes
+  # TP: Target Prefix. Used primarily as a prefix for cross tool
+  #     names (e.g. powerpc-linux-gcc).
+  # TS: Target Suffix. Used primarily at the end of cross compiler
+  #     package names (e.g. gcc-powerpc).
+  # LS: Library Suffix. Used primarily at the end of cross compiler
+  #     library package names (e.g. libgcc-powerpc-cross).
+  DEB_TARGET_ALIAS ?= $(DEB_TARGET_GNU_TYPE)
+  TP =  $(subst _,-,$(DEB_TARGET_GNU_TYPE))-
+  TS = -$(subst _,-,$(DEB_TARGET_ALIAS))
+  LS = -$(subst _,-,$(DEB_TARGET_ARCH))-cross
+endif
+
+ifeq ($(DEB_CROSS),yes)
+  TARGET_ALIAS := $(DEB_TARGET_ALIAS)
+else
+  TARGET_ALIAS := $(DEB_TARGET_GNU_TYPE)
+
+  ifeq ($(TARGET_ALIAS),i386-gnu)
+    TARGET_ALIAS := i586-gnu
+  endif
+
+  #ifeq ($(TARGET_ALIAS),i486-linux-gnu)
+  #  TARGET_ALIAS := i686-linux-gnu
+  #endif
+
+  TARGET_ALIAS := $(subst i386,i486,$(TARGET_ALIAS))
+
+  # configure as linux-gnu, not linux
+  #ifeq ($(findstring linux,$(TARGET_ALIAS))/$(findstring linux-gnu,$(TARGET_ALIAS)),linux/)
+  #  TARGET_ALIAS := $(TARGET_ALIAS)-gnu
+  #endif
+
+  # configure as linux, not linux-gnu
+  #TARGET_ALIAS := $(subst linux-gnu,linux,$(TARGET_ALIAS))
+endif
+
+printarch:
+	@echo DEB_TARGET_ARCH: $(DEB_TARGET_ARCH)
+	@echo DEB_TARGET_ARCH_OS: $(DEB_TARGET_ARCH_OS)
+	@echo DEB_TARGET_ARCH_CPU: $(DEB_TARGET_ARCH_CPU)
+	@echo DEB_TARGET_GNU_SYSTEM: $(DEB_TARGET_GNU_SYSTEM)
+	@echo TARGET_ALIAS: $(TARGET_ALIAS)
+	@echo TP: $(TP)
+	@echo TS: $(TS)
+
+# The name of the source package
+CHANGELOG_VARS := $(shell dpkg-parsechangelog | sed -n 's/ /_/g;/^[^_]/s/^\([^:]*\):_\(.*\)/\1=\2/p')
+PKGSOURCE := $(call vafilt,$(CHANGELOG_VARS),Source)
+
+ifneq ($(PKGSOURCE),gcc-snapshot)
+  versioned_packages := yes
+endif
+
+ifdef DEB_CROSS
+  cross_bin_arch := -$(subst _,-,$(TARGET_ALIAS))
+  cross_lib_arch := -$(subst _,-,$(DEB_TARGET_ARCH))-cross
+endif
+
+ifndef DEB_CROSS
+  ifneq ($(PKGSOURCE),gcc-snapshot)
+    with_common_gcclibdir := yes
+  endif
+endif
+
+# Don't include docs with GFDL invariant sections --------------------
+GFDL_INVARIANT_FREE := yes
+ifeq ($(distribution),Ubuntu)
+  GFDL_INVARIANT_FREE=no
+endif
+
+# --------------------
+# Configuration of components
+
+COMMA = ,
+SPACE = $(EMPTY) $(EMPTY)
+
+# lang= overwrites all of nolang=, overwrites all of WITHOUT_LANG
+
+DEB_LANG_OPT	:= $(filter lang=%,$(DEB_BUILD_OPTIONS))
+DEB_LANG	:= $(strip $(subst $(COMMA), ,$(patsubst lang=%,%,$(DEB_LANG_OPT))))
+DEB_NOLANG_OPT	:= $(filter nolang=%,$(DEB_BUILD_OPTIONS))
+DEB_NOLANG	:= $(strip $(subst $(COMMA), ,$(patsubst nolang=%,%,$(DEB_NOLANG_OPT))))
+lfilt	= $(strip $(if $(DEB_LANG), \
+		$(if $(filter $(1) $(2),$(DEB_LANG)),yes),$(3)))
+nlfilt	= $(strip $(if $(DEB_NOLANG), \
+		$(if $(filter $(1) $(2),$(DEB_NOLANG)),disabled by $(DEB_NOLANG_OPT),$(3))))
+wlfilt	= $(strip $(if $(filter $(1) $(2), $(subst $(COMMA), ,$(WITHOUT_LANG))), \
+		disabled by WITHOUT_LANG=$(WITHOUT_LANG),$(3)))
+envfilt	= $(strip $(or $(call lfilt,$(1),$(2)),$(call nlfilt,$(1),$(3)),$(call wlfilt,$(1),$(3)),$(4)))
+
+# common things --------------------
+# build common packages, where package names don't differ in different
+# gcc versions (fixincludes, protoize) ...
+with_common_pkgs := no
+
+# ... and some libraries, which do not change (libgcc1, libffi4, libstdc++6,
+# libmudflap, libssp)
+with_common_libs := no
+
+ifeq ($(distribution),Debian)
+  next_gcc_not_built := foobar
+  ifneq (,$(filter $(DEB_TARGET_ARCH),$(next_gcc_not_built)))
+    with_common_pkgs := yes
+    with_common_libs := yes
+  endif
+endif
+ifeq ($(distribution),Ubuntu)
+  with_common_pkgs := no
+  with_common_libs := no
+endif
+
+with_gccbase := yes
+with_dev := yes
+
+ifneq (,$(findstring gcc-4, $(PKGSOURCE)))
+  with_source := yes
+endif
+with_source := $(call envfilt, source, , , $(with_source))
+
+ifeq ($(PKGSOURCE),gcc-snapshot)
+  with_nls := no
+else
+  with_nls := yes
+endif
+with_nls := $(call envfilt, nls, , , $(with_nls))
+
+ifneq ($(WITH_BOOTSTRAP),)
+  # "yes" is the default and causes a 3-stage bootstrap.
+  # "no" means to just build the first stage, and not create the stage1
+  # directory.
+  # "lean" means a lean 3-stage bootstrap, i.e. delete each stage when no
+  # longer needed.
+  with_bootstrap=$(WITH_BOOTSTRAP)
+endif
+
+# when DEB_CROSS_INDEPENDENT is set we build and depend on a 
+# separate -base package for the cross compiler.
+ifeq ($(DEB_CROSS_INDEPENDENT),yes)
+  with_gccxbase := yes
+endif
+
+#no_dummy_cpus := ia64 i386 hppa s390 sparc
+#with_base_only := yes
+#ifneq (, $(filter $(DEB_TARGET_ARCH_CPU),$(no_dummy_cpus)))
+#  with_base_only := no
+#  with_common_libs := yes
+#  with_common_pkgs := yes
+#else
+#  with_common_libs := no
+#  with_common_pkgs := no
+#  with_dev := no
+#endif
+
+# C --------------------
+enabled_languages := c
+# Build all packages needed for C development
+ifeq ($(with_base_only),yes)
+  with_cdev := no
+else
+  ifeq ($(with_dev),yes)
+    with_cdev := yes
+  else
+    with_cdev := no
+  endif
+endif
+
+# C++ --------------------
+ifeq ($(with_base_only),yes)
+  with_cxx := no
+else
+  with_cxx := yes
+endif
+no_cxx_cpus := avr
+ifneq (, $(filter $(DEB_TARGET_ARCH_CPU),$(no_cxx_cpus)))
+  with_cxx := disabled for architecture $(DEB_TARGET_ARCH_CPU)
+endif
+with_cxx := $(call envfilt, c++, obj-c++ java, , $(with_cxx))
+
+# Build all packages needed for C++ development
+ifeq ($(with_cxx)-$(with_dev),yes-yes)
+  with_cxxdev := yes
+  with_libcxxdbg := yes
+else
+  with_cxxdev := no
+  with_libcxxdbg := no
+endif
+
+ifeq ($(with_cxx),yes)
+  enabled_languages += c++
+endif
+
+ifeq ($(with_common_libs)-$(with_cxx),yes-yes)
+  with_libcxx := yes
+#  ifeq ($(DEB_TARGET_ARCH_CPU),arm)
+#    with_libcxx := no
+#  endif
+else
+  with_libcxx := no
+endif
+
+# debugging versions of libstdc++
+ifeq ($(with_cxxdev),yes)
+  with_debug := yes
+else
+  with_debug := no
+endif
+debug_no_cpus :=
+ifneq (, $(filter $(DEB_TARGET_ARCH_CPU),$(debug_no_cpus)))
+    with_debug := disabled for architecure $(DEB_TARGET_ARCH_CPU)
+endif
+with_debug := $(call envfilt, debug, , , $(with_debug))
+
+# __cxa_atexit -------------
+# The __cxa_atexit API does not exist in some libc version (NetBSD)
+with_cxa_atexit := yes
+
+no_cxa_systems :=
+ifneq (, $(filter $(DEB_TARGET_GNU_SYSTEM),$(no_cxa_systems)))
+  with_cxa_atexit := disabled for $(DEB_TARGET_GNU_SYSTEM)
+endif
+with_separate_libgcj := no
+
+# Java --------------------
+with_separate_libgcj := yes
+with_standalone_gcj := no
+
+# java converted for V3 C++ ABI for some archs
+ifeq ($(with_base_only),yes)
+  with_java := no
+else
+  with_java := yes
+endif
+
+java_no_cpus := arm armel hppa mips mipsel
+java_no_arches :=
+java_no_systems :=
+gcj_native_archs = alpha amd64 i386 ia64 mipsel powerpc s390 sparc
+
+ifneq (, $(filter $(DEB_TARGET_ARCH_CPU),$(java_no_cpus)))
+  with_java := disabled for architecture $(DEB_TARGET_ARCH_CPU)
+endif
+ifneq (, $(filter $(DEB_TARGET_GNU_SYSTEM),$(java_no_systems)))
+  with_java := disabled for $(DEB_TARGET_GNU_SYSTEM)
+endif
+ifneq (, $(filter $(DEB_TARGET_ARCH),$(java_no_arches)))
+  with_java := disabled for $(DEB_TARGET_ARCH)
+endif
+ifdef DEB_CROSS
+  with_java := disabled for cross compiler package
+endif
+with_java := $(call envfilt, java, , c++, $(with_java))
+
+ifneq (,$(filter $(DEB_TARGET_ARCH),hppa))
+  with_native_ecj := yes
+endif
+
+browser_plugin_dirs = firefox iceape iceweasel mozilla midbrowser xulrunner
+
+# used as well in debian/rules.conf to determine the build deps
+java_awt_peers = gtk # xlib qt
+
+ifeq ($(with_java),yes)
+  java_plugin_no_cpus := armel arm m68k mips mipsel
+  with_java_plugin := yes
+  ifneq (, $(filter $(DEB_TARGET_ARCH),$(java_plugin_no_cpus)))
+    with_java_plugin := disabled for $(DEB_TARGET_ARCH)
+  endif
+  ifeq ($(distribution),Ubuntu)
+    with_pkg_plugin := yes
+  endif
+else
+  ifeq ($(PKGSOURCE),gcj-4.1)
+    $(error java is disabled for this architecture: $(with_java))
+  endif
+endif
+
+# Build all packages needed for Java development (gcj, libgcj-dev)
+ifeq ($(with_java)-$(with_dev),yes-yes)
+  with_javadev := yes
+  with_gcj := yes
+else
+  with_javadev := no
+endif
+
+ifeq ($(with_java),yes)
+  with_java_alsa := yes
+  with_java_plugin := yes
+  ifneq (,$(filter $(DEB_TARGET_GNU_SYSTEM), kfreebsd-gnu gnu))
+    with_java_alsa := no
+  endif
+endif
+
+ifeq ($(with_java),yes)
+  enabled_languages += java
+  with_libgcj := yes
+else
+  with_libgcj := no
+endif
+
+# fastjar -------------------
+with_fastjar := yes
+ifdef DEB_CROSS
+    with_fastjar := disabled for cross compiler package
+endif
+with_fastjar := no
+
+# libmudflap -------------------
+with_mudflap := yes
+with_libmudflap := yes
+with_mudflap := $(call envfilt, mudflap, , , $(with_mudflap))
+with_libmudflap := $(call envfilt, mudflap, , , $(with_libmudflap))
+
+ifneq ($(with_common_libs),yes)
+  with_libmudflap := no
+endif
+
+# libssp -------------------
+with_ssp := yes
+ssp_no_archs = arm armel alpha hppa ia64 m68k mips mipsel
+ifneq (, $(filter $(DEB_TARGET_ARCH),$(ssp_no_archs)))
+  with_ssp := not available on $(DEB_TARGET_ARCH)
+endif
+with_ssp := $(call envfilt, ssp, , , $(with_ssp))
+
+ifeq ($(with_ssp),yes)
+  ifneq ($(distribution),Debian)
+    ifneq (,$(findstring gcc-4, $(PKGSOURCE)))
+      with_ssp_default := yes
+    endif
+  endif
+endif
+
+# do it here, the information is only available after gcc is configured
+ifeq ($(with_common_libs),yes)
+  ifeq ($(with_ssp),yes)
+    with_libssp := $(if $(wildcard $(builddir)/gcc/auto-host.h), \
+	             $(shell if grep -qs '^\#define TARGET_LIBC_PROVIDES_SSP 1' $(builddir)/gcc/auto-host.h; then echo 'libc provides ssp'; else echo 'yes'; fi))
+  endif
+endif
+
+# libffi -------------------
+ifeq ($(with_common_libs),yes)
+  with_libffi := yes
+  no_ffi_cpus :=
+  no_ffi_arches := armel
+  no_ffi_systems :=
+  ifneq ($(with_java),yes)
+    ifneq (, $(filter $(DEB_TARGET_ARCH_CPU),$(no_ffi_cpus)))
+      with_libffi := disabled for architecure $(DEB_TARGET_ARCH_CPU)
+    endif
+    ifneq (, $(filter $(DEB_TARGET_ARCH),$(no_ffi_arches)))
+      with_libffi := disabled for architecure $(DEB_TARGET_ARCH)
+    endif
+    ifneq (, $(filter $(DEB_TARGET_GNU_SYSTEM),$(no_ffi_systems)))
+      with_libffi := disabled for $(DEB_TARGET_GNU_SYSTEM)
+    endif
+    with_libffi := $(call envfilt, ffi, , , $(with_libffi))
+  endif
+  ifdef DEB_CROSS
+    with_libffi := disabled for cross compiler package
+  endif
+endif
+
+# Fortran 95 --------------------
+ifeq ($(with_base_only),yes)
+  with_fortran := no
+else
+  with_fortran := yes
+endif
+
+f95_no_cpus :=
+ifneq (, $(filter $(DEB_TARGET_ARCH_CPU),$(f95_no_cpus)))
+    with_fortran := disabled for architecure $(DEB_TARGET_ARCH_CPU)
+endif
+ifdef DEB_CROSS
+  with_fortran := disabled for cross compiler package
+endif
+ifeq (f95, $(findstring f95,$(WITHOUT_LANG)))
+  with_fortran := disabled by environment
+endif
+with_fortran := $(call envfilt, fortran, , , $(with_fortran))
+
+with_fortran := disabled for gcc-4.1
+
+# Build all packages needed for Fortran development
+ifeq ($(with_fortran)-$(with_dev),yes-yes)
+  with_fdev := yes
+else
+  with_fdev := no
+endif
+
+# soname changed in 4.2
+#ifeq ($(with_common_libs)-$(with_fortran),yes-yes)
+#  with_libfortran := yes
+#else
+#  with_libfortran := no
+#endif
+with_libfortran := yes
+
+ifeq ($(with_fortran),yes)
+  enabled_languages += fortran
+endif
+
+# protoize --------------------
+ifeq ($(with_common_pkgs),yes)
+  with_proto := yes
+  ifdef DEB_CROSS
+    with_proto := disabled for cross compiler package
+  endif
+else
+  with_proto := no
+endif
+#ifeq ($(with_proto),yes)
+#  enabled_languages += proto
+#endif
+
+ifeq ($(with_common_pkgs),yes)
+  with_fixincl := yes
+  ifdef DEB_CROSS
+    with_fixincl := disabled for cross compiler package
+  endif
+else
+  with_fixincl := no
+endif
+
+# Pascal --------------------
+
+with_separate_gpc := yes
+
+with_pascal := yes
+ifneq ($(with_dev),yes)
+  with_pascal := no
+endif
+
+# these CPUs are not yet tested
+pascal_no_cpus := #alpha amd64 arm m68k mips mipsel s390
+pascal_no_systems :=
+ifneq (,$(filter $(DEB_TARGET_ARCH_CPU),$(pascal_no_cpus)))
+  with_pascal := disabled for architecture $(DEB_TARGET_ARCH_CPU)
+endif
+ifneq (,$(filter $(DEB_TARGET_GNU_SYSTEM),$(pascal_no_systems)))
+  with_pascal := disabled for $(DEB_TARGET_GNU_SYSTEM)
+endif
+ifeq (,$(findstring gpc, $(PKGSOURCE)))
+  with_pascal := disabled, built by separate source
+endif
+
+with_gpidump := yes
+ifneq (, $(filter $(DEB_TARGET_ARCH_CPU),mips mipsel))
+  with_gpidump := disabled for architecture $(DEB_TARGET_ARCH_CPU)
+endif
+pascal_version := 20060325
+with_pascal := $(call envfilt, pascal, , , $(with_pascal))
+
+ifdef DEB_CROSS
+  with_pascal := disabled for cross compiler package
+endif
+ifeq ($(with_pascal),yes)
+  enabled_languages += pascal
+endif
+
+# ObjC --------------------
+ifeq ($(with_base_only),yes)
+  with_objc := no
+else
+  with_objc := yes
+endif
+with_objc := disabled for gcc-4.1
+
+# the ObjC runtime with garbage collection enabled needs the Boehm GC
+with_objc_gc := yes
+
+# disable ObjC garbage collection library (needs libgc)
+libgc_no_cpus := avr alpha amd64 arm armeb hppa i386 ia64 m68k mips mipsel powerpc s390 sparc
+libgc_no_systems :=
+ifneq (, $(filter $(DEB_TARGET_ARCH_CPU),$(libgc_no_cpus)))
+  with_objc_gc := disabled for architecture $(DEB_TARGET_ARCH_CPU)
+endif
+ifneq (, $(filter $(DEB_TARGET_GNU_SYSTEM),$(libgc_no_systems)))
+  with_objc_gc := disabled for $(DEB_TARGET_GNU_SYSTEM)
+endif
+with_objc_gc := disabled for gcc-4.1
+ifdef DEB_CROSS
+  ifneq (objc, $(findstring objc,$(WITH_LANG)))
+    with_objc := disabled for cross compiler package
+  endif
+endif
+with_objc := $(call envfilt, objc, obj-c++, , $(with_objc))
+ifeq ($(DEB_TARGET_ARCH),armel)
+  with_objc := disabled for armel
+endif
+
+ifneq ($(with_objc),yes)
+  with_objc_gc := $(with_objc)
+endif
+
+# Build all packages needed for Objective-C development
+ifeq ($(with_objc)-$(with_dev),yes-yes)
+  with_objcdev := yes
+else
+  with_objcdev := no
+endif
+# soname changed in 4.2
+#ifeq ($(with_common_libs)-$(with_objc),yes-yes)
+#  with_libobjc := yes
+#else
+#  with_libobjc := no
+#endif
+with_libobjc := yes
+with_libobjc := disabled for gcc-4.1
+
+ifeq ($(with_objc),yes)
+  enabled_languages += objc
+endif
+
+# ObjC++ --------------------
+with_objcxx := yes
+with_objcxx := disabled for gcc-4.1
+with_objcxx := $(call envfilt, obj-c++, , c++ objc, $(with_objcxx))
+
+ifeq ($(with_objcxx),yes)
+  enabled_languages += obj-c++
+endif
+
+# Ada --------------------
+with_separate_gnat := yes
+with_ada := yes
+ifneq ($(with_dev),yes)
+  with_ada := no
+endif
+
+with_libgnat := yes
+ada_no_cpus := arm armeb m32r m68k sh3 sh3eb sh4 sh4eb
+ada_no_systems := hurd-i386
+ifneq (, $(filter $(DEB_TARGET_ARCH_CPU),$(ada_no_cpus)))
+  with_ada := disabled for architecure $(DEB_TARGET_ARCH_CPU)
+endif
+ifneq (, $(filter $(DEB_TARGET_GNU_SYSTEM),$(ada_no_systems)))
+  with_ada := disabled for $(DEB_TARGET_GNU_SYSTEM)
+endif
+ifeq ($(DEB_TARGET_ARCH),hurd-i386)
+  with_ada := disabled for architecure $(DEB_TARGET_ARCH)
+endif
+with_ada := $(call envfilt, ada, , , $(with_ada))
+ifdef DEB_CROSS
+  with_ada := disabled for cross compiler package
+endif
+ifeq ($(PKGSOURCE),gcc-snapshot)
+  with_ada := disabled for snapshot builds
+endif
+
+ifeq ($(with_ada),yes)
+  enabled_languages += ada
+  libada_no_cpus := mips mipsel
+  ifneq (, $(filter $(DEB_TARGET_ARCH_CPU),$(libada_no_cpus)))
+    with_libgnat := disabled for architecure $(DEB_TARGET_ARCH_CPU)
+  endif
+  # maybe not the correct macro name ...
+  libada_shared_dual_cpus := hppa
+  ifneq (, $(filter $(DEB_TARGET_ARCH_CPU),$(libada_shared_dual_cpus)))
+    with_libgnat_shared_dual := yes
+  endif
+else
+  with_libgnat := $(with_ada)
+  with_libgnat_shared_dual := no
+endif
+
+# D -------------------------
+
+with_separate_gdc := yes
+
+# no suffix for D 1.0
+libphobos_version :=
+
+# still experimental
+# libphobos_version := 2
+
+ifeq ($(with_base_only),yes)
+  with_d := no
+else
+  with_d := yes
+endif
+
+with_libphobos := $(with_d)
+
+libphobos_no_cpus := sparc
+libphobos_no_systems := gnu
+ifneq (, $(filter $(DEB_TARGET_ARCH_CPU),$(libphobos_no_cpus)))
+  with_libphobos := disabled for architecure $(DEB_TARGET_ARCH_CPU)
+endif
+ifneq (, $(filter $(DEB_TARGET_GNU_SYSTEM),$(libphobos_no_systems)))
+  with_libphobos := disabled for $(DEB_TARGET_GNU_SYSTEM)
+endif
+
+ifneq ($(with_cxx),yes)
+  with_d := disabled because C++ disabled
+endif
+
+ifneq ($(with_d),yes)
+  with_libphobos := disabled because D disabled
+endif
+
+ifeq ($(with_d),yes)
+  enabled_languages += d
+endif
+
+# Shared libgcc --------------------
+with_shared_libgcc := yes
+
+ifeq ($(with_common_libs),yes)
+  with_libgcc := yes
+else
+  with_libgcc := no
+  with_shared_libgcc := no
+endif
+
+# hppa64 build --------------------
+with_hppa64 := no
+ifeq ($(DEB_TARGET_ARCH),hppa)
+  ifneq ($(DEB_CROSS),yes)
+    with_hppa64 := yes
+  endif
+  #ifeq ($(PKGSOURCE),gcc-snapshot)
+  #  with_hppa64 := disabled for snapshot build
+  #endif
+endif
+with_hppa64 := $(call envfilt, hppa64, , , $(with_hppa64))
+
+# run testsuite --------------------
+with_check := yes
+# If you don't want to run the gcc testsuite, set `with_check' to `no'
+#with_check := disabled by hand
+ifeq ($(with_base_only),yes)
+  with_check := no
+endif
+ifdef DEB_CROSS
+  with_check := disabled for cross compiler package
+endif
+check_no_systems := hurd-i386
+ifneq (, $(filter $(DEB_TARGET_GNU_SYSTEM),$(check_no_systems)))
+  with_check := disabled for $(DEB_TARGET_GNU_SYSTEM)
+endif
+check_no_cpus :=
+ifeq ($(DEB_TARGET_ARCH_CPU), $(findstring $(DEB_TARGET_ARCH_CPU),$(check_no_cpus)))
+  with_check := disabled for architecure $(DEB_TARGET_ARCH_CPU)
+endif
+ifeq ($(DEB_TARGET_ARCH),hurd-i386)
+  with_check := disabled for architecure $(DEB_TARGET_ARCH)
+endif
+ifeq ($(distribution)-$(DEB_HOST_ARCH),Ubuntu-hppa)
+  ifneq ($(PKGSOURCE),gcc-snapshot)
+    with_check := disabled, testsuite timeouts with expect
+  endif
+endif
+with_check := $(call envfilt, check, , , $(with_check))
+ifneq ($(WITHOUT_CHECK),)
+  with_check := disabled by environment
+endif
+ifneq ($(findstring nocheck, $(DEB_BUILD_OPTIONS)),)
+  with_check := disabled by DEB_BUILD_OPTIONS
+endif
+ifneq (,$(findstring gdc,$(PKGSOURCE)))
+  with_check := disabled for gdc
+endif
+
+locale_data = generate
+
+# powerpc nof libraries --------------------
+with_libnof := no
+
+# multiarch --------------------
+#with_multiarch_inc := yes
+#with_multiarch_lib := no
+
+all_enabled_languages := $(enabled_languages)
+languages_without_lang_opt := c++ objc obj-c++ proto
+
+ifeq ($(with_separate_libgcj),yes)
+  ifneq (,$(findstring gcc-4, $(PKGSOURCE)))
+    enabled_languages := $(filter-out java, $(all_enabled_languages))
+    debian_extra_langs = java
+    with_java := built from separate source
+    with_gcj := built from separate source
+    with_libgcj := built from separate source
+  endif
+  ifneq (,$(findstring gcj, $(PKGSOURCE)))
+    enabled_languages = c c++ java
+    debian_extra_langs := $(filter-out $(enabled_languages) $(languages_without_lang_opt), $(all_enabled_languages))
+    with_libgcc := no
+    with_cxx := no
+    with_cdev := no
+    with_cxxdev := no
+    with_fortran := no
+    with_proto := no
+    with_fixincl := no
+    with_pascal := no
+    with_libmudflap := no
+    with_libffi := no
+    with_libssp := no
+    with_objc := no
+    with_libobjc := no
+    with_objcxx := no
+    with_ada := no
+    with_d := no
+    with_libphobos := no
+    with_libgnat := no
+    with_hppa64 := no
+    with_libnof := no
+    with_debug := no
+    with_gccbase := no
+    with_fastjar := no
+    ifeq ($(with_standalone_gcj),yes)
+      ifeq ($(DEB_TARGET_ARCH),hppa)
+        with_libgcc := yes
+      endif
+      #with_fastjar := yes
+    endif
+  endif
+endif
+
+ifeq ($(with_separate_gnat),yes)
+  ifneq (,$(findstring gcc-4, $(PKGSOURCE)))
+    enabled_languages := $(filter-out ada, $(enabled_languages))
+    debian_extra_langs += ada
+    with_ada := built from separate source
+    with_libgnat := built from separate source
+  endif
+  ifneq (,$(findstring gnat, $(PKGSOURCE)))
+    enabled_languages = c ada
+    debian_extra_langs := $(filter-out $(enabled_languages) $(languages_without_lang_opt), $(all_enabled_languages))
+    with_libgcc := no
+    with_cxx := no
+    with_cdev := no
+    with_cxxdev := no
+    with_fortran := no
+    with_proto := no
+    with_fixincl := no
+    with_pascal := no
+    with_libmudflap := no
+    with_libffi := no
+    with_libssp := no
+    with_objc := no
+    with_libobjc := no
+    with_objcxx := no
+    with_d := no
+    with_libphobos := no
+    with_java := no
+    with_gcj := no
+    with_libgcj := no
+    with_hppa64 := no
+    with_libnof := no
+    with_debug := no
+    with_gccbase := no
+    with_fastjar := no
+    with_check := no
+  endif
+endif
+
+ifeq ($(with_separate_gdc),yes)
+  ifneq (,$(findstring gcc-4, $(PKGSOURCE)))
+    enabled_languages := $(filter-out d, $(enabled_languages))
+    debian_extra_langs += d
+    with_d := built from separate source
+    with_libphobos := built from separate source
+  endif
+  ifneq (,$(findstring gdc, $(PKGSOURCE)))
+    enabled_languages = c c++ d
+    debian_extra_langs := $(filter-out $(enabled_languages) $(languages_without_lang_opt), $(all_enabled_languages))
+    with_libgcc := no
+    with_cxx := no
+    with_cdev := no
+    with_cxxdev := no
+    with_fortran := no
+    with_proto := no
+    with_fixincl := no
+    with_pascal := no
+    # gpc doesn't support mudflap
+    with_mudflap := no
+    with_libmudflap := no
+    with_libffi := no
+    with_libssp := no
+    with_objc := no
+    with_libobjc := no
+    with_objcxx := no
+    with_ada := no
+    with_libgnat := no
+    with_java := no
+    with_gcj := no
+    with_libgcj := no
+    with_hppa64 := no
+    with_libnof := no
+    with_debug := no
+    with_gccbase := no
+    with_fastjar := no
+  endif
+endif
+
+ifeq ($(with_separate_gpc),yes)
+  ifneq (,$(findstring gcc-4, $(PKGSOURCE)))
+    enabled_languages := $(filter-out pascal, $(enabled_languages))
+    debian_extra_langs += pascal
+    with_pascal := built from separate source
+  endif
+  ifneq (,$(findstring gpc, $(PKGSOURCE)))
+    enabled_languages = c pascal
+    debian_extra_langs := $(filter-out $(enabled_languages) $(languages_without_lang_opt), $(all_enabled_languages))
+    with_libgcc := no
+    with_cxx := no
+    with_cdev := no
+    with_cxxdev := no
+    with_fortran := no
+    with_proto := no
+    with_fixincl := no
+    with_d := no
+    with_libphobos := no
+    # gpc doesn't support mudflap
+    with_mudflap := no
+    with_libmudflap := no
+    with_libffi := no
+    with_libssp := no
+    with_objc := no
+    with_libobjc := no
+    with_objcxx := no
+    with_ada := no
+    with_libgnat := no
+    with_java := no
+    with_gcj := no
+    with_libgcj := no
+    with_hppa64 := no
+    with_libnof := no
+    with_debug := no
+    with_gccbase := no
+    with_fastjar := no
+  endif
+endif
+
+debian_extra_langs := $(subst obj-c++,objcp,$(debian_extra_langs))
+export debian_extra_langs
+
+biarch := no
+
+with_lib64gcc		:= no
+with_lib64cxx		:= no
+with_lib64objc		:= no
+with_lib64ffi		:= no
+with_lib64gcj		:= no
+with_lib64fortran	:= no
+with_lib64mudflap	:= no
+with_lib64ssp		:= no
+
+biarch_map := i486=x86_64 powerpc=powerpc64 sparc=sparc64 s390=s390x \
+		x86_64=i486 powerpc64=powerpc
+biarch_cpu := $(patsubst $(DEB_TARGET_GNU_CPU)=%, %, \
+			 $(filter $(DEB_TARGET_GNU_CPU)=%, $(biarch_map)))
+
+biarch_archs := /i386/powerpc/sparc/s390/
+ifneq (yes,$(call envfilt, biarch, , ,yes))
+  biarch_archs :=
+endif
+ifneq (,$(findstring /$(DEB_TARGET_ARCH)/,$(biarch_archs)))
+  biarch := yes
+  biarchsubdir = 64
+  ifeq ($(with_libgcc),yes)
+    with_lib64gcc := yes
+  endif
+  ifeq ($(with_libcxx),yes)
+    with_lib64cxx := yes
+  endif
+  ifeq ($(with_libcxxdbg),yes)
+    with_lib64cxxdbg := yes
+  endif
+  ifeq ($(with_libobjc),yes)
+    with_lib64objc := yes
+  endif
+  ifeq ($(with_libfortran),yes)
+    with_lib64fortran := yes
+  endif
+  ifeq ($(with_libffi),yes)
+    with_lib64ffi := yes
+  endif
+  ifeq ($(with_libmudflap),yes)
+    with_lib64mudflap := yes
+  endif
+  ifeq ($(with_libssp),yes)
+    with_lib64ssp := yes
+  endif
+
+  biarch_multidir_names = libiberty zlib
+  ifneq (,$(findstring gcc-, $(PKGSOURCE)))
+    biarch_multidir_names += libstdc++-v3 libgfortran libmudflap libssp libffi libobjc
+  endif
+  ifneq (,$(findstring gdc-, $(PKGSOURCE)))
+    biarch_multidir_names += libstdc++-v3
+  endif
+  export biarch_multidir_names
+
+  TARGET32_MACHINE := $(TARGET_ALIAS)
+  TARGET64_MACHINE := $(strip $(subst $(DEB_TARGET_GNU_CPU),$(biarch_cpu), \
+					$(TARGET_ALIAS)))
+  export TARGET32_MACHINE
+  export TARGET64_MACHINE
+endif
+
+biarch32_archs := /amd64/ppc64/kfreebsd-amd64/
+ifneq (yes,$(call envfilt, biarch, , ,yes))
+  biarch32_archs :=
+endif
+ifneq (,$(findstring /$(DEB_TARGET_ARCH)/,$(biarch32_archs)))
+  biarch32 := yes
+  biarchsubdir = 32
+  ifeq ($(with_libgcc),yes)
+    with_lib32gcc := yes
+  endif
+  ifeq ($(with_libcxx),yes)
+    with_lib32cxx := yes
+  endif
+  ifeq ($(with_libcxxdbg),yes)
+    with_lib32cxxdbg := yes
+  endif
+  ifeq ($(with_libobjc),yes)
+    with_lib32objc := yes
+  endif
+  ifeq ($(with_libfortran),yes)
+    with_lib32fortran := yes
+  endif
+  ifeq ($(with_libffi),yes)
+    with_lib32ffi := yes
+  endif
+  ifeq ($(with_libmudflap),yes)
+    with_lib32mudflap := yes
+  endif
+  ifeq ($(with_libssp),yes)
+    with_lib32ssp := yes
+  endif
+
+  biarch_multidir_names = libiberty zlib
+  ifneq (,$(findstring gcc-, $(PKGSOURCE)))
+    biarch_multidir_names += libstdc++-v3 libgfortran libmudflap libssp libffi libobjc
+  endif
+  ifneq (,$(findstring gdc-, $(PKGSOURCE)))
+    biarch_multidir_names += libstdc++-v3
+  endif
+  export biarch_multidir_names
+
+  TARGET32_MACHINE := $(strip $(subst $(DEB_TARGET_GNU_CPU),$(biarch_cpu), \
+					$(TARGET_ALIAS)))
+  TARGET64_MACHINE := $(TARGET_ALIAS)
+  export TARGET32_MACHINE
+  export TARGET64_MACHINE
+endif
+
+multilib_archs = $(sort $(subst /, , $(biarch_archs) $(biarch32_archs)))
+
+#ifeq ($(DEB_TARGET_ARCH),ia64)
+#  biarch32 := yes
+#endif
+
+ifeq ($(PKGSOURCE),gcc-snapshot)
+  #ifeq ($(DEB_TARGET_ARCH),$(findstring $(DEB_TARGET_ARCH),sparc))
+    with_lib64gcc	:= no
+    with_lib64cxx	:= no
+    with_lib64objc	:= no
+    with_lib64ffi	:= no
+    with_lib64gcj	:= no
+    with_lib64fortran	:= no
+    with_lib64mudflap	:= no
+    with_lib64ssp	:= no
+
+    with_lib32gcc	:= no
+    with_lib32cxx	:= no
+    with_lib32objc	:= no
+    with_lib32ffi	:= no
+    with_lib32gcj	:= no
+    with_lib32fortran	:= no
+    with_lib32mudflap	:= no
+    with_lib32ssp	:= no
+
+    biarch   	:= disabled for snapshot build
+    biarch32 	:= disabled for snapshot build
+  #endif
+endif
+
+ifdef DEB_CROSS_NO_BIARCH
+  with_lib64gcc		:= no
+  with_lib64cxx		:= no
+  with_lib64objc	:= no
+  with_lib64ffi		:= no
+  with_lib64gcj		:= no
+  with_lib64fortran	:= no
+  with_lib64mudflap	:= no
+  with_lib64ssp		:= no
+
+  with_lib32gcc		:= no
+  with_lib32cxx		:= no
+  with_lib32objc	:= no
+  with_lib32ffi		:= no
+  with_lib32gcj		:= no
+  with_lib32fortran	:= no
+  with_lib32mudflap	:= no
+  with_lib32ssp		:= no
+
+  biarch   	:= disabled for cross build
+  biarch32 	:= disabled for cross build
+endif
+
+ifeq ($(with_d),yes)
+  with_lib64gcc		:= no
+  with_lib64cxx		:= no
+  with_lib64objc	:= no
+  with_lib64ffi		:= no
+  with_lib64gcj		:= no
+  with_lib64fortran	:= no
+  with_lib64mudflap	:= no
+  with_lib64ssp		:= no
+
+  with_lib32gcc		:= no
+  with_lib32cxx		:= no
+  with_lib32objc	:= no
+  with_lib32ffi		:= no
+  with_lib32gcj		:= no
+  with_lib32fortran	:= no
+  with_lib32mudflap	:= no
+  with_lib32ssp		:= no
+
+  biarch   	:= disabled for cross build
+  biarch32 	:= disabled for cross build
+endif
+
+ifeq ($(biarch32),yes)
+  with_32bit_check := $(strip $(if $(wildcard build/runcheck.out), \
+				$(shell cat build/runcheck.out), \
+				$(shell CC="gcc -m32" bash debian/runcheck.sh)))
+endif
+
+ifeq ($(biarch),yes)
+  with_64bit_check := $(strip $(if $(wildcard build/runcheck.out), \
+				$(shell cat build/runcheck.out), \
+				$(shell CC="gcc -m64" bash debian/runcheck.sh)))
+endif
+
+# GNU locales
+force_gnu_locales := yes
+locale_no_systems := gnu
+ifneq (, $(filter $(DEB_TARGET_GNU_SYSTEM),$(locale_no_systems)))
+  force_gnu_locales := disabled for $(DEB_TARGET_GNU_SYSTEM)
+endif
+
+gcc_tarpath		:= $(firstword $(wildcard gcc-*.tar.* /usr/src/gcc-4.1/gcc-*.tar.*))
+gcc_tarball		:= $(notdir $(gcc_tarpath))
+#gcc_srcdir		:= $(shell echo $(gcc_tarball) | sed 's/\.tar.*//;s/-dfsg//')
+gcc_srcdir		:= $(subst -dfsg,,$(patsubst %.tar.gz,%,$(gcc_tarball:.tar.bz2=)))
+
+gcj_tarpath		:= $(firstword $(wildcard gcj-ecj-*.tar.* /usr/src/gcc-4.1/gcj-ecj-*.tar.*))
+gcj_tarball		:= $(notdir $(gcj_tarpath))
+
+ifeq ($(with_pascal),yes)
+  gpc_tarpath		:= $(firstword $(wildcard gpc-*.tar.* /usr/src/gcc-4.1/gpc-*.tar.*))
+  gpc_tarball		:= $(notdir $(gpc_tarpath))
+  gpc_srcdir		:= $(patsubst %.tar.gz,%,$(gpc_tarball:.tar.bz2=))
+endif
+
+ifeq ($(with_d),yes)
+  gdc_tarpath		:= $(firstword $(wildcard gdc-*.tar.* /usr/src/gcc-4.1/gdc-*.tar.*))
+  gdc_tarball		:= $(notdir $(gdc_tarpath))
+  gdc_srcdir		:= $(patsubst %.tar.gz,%,$(gdc_tarball:.tar.bz2=))
+endif
+
+unpack_stamp		:= $(stampdir)/01-unpack-stamp
+patch_stamp		:= $(stampdir)/02-patch-stamp
+control_stamp		:= $(stampdir)/03-control-stamp
+configure_stamp		:= $(stampdir)/04-configure-stamp
+build_stamp		:= $(stampdir)/05-build-stamp
+build_html_stamp	:= $(stampdir)/05-build-html-stamp
+build_doxygen_stamp	:= $(stampdir)/05-build-doxygen-stamp
+build_javadoc_stamp	:= $(stampdir)/05-build-javadoc-stamp
+check_stamp		:= $(stampdir)/06-check-stamp
+check_inst_stamp	:= $(stampdir)/06-check-inst-stamp
+install_stamp		:= $(stampdir)/07-install-stamp
+binary_stamp		:= $(stampdir)/08-binary-stamp
+
+configure_dummy_stamp	:= $(stampdir)/04-configure-dummy-stamp
+build_dummy_stamp	:= $(stampdir)/05-build-dummy-stamp
+install_dummy_stamp	:= $(stampdir)/07-install-dummy-stamp
+
+configure_hppa64_stamp	:= $(stampdir)/04-configure-hppa64-stamp
+build_hppa64_stamp	:= $(stampdir)/05-build-hppa64-stamp
+install_hppa64_stamp	:= $(stampdir)/07-install-hppa64-stamp
+
+configure_ia6432_stamp	:= $(stampdir)/04-configure-ia6432-stamp
+build_ia6432_stamp	:= $(stampdir)/05-build-ia6432-stamp
+install_ia6432_stamp	:= $(stampdir)/07-install-ia6432-stamp
+
+configure_ia6432_stamp	:= $(stampdir)/04-configure-ia6432-stamp
+build_ia6432_stamp	:= $(stampdir)/05-build-ia6432-stamp
+install_ia6432_stamp	:= $(stampdir)/07-install-ia6432-stamp
+
+ifeq ($(PKGSOURCE),gcc-snapshot)
+    control_dependencies = $(patch_stamp)
+    configure_dependencies = $(configure_stamp)
+    build_dependencies = $(build_stamp)
+    ifeq ($(with_check),yes)
+      build_dependencies += check
+    endif
+    install_dependencies = $(install_snap_stamp)
+else
+  ifeq ($(with_base_only),yes)
+    control_dependencies = $(patch_stamp)
+    configure_dependencies = $(configure_dummy_stamp)
+    build_dependencies = $(build_dummy_stamp)
+    install_dependencies = $(install_dummy_stamp)
+  else
+    control_dependencies = $(patch_stamp)
+    configure_dependencies = $(configure_stamp)
+    build_dependencies = $(build_stamp)
+    ifeq ($(with_check),yes)
+      build_dependencies += check
+    endif
+    install_dependencies = $(install_stamp)
+  endif
+endif
+
+ifeq ($(with_hppa64),yes)
+  build_dependencies += $(build_hppa64_stamp)
+  install_dependencies += $(install_hppa64_stamp)
+endif
+
+ifeq ($(with_ia6432),yes)
+  build_dependencies += $(build_ia6432_stamp)
+endif
+
+ifeq ($(with_ia6432),yes)
+  build_dependencies += $(build_ia6432_stamp)
+endif
+
+stamp-dir:
+	mkdir -p $(stampdir)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gcc.texi
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gcc.texi
@@ -0,0 +1,52 @@
+\input texinfo  @c -*-texinfo-*-
+@c %**start of header
+@setfilename gcc.info
+
+@settitle Using the GNU Compiler Collection (GCC)
+
+@c Create a separate index for command line options.
+@defcodeindex op
+@c Merge the standard indexes into a single one.
+@syncodeindex fn cp
+@syncodeindex vr cp
+@syncodeindex ky cp
+@syncodeindex pg cp
+@syncodeindex tp cp
+
+@paragraphindent 1
+
+@c %**end of header
+
+@copying
+The current documentation is licensed under the same terms as the Debian packaging.
+@end copying
+@ifnottex
+@dircategory Programming
+@direntry
+* gcc: (gcc).                  The GNU Compiler Collection.
+@end direntry
+This file documents the use of the GNU compilers.
+@sp 1
+@insertcopying
+@sp 1
+@end ifnottex
+
+@sp 1
+@insertcopying
+@summarycontents
+@contents
+@page
+
+@node Top
+@top Introduction
+@cindex introduction
+The official GNU compilers' documentation is released under the terms
+of the GNU Free Documentation License with cover texts. This has been
+considered non free by the Debian Project. Thus you will find it in the
+non-free section of the Debian archive.
+@menu
+* Copying::
+@end menu
+@include include/gpl.texi
+@printindex cp
+@bye
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/README.patches
+++ gdc-4.1-0.25-20080616-4.1.2/debian/README.patches
@@ -0,0 +1,30 @@
+Patches applied to the Debian version of egcs
+---------------------------------------------
+
+Debian specific patches can be found in the debian/patches directory.
+Each patch is accompanied by a shell script to apply and unapply the
+patch:
+
+- The script can be found in the debian/patches directory and is called
+  <patchname>.dpatch.
+- The shell script is called by the debian/rules file with the option
+  '-patch' to apply the patch and and with '-unpatch' to unapply
+  the patch. The working directory is the source directory.
+- The shell script returns 0 on success and 1 on failure when
+  (un)applying the patch. The patch program itself should be called with
+  --force to prevent questions.
+- debian/rules creates a file patched-<patchname> in the source
+  directory when applying the patch and removes this file when
+  unapplying the patch.
+
+Besides the patches, the following add-ons were included:
+
+- gpc (unpacked from gpc-19990118.tar.gz)
+  ftp://agnes.dida.physik.uni-essen.de/gnu-pascal/beta/gpc-19990118.tar.gz
+
+If these package(s) aren't found in the gcc source directory, it's
+assumed that the tarball(s) can be found in the parent directory. See
+debian/rules for more details.
+
+Before making a source package, these packages need to be unpacked.
+You can use "debian/rules unpack-addons".
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/libgcjLGCJ.postrm
+++ gdc-4.1-0.25-20080616-4.1.2/debian/libgcjLGCJ.postrm
@@ -0,0 +1,12 @@
+#! /bin/sh -e
+
+case "$1" in
+    remove|purge)
+        # only purge if no other library is installed.
+        if [ -z "$(ls /usr/lib/libgcj.so.@GCJ@* 2>/dev/null)" ]; then
+	    rm -f /var/lib/gcj-@BV@/classmap.db
+	    rmdir --ignore-fail-on-non-empty /var/lib/gcj-@BV@ 2>&1 || true
+	fi
+esac
+
+#DEBHELPER#
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/cpp-BV-doc.postinst
+++ gdc-4.1-0.25-20080616-4.1.2/debian/cpp-BV-doc.postinst
@@ -0,0 +1,12 @@
+#! /bin/sh -e
+
+case "$1" in
+    configure)
+	install-info --quiet --section "Development" "Development" \
+	    /usr/share/info/cpp-@BV@.info.gz
+
+	install-info --quiet --section "Development" "Development" \
+	    /usr/share/info/cppinternals-@BV@.info.gz
+esac
+
+#DEBHELPER#
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/dh_rmemptydirs
+++ gdc-4.1-0.25-20080616-4.1.2/debian/dh_rmemptydirs
@@ -0,0 +1,10 @@
+#! /bin/sh -e
+
+pkg=`echo $1 | sed 's/^-p//'`
+
+: # remove empty directories, when all components are in place
+for d in `find debian/$pkg -depth -type d -empty 2> /dev/null`; do \
+    while rmdir $d 2> /dev/null; do d=`dirname $d`; done; \
+done
+
+exit 0
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/source.lintian-overrides
+++ gdc-4.1-0.25-20080616-4.1.2/debian/source.lintian-overrides
@@ -0,0 +1 @@
+gcc-4.1: invalid-arch-string-in-source-relation
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/libstdc++CXX-BV-doc.doc-base
+++ gdc-4.1-0.25-20080616-4.1.2/debian/libstdc++CXX-BV-doc.doc-base
@@ -0,0 +1,13 @@
+Document: libstdc++@CXX@-@BV@-doc
+Title: The GNU Standard C++ Library v3 (gcc-@BV@)
+Author: Various
+Abstract: This package contains documentation files for the GNU stdc++ library.
+ One set is the distribution documentation, the other set is the
+ source documentation including a namespace list, class hierarchy,
+ alphabetical list, compound list, file list, namespace members,
+ compound members and file members.
+Section: Programming/C++
+
+Format: html
+Index: /usr/share/doc/libstdc++@CXX@-@BV@-doc/libstdc++/html_user/index.html
+Files: /usr/share/doc/libstdc++@CXX@-@BV@-doc/libstdc++/html*/*
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/porting.texi
+++ gdc-4.1-0.25-20080616-4.1.2/debian/porting.texi
@@ -0,0 +1,47 @@
+\input texinfo
+
+@setfilename porting.info
+@settitle Porting libstdc++-v3
+@setchapternewpage odd
+
+@ifinfo
+This file explains how to port libstdc++-v3 (the GNU C++ library) to 
+a new target.
+
+The documentation in this file was removed, because it is licencensed
+under a non DFSG conforming licencse.
+@end ifinfo
+
+@c ---------------------------------------------------------------------
+@c Titlepage
+@c ---------------------------------------------------------------------
+
+@titlepage
+@title Porting libstdc++-v3
+@author Mark Mitchell
+@page
+@vskip 0pt plus 1filll
+
+The documentation in this file was removed, because it is licencensed
+under a non DFSG conforming licencse.
+@end titlepage
+
+@c ---------------------------------------------------------------------
+@c Top
+@c ---------------------------------------------------------------------
+
+@node Top
+@top Porting libstdc++-v3
+
+This document explains how to port libstdc++-v3 (the GNU C++ library) to 
+a new target.
+
+The documentation in this file was removed, because it is licencensed
+under a non DFSG conforming licencse.
+
+@c ---------------------------------------------------------------------
+@c Epilogue
+@c ---------------------------------------------------------------------
+
+@contents
+@bye
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/logwatch.sh
+++ gdc-4.1-0.25-20080616-4.1.2/debian/logwatch.sh
@@ -0,0 +1,104 @@
+#! /bin/sh
+
+# script to trick the build daemons and output something, if there is
+# still test/build activity
+
+# $1: primary file to watch. if there is activity on this file, we do nothing
+# $2+: files to watch to look for activity despite no output in $1
+#      if the files are modified or are newly created, then the message
+#      is printed on stdout.
+#      if nothing is modified, don't output anything (so the buildd timeout
+#      hits).
+
+pidfile=logwatch.pid
+timeout=3600
+message='\nlogwatch still running\n'
+
+usage()
+{
+    echo >&2 "usage: `basename $0` [-p <pidfile>] [-t <timeout>] [-m <message>]"
+    echo >&2 "           <logfile> [<logfile> ...]"
+    exit 1
+}
+
+while [ $# -gt 0 ]; do
+    case $1 in
+    -p)
+	pidfile=$2
+	shift
+	shift
+	;;
+    -t)
+	timeout=$2
+	shift
+	shift
+	;;
+    -m)
+	message="$2"
+	shift
+	shift
+	;;
+    -*)
+	usage
+	;;
+    *)
+	break
+    esac
+done
+
+[ $# -gt 0 ] || usage
+
+logfile="$1"
+shift
+otherlogs="$@"
+
+cleanup()
+{
+    rm -f $pidfile
+    exit 0
+}
+
+#trap cleanup 0 1 3 15
+
+echo $$ > $pidfile
+
+update()
+{
+    _logvar=$1
+    _othervar=$2
+
+    # logfile may not exist yet
+    if [ -r $logfile ]; then
+	_logtail="`tail -10 $logfile | md5sum` $f"
+    else
+	_logtail="does not exist: $logfile"
+    fi
+    eval $_logvar="'$_logtail'"
+
+    _othertails=''
+    for f in $otherlogs; do
+	if [ -r $f ]; then
+	    _othertails="$_othertails `tail -10 $f | md5sum` $f"
+	else
+	    _othertails="$_othertails does not exist: $f"
+	fi
+    done
+    eval $_othervar="'$_othertails'"
+}
+
+update logtail othertails
+while true; do
+    sleep $timeout
+    update newlogtail newothertails
+    if [ "$logtail" != "$newlogtail" ]; then
+	# there is still action in the primary logfile. do nothing.
+	logtail="$newlogtail"
+    elif [ "$othertails" != "$newothertails" ]; then
+	# there is still action in the other log files, so print the message
+	/bin/echo -e $message
+	othertails="$newothertails"
+    else
+	# nothing changed in the other log files. maybe a timeout ...
+	:
+    fi
+done
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gcjwebplugin-BV.postinst
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gcjwebplugin-BV.postinst
@@ -0,0 +1,19 @@
+#!/bin/sh -e
+
+PATH=/sbin:/bin:/usr/sbin:/usr/bin
+
+priority=$(echo @BV@ | sed 's/\.//g')
+browser_dirs="@browser_dirs@"
+PLUGINPTH=/usr/lib/gcj-@BV@/libgcjwebplugin.so
+
+for browser in $browser_dirs; do
+    update-alternatives --quiet --install \
+	/usr/lib/$browser/plugins/libjavaplugin.so \
+	$browser-javaplugin.so \
+	$PLUGINPTH \
+	$priority
+done
+
+#DEBHELPER#
+
+exit 0
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/porting.html
+++ gdc-4.1-0.25-20080616-4.1.2/debian/porting.html
@@ -0,0 +1,30 @@
+<html lang="en">
+<head>
+<title>Porting libstdc++-v3</title>
+<meta http-equiv="Content-Type" content="text/html">
+<meta name="description" content="Porting libstdc++-v3">
+<meta name="generator" content="makeinfo 4.6">
+<meta http-equiv="Content-Style-Type" content="text/css">
+<style type="text/css"><!--
+  pre.display { font-family:inherit }
+  pre.format  { font-family:inherit }
+  pre.smalldisplay { font-family:inherit; font-size:smaller }
+  pre.smallformat  { font-family:inherit; font-size:smaller }
+  pre.smallexample { font-size:smaller }
+  pre.smalllisp    { font-size:smaller }
+--></style>
+</head>
+<body>
+<h1 class="settitle">Porting libstdc++-v3</h1>
+<div class="node">
+<p><hr>
+Node:&nbsp;<a name="Top">Top</a>,
+Next:&nbsp;<a rel="next" accesskey="n" href="#Operating%20system">Operating system</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#dir">(dir)</a>
+<br>
+</div>
+
+The documentation in this file was removed, because it is licencensed
+under a non DFSG conforming licencse.
+
+</body></html>
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gcj-wrapper-BV
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gcj-wrapper-BV
@@ -0,0 +1,91 @@
+#!/usr/bin/perl -w
+#
+# Starts the GNU Java compiler.
+#
+# Command-line arguments should be in the style of Sun's Java compiler;
+# these will be converted to gcj arguments before being passed to the
+# gcj itself.
+#
+# Copyright (C) 2002-2003 by Ben Burton <bab@debian.org>
+# Based on the original gcj-wrapper-3.2 shell script.
+
+use strict;
+
+# The real Java compiler:
+my $javaCompiler = '/usr/bin/gcj-@BV@';
+
+# The command-line arguments to pass to the real Java compiler:
+my @commandLine;
+
+# The warning flags to pass to the GNU Java compiler:
+my $warnings = '-Wall';
+
+# Build the command-line from the arguments given.
+my $parsingOptions = 1;
+my $copyNextArg = 0;
+my $ignoreNextArg = 0;
+my $appendNextArg = '';
+foreach my $arg (@ARGV) {
+    # See if we already know what to do with this argument.
+    if ($ignoreNextArg) {
+        # Throw it away.
+        $ignoreNextArg = 0;
+        next;
+    } elsif ($copyNextArg or not $parsingOptions) {
+        # Copy it directly.
+        push @commandLine, $arg;
+        $copyNextArg = 0;
+        next;
+    } elsif ($appendNextArg) {
+        # Append it to $appendNextArg and then copy directly.
+        push @commandLine, ($appendNextArg . $arg);
+        $appendNextArg = '';
+        next;
+    }
+
+    # Try to interpret Sun-style options.
+    if ($arg eq '-version') {
+        push @commandLine, '--version';
+    } elsif ($arg eq '-h' or $arg eq '-help') {
+        push @commandLine, '--help';
+    } elsif ($arg eq '-classpath' or $arg eq '--classpath' or $arg eq '--cp') {
+        $appendNextArg = '--classpath=';
+    } elsif ($arg eq '-encoding' or $arg eq '-bootclasspath' or
+             $arg eq '-extdirs') {
+        $appendNextArg = '-' . $arg . '=';
+    } elsif ($arg eq '-d') {
+        push @commandLine, '-d';
+        $copyNextArg = 1;
+    } elsif ($arg eq '-nowarn') {
+        $warnings = '';
+    } elsif ($arg =~ /^-g/) {
+        # Some kind of debugging option - just switch debugging on.
+        push @commandLine, '-g' if ($arg ne '-g:none');
+    } elsif ($arg eq '-O') {
+        push @commandLine, '-O2';
+    } elsif ($arg eq '-Xss') {
+        push @commandLine, $arg;
+    } elsif ($arg =~ /^-X/) {
+        # An extended Sun option (which we don't support).
+        push @commandLine, '--help' if ($arg eq '-X');
+    } elsif ($arg eq '-source' or $arg eq '-sourcepath' or $arg eq '-target') {
+        # An unsupported option with a following argument.
+        $ignoreNextArg = 1;
+    } elsif ($arg =~ /^-/) {
+        # An unsupported standalone option.
+    } else {
+        # Some non-option argument has been given.
+        # Stop parsing options at this point.
+        push @commandLine, $arg;
+        $parsingOptions = 0;
+    }
+}
+
+# Was there a partial argument that was never completed?
+push @commandLine, $appendNextArg if ($appendNextArg);
+
+# Call the real Java compiler.
+my @fullCommandLine = ( $javaCompiler, '-C' );
+push @fullCommandLine, $warnings if ($warnings);
+push @fullCommandLine, @commandLine;
+exec @fullCommandLine or exit(1);
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.parameters
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.parameters
@@ -0,0 +1,31 @@
+# configuration parameters taken from upstream source files
+GCC_VERSION	:= 4.1.3
+NEXT_GCC_VERSION	:= 4.1.4
+BASE_VERSION	:= 4.1
+SOURCE_VERSION	:= 0.25-20080616-4.1.2-23
+DEB_VERSION	:= 4.1.2-23
+DEB_EVERSION	:= 1:4.1.2-23
+GPC_BASE_VERSION	:= 
+GDC_BASE_VERSION  := 0.25
+DEB_GPC_VERSION	:= 
+DEB_GDC_VERSION	:= 0.25-4.1.2-23
+DEB_SOVERSION	:= 4.1.2
+DEB_SOEVERSION	:= 1:4.1.2
+DEB_LIBGCC_SOVERSION	:= 1:4.1.2
+DEB_LIBGCC_VERSION	:= 1:4.1.2-23
+DEB_STDCXX_SOVERSION	:= 4.1.2
+DEB_GCJ_SOVERSION	:= 4.1.2-1
+PKG_GCJ_EXT	:= 7
+PKG_LIBGCJ_EXT	:= 7-1
+DEB_FFI_SOVERSION	:= 4.1.2
+GCC_SONAME	:= 1
+CXX_SONAME	:= 6
+FORTRAN_SONAME	:= 1
+OBJC_SONAME	:= 1
+GCJ_SONAME	:= 71
+GNAT_VERSION	:= 4.1
+GNAT_SONAME	:= 4.1
+FFI_SONAME	:= 4
+MUDFLAP_SONAME	:= 0
+SSP_SONAME	:= 0
+LIBC_DEP		:= libc6
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gcj-wrapper-BV.1
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gcj-wrapper-BV.1
@@ -0,0 +1,20 @@
+.TH GCJ-WRAPPER 1 "June 6, 2002" gcj-wrapper "Java User's Manual"
+.SH NAME
+gcj-wrapper \- a wrapper around gcj
+
+.SH SYNOPSIS
+gcj-wrapper [\fB\s-1OPTION\s0\fR] ... [\fI\s-1ARGS\s0\fR...]
+
+.SH DESCRIPTION
+
+\fBgcj-wrapper\fR is a wrapper around gcj(1) to be called as the java
+compiler. Options different for javac(1) and gcj(1) are translated,
+options unknown to gcj(1) are silently ignored.
+
+.SH OPTIONS
+See gcj-@BV@(1) for a list of options that gcj understands.
+
+.SH "SEE ALSO"
+.BR gcj-@BV@(1)
+,
+.BR javac(1)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/changelog
+++ gdc-4.1-0.25-20080616-4.1.2/debian/changelog
@@ -0,0 +1,6385 @@
+gdc-4.1 (0.25-20080616-4.1.2-23.2) unstable; urgency=low
+
+  * Non-maintainer upload.
+  * Fix debian/copyright, include info on license obtained from Digital
+    Mars. Thanks to Walter Bright. Closes: #499927
+
+ -- Thomas Viehmann <tv@beamnet.de>  Thu, 02 Oct 2008 20:50:10 +0200
+
+gdc-4.1 (0.25-20080616-4.1.2-23.1) unstable; urgency=low
+
+  * Non-Maintainer Upload
+  * Fix string concatenation segfaults on powerpc, thanks to Ulrich
+    Eckhardt and Arthur Loiret (Closes: #473167).
+
+ -- Don Armstrong <don@debian.org>  Fri, 08 Aug 2008 08:58:51 -0700
+
+gdc-4.1 (0.25-20080616-4.1.2-23) unstable; urgency=low
+
+  * Upload as gdc-4.1.
+  * Update to upstram SVN 20080616.
+    - gdc-fix-build.dpatch: Update.
+  * debian/rules.defs: Disable biarch.
+    - debian/rules2: Fix build with amd64 biarch disabled.
+  * gdc-libstdcxx-nobuild: New: don't build libstdc++ when building gdc.
+
+ -- Arthur Loiret <arthur.loiret@gmail.com>  Wed, 02 Jul 2008 19:43:06 +0000
+
+gcc-4.1 (4.1.2-23) unstable; urgency=low
+
+  [Matthias Klose]
+  * Update to the gcc-4_1-branch 20080623.
+    - mips/mipsel only updates.
+  * On hurd-i386 with -fstack-protector do not link with libssp_nonshared
+    (Samuel Thibault). Closes: #483609.
+  * Fix cross build targeting powerpc biarch (Hector Oron). Closes: #483906.
+  * Include library symlinks in gobjc and gfortran multilib packages, when
+    not building the library packages.
+  * Fix some lintian warnings and errors.
+
+  [Arthur Loiret]
+  * debian/rules2: configure sh4-linux with --with-multilib-list=m4,m4-nofpu
+    and --with-cpu=sh4.
+  * debian/rules.patch: Don't apply sh4-multilib.dpatch.
+  * mips-warnings.dpatch: Add missing #undef ASM_OUTPUT_EXTERNAL to fix
+    warnings during build.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 23 Jun 2008 23:18:53 +0200
+
+gcc-4.1 (4.1.2-22) unstable; urgency=low
+
+  [Matthias Klose]
+  * Update to the gcc-4_1-branch 20080420.
+    - Fix PR middle-end/35163, wrong code, folding comparison loses cast.
+  * Remove treelang build support.
+  * Add gcc-multilib64dir patch, remove ppc64-biarch patch; gcc
+    -print-multi-os-directory prints `../lib' again.
+
+  [Aurelien Jarno]
+  * Disable amd64-biarch patch on kfreebsd-amd64.
+
+  [Arthur Loiret]
+  * Support sh4 targets:
+    - sh4-multilib.dpatch: Add, fix multilib (m4/m4-nofpu) for sh4-linux.
+  * Update gdc to upstream SVN 20080419.
+    + Don't use svn-gdc-updates this time, new orig tarball.
+
+ -- Matthias Klose <doko@debian.org>  Thu, 24 Apr 2008 18:48:34 +0200
+
+gcc-4.1 (4.1.2-21) unstable; urgency=low
+
+  [Matthias Klose]
+  * Update to the gcc-4_1-branch 20080308.
+    - debian/patches/amd64-biarch.dpatch: Remove.
+    - debian/patches/{powerpc,ppc64}-biarch.dpatch: Update.
+  * Update PR other/28322, ignore only unknown -W* options.
+
+  [Arthur Loiret]
+  * pr25524.dpatch: Update, backport register_include_chains call fix from
+    trunk.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 09 Mar 2008 21:53:13 +0100
+
+gcc-4.1 (4.1.2-20) unstable; urgency=low
+
+  [Ludovic Brenta]
+  * debian/rules.d/binary-ada.mk, debian/control.m4: merge from
+    gnat-4.2 (= 4.2.2-7).  This restores libgnatvsn-dev and
+    libgnatprj-dev and therefore closes: #447348.
+  * change package names: libgnatvsn-dev becomes libgnatvsn4.1-dev;
+	                  libgnatprj-dev becomes libgnatprj4.1-dev;
+    the unversioned packages will be provided by gcc-defaults.
+
+  [ Aurelien Jarno]
+  * debian/multiarch.inc: change mipsel64 into mips64el.
+
+  [Matthias Klose]
+  * Update to the gcc-4_1-branch 20080301.
+  * Fix PR other/28322, GCC new warnings and compatibility.
+  * Disable building ObjC, ObjC++, Fortran and Treelang compilers.
+  * Remove 4.1.2 compatibility symlinks in gcclibdir.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 02 Mar 2008 00:57:59 +0100
+
+gcc-4.1 (4.1.2-19) unstable; urgency=low
+
+  [Matthias Klose]
+  * Update to the gcc-4_1-branch 20080114.
+  * Fix build failures for gnat-4.1, gpc-4.1, gdc-4.1 introduced by recent
+    gdc changes.
+  * Set the priority of gcc-4.1-base to optional.
+  * Update debian/watch. Closes: #459388. Addresses: #459389, #459390.
+  * Apply fixes for PR java/33639, PR java/33765, taken from the trunk.
+  * Fix build failure with dpkg-shlibdeps (>= 1.14.15).
+
+  [Arthur Loiret]
+  * debian/rules.defs: Disable phobos on hurd-i386.
+    - gdc-hurd-proc_maps.dpatch: Remove.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 16 Jan 2008 17:14:11 +0100
+
+gcc-4.1 (4.1.2-18) unstable; urgency=low
+
+  [Matthias Klose]
+  * Update to the gcc-4_1-branch 20071209.
+    - Fix PR middle-end/34130, wrong code with some __builtin_abs expressions.
+      Closes: #452113.
+  * debian/rules2 (STAGE1_CFLAGS): Fix build failure on m68k.
+  * Don't run the testsuite on hppa when expect-tcl8.3 is not available.
+  * Fix again profiling support on the Hurd (Thomas Schwinge). Closes: #433539.
+  * debian/rules.d/binary-java.mk: dpkg-shlibsdeps can't handle the dangling
+    symlink to libgcj_bc.so.1. Remove it temporarily.
+  * Add libgcj_bc to the libgcj7-1 shlibs file.
+  * Build-depend on gcc-4.1-multilib instead of gcc-multilib.
+  * Build the java plugin always using libxul-dev.
+
+  [Arthur Loiret]
+  * Update gdc to upstream SVN 20071124.
+  * Separate libphobos from gdc package.
+  * Build gdc on all archs, without libphobos on unsupported upstream archs.
+    - debian/rules.defs: disable libphobos on sparc
+  * Install libphobos in the private gcc lib dir.
+  * Update gdc driver to use system zlib.
+  * Always build with parallel=1 to hopefully have readable logs.
+  * Always disable the testsuite with gdc.
+  * debian/rules.patch: Update gdc patches list:
+    - gdc-4.1.dpatch: Update from upstream SVN, update gcc/DEV-PHASE.
+    - gdc-pr26885.dpatch: Add, enable pr26885 again.
+    - gdc-driver-zlib.dpatch: Add, use up-to-date system zlib.
+    - gdc-build.dpatch: Remove, renamed to gdc-libphobos-build.dpatch
+    - gdc-libphobos-build.dpatch: Add.
+    - gdc-driver-nophobos.dpatch: Add, disable phobos on unsupported archs.
+    - gdc-fix-build.dpatch: Add, fix build on non-biarched 64 bit targets,
+      fix a small gcc/config/ issue.
+    - gdc-libphobos-std-format.dpatch: Add.
+    - gdc-arm-unwind_ptr.dpatch: Add, fix build on arm.
+    - gdc-mips-gcc-config.dpatch: Add, fix build on mips.
+    - gdc-hurd-proc_maps.dpatch: Add, fix build on hurd.
+  * Begin to work on cross-compilation support, now supported upstream.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 09 Dec 2007 13:17:23 +0100
+
+gcc-4.1 (4.1.2-17) unstable; urgency=low
+
+  [Matthias Klose]
+  * Update to the gcc-4_1-branch 20071019.
+    - Fix PR target/33256 (mips).
+    - Fix PR tree-optimization/33142, wrong code with VRP through ABS_EXPR.
+      Closes: #429657.
+    - Fix PR c++/29226, ICE in make_decl_rtl (closes: #388626).
+    - Fix PR target/31641, ICE in s390_expand_setmem (closes: #385580).
+  * Set the priority of the source package to optional.
+  * Remove .la files from the biarch libstdc++ debug packages,
+    conflict with the 3.4 package. Addresses: #440490.
+  * Update Hurd fixes (Samuel Thibault).
+  * When -fstack-protector is the default (Ubuntu), do not enable
+    -fstack-protector when -nostdlib is specified. LP: #77865.
+  * Add -g to BOOT_CFLAGS, set STAGE1_CFLAGS to -g -O, only pass
+    other settings when required.
+  * Fix installation of the s390 libstdc++ biarch headers.
+  * Allow the powerpc build on a 32bit machine (without running the
+    biarch testsuite).
+  * Add niagara2 optimization support (David Miller).
+
+  * Only remove libgcj7's classmap db if no other libgcj7* library is
+    installed.
+  * Disable building gcj for mipsel.
+
+  * Update gpc to CVS 20070904.
+  * debian/copyright: gpc is now licensed under the GPL3. The gpc
+    changes are only found in the gpc-4.1 sources.
+  * Loosen dependency of gpc-4.1 on gcc-4.1. LP: #145561.
+
+  [Arthur Loiret]
+  * Port on k*bsd*-gnu:
+    - Apply Debian patch in upstream SVN. (target-ver-syms.sh,
+      phobos/acinclude.m4, phobos/configure.in)
+    - debian/control.m4: add kfreebsd-i386 and kfreebsd-amd64 to gdc
+      Architecture list.
+  * svn-gdc-updates.dpatch: Update to SVN 20070914.
+    - Merge DMD 1.021
+    - dmd-script, d-spec.c (lang_specific_driver): Support -debuglib= and
+      -defaultlib= options.
+    - phobos/std/stdio.d (readln): Use the result of getdelim correctly.
+      (SF 1788195)
+    - d-glue.cc (FuncDeclaration::toObjFile): Do not gimplify if there were
+      errors. (Bugzilla 1415)
+    - d-objfile.cc (outdata): Do not set TREE_CONSTANT on initializers.
+      (Bugzilla 1453)
+    -  phobos/std/c/stdio.d: Define fpos_t correctly for Drawin.
+       (Bugzilla 1469)
+    - d-codegen.{h, cc}, d-glue.cc: Change rawArray to toDArray. Do
+      not cast result to void[]. (Bugzilla 1490)
+    - d-glue.cc, d-codegen.h, d-codegen.cc: Make it an error
+      to reference a nested function without a body. (SF 1793594)
+    - d-codegen.cc (convertTo, call): Prevent multiple re-evaluation
+      of delgate. (Bugzilla 1492)
+
+  * debian/rules.d/binary-d.mk: Add $(DEB_TARGET_GNU_TYPE) symlinks for
+    gdc/gdmd binaries.
+  * gdc-sqrt-double-cast.dpatch: disable (not removed yet) in rules.patch,
+    should be fixed upstream.
+
+  [Ludovic Brenta]
+  * Disable building libgnatprj-dev and libgnatvsn-dev; now provided by
+    gnat-4.2.
+
+ -- Matthias Klose <doko@debian.org>  Fri, 19 Oct 2007 11:38:11 +0200
+
+gcc-4.1 (4.1.2-16) unstable; urgency=low
+
+  [Matthias Klose]
+  * Update to the gcc-4_1-branch 20070831.
+  * Apply proposed patches:
+    - Improve debug info for packed arrays with constant bounds
+      (PR fortran/22244).
+    - Fix libgcc.a(tramp.o) on ppc32.
+  * Update the -fdirectives-only backport.
+  * debian/patches/libjava-class-igf.dpatch: Backport from the trunk.
+  * Build-depend again on locales on arm, hppa, mipsel.
+  * gdc-4.1: Loosen dependency on g++-4.1.
+  * Disable gij/gcj for arm, armel, hppa, mips; currently fails to build.
+
+  * Update gpc patches and build support for GCC-4.1.
+  * Update gpc frontend and backend patch to gcc-4.1-5f.
+
+  [Arthur Loiret]
+  * debian/control.m4 set gdc Architecture to i386 amd64 powerpc ppc64 lpia
+    until there are some others supported archs.
+  * debian/rules.conf: Use GDC_BASE_VERSION for DEB_GDC_VERSION rather than
+    specifying the upstream gdc version by hand.
+  * debian/rules.unpack: symlink-tree libphobos after unpack instead of right
+    before patch, update debian/rules.patch accordingly.
+  * debian/rules2: Add -std=gnu99 to CFLAGS and -lm to LDFLAGS when building
+    the D compiler.
+  * debian/copyright: Set the D compiler package name as gdc-4.1.
+  * gdc-sqrt-double-cast.dpatch: Fix build on powerpc.
+  * gdc-4.1.dpatch: Update
+    - gcc/tree-sra.c: Do not use SRA on structs with aliased fields created
+      for anonymous unions.
+    - gcc/predict.c: Add null-pointer check.
+
+  * svn-gdc-updates.dpatch: Update to SVN 20070829.
+    - d-decls.cc (uniqueName): Allow multiple static declaration with the same
+      name if in a function. (SF 1783085)
+    - d-codegen.cc (call): Use CommaExp correctly. (Bugzilla 1443)
+    - dmd/todt.c (createTsarrayDt): Don't take quadratic time to build the
+      initializer. (Bugzilla 1440)
+
+ -- Matthias Klose <doko@debian.org>  Sat, 01 Sep 2007 01:33:17 +0200
+
+gcc-4.1 (4.1.2-15) unstable; urgency=low
+
+  [Matthias Klose]
+  * Update to the gcc-4_1-branch 20070812.
+
+  * Period of grace is over, turn on again the testsuite on m68k.
+  * Update infrastructure for the gcc-source package (Bastian Blank).
+  * Update profiling on the Hurd (Samuel Thibault, Michael Casadevall).
+    Closes: #433539.
+  * debian/rules2: Allow DEB_BUILD_OPTIONS=parallel=<n> to overwrite NJOBS.
+  * Allow lang=<l1>,<l2> nolang=<l3,l4> in DEB_BUILD_OPTIONS; deprecating
+    WITHOUT_LANG, and WITHOUT_CHECK.
+  * debian/rules.defs, debian/rules.conf: Cache some often used macros.
+  * Backport from trunk: -fdirectives-only (when preprocessing, handle
+    directives, but do not expand macros).
+  * Report an ICE to apport (if apport is available).
+
+  * Don't build a libgcj-doc package from the gcj-4.1 source.
+  * Install gappletviewer man page. Closes: #423094.
+  * Fix gcj build failure on the Hurd (Samuel Thibault). Closes: #408888.
+  * Fix PR java/32862, bugs in EnumMap implementation. Closes: #423160.
+  * Fix PR classpath/32844.
+  * Support @ arguments in gjar.
+  * gcjwebplugin: Register for more browsers (package currently not built).
+  * gij/boehm-gc: Use sysconf as fallback, if reading /proc/stat fails.
+    Closes: #422469.
+  * libjava: Avoid dependency on MAXHOSTNAMELEN (Samuel Thibault).
+  * Tighten dependencies on ecj/libecj-java.
+  * Don't build and test libjava for the biarch architecture.
+  * Build only needed multilib libraries when building as gcj or gnat.
+  * Link libgcj using -Bsymbolic-functions.
+
+  * Integrate gdc build infrastructure.
+
+  [Arthur Loiret]
+  * Fix cross builds targeting x86_64. Closes: LP: #121834.
+  * New build infrastructure to build the gdc compiler.
+    Closes: #312367, #317983, #403460.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 12 Aug 2007 17:49:20 +0200
+
+gcc-4.1 (4.1.2-14) unstable; urgency=low
+
+  * Update to SVN 20070718.
+  * Update boehm-gc, libjava from the gcc-4.1 Fedora branch 20070718.
+  * Explicitely use fastjar to build gcj-4.1. Closes: #416001.
+  * Configure with --enable-libgcj on m32r (Kazuhiro Inaoka). Closes: #417275.
+  * On i386, don't configure --with-tune=i686 (generic is the default).
+  * Tighten build dependency on libmpfr-dev.
+  * Fix profiling on the Hurd. Closes: #433539.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 18 Jul 2007 21:29:19 +0200
+
+gcc-4.1 (4.1.2-13) unstable; urgency=low
+
+  * Update to SVN 20070629.
+  * Add version information for the libjava test summary; add
+    test summary for gnat builds.
+  * Update libjava from the gcc-4.1 Fedora branch 20070611.
+  * On mips*-linux, always imply -lpthread for -pthread (Thiemo Seufer).
+    Closes: #428741.
+  * For ix86 lpia targets, configure --with-tune=i586.
+  * README.Debian: Point to debian-toolchain for general toolchain topics.
+  * Build the 64bit biarch libstdc++ using the gnu locale model.
+  * Only suggest multilib packages on multilib architectures.
+
+ -- Matthias Klose <doko@debian.org>  Fri, 29 Jun 2007 23:43:57 +0200
+
+gcc-4.1 (4.1.2-12) unstable; urgency=high
+
+  * i386-biarch.dpatch: Update for the backport for PR target/31868.
+    Closes: #427185.
+  * m68k-libffi2.dpatch: Update. Closes: #425399.
+
+ -- Matthias Klose <doko@debian.org>  Mon,  4 Jun 2007 23:53:23 +0200
+
+gcc-4.1 (4.1.2-11) unstable; urgency=low
+
+  * Update to SVN 20070601.
+  * Build the libmudflap0-dev package again.
+  * Don't build libffi, when the packages are not built.
+
+ -- Matthias Klose <doko@debian.org>  Fri,  1 Jun 2007 23:55:22 +0200
+
+gcc-4.1 (4.1.2-10) unstable; urgency=low
+
+  * Regenerate the control file.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 30 May 2007 00:29:29 +0200
+
+gcc-4.1 (4.1.2-9) unstable; urgency=low
+
+  * Update to SVN 20070528.
+  * Don't build packages now built from the gcc-4.2 source (arm, m68k,
+    mips, mipsel).
+  * Add backport for PR middle-end/20218.
+  * Add backport for PR target/31868.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 29 May 2007 00:01:12 +0200
+
+gcc-4.1 (4.1.2-8) unstable; urgency=low
+
+  * Update to SVN 20070518.
+  * Don't build packages now built from the gcc-4.2 source.
+
+  [ Aurelian Jarno ]
+  * Update libffi patch for ARM. Closes: #425011.
+  * arm-pr30486, arm-pr28516, arm-unbreak-eabi-armv4t: New.
+  * Disable FFI, Java, ObjC for armel.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 20 May 2007 10:31:24 +0200
+
+gcc-4.1 (4.1.2-7) unstable; urgency=low
+
+  * Update to SVN 20070514.
+  * Link using --hash-style=both on supported architectures. Addresses: #421790.
+  * On hppa, build ecjx as a native binary.
+  * note-gnu-stack.dpatch: Fix ARM comment marker (Daniel Jacobowitz).
+    Closes: #422978.
+  * Add build dependency on libxul-dev for *-freebsd. Closes: #422995.
+  * Update config.guess/config.sub and build gcjwebplugin on GNU/kFreeBSD
+    (Aurelian Jarno). Closes: #422995.
+  * Disable ssp on hurd-i386. Closes: #423757.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 14 May 2007 08:40:08 +0200
+
+gcc-4.1 (4.1.2-6) unstable; urgency=low
+
+  * Update libjava from the gcc-4.1 Fedora branch 20070504.
+  * gfortran-4.1: Fix the target of the libgfortran.so symlink.
+    Closes: #421362.
+  * Build-depend on gcc-multilib [amd64 i386 powerpc ppc64 s390 sparc].
+  * Readd build dependency on binutils on arm.
+  * (Build-) depend on glibc (>= 2.5) for all architectures.
+  * Remove libssp packages from the control file.
+  * Fix wrong code generation on hppa when TLS variables are used.
+    Closes: #422421.
+
+ -- Matthias Klose <doko@debian.org>  Sun,  6 May 2007 10:00:23 +0200
+
+gcc-4.1 (4.1.2-5) unstable; urgency=low
+
+  * Update to SVN 20070429.
+  * Update libjava from the gcc-4.1 Fedora branch 20070428.
+  * Update m68k patches:
+    - Remove pr25514, pr27736, applied upstream.
+    - Update m68k-java.
+  * Link using --hash-style=gnu/both.
+  * Tighten (build) dependency on binutils. Closes: #421197.
+  * gij-4.1: Add a conflict with java-gcj-compat (<< 1.0.69).
+  * gfortran-4.1: Depend on libgfortran1, provide the libgfortran.so
+    symlink. Closes: #421362.
+  * gcc-4.1, gcc-4.1-multilib: Fix compatibility symlinks. Closes: #421382.
+  * Temporarily remove build dependency on locales on arm, hppa, m68k, mipsel.
+  * Temporarily remove build dependency on binutils on arm.
+  * Fix FTBFS on GNU/kFreeBSD (Aurelian Jarno). Closes: #421423.
+  * gij-4.1 postinst: Create /var/lib/gcj-4.1. Closes: #421526.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 30 Apr 2007 08:13:32 +0200
+
+gcc-4.1 (4.1.2-4) unstable; urgency=medium
+
+  * Update to SVN 20070423.
+    - Remove pr11953, applied upstream.
+    - Fix ld version detection in libstdc++v3.
+  * Update libjava from the gcc-4.1 Fedora branch 20070423.
+  * Merge libgfortran1-dev into gfortran-4.1.
+  * Add multilib packages for gcc, g++, gobjc, gobjc++, gfortran.
+  * Don't link using --hash-style=gnu/both; loosen dependency on binutils.
+  * Don't revert the patch to fix PR c++/27227.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 23 Apr 2007 23:13:14 +0200
+
+gcc-4.1 (4.1.2-3) experimental; urgency=low
+
+  * Update to SVN 20070405.
+  * Update libjava from the gcc-4.1 Fedora branch 20070405.
+  * Robustify setting of make's -j flag. Closes: #414316.
+  * Only build the libssp packages, when building the common libraries.
+  * gcc-4.1-hppa64: Don't depend on libc6-dev.
+
+ -- Matthias Klose <doko@debian.org>  Fri,  6 Apr 2007 00:28:29 +0200
+
+gcc-4.1 (4.1.2-2) experimental; urgency=low
+
+  * Update to SVN 20070306.
+  * Update libjava from the gcc-4.1 Fedora branch 20070306.
+
+  [Matthias Klose]
+  * Don't install gij-wrapper anymore, directly register gij as a java
+    alternative.
+  * Don't install gcjh-wrapper anymore.
+  * Don't use exact versioned dependencies on gcj-base for libgcj and
+    libgcj-awt.
+  * Fix glibc build dependency for alpha.
+  * Support -ffast-math on hurd-i386 (Samuel Thibault). Closes: #413342.
+  * Update kfreebsd-amd64 patches (Aurelien Jarno). Closes: #406015.
+  * gij: Consistently use $(dbexecdir) to reference the gcj sub dir.
+  * Install into /usr/lib/gcc/<target_alias>/4.1, to ease upgrades
+    between minor versions.
+    Add compatibility symlinks in <target_alias>/4.1.2 to build gnat-4.1
+    and gcj-4.1 from separate sources.
+
+ -- Matthias Klose <doko@debian.org>  Wed,  7 Mar 2007 03:51:47 +0100
+
+gcc-4.1 (4.1.2-1) experimental; urgency=low
+
+  [Matthias Klose]
+  * Update to gcc-4.1.2.
+  * Update libjava backport patches, split out boehm-gc-backport patch.
+  * Enable the cpu-default-generic patch (i386, amd64), backport from 4.2.
+  * Correct mfctl instruction syntax (hppa), backport from the trunk.
+  * Backport PR java/9861 (name mangling updates).
+  * gcc.c (main): Call expandargv (backport from 4.2).
+  * Apply gcc dwarf2 unwinding patches from the trunk.
+  * Apply backport for PR 20208 on amd64 i386 powerpc ppc64 sparc s390.
+  * Apply patches from the 4.1 branch for PR rtl-optimization/28772,
+    PR middle-end/30313, PR middle-end/30473, PR c++/30536, PR debug/30189,
+    PR fortran/30478, PR rtl-optimization/30787, PR tree-optimization/30823,
+    PR rtl-optimization/28173, PR ada/30684, bug in pointer dependency test,
+    PR rtl-optimization/30931, PR fortran/25392, PR fortran/30400,
+    PR libgfortran/30910, PR libgfortran/30918, PR fortran/29441,
+    PR target/30634.
+  * Update NEWS files.
+  * Include a backport of the ecj+generics java updates as
+    gcj-ecj-20070215.tar.bz2. Install it into the gcc-4.1-source package.
+  * Do not build fastjar anymore from this source.
+  * debian/control.m4: Move expect-tcl8.3 before dejagnu.
+  * Work around firefox/icewhatever dropping plugin dependencies on xpcom.
+  * Refactor naming of libgcj packages in the build files.
+  * Make libstdc++-doc's build dependencies depending on the source package.
+  * Do not build packages on architectures, which are already built by gcc-4.2.
+
+  * Merge the gcj generics backport from Ubuntu:
+
+    - Merge the Java bits (eclipse based compiler, 1.5 compatibility,
+      classpath generics) from the gcc-4.1 Fedora branch.
+    - Drop all previous patches from the classpath-0.93 merge, keep
+      the boehm-gc backport (splitted out as a separate patch).
+    - Add a gcj-ecj-generics.tar.bz2 tarball, containing gcc/java, libjava,
+      config/unwind_ipinfo.m4, taken from the Fedora branch.
+    - Drop the libjava-hppa, libjava-plugin-binary, pr29362, pr29805 patches
+      integrated in the backport.
+    - Update patches for the merge: reporting, libjava-subdir, i386-biarch,
+      classpath-tooldoc, pr26885
+    - Add libjava-dropped, libjava-install; dropped chunks from the merge.
+    - Add pr9861-nojava mangling changes, non-java parts for PR 9861.
+    - Add gcc-expandv, expand `@' parameters on the commandline; backport
+      from the trunk.
+    - Disable the m68k-gc patch, needs update for the merge.
+    - Configure --with-java-home set for 1.5.0.
+    - Configure with --enable-java-maintainer-mode to build the header
+      and class files on the fly.
+    - Add build dependency on ecj-bootstrap, configure --with-ecj-jar.
+    - Build an empty libgcj-doc package; gjdoc currently cannot handle
+      generics.
+    - Apply gcc dwarf2 unwinding patches from the trunk, allowing the Events
+      testcase to pass.
+      - Tighten dependencies on shared libraries.
+    - Use /usr/lib/gcj-4-1-71 as private gcj subdir.
+    - Bump the libgcj soversion to 71, rename the libgcj7-0 package
+      to libgcj7-1, rename the libgcj7-awt package to libgcj7-1-awt.
+    - gij-4.1: Add and provide alternatives for gorbd, grmid, gserialver.
+    - gcj-4.1: Remove gcjh, gcjh-wrapper, gjnih.
+    - gcj-4.1: Add and provide alternatives for jar, javah, native2ascii,
+      tnameserv.
+    - gcj-4.1: Add dependency on ecj-bootstrap, recommend fastjar,
+      ecj-bootstrap-gcj.
+    - Add build dependency on ecj-bootstrap version providing the GCCMain
+      class.
+    - libgcj7-1: Recommend libgcj7-1-awt.
+    - Add build dependency on libmagic-dev.
+    - Build-depend on gcj-4.1; build our own ecj1 and gjdoc before
+      starting the build.
+    - Make ecj1 available when running the testsuite.
+    - Fix build failure on sparc-linux.
+    - Fix gjavah compatibility problems (PR cp-tools/3070[67]).
+    - Fixed driver issue source files (PR driver/30714).
+    - Add (rudimentary) manual pages for classpath tools.
+
+  [Kevin Brown]
+  * debian/control.m4, debian/rules.d/binary-ada.mk: provide new packages
+    containing debugging symbols for Ada libraries: libgnat-4.1-dbg,
+    libgnatprj4.1-dbg, and libgnatvsn4.1-dbg.  Adresses: #401385.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  3 Mar 2007 23:12:08 +0100
+
+gcc-4.1 (4.1.1ds2-30) experimental; urgency=low
+
+  * Update to SVN 20070106.
+  * Do not revert the fixes for PR 25878, PR 29138, PR 29408.
+  * Don't build the packages built by gcc-4.2 source.
+  * debian/patches/note-gnu-stack.dpatch: Add .note.GNU-stack sections
+    for gcc's crt files, libffi and boehm-gc. Taken from FC. Closes: #382741.
+  * Merge from Ubuntu:
+    - Backport g++ visibility patches from the FC gcc-4_1-branch.
+    - Update the long-double patches; require glibc-2.4 as a build dependency
+      on alpha, powerpc, sparc, s390. Bump the shlibs dependencies to
+      require 4.1.1-21.
+    - On powerpc-linux configure using --enable-secureplt. Closes: #382748.
+    - When using the cpu-default-generic patch, build for generic x86-64
+      on amd64 and i386 biarch.
+    - Link using --hash-style=both (alpha, amd64, ia64, i386, powerpc, ppc64,
+      s390, sparc).
+  * gij-4.1: Recommends libgcj7-awt instead of suggesting it. Closes: #394917.
+  * Split the gcc-long-double patch into a code and doc part.
+  * Set priority of development packages to optional.
+  * Add support for kfreebsd-amd64 (Aurelian Jarno). Closes: #406015.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  6 Jan 2007 10:35:42 +0100
+
+gcc-4.1 (4.1.1ds2-22) unstable; urgency=high
+
+  * Enable -pthread for GNU/Hurd (Michael Banck). Closes: #400031.
+  * Update the m68k-fpcompare patch (Roman Zippel). Closes: #401585.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 10 Dec 2006 12:35:06 +0100
+
+gcc-4.1 (4.1.1ds2-20) unstable; urgency=low
+
+  [Matthias Klose]
+  * Update to SVN 20061115.
+    - Fix PR tree-optimization/27891, ICE in tree_split_edge.
+      Closes: #370248, #391657, #394630.
+    - Fix PR tree-optimization/9814, duplicate of PR tree-optimization/29797.
+      Closes: #181096.
+  * Apply the libjava/net backport from the redhat/gcc-4_1-branch.
+  * Apply proposed patch for PR java/29805.
+
+  [Roman Zippel]
+  * Build the ObjC and ObjC++ compilers in cross builds.
+  * debian/patches/m68k-symbolic-operand.dpatch: Better recognize
+    symbolic operands in addresses.
+  * debian/patches/m68k-bitfield-offset.dpatch: Only use constant offset
+    for register bitfields (combine expects shifts, but does a rotate).
+  * debian/patches/m68k-bitfield-offset.dpatch: Update and apply.
+
+  [Daniel Jacobowitz]
+  * Don't try to use _Unwind_Backtrace on SJLJ targets.
+    See bug #387875, #388505, GCC PR 29206.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 15 Nov 2006 08:59:53 -0800
+
+gcc-4.1 (4.1.1ds2-19) unstable; urgency=low
+
+  * Fix typo in arm-pragma-pack.dpatch.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 28 Oct 2006 11:04:00 +0200
+
+gcc-4.1 (4.1.1ds2-18) unstable; urgency=medium
+
+  [Matthias Klose]
+  * Update to SVN 20061028.
+  * Fix #pragma pack on ARM (Paul Brook). Closes: #394703.
+  * Revert PR c++/29138, PR c++/29408. Closes: #392559.
+  * Revert PR c++/25878. Addresses: #387989.
+  * fastjar: Provide jar. Closes: #395397.
+
+  [Ludovic Brenta]
+  * debian/control.m4 (libgnatprj-dev): depend on libgnatvsn-dev.
+    debian/gnatprj.gpr: with gnatvsn.gpr. Closes: #395000.
+
+ -- Matthias Klose <doko@debian.org>  Thu, 26 Oct 2006 23:51:10 +0200
+
+gcc-4.1 (4.1.1ds2-17) unstable; urgency=low
+
+  [Matthias Klose]
+  * Update to SVN 20061020.
+    - Fix PR debug/26881, ICE in dwarf2out_finish. Closes: #377613.
+    - Fix PR PR c++/29408, parse error for valid code. Closes: #392327, #393010.
+    - Fix PR c++/29435, segfault with sizeof and templates. Closes: #393071.
+    - Fix PR target/29338, segfault with -finline-limit on arm. Closes: 390620.
+    - Fix 3.4/4.0 backwards compatibility problem in libstdc++.
+  * Fix PR classpath/29362, taken from the redhat/gcc-4_1-branch.
+  * Remove the INSTALL directory from the source tarball. Closes: #392974.
+  * Disable building the static libgcj; non-functional, and cutting
+    down build times.
+  * libgcj7-0: Tighten dependency on libgcj-common.
+  * libgcj7-dev: Install .pc file as libgcj-4.1.pc.
+  * README.cross: Updated (Hector Oron). Addresses: #380251.
+  * config-ml.dpatch: Use *-linux-gnu as *_GNU_TYPE. Closes: #394034.
+
+  [Nikita V. Youshchenko]
+  * Fix typo in the cross build scripts.  Closes: #391445.
+
+  [Falk Hueffner]
+  * alpha-no-ev4-directive.dpatch: Fix kernel build failure.
+
+  [Roman Zippel]
+  * debian/patches/m68k-align-code.dpatch: Use "move.l %a4,%a4" to advance
+    within code.
+  * debian/patches/m68k-align-stack.dpatch: Try to keep the stack word aligned.
+  * debian/patches/m68k-dwarf3.dpatch: Emit correct dwarf info for cfa offset
+    and register with -fomit-frame-pointer.
+  * debian/patches/m68k-fpcompare.dpatch: Bring fp compare early to its
+    desired form to relieve reload. Closes: #390879.
+  * debian/patches/m68k-prevent-swap.dpatch: Don't swap operands
+    during reloads.
+  * debian/patches/m68k-reg-inc.dpatch: Reinsert REG_INC notes after splitting
+    an instruction.
+  * debian/patches/m68k-secondary-addr-reload.dpatch: Add secondary reloads
+    to allow reload to get byte values into addr regs. Closes: #385327.
+  * debian/patches/m68k-symbolic-operand.dpatch: Better recognize symbolic
+    operands in addresses.
+  * debian/patches/m68k-limit_reload.dpatch: Remove, superseded by
+    m68k-secondary-addr-reload.dpatch.
+  * debian/patches/m68k-notice-move.dpatch: Apply, was checked in in -16.
+  * debian/patches/m68k-autoinc.dpatch: Updated, don't attempt to increment
+    the register, if it's used multiple times in the instruction .
+
+ -- Matthias Klose <doko@debian.org>  Sat, 21 Oct 2006 00:25:05 +0200
+
+gcc-4.1 (4.1.1ds1-16) unstable; urgency=low
+
+  [Matthias Klose]
+  * Update to SVN 20061008.
+    - Fix PR c++/29226, ICE in make_decl_rtl. Closes: #388263.
+  * libgcj7-0: Fix package removal. Closes: #390874.
+  * Configure with --disable-libssp on architectures that don't
+    support it (alpha, hppa, ia64, m68k, mips, mipsel).
+  * On hppa, remove build-dependency on dash.
+  * gij/gcj: Do not install slave links for the non DFSG manpages.
+    Closes: #390425, #390532.
+  * libgcj-common: rebuild-gcj-db: Don't do anything, if no classmap
+    files are found. Closes: #390966.
+  * Fix PR libstdc++/11953, extended for all linux architectures.
+    Closes: #391268.
+  * libffi4-dev: Conflict with libffi. Closes: #387561.
+  * Backport PR target/27880 to the gcc-4_1-branch. Patch by Steve Ellcey.
+    Closes: #390693.
+  * On ia64, don't use _Unwind_GetIPInfo in libjava and libstdc++.
+  * Add a README.ssp with minimal documentation about stack smashing
+    protection. Closes: #366094.
+  * Do not build libgcj-common from the gcc-4.1/gcj-4.1 sources anymore.
+
+  [Roman Zippel]
+  * debian/patches/m68k-notice-move.dpatch: Don't set cc_status
+    for fp move without fp register.
+
+ -- Matthias Klose <doko@debian.org>  Sun,  8 Oct 2006 02:21:49 +0200
+
+gcc-4.1 (4.1.1ds1-15) unstable; urgency=medium
+
+  * Update to SVN 20060927.
+    - Fix PR debug/29132, exception handling on mips. Closes: #389468, #390042.
+    - Fix typo in gcc documentation. Closes: #386180.
+    - Fix PR target/29230, wrong code generation on arm. Closes: #385505.
+  * libgcj-common: Ignore exit value of gcj-dbtool in rebuild-gcj-db on
+    arm, m68k, hppa. Adresses: #388505.
+  * libgcj-common: Replaces java-gcj-compat-dev and java-gcj-compat.
+    Closes: #389539.
+  * libgcj-common: /usr/share/gcj/debian_defaults: Define gcj_native_archs.
+  * Update the java backport from the redhat/gcc-4_1-branch upto 2006-09-27;
+    remove libjava-str2double.dpatch, pr28661.dpatch.
+  * Disable ssp on hppa, not supported.
+  * i386-biarch.dpatch: Avoid warnings about macro redefinitions.
+
+ -- Matthias Klose <doko@debian.org>  Fri, 29 Sep 2006 22:32:41 +0200
+
+gcc-4.1 (4.1.1ds1-14) unstable; urgency=medium
+	
+  [Matthias Klose]
+  * Update to SVN 20060920.
+    - Fix PR c++/26957. Closes: #373257, #386910.
+    - Fix PR rtl-optimization/28243. Closes: #378325.
+  * Remove patch for PR rtl-optimization/28634, applied upstream.
+  * Fix FTBFS on GNU/kFreeBSD (fallout from the backport of classpath-0.92).
+    (Petr Salinger). Closes: #385974.
+  * Merge from Ubuntu:
+    - Do not encode the subminor version in the jar files.
+    - Fix typo for the versioned gcj subdirectory in lib32gcj-0.
+    - When running the i386 binaries on amd64, adjust the properties
+      java.home, gnu.classpath.home.url, sun.boot.class.path,
+      gnu.gcj.precompiled.db.path.
+    - Configure the 32bit build on amd64 
+      --with-java-home=/usr/lib32/jvm/java-1.4.2-gcj-4.1-1.4.2.0/jre.
+    - Configure --with-long-double-128 for glibc-2.4 on alpha, powerpc, ppc64,
+      s390, s390x, sparc, sparc64.
+    - Update the java backport from the redhat/gcc-4_1-branch upto 2006-09-20.
+      - Fix PR java/29013, invalid byte code generation. Closes: #386926.
+    - debian/patches/gcc-pfrs-2.dpatch: Apply a fix for a regression in the
+      backport of PR 28946 from the trunk (H.J. Lu).
+  * Backport PR classpath/28661 from the trunk.
+  * Don't ship the .la files for the java modules. Closes: #386228.
+  * gcj-4.1: Remove dangling symlink. Closes: #386430.
+  * gij: Suggest java-gcj-compat, gcj: Suggest java-gcj-compat-dev.
+    Closes: #361942.
+  * Fix infinite loop in string-to-double conversion on 64bit targets.
+    Closes: #348792.
+  * gij-4.1: Ignore exit value of gcj-dbtool in postinst. Adresses: #388505.
+  * libgcj-common: Move rebuild-gcj-db from java-gcj-compat into libgcj-common.
+  * On hppa, install a wrapper around gij-4.1 to ignore unaligned memory
+    accesses. Works around buildd configurations enabling this check by
+    default. Addresses: #364819.
+
+  [Ludovic Brenta]
+  * debian/patches/ada-libgnatprj.dpatch: Build mlib-tgt-linux.adb instead of
+    mlib-tgt.adb.  Closes: #387826.
+  * debian/patches/ada-pr15802.dpatch: Backport from the trunk.
+    Closes: #246384.
+  * debian/control.m4 (gnat-4.1): do not provide gnat (supplied by
+    gcc-defaults instead); conflict with gnat-4.2 which will soon be in
+    unstable.
+
+  [Roman Zippel]
+  * debian/patches/m68k-dwarf2.dpatch: Recognize stack adjustments also
+    in the src of an instruction.
+  * debian/patches/m68k-jumptable.dpatch: Don't force byte offset when
+    accessing the jumptable, gas can generate the correct offset size instead.
+  * debian/patches/m68k-peephole.dpatch: Convert some text peepholes to rtl
+    peepholes, so the correct DWARF2 information can be generated for stack
+    manipulations (Keep a few peepholes temporarily disabled).
+  * debian/patches/m68k-peephole-note.dpatch: Don't choke on notes while
+    reinserting REG_EH_REGION notes.
+  * debian/patches/m68k-return.dpatch: Don't use single return if fp register
+    have to be restored. Closes: #386864.
+  * debian/patches/m68k-sig-unwind.dpatch: Add support for unwinding over
+    signal frames.
+  * Fix PR rtl-optimization/27736, backport from the trunk.
+  * Add java support for m68k. Closes: #312830, #340874, #381022.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 24 Sep 2006 19:36:31 +0200
+
+gcc-4.1 (4.1.1ds1-13) unstable; urgency=medium
+
+  * Update to SVN 20060901; remove patches applied upstream:
+    - PR target/24367.
+    - PR c++/26670.
+  * Apply proposed patch for PR fortran/28908.
+  * Fix biarch symlinks in lib64stdc++ for cross builds.
+  * Fix biarch symlinks in lib32objc on amd64.
+
+ -- Matthias Klose <doko@debian.org>  Fri,  1 Sep 2006 00:04:05 +0200
+
+gcc-4.1 (4.1.1ds1-12) unstable; urgency=medium
+
+  [Matthias Klose]
+  * Update to SVN 20060830.
+  * Add backport of PR other/26208, bump libgcc1 shlibs dependency.
+  * Add backport of PR c++/26670. Closes: #356548.
+  * Apply proposed patch for PR target/24367 (s390).
+  * Add /usr/lib/jni to the libjava dlsearch path. Closes: #364820.
+  * Build without GFDL licensed docs. Closes: #384036.
+    - debian/patches/{svn-doc-updates,pr25524-doc,pr26885-doc}.dpatch:
+      Split out -doc specific patches.
+    - debian/*.texi, debian/porting.html: Add dummy documentation.
+    - debian/rules.unpack, debian/rules.patch: Update for non-gfdl build.
+    - fastjar.texi: Directly define the gcctabopt and gccoptlist macros.
+
+  * Merge from Ubuntu:
+    - Backport the classpath-0.92, libjava, gcc/java merge from the
+      redhat/gcc-4_1-branch branch.
+    - Apply the proposed patch for PR libgcj/28698.
+    - Change the libgcj/libgij sonames. Rename libgcj7 to libgcj7-0.
+    - Do not remove the rpath from libjvm.so and libjawt.so. Some
+      configure scripts rely on being able to link that libraries
+      directly.
+    - When running the i386 binaries on amd64, look in
+      /usr/lib32/gcj-x.y and /usr/lib32/jni instead.
+    - Add /usr/lib/jni to java.library.path. Closes: #364820.
+    - Add debugging symbols for more binary packages to libgcj7-dbg.
+      Closes: #383705.
+    - libgcj7-dev: Remove conflicts with older libgcjX-dev packages.
+    - Do not build the libgcj-bc and lib32gcj-bc packages anymore from
+      the gcj-4.1 source.
+
+  [Roman Zippel]
+  * debian/patches/m68k-limit_reload.dpatch: Correctly limit reload class.
+    Closes: #375522.
+  * debian/patches/m68k-split_shift.dpatch: Use correct predicates for
+    long long shifts and use more splits. Closes: #381572.
+  * debian/patches/m68k-prevent-qipush.dpatch: Prevent combine from creating
+    a byte push on the stack (invalid on m68k). Closes: #385021.
+  * debian/patches/m68k-autoinc.dpatch: Recognize a few more autoinc
+    possibilities.
+  * debian/patches/pr25514.dpatch: Backport from the trunk.
+  * debian/patches/m68k-gc.dpatch: Change STACKBOTTOM to LINUX_STACKBOTTOM
+    so it works with 2.6 kernels.
+  * Other m68k bug reports fixed in 4.1.1-11 and 4.1.1-12:
+    Closes: #378599, #345574, #344041, #323426, #340293.
+  * Build the stage1 compiler using -g -O2; saves a few hours build time
+    and apparently is working at the moment.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 29 Aug 2006 21:37:28 +0200
+
+gcc-4.1 (4.1.1-11) unstable; urgency=low
+
+  * The "Our priority are our users, remove the documentation!" release.
+
+  [Matthias Klose]
+  * Fix build failure building the hppa->hppa64 cross compiler.
+  * Update to SVN 20060814.
+    - Fix directory traversal vulnerability in fastjar. Closes: #368397.
+      CVE-2006-3619.
+    - Fix PR rtl-optimization/23454, ICE in invert_exp_1 on sparc.
+      Closes: #321215.
+    - Fix PR c++/26757, C++ front-end producing two DECLs with the same UID.
+      Closes: #356569.
+  * Remove patch for PR rtl-optimization/28075, applied upstream.
+  * Apply proposed patch for PR rtl-optimization/28634, rounding problem with
+    -fdelayed-branch on hppa/mips. Closes: #381710.
+  * Fixed at least in 4.1.1-10: boost::date_time build failure.
+    Closes: #382352.
+  * Build-depend on make (>= 3.81), add make (>= 3.81) as dependency to
+    gcc-4.1-source. Closes: #381117.
+  * Backport of libffi from the trunk; needed for the java backport in
+    experimental.
+  * libffi4-dev: Install the libffi_convenience library as libffi_pic.a.
+  * When building a package without the GFDL'd documentation, don't create
+    the alternative's slave links for manual pages for the java tools.
+  * Do not build the -doc packages and derived manual pages licensed under
+    the GFDL with invariant sections or cover texts.
+  * Only build the libssp package, if the target libc doesn't provide
+    ssp support.
+  * Run the complete testsuite, when building a standalone gcj package.
+
+  [Roman Zippel]
+  * debian/patches/m68k-fjump.dpatch:
+    Always use as fjcc pseudo op, we rely heavily on as to generate the
+    right size for the jump instructions. Closes: #359281.
+  * debian/patches/m68k-gc.dpatch:
+    The thread suspend handler has to save all registers.
+    Reenable MPROTECT_VDB, it should work, otherwise it's probably a kernel bug.
+  * debian/patches/m68k-save_pic.dpatch:
+    Correctly save the pic register, when not done by reload().
+    (fixes _Unwind_RaiseException and thus exception handling).
+  * debian/patches/m68k-libffi.dpatch: Add support for closures.
+  * debian/patches/m68k-bitfield.dpatch: Avoid propagation of mem expression
+    past a zero_extract lvalue.
+  * debian/patches/m68k-dwarf.dpatch: Correct the dwarf frame information,
+    but preserve compatibility.
+
+  [Christian Aichinger]
+  * Fix building a cross compiler targeted for ia64. Closes: #382627.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 15 Aug 2006 00:41:00 +0200
+
+gcc-4.1 (4.1.1-10) unstable; urgency=low
+
+  * Update to SVN 20060729.
+    - Fix PR c++/28225, segfault in type_dependent_expression_p.
+      Closes: #376148.
+  * Apply proposed patch for PR rtl-optimization/28075.
+    Closes: #373820.
+  * Apply proposed backport and proposed patch for PR rtl-optimization/28221.
+    Closes: #376084.
+  * libgcj7-jar: Loosen dependency on gcj-4.1-base.
+  * Add ssp header files to the private gcc includedir.
+  * Do not build the Ada packages from the gcc-4.1 source, introducing
+    a new gnat-4.1 source package.
+  * Build libgnat on alpha and s390 as well.
+  * Do not build the gnat-4.1-doc package (GFDL with invariant sections or
+    cover texts).
+  * Remove references to the stl-manual package. Closes: #378698.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 29 Jul 2006 22:08:59 +0200
+
+gcc-4.1 (4.1.1-9) unstable; urgency=low
+
+  * Update to SVN 20060715.
+    - Fix PR c++/28016, do not emit uninstantiated static data members.
+      Closes: #373895, #376871.
+  * Revert the patch to fix PR c++/27227. Closes: #378321.
+  * multiarch-include.dpatch: Renamed from biarch-include.dpatch;
+    apply for all architectures.
+  * Do not build the java compiler in gcc-4.1 package, just include the
+    options and specs in the gcc driver.
+  * Remove gnat-4.0 as an alternative build dependency.
+  * Add a patch to enable -fstack-protector by default for C, C++, ObjC, ObjC++.
+    The patch is disabled by default.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 15 Jul 2006 17:07:29 +0200
+
+gcc-4.1 (4.1.1-8) unstable; urgency=medium
+
+  * Update to SVN 20060708.
+    - Fix typo in gcov documentation. Closes: #375140.
+    - Fix typo in gccint documentation. Closes: #376412.
+    - [alpha], Fix -fvisibility-inlines-hidden segfaults on reference to
+      static method. PR target/27082. Closes: #369642.
+
+  * Fix ppc64 architecture string in debian/multiarch.inc. Closes: #374535.
+  * Fix conflict, replace and provide libssp0-dev for cross compilers.
+    Closes: #377012.
+  * Ignore compiler warnings when checking whether compiler driver understands
+    Ada fails. Closes: #376660.
+  * Backport fix for PR libmudflap/26864 from the trunk. Closes: #26864.
+  * README.C++: Remove non-existing URL. Closes: #347601.
+  * gij-4.1: Provide java2-runtime. Closes: #360906.
+
+  * Closed reports reported against gcc-3.0 and fixed in gcc-4.1:
+    - C++
+      + PR libstdc++/13943, call of overloaded `llabs(int)' is ambiguous.
+        Closes: #228645.
+    - Java
+      + Fixed segmentation fault on compiling bad program. Closes: #165635
+  * Closed reports reported against gcc-3.3 and fixed in gcc-4.1:
+    - Stack protector available. Closes: #213994, #233208.
+    - Better documentation of -finline-limit option. Closes: #296047.
+  * Closed reports reported against gcc-3.4 and fixed in gcc-4.1:
+    - General
+      + Fixed [unit-at-a-time] Using -O2 cannot detect missing return
+        statement in a function. Closes: #276843.
+    - C++
+      + PR13943, call of overloaded `llabs(int)' is ambiguous. Closes: #228645.
+      + PR c++/21280, #pragma interface, templates, and "inline function used
+        but never defined". Closes: #364412.
+    - Architecture specific:
+      - m68k
+        + Segfault building glibc. Closes: #353618.
+        + ICE when trying to build boost. Closes: #321486.
+  * Closed reports reported against gcc-4.0 and fixed in gcc-4.1:
+    - General
+      + Handling of #pragma GCC visibility for builtin functions.
+        Closes: #330279.
+      + gettext interpretation the two conditional strings as one.
+        Closes: #227193.
+      + ICE due to if-conversion. Closes: #335078.
+      + Fix unaligned accesses with __attribute__(packed) and memcpy.
+        Closes: #355297.
+      + Fix ICE in expand_expr_real_1, at expr.c. Closes: #369817.
+    - Ada
+      + Link error not finding -laddr2line. Closes: #322849.
+      + ICE on invalid code. Closes: #333564.
+    - C++
+      + libstdc++: bad thousand separator with fr_FR.UTF-8. Closes: #351786.
+      + The Compiler uses less memory than 4.0. Closes: #336225.
+      + Fix "fails to compare reverse map iterators". Closes: #362840.
+      + Fix "fail to generate code for base destructor defined inline with
+        pragma interface". Closes: #356435.
+      + Fix ICE in cp_expr_size, at cp/cp-objcp-common.c. Closes: #317455.
+      + Fix wrong warning: control may reach end of non-void function.
+        Closes: #319309.
+      + Fix bogus warning "statement has no effect" with template and
+        statement-expression. Closes: #336915.
+      + Fixed segfault on syntax error. Closes: #349087.
+      + Fix ICE with __builtin_constant_p in template argument.
+        Closes: #353366.
+      + Implement DR280 (fixing "no operator!= for const_reverse_iterator").
+        Closes: #244894.
+    - Fortran
+      + Fix wrong behaviour in unformatted writing. Closes: #369547.
+    - Java
+      + Fixed segfault on -fdump-tree-all-all. Closes: #344265.
+      + Fixed ant code completion in eclipse generating a nullpointer
+        exception. Closes: #337510.
+      + Fixed abort in gnu_java_awt_peer_gtk_GtkImage.c. Closes: #343112.
+      + Fixed assertion failure in gij with rhdb-explain. Closes: #335650.
+      + Fixed assertion failure when calling JTabbedPane.addTab(null, ...).
+        Closes: #314704.
+      + Fixed error when displaying empty window with bound larger than the
+        displayed content. Closes: #324502.
+      + Fixed: Exception in JComboBox.removeAllItems(). Closes: #314706.
+      + Fixed assertian error in gnu_java_awt_peer_gtk_GtkImage.c.
+        Closes: #333733.
+    - libmudflap
+      + PR libmudflap/23170, libmudflap should not use functions marked
+        obsolescent by POSIX/SUS. Closes: #320398.
+    - Architecture specific:
+      - m68k
+        + FTBFS building tin. Closes: #323016.
+        + ICE with -g -fomit-frame-pointer. Closes: #331150.
+        + ICE in instantiate_virtual_regs_lossage. Closes: #333536.
+        + Wrong code generation with loop unrolling. Closes: #342121.
+        + ICEs while building gst-ffmpeg. Closes: #343692.
+      - mips
+        + Fix gjdoc build failure. Closes: #344986.
+        + Fix link failure for static libs and object files when xgot
+          needs to be used. Closes: #274942.
+  * gnat bug reports fixed since gnat-3.15p:
+    - GNAT miscounts UTF8 characters in string with -gnaty. Closes: #66175.
+    - Bug box from "with Text_IO" when compiling optimized. Closes: #243795.
+    - Nonconforming parameter lists not detected. Closes: #243796.
+    - Illegal use clause not detected. Closes: #243797.
+    - Compiler enters infinite loop on illegal program with tagged records.
+      Closes: #243799.
+    - Compiler crashes on illegal program (missing discriminant, unconstrained
+      parent). Closes: #243800.
+    - Bug box at sinfo.adb:1215 on illegal program. Closes: #243801.
+    - Bug box at sinfo.adb:1651 on illegal program. Closes: #243802.
+    - Illegal program not detected (entry families). Closes: #243803.
+    - Illegal program not detected, RM 10.1.1(14). Closes: #243807.
+    - Bug box at exp_ch9.adb:7254 on illegal code. Closes: #243812.
+    - Illegal program not detected, RM 4.1.4(14). Closes: #243816.
+    - Bug box in Gigi, code=116, on legal program. Closes: #244225.
+    - Illegal program not detected, 12.7(10) (generic parameter is visible,
+      shouldn't be). Closes: #244483.
+    - Illegal program not detected, ambiguous aggregate. Closes: #244496.
+    - Bug box at sem_ch3.adb:8003. Closes: #244940.
+    - Bug box in Gigi, code=103, on illegal program. Closes: #244945.
+    - Legal program rejected, overloaded procedures. Closes: #246188.
+    - Bug box in Gigi, code=999, on legal program. Closes: #246388.
+    - Illegal program not detected, RM 10.1.6(3). Closes: #246389.
+    - Illegal program not detected, RM 3.10.2(24). Closes: #247014.
+    - Illegal program not detected, RM 3.9(17). Closes: #247015.
+    - Legal program rejected. Closes: #247016.
+    - Legal program rejected. Closes: #247021.
+    - Illegal program not detected, RM 4.7(3). Closes: #247022.
+    - Illegal program not detected, RM 3.10.2(27). Closes: #247562.
+    - Legal program rejected, "limited type has no stream attributes".
+      Closes: #247563.
+    - Wrong output from legal program. Closes: #247565.
+    - Compiler enters infinite loop on illegal program. Closes: #247567.
+    - Illegal program not detected, RM 8.6(31). Closes: #247568.
+    - Legal program rejected, visible declaration not seen. Closes: #247572.
+    - Illegal program not detected, RM 8.2(9). Closes: #247573.
+    - Wrong output from legal program, dereferencing access all T'Class.
+      Closes: #248171.
+    - Compiler crashes on illegal program, RM 5.2(6). Closes: #248174.
+    - Cannot find generic package body, RM 1.1.3(4). Closes: #248677.
+    - Illegal program not detected, RM 3.4.1(5). Closes: #248679.
+    - Compiler ignores legal override of abstract subprogram. Closes: #248686.
+    - Bug box, Assert_Failure at sinfo.adb:2365 on illegal program.
+      Closes: #251266.
+    - Ada.Numerics.Generic_Elementary_Functions.Log erroneout with -gnatN.
+      Closes: #263498.
+    - Bug box, Assert_Failure at atree.adb:2906 or Gigi abort, code=102
+      with -gnat -gnatc. Closes: #267788.
+    - Bug box in Gigi, code=116, 'Unrestricted_Access of a protected
+      subprogram. Closes: #269775.
+    - Stack overflow on illegal program, AI-306. Closes: #276225.
+    - Illegal program not detected, RM B.1(24). Closes: #276226.
+    - Wrong code generated with -O -fPIC. Closes: #306833.
+    - Obsolete: bashism's in debian/rules file. Closes: #370681.
+    - Supports more debian architectures. Closes: #171477.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  8 Jul 2006 16:24:47 +0200
+
+gcc-4.1 (4.1.1-7) unstable; urgency=low
+
+  * Prefer gnat-4.1 over gnat-4.0 as a build dependency.
+  * libssp0: Set priority to standard.
+
+ -- Matthias Klose <doko@debian.org>  Sun,  2 Jul 2006 10:22:50 +0000
+
+gcc-4.1 (4.1.1-6) unstable; urgency=low
+
+  [Ludovic Brenta]
+  * Do not provide the symbolic link /usr/bin/gnatgcc; this will now
+    be provided by package gnat from the source package gcc-defaults.
+  * debian/control.m4, debian/control (gnat): conflict with gnat (<< 4.1),
+    not all versions of gnat, since gcc-defaults will now provide gnat (= 4.1)
+    which depends on gnat-4.1.
+
+  [Matthias Klose]
+  * libjava: Change the default for enable_hash_synchronization_default
+    on PA-RISC. Tighten the libgcj7 shlibs version on hppa.
+  * Update to SVN 20060630.
+  * Apply proposed patch for PR 26991.
+  * Don't use the version for the libstdc++ shlibs dependency for the libgcj
+    shlibs dependency.
+  * Merge from Ubuntu edgy:
+    - Fix %g7 usage in TLS, add patch sparc-g7.dpatch, fixes glibc-2.4 build
+      failure on sparc (Fabio M. Di Nitto).
+    - Merge libssp0-dev into gcc-4.1 (-fstack-protector is a common option).
+    - Run the testsuite with -fstack-protector as well.
+
+  [Bastian Blank]
+  * Make it possible to overwrite arch per DEB_TARGET_ARCH and DEB_TARGET_GNU_TYPE.
+  * Disable biarch only on request for cross builds.
+  * Use correct source directory for tarballs.
+  * Produce correct multiarch.inc for source builds.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  1 Jul 2006 01:49:55 +0200
+
+gcc-4.1 (4.1.1-5) unstable; urgency=low
+
+  * Fix build error running with dpkg-buildpackage -rsudo.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 14 Jun 2006 01:54:13 +0200
+
+gcc-4.1 (4.1.1-4) unstable; urgency=low
+
+  * Really do not backout the fix for PR c++/26068.
+    Closes: #372152, #372559.
+  * Update fastjar version string to 4.1.
+  * Disable pascal again.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 12 Jun 2006 20:29:57 +0200
+
+gcc-4.1 (4.1.1-3) unstable; urgency=low
+
+  * Update to SVN 20060608, do not revert the fix for PR c++/26068.
+    Closes: #372152, #372559.
+  * Fix build failures for Pascal, enable Pascal on all architectures.
+  * Fix another build failure on GNU/kFreeBSD (Aurelien Jarno).
+    Closes: #370661.
+  * Fix build fauilure in gcc/p with parallel make.
+  * Remove cross-configure patch (Kazuhiro Inaoka). Closes: #370649.
+  * Only build the gcc-4.1-source package, when building from the gcc-4.1
+    source.
+  * Fix upgrade problem from standalone gcj-4.1.
+  * Fix build error using bison-2.2, build-depend on bison (>= 2.3).
+    Closes: #372605.
+  * Backport PR libstdc++/25524 from the trunk, update the biarch-include
+    patch. mips triarch support can be added more easily.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 12 Jun 2006 00:23:45 +0200
+
+gcc-4.1 (4.1.1-2) unstable; urgency=low
+
+  * Update to SVN 20060604.
+    - Fix PR c++/26757, C++ front-end producing two DECLs with the same UID.
+      Closes: #356569.
+    - Fix PR target/27158, ICE in extract_insn with -maltivec.
+      Closes: #362307.
+  * Revert PR c++/26068 to work around PR c++/27884 (Martin Michlmayr).
+    Closes: #370308.
+  * Mention Ada in copyright, update copyright file (Ludovic Brenta).
+    Closes: #366744.
+  * Fix kbsd-gnu-java.dpatch (Petr Salinger). Closes: #370320.
+  * Don't include version control files in gcc-4.1-source.
+
+ -- Matthias Klose <doko@debian.org>  Sun,  4 Jun 2006 19:13:37 +0000
+
+gcc-4.1 (4.1.1-1) unstable; urgency=low
+
+  [Matthias Klose]
+  * Update to SVN 20060601.
+  * Reenable the gpc build.
+  * PR libgcj/26483, libffi patch for IA-64 denorms, taken from trunk.
+  * Disable Ada for m32r targets. Closes: #367595.
+  * lib32gfortran1: Do not create empty directory /usr/lib32. Closes: #367999.
+  * gcc-4.1: Add a conflict to the gcj-4.1 version with a different
+    gcc_libdir.
+  * Build gij/gcj for GNU/k*BSD. Closes: #367166.
+  * Update hurd-changes patch (Michael Banck). Closes: #369690.
+  * debian/copyright: Add exception for the gpc runtime library.
+  * Update gpc/gpc-doc package descriptions.
+
+  [Ludovic Brenta]
+  * patches/ada-libgnatprj.dpatch: add prj-pars.ad[bs] and sfn_scan.ad[bs]
+    to libgnatprj; remove them from gnatmake.
+
+ -- Matthias Klose <doko@debian.org>  Thu,  1 Jun 2006 20:35:54 +0200
+
+gcc-4.1 (4.1.0-4) unstable; urgency=low
+
+  [Ludovic Brenta]
+  * Fix a stupid bug whereby fname.ad{b,s} would be included in both
+    libgnatvsn-dev and libgnatprj-dev, preventing use of gnatprj.gpr.
+    Closes: #366733.
+
+ -- Matthias Klose <doko@debian.org>  Thu, 11 May 2006 04:34:50 +0200
+
+gcc-4.1 (4.1.0-3) unstable; urgency=low
+
+  * Update to SVN 20060507.
+  * debian/rules.d/binary-java.mk: Use $(lib32) everywhere. Closes: #365388.
+  * Always configure hppa64-linux-gnu with
+    --includedir=/usr/hppa64-linux-gnu/include.
+  * Make libgnatvsn4.1 and libgnatprj4.1 priority optional. Closes: #365900.
+  * Call autoconf2.13 explicitely in the Ada patches, build-depend on
+    autoconf2.13. Closes: #365780.
+  * Fix libgnatprj-dev and libgnatvsn-dev dependencies on their shared
+    libraries.
+  * Deduce softfloat and vfp (ARM) configure options (Pjotr Kourzanov).
+  * Update proposed patch for PR26885 (May 2 version).
+  * Build the libxxstdc++-dbg packages, when not building the library pacakges.
+  * Do not include the _pic library in the libxxstdc++-dbg packages.
+
+ -- Matthias Klose <doko@debian.org>  Sun,  7 May 2006 15:29:53 +0200
+
+gcc-4.1 (4.1.0-2) unstable; urgency=medium
+
+  * Update to SVN 20060428.
+  * Apply proposed patches for PR26885.
+
+  * Keep libffi doc files in its own directory. Closes: #360466.
+  * Update ppc64 patches for 4.1 (Andreas Jochens). Closes: #360498.
+  * Fix PR tree-optimization/26763, wrong-code, taken from the 4.1 branch.
+    Closes: #356896. CVE-2006-1902.
+  * hppa-cbranch, hppa-cbranch2 patches: Fix for PR target/26743,
+    PR target/11254, PR target/10274, backport from trunk (Randolph Chung).
+  * Let libgccN provide -dcv1 when cross-compiling (Pjotr Kourzanov).
+    Closes: #363289.
+  * (Build-)depend on glibc-2.3.6-7. Closes: #360895, #361904.
+  * Fix a pedantic report about a package description. Add a hint that
+    we do not like bug reports with locales other than "C". Closes: #361409.
+  * Enable the libjava interpreter on mips/mipsel.
+  * gcc-4.1-source: Depend on gcc-4.1-base.
+  * gnat-4.1: Fix permissions of .ali files.
+  * Build lib32gcj7 on amd64.
+  * debian/patches/ada-gnatvsn.dpatch: New.  Apply proposed fix for
+    PR27194.
+
+  [Ludovic Brenta]
+  * debian/patches/ada-default-project-path.dpatch: new.  Change the
+    default search path for project files to the one specified
+    by the Debian Policy for Ada: /usr/share/ada/adainclude.
+  * debian/patches/ada-symbolic-tracebacks.dpatch: new.  Enable support for
+    symbolic tracebacks in exceptions.
+  * debian/patches/ada-missing-lib.dpatch: remove, superseded by the above.
+  * debian/patches/ada-link-lib.dpatch: changed.
+    - Instead of building libada as a target library only, build it as
+      both a host and, if different, target library.
+    - Build the GNAT tools in their top-level directory; do not use
+      recursive makefiles.
+    - Link the GNAT tools dynamically against libgnat.
+    - Apply proposed fix for PR27300.
+    - Rerun autoconf (Matthias Klose).
+  * debian/patches/ada-libgnatvsn.dpatch: new.
+    - Introduce a new shared library named libgnatvsn, containing
+      common components of GNAT under the GNAT-Modified GPL, for
+      use in GNAT tools, ASIS, GLADE and GPS.
+    - Link the gnat tools against this new library.
+    - Rerun autoconf (Matthias Klose).
+  * debian/patches/ada-libgnatprj.dpatch: new.
+    - Introduce a new shared library named libgnatprj, containing the
+      GNAT Project Manager, i.e. the parts of GNAT that parses project
+      files (*.gpr).  Licensed under pure GPL; for use in GLADE and GPS.
+    - Link the gnat tools against this new library.
+    - Rerun autoconf (Matthias Klose).
+  * debian/patches/ada-acats.dpatch: new.
+     - When running the ACATS, look for the gnat tools in their new
+       directory (build/gnattools), and for the shared libraries in
+       build/gcc/ada/rts, build/libgnatvsn and build/libgnatprj.
+  * debian/gnatvsn.gpr, debian/gnatprj.gpr: new.
+  * debian/rules.d/binary-ada.mk, debian/control.m4: new binary packages:
+    libgnatvsn-dev, libgnatvsn4.1, libgnatprj-dev, libgnatprj4.1. Place
+    the *.gpr files in their respective -dev packages.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 29 Apr 2006 00:32:09 +0200
+
+gcc-4.1 (4.1.0-1) unstable; urgency=low
+
+  * libstdc++CXX-BV-dev.preinst: Remove (handling of c++ include dir for 4.0).
+  * libgcj-common: Move removal of docdir from preinst into postinst.
+  * libgcj7: Move removal of docdir from preinst into postinst.
+  * Drop alternative build dependency on gnat-3.4, not built anymore.
+  * Fix PR libgcj/26103, wrong exception thrown (4.1 branch).
+  * debian/patches/libjava-stacktrace.dpatch: Add support to print file names
+    and line numbers in stacktraces.
+  * Add debugging symbols for libgcjawt and lib-gnu-java-awt-peer-gtk
+    in the libgcj7-dbg and lib32gcj7-dbg packages.
+  * Remove dependency of the libgcj-dbg packages on the libgcj-dev packages,
+    add recommendations on binutils and libgcj-dev. Mention the requirement
+    of binutils for the stacktraces.
+  * Fix upgrade from version 4.0.2-9, loosing the Debian changelog.
+    Closes: #355439.
+  * gij/gcj: Install one alternative for each command, do not use slave
+    links for rmiregistry, javah, rmic. Ubuntu #26781. Closes: #342557.
+  * Fix for PR tree-optimization/26587, taken from the 4.1 branch.
+  * Fix PR libstdc++/26526 (link failure when _GLIBCXX_DEBUG is defined).
+  * Configure with --enable-clocale=gnu, even if not building C++ packages.
+  * Remove runtime path from biarch libraries as well.
+  * PR middle-end/26557 (ice-on-vaild-code, regression), taken from
+    the gcc-4_1-branch. Closes: #349083.
+  * PR tree-optimization/26672 (ice-on-vaild-code, regression), taken from
+    the gcc-4_1-branch. Closes: #356231.
+  * PR middle-end/26004 (rejects-vaild-code, regression), taken from
+    the gcc-4_1-branch.
+  * When building as standalone gcj, build libgcc4 (hppa only) and fastjar.
+  * Configure --with-cpu=v8 on sparc.
+  * debian/patches/libjava-hppa.dpatch: pa/pa32-linux.h
+    (CRT_CALL_STATIC_FUNCTION): Define when CRTSTUFFS_O is defined.
+    (John David Anglin). Closes: #353346.
+  * Point to the 4.1 version of README.Bugs (closes: #356230).
+  * Disable the libmudflap testsuite on alpha (getting killed).
+
+ -- Matthias Klose <doko@debian.org>  Sat, 18 Mar 2006 23:00:39 +0100
+
+gcc-4.1 (4.1.0-0) experimental; urgency=low
+
+  * GCC 4.1.0 final release.
+  * Build the packages for the Java language from a separate source.
+  * Update NEWS.html, NEWS.gcc.
+  * libgcj-doc: Auto generated API documentation for libgcj7, classpath
+    example programs.
+  * Add gjdoc to Build-Depends-Indep.
+  * On amd64, build-depend on libc6-dev-i386 instead of ia32-libs-dev.
+  * Internal ssp headers now installed in the gcc libdir.
+  * Do not build gcj-4.1-base when building the gcc-4.1 packages.
+  * When building as gcj-4.1, use the tarball from the gcc-4.1-source
+    package.
+
+  [Ludovic Brenta]
+  * Allow to enable and disable NLS and bootstrapping from the environment.
+    - Adding "nls" to WITHOUT_LANG disables NLS support.
+    - If WITH_BOOTSTRAP is set, debian/rules2 calls configure
+      --enable-bootstrap=$(WITH_BOOTSTRAP) and just "make".  If
+      WITH_BOOTSTRAP is unset, it calls configure without a bootstrapping
+      option and calls "make profiledbootstrap" or "make bootstrap-lean"
+      depending on the target CPU.
+      Currently overwritten to default to "bootstrap".
+
+ -- Matthias Klose <doko@debian.org>  Thu,  2 Mar 2006 00:03:45 +0100
+
+gcc-4.1 (4.1ds9-0exp9) experimental; urgency=low
+
+  * Update to GCC 4.1.0 release candidate 1 (gcc-4.1.0-20060219 tarball).
+  * Update gcc-version patch for gcc-4.1.
+  * libgccN, libstdc++N*: Fix upgrade of /usr/share/doc symlinks.
+  * libjava awt & swing update, taken from trunk 2006-02-16.
+  * libgcj7-dev: Suggest libgcj-doc, built from a separate source package.
+  * Shorten build-dependency line (work around buildd problems
+    on arm* and mips*).
+  * New patch gcc-ice-hack (saving the preprocessed source on an ICE),
+    taken from Fedora.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 20 Feb 2006 10:07:23 +0100
+
+gcc-4.1 (4.1ds8-0exp8) experimental; urgency=low
+
+  * Update to SVN 20060212, taken from the 4.1 release branch.
+  * libgccN: Fix upgrade of /usr/share/doc/libgccN symlink.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 12 Feb 2006 19:48:31 +0000
+
+gcc-4.1 (4.1ds7-0exp7) experimental; urgency=low
+
+  * Update to SVN 20060127, taken from the 4.1 release branch.
+    - On hppa, bump the libgcc soversion to 4.
+  * Add an option not to depend on the system -base package for cross compiler
+    (Ian Wienand). Closes: #347484.
+  * Remove workaround increasing the stack size limit for some architectures,
+    not needed anymore on ia64.
+  * On amd64, build-depend on libc6-dev-i386, depend on libc6-i386, where
+    available.
+  * libstdc++6: Properly upgrade the doc directory. Closes: #346171.
+  * libstdc++6: Add a conflict to scim (<< 1.4.2-1). Closes: #343313.
+  * Set default 32bit ix86 architecture to i486.
+
+ -- Matthias Klose <doko@debian.org>  Fri, 27 Jan 2006 22:23:22 +0100
+
+gcc-4.1 (4.1ds6-0ubuntu6) experimental; urgency=low
+
+  * Update to SVN 20060107, taken from the 4.1 release branch.
+    - Remove fix for PR ada/22533, fixed by patch for PR c++/23171.
+  * Remove binary packages from the control file, which aren't built
+    yet on any architecture.
+  * gcc-hppa64: Use /usr/hppa64-linux-gnu/include as location for the glibc
+    headers, tighten glibc (build-)dependency.
+  * libffi [arm]: Add support for closures, libjava [arm]: enable the gij
+    interpreter (Phil Blundell). Addresses: #337263.
+  * For the gcj standalone build, include cc1 into the gcj-4.1 package,
+    needed for linking java programs compiled to native code.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  7 Jan 2006 03:36:33 +0100
+
+gcc-4.1 (4.1ds4-0exp4) experimental; urgency=low
+
+  * Update to SVN 20051210, taken from the 4.1 release branch.
+  * Prepare to build the java packages from it's own source (merged
+    from Ubuntu).
+    - Build the java packages from the gcc-4.1 source, as long as packages
+      are prepared for experimental.
+    - When built as gcj, run only the libjava testsuite, don't build the
+      libstdc++ debug packages, don't package the gcc source.
+    - Loosen package dependencies, when java packages are built from
+      separate sources.
+    - Fix gcj hppa build, when java packages are built from separate sources.
+    - gij-4.1: Install test-summary, when doing separate builds.
+    - Allow java packages be installed independent from other packages built
+      from the source package.
+    - Rename libgcj7-common to libgcj7-jar.
+    - Introduce a gcj-4.1-base package to completely separate the two and not
+      duplicate the changelog in each gcj/gij package.
+  * Java related changes:
+    - libjava-xml-transform: Update from classpath trunk, needed for
+      eclipse (Michael Koch), applied upstream.
+    - Fix java wrapper scripts to point to 4.1 (closes: #341710).
+    - Reenable java on mips and mipsel.
+    - Fix libgcj6 dependency. Ubuntu #19935.
+    - Add libxt-dev as a java build dependency. autoconf explicitely checks
+      for X11/Intrinsic.h.
+  * Ada related changes:
+    - Apply proposed fix for PR ada/22533, reenable ada on alpha, powerpc,
+      mips, mipsel and s390.
+    - Add Ada support for GNU/kFreeBSD (Aurelien Jarno). Closes: #341356.
+    - Remove ada bootstrap workaround for alpha.
+  * Build a separate gcc-4.1-source package (Bastian Blank). Closes: #333922.
+  * Remove obsolete patch: libstdc++-automake.
+  * Remove patch integrated upstream: libffi-mips.
+  * Fix the installation of the hppa64 compiler in snapshot builds.
+  * Rename libgfortran0* to libgfortran1* (upstream soversion change).
+  * Add a dependency on libc-dev for all compilers / -dev packages except
+    gcc (which can be used for kernel builds without libc-dev).
+  * libffi4-dev: Fix package description.
+  * On amd64, install 32bit libraries into /emul/ia32-linux/usr/lib.
+    Addresses: #341147.
+  * Fix installation of biarch libstdc++ headers on amd64.
+  * Configure --with-tune=i686 on ix86 architectures (on Ubuntu with
+    -mtune=pentium4). Remove the cpu-default-* patches.
+  * debian/control.m4: Fix libxxgcc package names.
+  * Update the build infrastructure to build cross compilers
+    (Nikita V. Youshchenko).
+  * Tighten binutils (build-)dependency. Closes: #342484.
+  * Symlink more doc directories.
+  * debian/control.m4: Explicitely set Architecture for biarch packages.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 10 Dec 2005 16:56:45 +0100
+
+gcc-4.1 (4.1ds1-0ubuntu1) UNRELEASED; urgency=low
+
+  * Build Java packages only.
+  * Update to SVN 20051121, taken from the 4.1 release branch.
+    - Remove libjava-saxdriver-fix patch, applied upstream.
+    - Remove ada-gnat-version patch, applied upstream.
+  * Fix FTBFS in biarch builds on 32bit kernels.
+  * Update libstdc++-doc doc-base file (closes: #339046).
+  * Remove obsolete patch: gcc-alpha-ada_fix.
+  * Fix installation of biarch libstdc++ headers (Ubuntu #19655).
+  * Fix sparc and s390 biarch patches to build the 64bit libffi.
+  * Work around biarch build failure in libjava/classpath/native/jni/midi-alsa.
+  * Install spe.h header on powerpc.
+  * Add libasound build dependencies.
+  * libgcj: Fix installation of libgjsmalsa library.
+  * Remove patches not used anymore: libjava-no-rpath, i386-config-ml-nomf,
+    libobjc, multiarch-include, disable-biarch-check-mf, gpc-profiled,
+    gpc-no-gpidump, libgpc-shared, acats-expect.
+  * Fix references to manuals in gnat(1). Ubuntu #19772.
+  * Remove build dependency on xlibs-dev, add libxtst-dev.
+  * Do not configure with --disable-werror.
+  * Merge *-config-ml patches into one config-ml patch, configure the biarch
+    libs in debian/rules.defs.
+  * debian/gcj-wrapper: Accept -Xss.
+  * Do not build biarch java on Debian (missing biarch libasound).
+  * Do not build the java packages from this source package, avoiding
+    dependencies on X.
+
+ -- Matthias Klose <doko@ubuntu.com>  Mon, 21 Nov 2005 20:29:43 +0100
+
+gcc-4.1 (4.1ds0-0exp0) experimental; urgency=low
+
+  * Configure libstdc++ using the default allocator.
+  * Update to 20051112, taken from the svn trunk.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 12 Nov 2005 23:47:01 +0100
+
+gcc-4.1 (4.1ds0-0ubuntu0) breezy; urgency=low
+
+  * UNRELEASED
+  * First snapshot of gcc-4.1 (CVS 20051019).
+    - adds SSP support (closes: #213994, #233208).
+  * Remove patches applied upstream/not needed anymore.
+  * Update patches for 4.1: link-libs, gcc-textdomain, libjava-dlsearch-path,
+    rename-info-files, reporting, classmap-path, i386-biarch, sparc-biarch,
+    libjava-biarch-awt, ada-gcc-name.
+  * Disable patches:
+    - 323016, m68k, necessary for 4.1?
+  * debian/copyright: Update for 4.1.
+  * debian/control, debian/control.m4, debian/rules.defs, debian/rules.conf:
+    Update for 4.1, add support for Obj-C++ and SSP.
+  * Fix generation of Ada docs in info format.
+  * Set Ada library version to 4.1.
+  * Drop gnat-3.3 as an alternative build dependency.
+  * Use fortran instead of f95 for the build files.
+  * Update build support for awt peer libs.
+  * Add packaging support for SSP library.
+  * Add packaging support for Obj-C++.
+  * Run the testsuite for -march=i686 on i386 and amd64 as well.
+  * Fix generation of Pascal docs in html format.
+  * Update config-ml patches to build libssp biarch.
+  * Disable libssp for hppa64 build.
+  * libgcj7-dev: Install jni_md.h.
+  * Disable gnat for powerpc, currently fails to build.
+  * Add biarch runtime lib packages for ssp, mudflap, ffi.
+  * Do not explicitely configure with --enable-java-gc=boehm, which is the
+    default.
+  * libjava-saxdriver-fix: Fix a problem in the Aelfred2 SAX parser.
+  * libstdc++6-4.0-dev: Depend on the libc-dev package. Ubuntu #18885.
+  * Build-depend on expect-tcl8.3 on all architectures.
+  * Build-depend on lib32z1-dev on amd64 and ppc64, drop build dependency on
+    amd64-libs.
+  * Disable ada on alpha mips mipsel powerpc s390, currently broken.
+
+ -- Matthias Klose <doko@ubuntu.com>  Wed, 19 Oct 2005 11:02:31 +0200
+
+gcc-4.0 (4.0.2-3) unstable; urgency=low
+
+  * Update to CVS 20051015, taken from the gcc-4_0-branch.
+    - gcc man page fixes (closes: #327254, #330099).
+    - PR java/19870, PR java/20338, PR java/21844, PR java/21540:
+      Remove Debian patches.
+    - Applied libjava-echo-fix patch.
+    - Fix PR target/24284, ICE (Segmentation fault) on sparc-linux.
+      Closes: #329840.
+    - Fix PR c++/23797, ICE on typename outside template. Closes: #325545.
+    - Fix PR c++/22551, ICE in tree_low_cst. Closes: #318932.
+  * libstdc++6: Tighten libstdc++ shlibs version to 4.0.2-3 (new symbol).
+  * Update generated Ada files.
+  * Fix logic to disable mudflap and Obj-C++ via the environment.
+  * Remove f77 build bits.
+  * gij-4.0: Remove /var/lib/gcj-4.0/classmap.db on purge (closes: #330800).
+  * Let gcj-4.0 depend on libgcj6-dev, instead of recommending it. This is
+    not necessary for byte-code compilations, but for compilations to native
+    code. For compilations to byte-code, use a better compiler like ecj
+    for now (found in the ecj-bootstrap package).
+  * Disable biarch setup in cross compilers (Josh Triplett). Closes: #333952.
+  * Fix with_libnof logic for cross-compilations (Josh Triplett).
+    Closes: #333951.
+  * Depend on binutils (>= 2.16.1cvs20050902-1) on the alpha architecture.
+    Closes: #333954.
+  * On i386, build-depend on libc6-dev-amd64. Closes: #329108.
+  * (Build-)depend on glibc 2.3.5-5.
+
+ -- Matthias Klose <doko@debian.org>  Sun,  2 Oct 2005 14:25:54 +0200
+
+gcc-4.0 (4.0.2-2) unstable; urgency=low
+
+  * Update to CVS 20051001, taken from the gcc-4_0-branch. Includes the
+    changes between 4.0.2 RC3 and the final 4.0.2 release, missing from
+    the upstream tarball. Remove patches applied upstream (gcc-c-decl,
+    pr23182, pr23043, pr23367, pr23891, pr21418, pr24018).
+  * On ix86 architectures run the testsuite for -march=i686 as well.
+  * Build libffi on the Hurd (closes: #328705).
+  * Add big-endian arm (armeb) support (Lennert Buytenhek). Closes: #330730.
+  * Update libjava xml to classpath CVS HEAD 20050930 (Michael Koch).
+  * Reapply patch to make -mieee the default on alpha-linux. Closes: #330826.
+  * Add workaround not to make libmudflap _start/_end not small data on
+    mips/mipsel, taken from CVS HEAD.
+  * Don't build the nof libraries on powerpc.
+  * Number crunching time on m68k, reenable gfortran on m68k-linux-gnu.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  1 Oct 2005 15:42:10 +0200
+
+gcc-4.0 (4.0.2-1) unstable; urgency=low
+
+  * GCC 4.0.2 release.
+  * lib64stdc++6: Set priority to optional.
+  * Fix bug in StreamSerializer, seen with eclipse-3.1 (Ubuntu 12744).
+    Backport from CVS HEAD, Michael Koch.
+  * Apply java patches, proposed for the 4.0 branch: PR java/24018,
+    PR libgcj/23182, PR java/19870, PR java/21844, PR libgcj/23367,
+    PR java/20338.
+  * Update the expect/pty test to actually call expect directly, rather
+    than test for the existence of PTYs, since a working expect is what
+    we really care about, not random device files (Adam Conrad).
+    Closes: #329715.
+  * Add build dependencies on lib64z1-dev.
+  * gcc-c-decl.dpatch: Fix C global decl handling regression in 4.0.2 from
+    4.0.1
+
+ -- Matthias Klose <doko@debian.org>  Thu, 29 Sep 2005 19:50:08 +0200
+
+gcc-4.0 (4.0.1-9) unstable; urgency=low
+
+  * Update to CVS 20050922, taken from the gcc-4_0-branch (4.0.2 RC3).
+  * Apply patches:
+    - Fix PR java/21418: Order of source files matters when compiling,
+      backported from mainline.
+    - Fix for PR 23043, backported form mainline.
+    - Proposed patch for #323016 (m68k only). Patch by Roman Zippel.
+  * libstdc++6: Tighten libstdc++ shlibs version to 4.0.1-9 (new symbol).
+  * Fail the build early, if the system doesn't have any pty devices
+    created in /dev. Needed for running the testsuite.
+  * Update hurd changes again (closes: #328973).
+
+ -- Matthias Klose <doko@debian.org>  Thu, 22 Sep 2005 07:28:18 +0200
+
+gcc-4.0 (4.0.1-8) unstable; urgency=medium
+
+  * Update to CVS 20050917, taken from the gcc-4_0-branch.
+    - Fix FTBFS for boost, introduced in 4.0.1-7 (closes: #328684).
+  * Fix PR java/23891, eclipse bootstrap.
+  * Set priority of gcc-4.0-hppa64 package to standard.
+  * Bump standards version to 3.6.2.
+  * Fix java wrapper script, mishandles command line options with arguments.
+    Patch from Olly Betts. Closes: #296456.
+  * Bump epoch of the lib32gcc1 package to the same epoch as for the the
+    libgcc1 and lib64gcc1 packages.
+  * Fix some lintian warnings.
+  * Build libffi on the Hurd (closes: #328705).
+  * For biarch builds, disable the testsuite for the non-default architecture
+    for runtime libraries, which are not built by default (libjava).
+  * Add gsfonts-x11 to Build-Depends-Indep to avoid warnings from doxygen.
+  * Install Ada .ali files read-only.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 17 Sep 2005 10:35:23 +0200
+
+gcc-4.0 (4.0.1-7) unstable; urgency=low
+
+  * Update to CVS 20050913, taken from the gcc-4_0-branch.
+    - Fix PR c++/19004, ICE in uses_template_parms (closes: #284777).
+    - Fix PR rtl-optimization/23454, ICE in invert_exp_1 on sparc.
+      Closes: #321215.
+    - Fix PR libstdc++/23417, make bits/stl_{list,tree}.h -Weffc++ clean.
+      Closes: ##322170.
+  * Install 'altivec.h' on ppc64 (closes: #323945).
+  * Install locale data with the versioned package name (closes: #321591).
+  * Fix fastjar build without building libjava.
+  * On hppa, don't build using gcc-3.3 when ada is disabled.
+  * On m68k, don't build the stage1 compiler using -O.
+
+  * Ludovic Brenta <ludovic@ludovic-brenta.org>
+    - Allow the choice whether or not to build with NLS.
+    - Fix a typo whereby libffi was always enabled on i386.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 13 Sep 2005 23:23:11 +0200
+
+gcc-4.0 (4.0.1-6) unstable; urgency=low
+
+  * Update to CVS 20050821, taken from the gcc-4_0-branch.
+    - debian/patches/pr21562.dpatch: Removed, applied upstream.
+    - debian/patches/libjava-awt-name.dpatch: Updated.
+    - debian/patches/classpath-20050618.dpatch: Updated.
+  * Use all available CPU's for the check target, unless USE_NJOBS == no.
+  * debian/patches/biarch-include.dpatch: Include
+    /usr/local/include/<arch>-linux-gnu before including /usr/local/include.
+  * Fix biarch system include directories for the non-default architecture.
+  * Prefer gnat-4.0 over gnat-3.4 over gnat-3.3 as a build-dependency.
+
+ -- Matthias Klose <doko@debian.org>  Thu, 18 Aug 2005 18:36:23 +0200
+
+gcc-4.0 (4.0.1-5) unstable; urgency=low
+
+  * Update to CVS 20050816, taken from the gcc-4_0-branch.
+    - Fix PR middle-end/23369, wrong code generation for funcptr comparison
+      on hppa. Closes: #321785.
+    - Fix PR fortran/23368 ICE with NAG routines (closes: #322912).
+  * Build-depend on libcairo2-dev (they say, that's the final package name ...)
+  * libgcj: Search /usr/lib/gcj-4.0 for dlopened libraries, place a copy
+    of the .la files in the libgcj6 package into this directory.
+    Closes: #322576.
+  * Tighten the dependencies between the compiler packages to the same
+    version and release. Use some substitution variables for control file
+    generation.
+  * Remove build dependencies for gpc.
+  * Don't use '/emul/ia32-linux' on ppc64 (closes: #322890).
+  * Synchronize with Ubuntu.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 16 Aug 2005 22:45:47 +0200
+
+gcc-4.0 (4.0.1-4ubuntu1) breezy; urgency=low
+
+  * Jeff Bailey <jbailey@ubuntu.com>
+
+    Enable i386 biarch using biarch glibc (not yet enabled for unstable).
+    - debian/rules.d/binary-libgcc.mk: Make i386 lib64gcc1 depend on
+      libc6-amd64
+    - debian/control.m4: Suggest libc6-amd64 rather than amd64-libs.
+    - debian/rules.conf: Build-Dep on libc6-dev-amd64 [i386]
+      Build-Dep on binutils >= 2.16.1-2ubuntu3
+    - debian/rules2: Enable biarch build in Ubuntu.
+
+  * Matthias Klose <doko@ubuntu.com>
+
+    - Add shlibs file and dependency information for the lib32gcc1 package.
+    - debian/patches/gcc-textdomain.dpatch: Update (closes: #321591).
+    - Set priority of gcc-4.0-base and libstdc++6 packages to `required'.
+      Closes: #321016.
+    - libffi-hppa.dpatch: Remove, applied upstream.
+
+ -- Matthias Klose <doko@debian.org>  Mon,  8 Aug 2005 19:39:02 +0200
+
+gcc-4.0 (4.0.1-4) unstable; urgency=low
+
+  * Enable the biarch compiler for powerpc (closes: #268023).
+  * Update to CVS 20050806, taken from the gcc-4_0-branch.
+  * Build depend on libcairo0.6.0-dev (closes: #321540).
+  * Fix Ada build on the hurd (closes: #321350).
+  * Update libffi for mips (Thiemo Seufer). Closes: #321100.
+  * Fix segfault on 64bit archs in the AWT Gtk peer library (Dan Frazier).
+    Closes: #320915.
+  * Add libXXgcc1 build dependencies for biarch builds.
+
+ -- Matthias Klose <doko@debian.org>  Sun,  7 Aug 2005 07:01:59 +0000
+
+gcc-4.0 (4.0.1-3) unstable; urgency=medium
+
+  * Update to CVS 20050725, taken from the gcc-4_0-branch.
+    - Fix ICE with -O and -mno-ieee-fp/-ffast-math (closes: #319087).
+  * Synchronize with Ubuntu.
+  * Fix applying hurd specific patches for the hurd build (closes: #318443).
+  * Do not build-depend on libmpfr-dev on architectures, where fortran
+    is not built.
+  * Apply biarch include patch on ppc64 as well (closes: #318603).
+  * Correct libstdc++-dev package description (closes: #319082).
+  * debian/rules.defs: Replace DEB_TARGET_GNU_CPU with DEB_TARGET_ARCH_CPU.
+  * gcc-4.0-hppa64: Rename hppa64-linux-gcc to hppa64-linux-gnu-gcc.
+    Closes: #319818.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 25 Jul 2005 10:43:06 +0200
+
+gcc-4.0 (4.0.1-2ubuntu3) breezy; urgency=low
+
+  * Update to CVS 20050720, taken from the gcc-4_0-branch.
+    - Fix PR22278, volatile issues, seen when building xorg.
+  * Build against new libcairo1-dev (0.5.2).
+
+ -- Matthias Klose <doko@debian.org>  Wed, 20 Jul 2005 12:29:50 +0200
+
+gcc-4.0 (4.0.1-2ubuntu2) breezy; urgency=low
+
+  * Acknowledge that i386 biarch builds still need to be fixed for glibc-2.3.5.
+
+ -- Matthias Klose <doko@ubuntu.com>  Tue, 19 Jul 2005 08:29:30 +0000
+
+gcc-4.0 (4.0.1-2ubuntu1) breezy; urgency=low
+
+  * Synchronize with Debian.
+  * Update to CVS 20050718, taken from the gcc-4_0-branch.
+    - Fix PR c++/22132 (closes: #318488), upcasting a const class pointer
+      to struct the class derives from generates wrong code.
+  * Build biarch runtime libraries for Fortran and ObjC.
+  * Apply proposed patch for PR22309 (crash with mt_allocator if libstdc++
+    is dlclosed). Closes: #293466.
+
+ -- Matthias Klose <doko@ubuntu.com>  Mon, 18 Jul 2005 17:10:18 +0200
+
+gcc-4.0 (4.0.1-2) unstable; urgency=low
+
+  * Don't apply the patch to make -mieee the default on alpha-linux-gnu.
+    Causes the bootstrap to fail on alpha-linux-gnu.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 12 Jul 2005 00:14:12 +0200
+
+gcc-4.0 (4.0.1-1) unstable; urgency=high
+
+  * GCC 4.0.1 final release.  See /usr/share/doc/gcc-4.0/NEWS.{gcc,html}.
+  * Build fastjar on mips/mipsel, fix fastjar build without building java.
+  * Disable the comparision check on unstable/ia64. adaint.o differs,
+    currently cannot be reproduced with glibc-2.3.5 and binutils-2.16.1.
+  * libffi/hppa: Fix handling of 3 and 5-7 byte struct returns.
+  * amd64: Fix libgcc symlinks to point to /usr/lib32, instead of /lib32.
+  * On powerpc, don't build with -j >1, apparently doesn't succeeds
+    on the Debian buildd.
+  * Apply revised patch to make -mieee the default on alpha-linux,
+    and add -mieee-disable switch to turn the default off (Tyson Whitehead).
+  * Disable multiarch-includes; redo biarch-includes to include the paths
+    for the non-default biarch, when called with -m32/-m64.
+  * Move new java headers from libstdc++-dev to libgcj-dev, add replaces
+    line.
+  * Update classpath patch to work with cairo-0.5.1. Patch provided by
+    Michael Koch.
+  * Further classpath updates for gnu.xml and javax.swing.text.html.
+    Patch provided by Michael Koch.
+  * Require binutils (>= 2.16.1) as a build dependency and a dependency.
+  * On i386, require amd64-libs-dev (>= 1.2).
+  * Update debian/NEWS.{html,gcc}.
+
+  * Closing bug reports reported against older gcc versions (some of them
+    still present in Debian, but not anymore as the default compiler).
+    Usually, forwarded bug reports are linked to
+        http://gcc.gnu.org/PR<upstream bug number>
+    The upstream bug number usually can be found in the Debian reports.
+
+  * Closed reports reported against gcc-3.3 and fixed in gcc-3.4:
+    - General:
+      + PR rtl-optimization/2960: Duplicate loop conditions even with -Os
+        Closes: #94701.
+      + PR optimization/3995: i386 optimisation: joining tests.
+        Closes: #105309.
+      + PR rtl-optimization/11635: Unnecessary store onto stack, more
+        curefully expand union cast (closes: #202016).
+      + PR target/7618: vararg disallowed in virtual function. Closes: #205404.
+      + Large array problem on 64 bit platforms (closes: #209152).
+      + Mark more strings as translatable (closes: #227129).
+      + PR gcc/14711: ICE when compiling a huge source file Closes: #234711.
+      + Better code generation for if(!p) return NULL;return p;
+        Closes: #242318.
+      + PR rtl-optimization/16152: Perl ftbfs on {ia64,arm,m68k}-linux.
+        Closes: #255801.
+      + ICE (segfault) while compiling Linux 2.6.9 (closes: #277206).
+      + Link error building memtest (closes: #281445).
+    - Ada:
+      + PR ada/12450: Constraint error for valid input (closes: #210844).
+      + PR ada/13620: miscompilation of array initializer with
+        -O3 -fprofile-arcs. Closes: #226244.
+    - C:
+      + PR c/6897: Code produced with -fPIC reserves EBX, but compiles
+        bad __asm__ anyway (closes: #73065).
+      + PR c/9209: On i386, gcc-3.0 allows $ in indentifiers but not the asm.
+        Closes: #121282.
+      + PR c/11943: Accepts invalid declaration "int x[2, 3];" in C99 mode.
+        Closes: #177303.
+      + PR c/11942: restrict keyword broken in C99 mode. Closes: #187091.
+      + PR other/11370: -Wunreachable-code gives false complaints.
+        Closes: #196600.
+      + PR c/11369: Too relaxed checking with -Wstrict-prototypes.
+        Closes: #197504.
+      + PR c/11445: False positive warning with -Wunreachable-code.
+        Closes: #200140.
+      + PR c/11459: -stdc=c90 -pedantic warns about C90's non long-long
+         support when in C99 mode. Closes: #200392.
+      + PR c/456: Handling of constant expressions. Closes: #225935.
+      + ICE on invalid #define with -traditional (closes: #242916).
+      + No warning when initializing a variable with itself, new option
+        -Winit-self (closes: #293957).
+    - C++:
+      + C++ parse error (closes: #42946).
+      + PR libstdc++/9073: Replacement for __STL_ASSERTIONS (libstdc++v3
+        debug mode). Closes: #128993.
+      + Parse errors in nested constructor calls (closes: #138561).
+      + PR optimization/1823: -ftrapv aborts with pointer difference due to
+        division optimization. Closes: #169862.
+      + ICE on invalid code (closes: #176101).
+      + PR c++/10199: ICE handling method parametrized by template.
+        Closes: #185604.
+      + High memory usage building packages OpenOffice.org and MythTV.
+        Closes: #194345, #194513.
+      + Improved documentation of std::lower_bound (closes: #196380).
+      + ICE in regenerate_decl_from_template (closes: #197674).
+      + PR c++/11444: Function fails to propagate up class tree
+        (template-related).  Closes: #198042.
+      + ICE when using namespaced typedef of primitive type as struct.
+        Closes: #198261.
+      + Bug using streambuf / iostream to read from a named pipe.
+        Closes: #216105.
+      + PR c++/11437: ICE in lookup_name_real (closes: #200011).
+      + Add large file support (LFS) in libstdc++ (closes: #220000).
+      + PR c++/13621: ICE compiling a statement expression returning type
+        string (closes: #224413).
+      + g++ doesn't find inherited inner class after template instantiation.
+        Closes: #227518.
+      + PR libstdc++/13928: Add whatis info in man pages generated by doxygen.
+        Closes: #229642.
+      + Missing symbol _M_setstate in libstdc++ (closes: #232709).
+      + Unable to parse declaration of inline constructor explicit
+        specialization (closes: #234709).
+      + ICE (segfault) on invalid C++ code (closes: #246031).
+      + ICE in lookup_tempate_function (closes: #262441).
+      + Undefined symbols in libstdc++, when using specials char_traits.
+        Closes: #266110.
+      + PR libstdc++/16011: Outputting numbers with ostream in the locale fr_BE
+        causes infinite recursion (closes: #270795).
+      + ICE in tree_low_cst (closes: #276291).
+      + ICE in in expand_call (closes: #283503).
+      + typeof operator is misparsed in a template function (closes: #288555).
+      + ICE in tree_low_cs (closes: #291374).
+      + Improve uninformative error messages (closes: #292961, #293076).
+      + ICE on array initialization (closes: #294560).
+      + Failure to build xine-lib with -finline-functions (closes: #306854).
+    - Java:
+      + Fix error finding files in subdirectories (closes: #195480).
+      + Implement java.text.CollationElementIterator lacks getOffset().
+        Closes: #259789.
+    - Treelang:
+      + Pointer truncation on 64bit architectures (closes: #308367).
+    - Architecture specific:
+      - alpha
+        + PR debug/10695: ICE on alpha while building agistudio.
+          Closes: #192568.
+        + ICE when building fceu (closes: #228018, #252764).
+      - amd64
+        + Miscompilation of Objective-C code (closes: #250174).
+        + g++ hangs compiling k3d on amd64 (closes: #285364).
+      - arm
+        + PR target/19008: gcc -O3 -fPIC produces wrong code via auto inlining.
+          Closes: #285238.
+      - i386
+        + PR target/4106: i386 -fPIC asm ebx clobber no error.
+          Closes: #153472.
+        + PR target/10984: x86/sse2 ICEs on vector intrinsics. Closes: #166940.
+        + Wrong code generation on at least ix86 (closes: #275655).
+      - m68k
+        + PR target/9201: ICE compiling octave-2.1 (closes: #175478).
+        + ICE in verify_initial_elim_offsets (closes: #204407, #257012).
+        + g77 generates invalid assembly code (closes: #225621).
+        + ICE in verify_local_live_at_start (closes #245584).
+      - powerpc
+        + PR optimization/12828: -floop-optimize is unstable on PowerPC (float
+          to int conversion problem). Closes: #218219.
+        + PR target/13619: ICE building altivec code in ffmpeg.
+          Closes: #226148.
+        + PR target/20046: Miscompilation of bind 9.3.0. Closes: #292958.
+      - sparc
+        + ICE (segfault) while building atlas3 on sparc32 (closes: #249108).
+        + Wrong optimization on sparc32 when building linux kernel.
+          Closes: #254626.
+
+  * Closed reports reported against gcc-3.3 or gcc-3.4 and fixed in gcc-4.0:
+    - General:
+      + PR rtl-optimization/6901: Optimizer improvement (removing unused
+        local variables). Closes: #67206.
+      + PR middle-end/179: Failure to detect use of unitialized variable
+        with -O -Wall. Closes: #117765.
+      + ICE building glibc's nptl on amd64 (closes: #260710, #307993).
+      + PR middle-end/17827: ICE in make_decl_rtl. Closes: #270854.
+      + PR middle-end/21709: ICE on compile-time complex NaN. Closes: #305344.
+    - Ada:
+      + PR ada/10889: Convention Fortran matrices mishandled in generics.
+        Closes: #192135.
+      + PR ada/13897: Implement tasking on powerpc. Closes: #225346.
+    - C:
+      + PR c/13072: Bogus warning with VLA in switch. Closes: #218803.
+      + PR c/13519: typeof(nonconst+const) is const. Closes: #208981.
+      + PR c/12867: Incorrect warning message (void format, should be void*
+        format). Closes: #217360.
+      + PR c/16066: PR 16066] i386 loop strength reduction bug.
+        Closes: #254659.
+    - C++:
+      + PR c++/13518: -Wnon-virtual-dtor doesn't always work. Closes: #212260.
+      + PR translation/16025: ICE with unsupported locale(closes: #242158).
+      + PR c++/15125: -Wformat doesn't warn for different types in fprintf.
+        Closes: #243507.
+      + PR c++/15214: Warn only if the dtor is non-private or the class has
+        friends. (closes: #246639).
+      + PR libstdc++/17218: Unknown subjects in generated libstdc++ manpages.
+        Closes: #262934.
+      + PR libstdc++/17223: Missing .so references in generated libstdc++
+        manpages. Closes: #262956.
+      + libstdc++-doc: Improve man pages (closes: #280910).
+      + PR c++/19006: ICE in tree_low_cst. Closes: #285692.
+      + g++ does not check arguments to fprintf. Closes: #281847.
+    - Java:
+      + PR java/7304: gcj ICE (closes: #152501).
+      + PR libgcj/7305: Installation of headers not directly in /usr/include.
+        Closes: #195483.
+      + PR libgcj/11941: libgcj timezone handling (closes: #203212).
+      + PR java/14709: gcj fails to wait for its child processes on exec().
+        Closes: #238432.
+      + PR libgcj/21703: gcj hangs when rapidly calling String.intern().
+        Closes: #275547.
+      + SocketChannel.get(ByteBuffer) returns 0 at EOF. Closes: #281602.
+      + PR java/19711: gcj segfaults instead of reporting the ambiguous
+        expression. Closes: #286715.
+      + Static libgcj contains repeated archive members (closes: #298263).
+    - Architecture specific:
+      - alpha
+        + Unaligned accesses with ?-operator (closes: #301983).
+      - arm
+        + Compilation error of glibc-2.3.4 on arm (closes: #298508).
+      - m68k
+        + ICE in add_insn_before (closes: #248432).
+      - mips
+        + Fix o32 ABI breakage in gcc 3.3/3.4 (closes: #270620).
+      - powerpc
+        + ICE in extract_insn (closes: #311128).
+
+  * Closing bug reports as wontfix:
+    - g++ defines _GNU_SOURCE when using the libstdc++ header files.
+      Behaviour did change since 3.0. Closes: #126703, #164872.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  9 Jul 2005 17:10:54 +0000
+
+gcc-4.0 (4.0.0ds2-12) unstable; urgency=high
+
+  * Update to CVS 20050701, taken from the gcc-4_0-branch.
+  * Apply proposed patch for MMAP configure fix; aka PR 19877. Backport
+    from mainline.
+  * Disable Fortran on m68k. Currently FTBFS.
+  * Split multiarch-include/lib patches. Update multiarch-include patch.
+  * Fix FTBFS of the hppa64-linux cross compiler. Don't add the
+    multiarch include dirs when cross compiling.
+  * Configure --with-java-home, as used by java-gcj-compat.
+    Closes: #315646.
+  * Make libgcj-dbg packages priority extra.
+  * Set the path of classmap.db to /var/lib/gcj-@gcc_version@.
+  * On m68k, do not create the default classmap.db in the gcj postinst.
+    See #312830.
+  * On amd64, install the 32bit libraries into /emul/ia32-linux/usr/lib.
+    Restore the /usr/lib32 symlink.
+  * On amd64, don't reference lib64, but instead lib (lib64 is a symlink
+    to lib). Closes: #293050.
+  * Remove references to build directories from the .la files.
+  * Make cpp-X.Y conflict with earlier versions of gcc-X.Y, g++-X.Y, gobjc-X.Y,
+    gcj-X.Y, gfortran-X.Y, gnat-X.Y, treelang-X.Y, if a path component in
+    the gcc library path changes (i.e. version or target alias).
+  * Disable Ada for sh3 sh3eb sh4 sh4eb.
+  * For gcj-4.0, add a conflict to libgcj4-dev and libgcj5-dev.
+    Closes: #316499.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  2 Jul 2005 11:04:35 +0200
+
+gcc-4.0 (4.0.0ds1-11) unstable; urgency=low
+
+  * debian/rules.defs: Disable Ada for alpha.
+  * debian/rules.conf: Fix typo in type-handling replacement code.
+  * Don't ship an empty libgcj6-dbg package.
+
+ -- Matthias Klose <doko@debian.org>  Thu, 23 Jun 2005 09:03:21 +0200
+
+gcc-4.0 (4.0.0ds1-10) unstable; urgency=medium
+
+  * debian/patches/libstdc++-api-compat.dpatch: Apply proposed patch
+    to fix libstdc++ 3.4.5/4.0 compatibility.
+  * type-handling output became insane. Don't use it anymore.
+  * Drop the reference to the stl-manual package (closes: #314983).
+  * Disable java on GNU/kFreeBSD targets, requested by Robert Millan.
+    Closes: #315140.
+  * Terminate the acats-killer process, even if the build is aborted
+    by the user (closes: #314405).
+  * debian/rules.defs: Define DEB_TARGET_ARCH_{OS,CPU}.
+  * Start converting the use of DEB_*_GNU_* to DEB_*_ARCH_* in the build
+    files.
+  * Do not configure with --enable-gtk-cairo. Needs newer gtk. Drop
+    build dependency on libcairo-dev.
+  * Fix setting of the system header directory for the hurd (Michael Banck).
+    Closes: #315386.
+  * Fix FTBFS on hurd-i386: MAXPATHLEN issue (Michael Banck). Closes: #315384.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 22 Jun 2005 19:45:50 +0200
+
+gcc-4.0 (4.0.0ds1-9ubuntu2) breezy; urgency=low
+
+  * Fix version number in libgcj shlibs file.
+
+ -- Matthias Klose <doko@ubuntu.com>  Sun, 19 Jun 2005 10:34:02 +0200
+
+gcc-4.0 (4.0.0ds1-9ubuntu1) breezy; urgency=low
+
+  * Update to 4.0.1, release candidate 2.
+  * libstdc++ shlibs file: Require 4.0.0ds1-9ubuntu1 as minimum version.
+  * Rename libawt to libgcjawt to avoid conflicts with other
+    libawt implementations (backport from HEAD).
+  * Update classpath awt, swing and xml parser for HTML support in swing.
+    Taken from classpath CVS HEAD 2005-06-18. Patch provided by Michael Koch.
+  * Remove the libgcj-buffer-strategy path, part of the classpath update.
+  * libgcj shlibs file: Require 4.0.0ds1-9ubuntu1 as minimum version.
+  * Require cairo-0.5 as build dependency.
+  * gij-4.0: Provide java1-runtime.
+  * gij-4.0: Provide an rmiregistry alternative (using grmiregistry-4.0).
+  * gcj-4.0: Provide an rmic alternative (using grmic-4.0).
+  * libgcj6-dev conflicts with libgcj5-dev, libgcj4-dev, not libgcj6.
+    Closes: #312741.
+  * libmudflap-entry-point.dpatch: Correct name of entry point on mips/mipsel.
+  * Apply proposed patch for PR 18421 and PR 18719 (m68k only).
+  * Apply proposed path for PR 21562.
+  * Add build dependency on dpkg (>= 1.13.7).
+  * On linux systems, configure for <cpu>-linux-gnu.
+  * Configure the hppa64 cross compiler to target hppa64-linux-gnu.
+  * (Build-)depend on binutils-2.16.1.
+  * libstdc{32,64}++6-4.0-dbg: Depend on libstdc++6-4.0-dev.
+  * gnat-4.0: only depend on libgnat, when a shared libgnat is built.
+  * gfortran-4.0: Depend on libgmp3c2 | libgmp3.
+  * On hppa, explicitely use gcc-3.3 as a build dependency in the case
+    that Ada is disabled.
+  * libmudflap: Always build the library for the non-default biarch
+    architecture, or else the test results show link failures.
+
+ -- Matthias Klose <doko@ubuntu.com>  Sat, 18 Jun 2005 00:42:55 +0000
+
+gcc-4.0 (4.0.0-9) unstable; urgency=low
+
+  * Upload to unstable.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 25 May 2005 19:02:20 +0200
+
+gcc-4.0 (4.0.0-8ubuntu3) breezy; urgency=low
+
+  * debian/control: Regenerate.
+
+ -- Matthias Klose <doko@ubuntu.com>  Sat,  4 Jun 2005 10:56:27 +0200
+
+gcc-4.0 (4.0.0-8ubuntu2) breezy; urgency=low
+
+  * Fix powerpc-config-ml patch.
+
+ -- Matthias Klose <doko@ubuntu.com>  Fri,  3 Jun 2005 15:47:52 +0200
+
+gcc-4.0 (4.0.0-8ubuntu1) breezy; urgency=low
+
+  * powerpc biarch support:
+    - Enable powerpc biarch support, build lib64gcc1 on powerpc.
+    - Add patch to disable libstdc++'s configure checking, if it can't run
+      64bit binaries on 32bit kernels (Sven Luther).
+    - Apply the same patch to the other runtime librararies as well.
+    - Run the testsuite with -m64, if we can execute 64bit binaries.
+    - Add libc6-dev-ppc64 as build dependency for powerpc.
+  * 32bit gcj libs for amd64.
+  * debian/logwatch.sh: Don't remove logwatch pid file on exit (suggested
+    by Ryan Murray).
+  * Update to CVS 20050603, taken from the gcc-4_0-branch.
+  * g++-4.0 provides c++abi2-dev.
+  * Loosen dependencies on packages of architecture `all' to not break
+    binary only uploads.
+  * Build libgfortran for biarch as well, else the testsuite will fail.
+
+ -- Matthias Klose <doko@ubuntu.com>  Fri,  3 Jun 2005 13:38:19 +0200
+
+gcc-4.0 (4.0.0-8) experimental; urgency=low
+
+  * Synchronize with Ubuntu.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 23 May 2005 01:56:28 +0000
+
+gcc-4.0 (4.0.0-7ubuntu7) breezy; urgency=low
+
+  * Fix build failures for builds with disabled testsuite.
+  * Adjust debian/rules conditionals to work with all dpkg versions.
+  * Build separate lib32stdc6-4.0-dbg/lib64stdc6-4.0-dbg packages.
+  * Add the debugging symbols of the optimzed libstdc++ build in the
+    lib*stdc++6-dbg packages as well.
+  * Build a libgcj6-dbg package.
+  * Update to CVS 20050522, taken from the gcc-4_0-branch.
+  * Add Ada support for the ppc64 architecture (Andreas Jochens):
+    * debian/patches/ppc64-ada.dpatch
+      - Add gcc/ada/system-linux-ppc64.ads, which has been copied from
+        gcc/ada/system-linux-ppc.ads and changed to use 'Word_Size' 64
+        instead of 32.
+      - gcc/ada/Makefile.in: Use gcc/ada/system-linux-ppc64.ads on powerpc64.
+    * debian/rules.patch
+      - Use ppc64-ada patch on ppc64.
+    * debian/rules.d/binary-ada.mk
+      Place the symlinks libgnat.so, libgnat-4.0.so, libgnarl.so,
+      libgnarl-4.0.so in '/usr/lib' instead of '<gcc_lib_dir>/adalib'.
+    Closes: #308948.
+  * Add libc6-dev-i386 as an alternative build dependency for amd64.
+    Closes: #305690.
+
+ -- Matthias Klose <doko@ubuntu.com>  Sun, 22 May 2005 22:14:20 +0200
+
+gcc-4.0 (4.0.0-7ubuntu6) breezy; urgency=low
+
+  * Don't trust dpkg-architecture (1.13.4), it "hurds" ...
+
+ -- Matthias Klose <doko@ubuntu.com>  Wed, 18 May 2005 11:36:38 +0200
+
+gcc-4.0 (4.0.0-7ubuntu5) breezy; urgency=low
+
+  * libgcj6-dev: Don't provide libgcj-dev.
+
+ -- Matthias Klose <doko@ubuntu.com>  Wed, 18 May 2005 00:30:32 +0000
+
+gcc-4.0 (4.0.0-7ubuntu4) breezy; urgency=low
+
+  * Update to CVS 20050517, taken from the gcc-4_0-branch.
+  * Apply proposed patch for PR21293.
+
+ -- Matthias Klose <doko@ubuntu.com>  Tue, 17 May 2005 23:05:40 +0000
+
+gcc-4.0 (4.0.0-7ubuntu2) breezy; urgency=low
+
+  * Update to CVS 20050515, taken from the gcc-4_0-branch.
+
+ -- Matthias Klose <doko@ubuntu.com>  Sun, 15 May 2005 23:48:00 +0200
+
+gcc-4.0 (4.0.0-7ubuntu1) breezy; urgency=low
+
+  * Synchronize with Debian.
+
+ -- Matthias Klose <doko@ubuntu.com>  Mon,  9 May 2005 19:35:29 +0200
+
+gcc-4.0 (4.0.0-7) experimental; urgency=low
+
+  * Update to CVS 20050509, taken from the gcc-4_0-branch.
+  * Remove the note from the fastjar package description, stating, that
+    fastjar is incomplete compared to the "standard" jar utility.
+  * Fix typo in build depends. dpkg-checkbuilddeps doesn't like a comma
+    inside [].
+  * Tighten shlibs dependencies to require the current version.
+
+ -- Matthias Klose <doko@debian.org>  Mon,  9 May 2005 19:02:03 +0200
+
+gcc-4.0 (4.0.0-6) experimental; urgency=low
+
+  * Update to CVS 20050508, taken from the gcc-4_0-branch.
+
+ -- Matthias Klose <doko@debian.org>  Sun,  8 May 2005 14:08:28 +0200
+
+gcc-4.0 (4.0.0-5ubuntu1) breezy; urgency=low
+
+  * Temporarily disable the i386 biarch build. Remove the amd64-libs-dev
+    build dependency, add (build-)conflict (<= 1.1ubuntu1).
+
+ -- Matthias Klose <doko@ubuntu.com>  Sat,  7 May 2005 16:56:21 +0200
+
+gcc-4.0 (4.0.0-5) breezy; urgency=low
+
+  * gnat-3.3 and gnat-4.0 are alternative build dependencies (closes: #308002).
+  * Update to CVS 20050507, taken from the gcc-4_0-branch.
+  * gcj-4.0: Install gjnih.
+  * Add libgcj buffer strategy framework (Thomas Fitzsimmons), needed for OOo2.
+    Backport from 4.1.
+  * Fix all lintian errors and most of the warnings.
+
+ -- Matthias Klose <doko@ubuntu.com>  Sat,  7 May 2005 12:26:15 +0200
+
+gcc-4.0 (4.0.0-4) breezy; urgency=low
+
+  * Still prefer gnat-3.3 over gnat-4.0 as a build dependency.
+
+ -- Matthias Klose <doko@ubuntu.com>  Fri,  6 May 2005 22:30:43 +0200
+
+gcc-4.0 (4.0.0-3) breezy; urgency=low
+
+  * Update to CVS 20050506, taken from the gcc-4_0-branch.
+  * Update priority of java alternatives to 40.
+  * Move gcj-dbtool to gij package, move the default classmap.db to
+    /var/lib/gcj-4.0/classmap.db. Create it in the postinst.
+  * Fix gcc-4.0-hppa64 postinst (closes: #307762).
+  * Fix gcc-4.0-hppa64, gij-4.0 and gcj-4.0 postinst, to not ignore errors
+    from update-alternatives.
+  * Fix gcc-4.0-hppa64, fastjar, gij-4.0 and gcj-4.0 prerm,
+    to not ignore errors from update-alternatives.
+
+ -- Matthias Klose <doko@ubuntu.com>  Fri,  6 May 2005 17:50:58 +0200
+
+gcc-4.0 (4.0.0-2) experimental; urgency=low
+
+  * GCC 4.0.0 release.
+  * Update to CVS 20050503, taken from the gcc-4_0-branch.
+  * Add gnat-4.0 as an alternative build dependency (closes: #305690).
+
+ -- Matthias Klose <doko@debian.org>  Tue,  3 May 2005 15:41:26 +0200
+
+gcc-4.0 (4.0.0-1) experimental; urgency=low
+
+  * GCC 4.0.0 release.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 24 Apr 2005 11:28:42 +0200
+
+gcc-4.0 (4.0ds11-0pre11) breezy; urgency=low
+
+  * CVS 20050413, taken from the gcc-4_0-branch.
+  * Add proposed patches for PR20126, PR20490, PR20929.
+
+ -- Matthias Klose <doko@ubuntu.com>  Wed, 13 Apr 2005 09:43:00 +0200
+
+gcc-4.0 (4.0ds10-0pre10) experimental; urgency=low
+
+  * gcc-4.0.0-20050410 release candidate 1, built from the prerelease tarball.
+    - C++ fix for "optimizer breaks function inlining". Closes: #302989.
+  * Append the GCC version to the fastjar/grepjar version string.
+  * Use short file names in the libstdc++ docs (closes: #301140).
+  * Fix libstdc++-dbg dependencies (closes: #303866).
+
+ -- Matthias Klose <doko@debian.org>  Mon, 11 Apr 2005 13:16:01 +0200
+
+gcc-4.0 (4.0ds9-0pre9) experimental; urgency=low
+
+  * CVS 20050326, taken from the gcc-4_0-branch.
+  * Reenable Ada on ia64.
+  * Build libgnat on hppa, sparc, s390 again.
+  * ppc64 support (Andreas Jochens):
+    * debian/control.m4
+      - Add libc6-dev-powerpc [ppc64] to the Build-Depends.
+      - Change the Description for lib32gcc1: s/ia32/32 bit Version/
+    * debian/rules.defs
+      - Define 'biarch_ia32' for ppc64 to use the same 32 bit multilib
+        facilities as amd64.
+    * debian/rules.d/binary-gcc.mk
+      - Correct an error in the 'files_gcc' definition for biarch_ia32
+        (replace '64' by '32').
+    * debian/rules2
+      - Do not use '--disable-multilib' on powerpc64-linux.
+        Use '--disable-nof --disable-softfloat' instead.
+    * debian/rules.d/binary-libstdcxx.mk
+      - Put the 32 bit libstdc++ files in '/usr/lib32'.
+    * debian/rules.patch
+      - Apply 'ppc64-biarch' patch on ppc64.
+    * debian/patches/ppc64-biarch.dpatch
+      - MULTILIB_OSDIRNAMES: Use /lib for native 64 bit libraries and
+        /lib32 for 32 bit libraries.
+      - Add multilib handling to src/config-ml.in (taken from
+        amd64-biarch.dpatch).
+  * Rename biarch_ia32 to biarch32, as suggsted by Andreas.
+  * Use /bin/dash on hppa.
+  * Reenable the build of the hppa64 compiler.
+  * Enable parallel builds by defaults (set environment variale USE_NJOBS=no
+    or USE_NJOBS=<number> to modify the default, which is to use the
+    number of available processors).
+
+ -- Matthias Klose <doko@debian.org>  Sat, 26 Mar 2005 19:07:30 +0100
+
+gcc-4.0 (4.0ds8-0pre8) experimental; urgency=low
+
+  * CVS 20050322, taken from the gcc-4_0-branch.
+    - Add proposed fix for PR19406.
+  * Configure --with-gtk-cairo only if version 0.3.0 is found.
+  * Split out gcc-4.0-locales package. Better chance of getting
+    bug reports in english language.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 22 Mar 2005 14:20:24 +0100
+
+gcc-4.0 (4.0ds7-0pre7) experimental; urgency=low
+
+  * CVS 20050304, taken from the gcc-4_0-branch.
+  * Build the treelang compiler.
+
+ -- Matthias Klose <doko@debian.org>  Fri,  4 Mar 2005 21:29:56 +0100
+
+gcc-4.0 (4.0ds6-0pre6ubuntu6) hoary; urgency=low
+
+  * Fix lib32gcc1 symlink on amd64. Ubuntu #7099.
+
+ -- Matthias Klose <doko@ubuntu.com>  Thu,  3 Mar 2005 00:17:26 +0100
+
+gcc-4.0 (4.0ds6-0pre6ubuntu5) hoary; urgency=low
+
+  * Add patch from PR20160, avoid creating archives with components
+    that have duplicate basenames.
+
+ -- Matthias Klose <doko@ubuntu.com>  Wed,  2 Mar 2005 14:22:04 +0100
+
+gcc-4.0 (4.0ds6-0pre6ubuntu4) hoary; urgency=low
+
+  * CVS 20050301, taken from the gcc-4_0-branch.
+    Test builds on i386, amd64, powerpc, ia64, check libgcc_s.so.1.
+  * Add fastjar-4.0 binary and manpage. Some java packages append it
+    for all java related tools.
+  * Add libgcj6-src package for source code availability in IDE's.
+  * On hppa, disable the build of the hppa64 cross compiler, disable
+    java, disable running the testsuite (request by Lamont).
+  * On amd64, lib32gcc1 replaces ia32-libs.openoffice.org (<< 1ubuntu3).
+  * Build-Depend on libcairo1-dev, configure with --enable-gtk-cairo.
+    Work around libtool problems install libjawt.
+    Install jawt header files in libgcj6-dev.
+  * Add workaround for PR debug/19769.
+
+ -- Matthias Klose <doko@ubuntu.com>  Tue,  1 Mar 2005 11:26:19 +0100
+
+gcc-4.0 (4.0ds5-0pre6ubuntu3) hoary; urgency=low
+
+  * Drop libgmp3-dev (<< 4.1.4-3) as an alterntative build dependency.
+
+ -- Matthias Klose <doko@ubuntu.com>  Thu, 10 Feb 2005 15:16:27 +0100
+
+gcc-4.0 (4.0ds5-0pre6ubuntu2) hoary; urgency=low
+
+  * Disable Ada for powerpc.
+
+ -- Matthias Klose <doko@ubuntu.com>  Wed,  9 Feb 2005 16:47:07 +0100
+
+gcc-4.0 (4.0ds5-0pre6ubuntu1) hoary; urgency=low
+
+  * Avoid build dependency on type-handling.
+  * Install 32bit libs on amd64 in /lib32 and /usr/lib32.
+
+ -- Matthias Klose <doko@ubuntu.com>  Wed,  9 Feb 2005 08:27:21 +0100
+
+gcc-4.0 (4.0ds5-0pre6) experimental; urgency=low
+
+  * gcc-4.0 snapshot, taken from the HEAD branch CVS 20050208.
+  * Build-depend on graphviz (moved to main), remove the pregenerated
+    libstdc++ docs from the diff.
+  * Fix PR19162, libobjc build failure on arm-linux (closes: #291497).
+
+ -- Matthias Klose <doko@debian.org>  Tue,  8 Feb 2005 11:47:31 +0000
+
+gcc-4.0 (4.0ds4-0pre5) experimental; urgency=low
+
+  * gcc-4.0 snapshot, taken from the HEAD branch CVS 20050125.
+  * Call the 4.0 gcx versions in the java wrappers (closes: #291075).
+  * Correctly install libgij (closes: #291077).
+  * libgcj6-dev: Add conflicts to other libgcj-dev packages (closes: #290950).
+
+ -- Matthias Klose <doko@debian.org>  Mon, 24 Jan 2005 23:59:54 +0100
+
+gcc-4.0 (4.0ds3-0pre4) experimental; urgency=low
+
+  * gcc-4.0 snapshot, taken from the HEAD branch CVS 20050115.
+  * Update cross build patches (Nikita V. Youshchenko).
+  * Enable Ada on i386, amd64, mips, mipsel, powerpc, sparc, s390.
+    Doesn't yet bootstrap on alpha, hppa, ia64.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 15 Jan 2005 18:44:03 +0100
+
+gcc-4.0 (4.0ds2-0pre3) experimental; urgency=low
+
+  * gcc-4.0 snapshot, taken from the HEAD branch CVS 20041224.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 22 Dec 2004 00:31:44 +0100
+
+gcc-4.0 (4.0ds1-0pre2) experimental; urgency=low
+
+  * gcc-4.0 snapshot, taken from the HEAD branch CVS 20041205.
+  * Lot's of merges and updates from the gcc-3.4 packages.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 04 Dec 2004 12:14:51 +0100
+
+gcc-4.0 (4.0ds0-0pre1) experimental; urgency=low
+
+  * gcc-4.0 snapshot, taken from the HEAD branch CVS 20041114.
+    - Addresses many issues with the libstdc++ man pages (closes: #278549).
+  * Disable Ada on hppa, ia64, mips, mipsel, powerpc, s390 and sparc, at least
+    these are known to be broken at the time of the snapshot.
+  * Minor kbsd.gnu build fixes (Robert Millan). Closes: #273004.
+  * For amd64, add missing libstdc++ files to 'libstdc++6-dev' package.
+    (Andreas Jochens). Fixes: #274362.
+  * Update libffi-mips patch (closes: #274096).
+  * Updated i386-biarch patch. Don't build 64bit libstdc++, ICE.
+  * Update sparc biarch patch.
+  * Fix symlinks for gfortran manpage (closes: #278548).
+  * Update cross build patches (Nikita V. Youshchenko).
+  * Update Ada patches (Ludovic Brenta).
+
+ -- Matthias Klose <doko@debian.org>  Sat, 13 Nov 2004 10:38:25 +0100
+
+gcc-4.0 (4.0-0pre0) experimental; urgency=low
+
+  * gcc-4.0 snapshot, taken from the HEAD branch CVS 20040912.
+
+  * Matthias Klose <doko@debian.org>
+
+    - Integrate accumulated packaging patches from gcc-3.4.
+    - Rename libstdc++6-* packages to libstdc++6-4-* (closes: #261693).
+    - libffi4-dev: conflict with libffi3-dev (closes: #265939).
+
+  * Robert Millan <rmh@debian.org>
+
+    * control.m4: 
+      - s/locale_no_archs !hurd-i386/locale_no_archs/g 
+        (This is now handled in rules.defs. [1]) 
+      - s/procps [check_no_archs]/procps [linux_gnu_archs]/g [2] 
+      - Add type-handling to build-deps. [3] 
+    * rules.conf: 
+      - Don't require (>= $(libc_ver)) for libc0.1-dev. [4] 
+      - Generate *_no_archs variables with type-handling and use them for 
+        for m4's -D parameters. [3] 
+    * rules.defs: 
+      - use filter instead of findstring [1]. 
+      - s/netbsd-elf-gnu/netbsdelf-gnu/g [5]. 
+      - enable java for kfreebsd-gnu [6] 
+      - enable ffi for kfreebsd-gnu and knetbsd-gnu [6] 
+      - enable libgc for kfreebsd-gnu [6] 
+      - enable checks for kfreebsd-gnu and knetbsd-gnu [7] 
+      - enable locales for kfreebsd-gnu and gnu [1] [8]. 
+    * Closes: #264025.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 12 Sep 2004 12:52:56 +0200
+
+gcc-3.5 (3.5ds1-0pre1) experimental; urgency=low
+
+  * gcc-3.5 snapshot, taken from the HEAD branch CVS 20040724.
+  * Install locale data with versioned package name (closes: #260497).
+  * Fix libgnat symlinks.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 24 Jul 2004 21:26:23 +0200
+
+gcc-3.5 (3.5-0pre0) experimental; urgency=low
+
+  * gcc-3.5 snapshot, taken from the HEAD branch CVS 20040718.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 18 Jul 2004 12:26:00 +0200
+
+gcc-3.4 (3.4.1-1) experimental; urgency=low
+
+  * gcc-3.4.1 final release.
+    - configured wth --enable-libstdcxx-allocator=mt.
+  * Fixes for generating cross compiler packages (Jeff Bailey).
+
+ -- Matthias Klose <doko@debian.org>  Fri,  2 Jul 2004 22:49:05 +0200
+
+gcc-3.4 (3.4.0-4) experimental; urgency=low
+
+  * gcc-3.4.1 release candidate 1.
+  * Add logic to build biarch compiler on powerpc (disabled, needs lib64c).
+  * Don't build the libg2c0 package on mipsel-linux (no clear answer on
+    debian-mips, if the libg2c0's built by gcc-3.3 and gcc-3.4 are compatible
+    (post-sarge issue).
+  * Don't use gcc-2.95 as bootstrap compiler on m68k anymore.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 26 Jun 2004 22:40:20 +0200
+
+gcc-3.4 (3.4.0-3) experimental; urgency=low
+
+  * Update to gcc-3.4 CVS 20040613.
+  * On sparc, set the the build target to sparc64-linux, build with
+    switch defaulting to code generation for v7. To generate code for
+    sparc64, use the -m64 switch.
+  * Add missing doc-base files to -doc packages.
+  * Add portability patches and kbsd-gnu patch (Robert Millan).
+    Closes: #251293, #251294.
+  * Apply fixes for cross build (Nikita V. Youshchenko).
+  * Do not include the precompiled libstdc++ header files into the -dev
+    package (still experimental). Closes: #251707.
+  * Reflect renaming of Ada user's guide.
+  * Move AWT peer libraries for libgcj into it's own package (fixes: #247791).
+
+ -- Matthias Klose <doko@debian.org>  Mon, 14 Jun 2004 00:03:18 +0200
+
+gcc-3.4 (3.4.0-2) experimental; urgency=low
+
+  * Update to gcc-3.4 CVS 20040516.
+  * Do not provide the /usr/hppa64-linux/include in the gcc-hppa64 package,
+    migrated to libc6-dev. Adjust dependencies.
+  * Integrate gpc test results into the GCC test summary.
+  * gnatchop calls gcc-3.4 (closes: #245438).
+  * debian/locale-gen.sh: Update for recent libstdc+++ testsuite.
+  * debian/copyright: Add libstdc++-v3's exception clause.
+  * Add libffi update for mips (Thiemo Seufer).
+  * Reference Debian specific bug reporting instructions.
+  * Update README.Bugs.
+  * Fix FTBFS for libstdc++-doc.
+  * Update libjava patch for hppa (Randolph Chung).
+  * Fix installation of ffitarget.h header file.
+  * On amd64-linux, configure --without-multilib, disable Ada.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 16 May 2004 07:53:39 +0200
+
+gcc-3.4 (3.4.0-1) experimental; urgency=low
+
+  * gcc-3.4.0 final release.
+
+  * Why experimental?
+    - Do not interfer with packages currently built from gcc-3.3 sources,
+      i.e. libgcc1, libobjc1, libffi2, libffi2-dev, libg2c0.
+    - Biarch sparc compiler doesn't built yet.
+    - Use of configure flags affecting binary ABI's not yet determined.
+    - Several ABI bugs have been fixed. Unfortunately, these changes will break
+      binary compatibility with earlier releases on several architectures:
+      alpha, mips, sparc, 
+    - hppa and m68k changed sjlj based exception handling to dwarf2 based
+      exception handling.
+
+      See NEWS.html or http://gcc.gnu.org/gcc-3.4/changes.html for more
+      specific information.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 20 Apr 2004 20:54:56 +0200
+
+gcc-3.4 (3.4ds3-0pre4) experimental; urgency=low
+
+  * Update to gcc-3.4 CVS 20040403.
+  * Add gpc tarball, gpc patches for 3.4 (Waldek Hebisch).
+  * Reenable sparc-biarch patches (closes: #239856).
+  * Build the shared libgnat library, needed to fix FTBFS for some
+    Ada library packages (Ludovic Brenta).
+    Currently enabled for hppa, i386, ia64.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  3 Apr 2004 08:47:55 +0200
+
+gcc-3.4 (3.4ds1-0pre2) experimental; urgency=low
+
+  * Update to gcc-3.4 CVS 20040320.
+  * For libstdc++6-doc, add a conflict to libstdc++5-3.3-doc (closes: #236560).
+  * For libstdc++6-dbg, add a conflict to libstdc++5-3.3-dbg (closes: #236798).
+  * Reenable s390-biarch patches.
+  * Update the cross compiler build files (Nikita V. Youshchenko).
+
+ -- Matthias Klose <doko@debian.org>  Sat, 20 Mar 2004 09:15:10 +0100
+
+gcc-3.4 (3.4ds0-0pre1) experimental; urgency=low
+
+  * Start gcc-3.4 packaging, get rid of the epoch for most of the
+    packages.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 22 Feb 2004 16:00:03 +0100
+
+gcc-3.3 (1:3.3.3ds6-6) unstable; urgency=medium
+
+  * Update to gcc-3_3-branch CVS 20040401.
+    - Fixed ICE in emit_move_insn_1 on legal code (closed: #223215).
+    - Fix PR 14755, miscompilation of loops with bitfield counter.
+      Closes: #241255.
+    - Fix PR 16040, crash in function initializing const data with
+      reinterpret_cast-ed pointer-to-member function crashes (closes: #238621).
+    - Remove patches integrated upstream.
+  * Reenable build of gpidump on powerpc and s390.
+
+ -- Matthias Klose <doko@debian.org>  Thu,  1 Apr 2004 23:51:54 +0200
+
+gcc-3.3 (1:3.3.3ds6-5) unstable; urgency=medium
+
+  * Update to gcc-3_3-branch CVS 20040321.
+    - Fix PR target/13889 (ICE on valid code on m68k).
+  * Fix FTFBS on s390. Do not build gpc's gpidump on s390.
+  * Reenable gpc on arm.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 22 Mar 2004 07:37:26 +0100
+
+gcc-3.3 (1:3.3.3ds6-4) unstable; urgency=low
+
+  * Update to gcc-3_3-branch CVS 20040320.
+    - Revert patch for PR14640 (with this, at least mozilla-firefox was
+      miscompiled on x86 (closes: #238621).
+  * Update the gpc tarball (there were two releases with the same name ...).
+  * Reenable gpc on alpha and ia64.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 20 Mar 2004 07:39:24 +0100
+
+gcc-3.3 (1:3.3.3ds5-3) unstable; urgency=low
+
+  * Update to gcc-3_3-branch CVS 20040314.
+    - Fixes miscompilation with -O -funroll-loops on powerpc (closes: #229567).
+    - Fix ICE in dwarf-2 on code using altivec (closes: #203835).
+  * Update hurd-changes patch.
+  * Add libgcj4-dev as a recommendation for gcj (closes: #236547).
+  * debian/copyright: Added exemption to static linking of libgcc.
+
+  * Phil Blundell:
+    - debian/patches/arm-ldm.dpatch, debian/patches/arm-gotoff.dpatch: Update.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 14 Mar 2004 09:56:06 +0100
+
+gcc-3.3 (1:3.3.3ds5-2) unstable; urgency=low
+
+  * Update to gcc-3_3-branch CVS 20040306.
+    - Fixes bootstrap comparision error on ia64.
+    - Allows ghc build with gcc-3.3.
+    - On amd64, don't imply 3DNow! for -m64 by default.
+    - Some arm specific changes
+    - Fix C++/13944: exception in constructor of a class to be thrown is not
+      caught. Closes: #228099.
+  * Enable the build of gcc-3.3-hppa64 on hppa.
+    Add symlinks for as and ld to point to hppa64-linux-{as,ld}.
+  * gcj-3.3 depends on g++-3.3, recommends gij-3.3. gij-3.3 suggests gcj-3.3.
+  * Fix libgc2c-pic compatibility links (closes: #234333).
+    The link will be removed for gcc-3.4.
+  * g77-3.3: Conflict with other g77-x.y packages.
+  * Tighten shlibs dependencies to latest released versions.
+
+  * Phil Blundell:
+    - debian/patches/arm-233633.dpatch: New  Fixes problems with half-word
+      loads on ARMv3 architecture.  (Closes: #233633)
+    - debian/patches/arm-ldm.dpatch: New.  Avoids inefficient epilogue for
+      leaf functions in PIC code on ARM.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  6 Mar 2004 10:57:14 +0100
+
+gcc-3.3 (1:3.3.3ds5-1) unstable; urgency=medium
+
+  * gcc-3.3.3 final release.
+    See /usr/share/doc/gcc-3.3/NEWS.{gcc,html}.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 16 Feb 2004 08:59:52 +0100
+
+gcc-3.3 (1:3.3.3ds4-0pre4) unstable; urgency=low
+
+  * Update to gcc-3.3.3 CVS 20040214 (2nd gcc-3.3.3 prerelease).
+  * Fix title of libstdc++'s html main index (closes: #196381).
+  * Move libg2c libraray files out of the gcc specific libdir to /usr/lib.
+    For g77-3.3 add conflicts to other g77 packages. Closes: #224848.
+  * Update the stack protector patch to 3.3-7, but don't apply it by default.
+    Closes: #230338.
+  * On arm, use arm6 as the cpu default (backport from mainline, PR12527).
+  * Add libffi and libjava support for hppa (Randolph Chung). Closes: #232615.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 14 Feb 2004 09:26:15 +0100
+
+gcc-3.3 (1:3.3.3ds3-0pre3) unstable; urgency=low
+
+  * Update to gcc-3.3.3 CVS 20040125.
+    - Fixed PR11350, undefined labels with -Os -fPIC (closes: #195911).
+    - Fixed PR11793, ICE in extract_insn, at recog.c (closes: #203835).
+    - Fixed PR13544, removed backport for PR12862.
+    - Integrated backport for PR12441.
+  * Fixed since 3.3: java: not implemented interface methods of abstract
+    classes not found (closes: #225438).
+  * Disable pascal on arm architecture (currently broken).
+  * Update the build files to build a cross compiler (Nikita V. Youshchenko).
+    See debian/README.cross in the source package.
+  * Apply revised patch to make -mieee the default on alpha-linux,
+    and add -mieee-disable switch to turn the default off (closes: #212912).
+    (Tyson Whitehead)
+
+ -- Matthias Klose <doko@debian.org>  Sun, 25 Jan 2004 17:41:04 +0100
+
+gcc-3.3 (1:3.3.3ds2-0pre2) unstable; urgency=medium
+
+  * Update to gcc-3.3.3 CVS 20040110.
+    - Fixes compilation not terminating at -O1 on hppa (closes: #207516).
+  * Add backport to fix PR12441 (closes: #224576).
+  * Revert backport to 3.3 branch to fix PR12862, which introduced another
+    regression (PR13544). Closes: #225663.
+  * Tighten dependency of gnat-3.3 on gcc-3.3 (closes: #226273).
+  * Disable treelang build for cross compiler build.
+  * Disable pascal on alpha and ia64 architectures (currently broken).
+
+ -- Matthias Klose <doko@debian.org>  Sat, 10 Jan 2004 12:33:59 +0100
+
+gcc-3.3 (1:3.3.3ds1-0pre1) unstable; urgency=low
+
+  * Update to gcc-3.3.3 CVS 20031229.
+    - Fixes bootstrap error on ia64-linux.
+    - Fix -pthread on mips{,el}-linux (closes: #224875).
+    - Fix -Wformat for C++ (closes: #217075).
+  * Backport from mainline: Preserve inline-ness when redeclaring
+    a function template (closes: #195264).
+  * Add missing intrinsics headers on ix86 (closes: #224593).
+  * Fix location of libg2c libdir in libg2c.la file (closes: #224848).
+
+ -- Matthias Klose <doko@debian.org>  Mon, 29 Dec 2003 10:36:29 +0100
+
+gcc-3.3 (1:3.3.3ds0-0pre0.1) unstable; urgency=high
+
+   * NMU
+   * Fixed mips(el) spec file for -pthread: (Closes: #224875)
+   * [debian/patches/mips-pthread.dpatch] New.
+   * [debian/rules.patch] Added it to debian_patches.
+
+ -- J.H.M. Dassen (Ray) <jdassen@debian.org>  Sat, 27 Dec 2003 15:51:47 +0100
+
+gcc-3.3 (1:3.3.3ds0-0pre0) unstable; urgency=low
+
+  * Update to gcc-3.3.3 CVS 20031206.
+    - Fixes ICE in verify_local_live_at_start (hppa). Closes: #201550.
+    - Fixes miscompilation of linux-2.6/sound/core/oss/rate.c.
+      Closes: #219949.
+  * Add missing unwind.h to gcc package (closes: #220846).
+  * Regenerate control file to fix build dependencies for m68k.
+  * More gpc only patches to fix test failures on m68k.
+  * Reenable gpc for the Hurd (closes: #189851).
+
+ -- Matthias Klose <doko@debian.org>  Sat,  6 Dec 2003 10:29:07 +0100
+
+gcc-3.3 (1:3.3.2ds5-4) unstable; urgency=low
+
+  * Update libffi-dev package description (closes: #219508).
+  * For gij and libgcj fix dependency on the libstdc++ package, if
+    the latter isn't installed during the build.
+  * Apply patch to emit .note.GNU-stack section on linux arches
+    which by default need executable stack.
+  * Prefer gnat-3.3 over gnat-3.2 as a build dependency.
+  * Update the pascal tarball (different version released with the
+    same name).
+  * Add pascal patches to address various gpc testsuite failures.
+    On alpha and ia64, build gpc from the 20030830 version. Reenable
+    the build on m68k.
+    Remove the 20030507 gpc version from the tarball.
+  * Apply patch to build the shared ada libs and link the ada tools
+    against the shared libs. Not enabled by default, because gnat
+    and gnatlib are rebuilt during install. (Ludovic Brenta)
+
+ -- Matthias Klose <doko@debian.org>  Sun,  9 Nov 2003 22:34:33 +0100
+
+gcc-3.3 (1:3.3.2ds4-3) unstable; urgency=low
+
+  * Fix rules to omit inclusion of gnatpsta in mips(el) gnat package.
+
+ -- Matthias Klose <doko@debian.org>  Sun,  2 Nov 2003 14:29:59 +0100
+
+gcc-3.3 (1:3.3.2ds4-2) unstable; urgency=medium
+
+  * s390-ifcvt patch added. Fixes gcl miscompilation (closes: #217240).
+    (Gerhard Tonn)
+  * Fix an infinite loop in g++ compiling lufs, regression from 3.3.1.
+  * Fix a wrong code generation bug on alpha.
+    (Falk Hueffner)
+  * Update NEWS files.
+  * Add Falk Hueffner to the Debian GCC maintainers.
+  * Enable ada on mips and mipsel, but don't build the gnatpsta tool.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 29 Oct 2003 00:12:37 +0100
+
+gcc-3.3 (1:3.3.2ds4-1) unstable; urgency=medium
+
+  * Update to gcc-3.3.2.
+  * Update NEWS files.
+  * Miscompilation in the pari package at -O3 fixed (closes: #198172).
+  * On alpha-linux, revert -mieee as the default (Falk Hueffner).
+    Reopens: #212912.
+  * Add ia64-unwind patch (Jeff Bailey).
+  * Closed reports reported against gcc-2.96 (ia64), fixed at least in gcc-3.3:
+    - ICE in verify_local_live_at_start, at flow.c:2733 (closes: #135404).
+    - Compilation failure of stlport (closes: #135224).
+    - Infinite loop compiling cssc's pfile.cc with -O2 (closes: #115390).
+    - Added missing some string::compare() members (closes: #141199).
+    - <cmath> header declares std::pow (closes: #161853).
+    - <vector> does have at() method (closes: #59776).
+    - Fixed error in stl_deque.h (closes: #69530).
+    - Fixed problem with bastring (closes: #75759, #96539).
+    - bad_alloc and std:: namespace problem (closes: #75120).
+    - Excessive warnings from headers with -Weffc++ (closes: #76827).
+
+ -- Matthias Klose <doko@debian.org>  Fri, 17 Oct 2003 08:07:01 +0200
+
+gcc-3.3 (1:3.3.2ds3-0pre5) unstable; urgency=low
+
+  * Update to gcc-3.3.2 CVS 20031005.
+    - Fixes cpp inserting a spurious newline (closes: #210478, #210482).
+    - Fixes generation of unrecognizable insn compiling kernel source
+      on alpha (closes: #202762).
+    - Fixes ICE in add_abstract_origin_attribute (closes: #212406).
+    - Fixes forward declaration in libstdc++ (closes: #209386).
+    - Fixes ICE in in extract_insn, at recog.c on alpha (closes: #207564).
+  * Make libgcj-common architecture all (closes: #211909).
+  * Build depend on: flex-old | flex (<< 2.5.31).
+  * Fix spec linking libraries with -pthread on powerpc (closes: #211054).
+  * debian/patches/arm-gotoff.dpatch: fix two kinds of PIC lossage.
+    (Phil Blundell)
+  * debian/patches/arm-common.dpatch: fix excessive alignment of common
+    blocks causing binutils testsuite failures.
+    (Phil Blundell)
+  * Update priorities in debian/control to match the archive.
+    (Ryan Murray)
+  * s390-nonlocal-goto patch added. Fixes some pascal testcase failures. 
+    (Gerhard Tonn)
+  * On alpha-linux, make -mieee default and add -mieee-disable switch
+    to turn default off (closes: #212912).
+    (Tyson Whitehead)
+  * Add gpc upstream patch for memory corruption fix.
+
+ -- Matthias Klose <doko@debian.org>  Sun,  5 Oct 2003 19:53:49 +0200
+
+gcc-3.3 (1:3.3.2ds2-0pre4) unstable; urgency=low
+
+  * Add gcc-unsharing_lhs patch (closes: #210848)
+
+ -- Ryan Murray <rmurray@debian.org>  Fri, 19 Sep 2003 22:51:19 -0600
+
+gcc-3.3 (1:3.3.2ds2-0pre3) unstable; urgency=low
+
+  * Update to gcc-3.3.2 CVS 20030908.
+  * PR11716 (Michael Eager, Dan Jacobowitz):
+    Make GCC think that the maximum length of a short branch is
+    64K instead of 128K.  It's a big hammer, but it works.
+    Closes: #207915.
+  * Downgrade gpc to 20030507 on alpha and ia64 (closes: #208717).
+
+ -- Matthias Klose <doko@debian.org>  Mon,  8 Sep 2003 21:49:52 +0200
+
+gcc-3.3 (1:3.3.2ds1-0pre2) unstable; urgency=low
+
+  * Update to gcc-3.3.2 CVS 20030831.
+    - Fix java NullPointerException detection with 2.6 kernels.
+      Closes: #206377.
+    - Fix bug in C++ typedef handling (closes: #205402).
+    - Fix -Wunreachable-code giving false complaints (closes: #196600).
+  * Update to gpc-20030830.
+  * Don't include /usr/share/java/repository into the class path according
+    to the new version of th Debian Java policy (closes: #205643).
+  * Build-Depend/Depend on libgc-dev.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 31 Aug 2003 08:56:53 +0200
+
+gcc-3.3 (1:3.3.2ds0-0pre1) unstable; urgency=low
+
+  * Remove the build dependency on locales for now.
+
+ -- Matthias Klose <doko@debian.org>  Fri, 15 Aug 2003 07:48:18 +0200
+
+gcc-3.3 (1:3.3.2ds0-0pre0) unstable; urgency=medium
+
+  * Update to gcc-3.3.2 CVS 20030812.
+    - Fixes generation of wrong code for XDM-AUTHORIZATION-1 key generation
+      and/or validation. Closes: #196090.
+  * Update NEWS files.
+  * Change ix86 default CPU type for code generation:
+    - i386-linux       -> i486-linux
+    - i386-gnu         -> i586-gnu
+    - i386-freebsd-gnu -> i486-freebsd-gnu
+    Use -march=i386 to target i386 CPUs.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 12 Aug 2003 10:31:28 +0200
+
+gcc-3.3 (1:3.3.1ds3-1) unstable; urgency=low
+
+  * gcc-3.3.1 (taken from CVS 20030805).
+    - C++: Fix declaration conflicts (closes: #203351).
+    - Fix ICE on ia64 (closes: #203840).
+
+ -- Matthias Klose <doko@debian.org>  Tue,  5 Aug 2003 20:38:02 +0200
+
+gcc-3.3 (1:3.3.1ds2-0rc2) unstable; urgency=low
+
+  * Update to gcc-3.3.1 CVS 20030728.
+    - Fix ICE in extract_insn, at recog.c:2148 on m68k.
+      Closes: #177840, #180375, #190818.
+    - Fix ICE while building libquicktime on alpha (closes: #192576).
+    - Fix failure to deal with using and private inheritance (closes: #202696).
+  * On sparc, /usr/lib was added to the library search path. Fix it.
+  * Closed reports reported against gcc-3.2.x and fixed in gcc-3.3:
+    - Fix error building the gcl package on arm (closes: #199835).
+
+ -- Matthias Klose <doko@debian.org>  Mon, 28 Jul 2003 20:39:07 +0200
+
+gcc-3.3 (1:3.3.1ds1-0rc1) unstable; urgency=low
+
+  * Update to gcc-3.3.1 CVS 20030722 (3.3.1 release candidate 1).
+    - Fix ICE in copy_to_mode_reg on 64-bit targets (closes: #189365).
+    - Remove documentation about multi-line strings (closes: #194391).
+    - Correctly document -falign-* parameters (closes: #198269).
+    - out-of-class specialization of a private nested template class.
+      Closes: #193830.
+    - Tighten shlibs dependency due to new symbols in libgcc.
+  * README.Debian for libg2c0, describing the need for g77-x.y when
+    working with the g2c header and library (closes: #189059).
+  * Call make with -j<number of CPU's>, if USE_NJOBS is set and non-empty
+    in the environment.
+  * Add another two m68k patches, partly replacing the workarounds provided
+    by Roman Zippel.
+  * Add the stack protector patch, but don't apply it by default. Edit
+    debian/rules.patch to apply it (closes: #171699, #189494).
+  * Remove wrong symlinks from gnat package (closes: #201882).
+  * Closed reports reported against gcc-2.95 and fixed in newer versions:
+    - SMP kernel compilation on alpha (closes: #134197, #146883).
+    - ICE on arm while building imagemagick (closes: #173475).
+  * Closed reports reported against gcc-3.2.x and fixed in gcc-3.3:
+    - Miscompilation of octave2.1 on hppa (closes: #192296, #193804).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 13 Jul 2003 10:26:30 +0200
+
+gcc-3.3 (1:3.3.1ds0-0pre0) unstable; urgency=medium
+
+  * Update to gcc-3.3.1 CVS 20030626.
+    - Fix ICE on arm compiling xfree86 (closes: #195424).
+    - Fix ICE on arm compiling fftw (closes: #186185).
+    - Fix ICE on arm in change_address_1, affecting a few packages.
+      Closes: #197099.
+    - Fix ICE in merge_assigned_reloads building Linux 2.4.2x sched.c.
+      Closes: #195237.
+    - Do not warn about failing to inline functions declared in system headers.
+      Closes: #193049.
+    - Fix ICE on mips{,el} in propagate_one_insn (closes: #194330, #196091).
+    - Fix ICE on m68k in reg_overlap_mentioned_p (closes: #194749).
+    - Build crtbeginT.o on m68k (closes: #197613).
+  * Fix g++ man page symlink (closes: #196271).
+  * mips/mipsel: Depend on binutils (>= 2.14.90.0.4). Closes: #196744.
+  * Disable treelang on powerpc (again). Closes: #196915.
+  * Pass -encoding in gcj-wrapper.
+
+ -- Matthias Klose <doko@debian.org>  Fri, 27 Jun 2003 00:14:43 +0200
+
+gcc-3.3 (1:3.3ds9-3) unstable; urgency=low
+
+  * Closing more reports, fixed in 3.2/3.3:
+    - ICE building texmacs on m68k (closes: #177433).
+    - libstdc++: <cmath> doesn't define trunc(...) (closes: #105285).
+    - libstdc++: setw is ignored for strings output (closes: #52382, #76645).
+  * Add build support to omit the manual pages and info docs from the
+    packages, disabled by default. Wait for a Debian statement, which can
+    be cited. Adresses: #193787.
+  * Reenable the m68k-const patch, don't run the g77 testsuite on m68k.
+    Addresses ICEs (#177840, #190818).
+  * Update arm-xscale patch.
+  * libstdc++: use __attribute__(__unknown__), instead of (unknown).
+    Closes: #195796.
+  * Build-Depend on glibc (>= 2.3.1) to prevent incorrect builds on woody.
+    Request from Adrian Bunk.
+  * Add treelang-update patch (Tim Josling), reenable treelang on powerpc.
+  * Add <GNU_TYPE>-{cpp,gcc,g++,gcj,g77} symlinks (addresses: #189466).
+  * Make sure not to build using binutils-2.14.90.0.[12].
+
+ -- Matthias Klose <doko@debian.org>  Mon,  2 Jun 2003 22:35:45 +0200
+
+gcc-3.3 (1:3.3ds9-2) unstable; urgency=medium
+
+  * Correct autoconf-related snafu in newly added ARM patches (Phil Blundell).
+  * Correct libgcc1 dependency (closes: #193689).
+  * Work around ldd/dpkg-shlibs failure on s390x.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 18 May 2003 09:40:15 +0200
+
+gcc-3.3 (1:3.3ds9-1) unstable; urgency=low
+
+  * gcc-3.3 final release.
+    See /usr/share/doc/gcc-3.3/NEWS.{gcc,html}.
+  * First merge of i386/x86-64 biarch support (Arnd Bergmann).
+    Disabled by default. Closes: #190066.
+  * New gpc-20030507 version.
+  * Upstream gpc update to fix netbsd build failure (closes: #191407).
+  * Add arm-xscale.dpatch, arm-10730.dpatch, arm-tune.dpatch, copied
+    from gcc-3.2 (Phil Blundell).
+  * Closing bug reports reported against older gcc versions (some of them
+    still present in Debian, but not anymore as the default compiler).
+    Usually, forwarded bug reports are linked to
+        http://gcc.gnu.org/PR<upstream bug number>
+    The upstream bug number usually can be found in the Debian reports.
+
+  * Closed reports reported against gcc-3.1.x, gcc-3.2.x and fixed in gcc-3.3:
+    - General:
+      + GCC accepts multi-line strings without \ or " " &c (closes: #2910).
+      + -print-file-name sometimes fails (closes: #161615).
+      + ICE: reporting routines re-entered (closes: #179597, #180937).
+      + Misplaced paragraph in gcc documentation (closes: #179363).
+      + Error: suffix or operands invalid for `div' (closes: #150558).
+      + builtin memcmp() could be optimised (closes: #85535).
+    - Ada:
+      + Preelaborate, exceptions, and -gnatN (closes: #181679).
+    - C:
+      + Duplicate loop conditions even with -Os (closes: #94701).
+      + ICE (signal 11) (closes: #65686).
+    - C++:
+      + C++ error on virtual function which uses ... (closes: #165829).
+      + ICE when warning about cleanup nastiness in switch statements
+        (closes: #184108).
+      + Fails to compile virtual inheritance with variable number of
+        argument method (closes: #151357).
+      + xmmintrin.h broken for c++ (closes: #168310).
+      + Stack corruption with variable-length automatic arrays and virtual
+        destructors (closes: #188527).
+      + ICE on illegal code (closes: #184862).
+      + _attribute__((unused)) is ignored in C++ (closes: #45440).
+      + g++ handles &(void *)foo bizzarely (closes: #79225).
+      + ICE (with wrong code, though) (closes: #81122).
+    - Java:
+      + Broken zip file handling (closes: #180567).
+    - ObjC:
+      + @protocol forward definitions do not work (closes: #80468).
+    - Architecture specific:
+      - alpha
+        + va_start is off by one (closes: #186139).
+        + ICE while building kseg/ddd (closes: #184753).
+        + g++ -O2 optimization error (closes: #70743).
+      - arm
+        + ICE with -O2 in change_address_1 (closes: #180750).
+        + gcc optimization error with -O2, affecting bison (closes: #185903).
+      - hppa
+        + ICE in insn_default_length (closes: #186447).
+      - ia64
+        + gcc-3.2 fails w/ optimization (closes: #178830).
+      - i386
+        + unnecessary generation of instruction cwtl (closes: #95318).
+        + {athlon} ICE building mplayer (closes: #184800).
+        + {pentium4} ICE while compiling mozilla with -march=pentium4
+          (closes: #187910).
+        + i386 optimisation: joining tests (closes: #105309).
+      - m68k
+        + ICE in instantiate_virtual_regs_1 (closes: #180493).
+        + gcc optimizer bug on m68k (closes: #64832).
+      - powerpc
+        + ICE in extract_insn, at recog.c:2175 building php3 (closes: #186299).
+        + ICE with -O -Wunreachable-code (closes: #189702).
+      - s390
+        + Operand out of range at assembly time when using -O2
+          (closes: #178596).
+      - sparc
+        + gcc-3.2 regression (wrong code) (closes: #176387).
+        + ICE in mem_loc_descriptor when optimizing (closes: #178909).
+        + ICE in gen_reg_rtx when optimizing (closes: #178965).
+        + Optimisation leads to unaligned access in memcpy (closes: #136659).
+
+  * Closed reports reported against gcc-3.0 and fixed in gcc-3.2.x:
+    - General:
+      + Use mkstemp instead of mktemp (closed: #127802).
+    - Preprocessor:
+      + Fix redundant error message from cpp (closed: #100722).
+    - C:
+      + Optimization issue on ix86 (pointless moving) (closed: #97904).
+      + Miscompilation of allegro on ix86 (closed: #105741).
+      + Fix generation of ..ng references for static aliases (alpha-linux).
+        (closed: #108036).
+      + ICE compiling pari on hppa (closed: #111613).
+      + ICE on ia64 in instantiate_virtual_regs_1 (closed: #121668).
+      + ICE in c-typeck.c (closed: #123687).
+      + ICE in gen_subprogram_die on alpha (closed: #127890).
+      + SEGV in initialization of flexible char array member (closed: #131399).
+      + ICE on arm compiling lapack (closed: #135967).
+      + ICE in incomplete_type_error (closed: #140606).
+      + Fix -Wswitch (also part of -Wall) (closed: #140995).
+      + Wrong code in mke2fs on hppa (closed: #150232).
+      + sin(a) * sin(b) gives wrong result (closed: #164135).
+    - C++:
+      + Error in std library headers on arm (closed: #107633).
+      + ICE nr. 19970302 (closed: #119635).
+      + std::wcout does not perform encoding conversions (closed: #128026).
+      + SEGV, when compiling iostream.h with -fPIC (closed: #134315).
+      + Fixed segmentation fault in included code for <rope> (closed: #137017).
+      + Fix with exception handling and -O (closed: #144232).
+      + Fix octave-2.1 build failure on ia64 (closed: #144584).
+      + nonstandard overloads in num_get facet (closed: #155900).
+      + ICE in expand_end_loop with -O (closed: #158371).
+    - Fortran:
+      + Fix blas build failure on arm (closed: #137959).
+    - Java:
+      + Interface members are public by default (closed: #94974).
+      + Strange message with -fno-bounds-check in combination with -W.
+        (closed: #102353).
+      + Crash in FileWriter using IOException (closed: #116128).
+      + Fix ObjectInputStream.readObject() calling constructors.
+        (closed: #121636).
+      + gij: better error reporting on `class not found' (closed: #125649).
+      + Lockup during .java->.class compilation (closed: #141899).
+      + Compile breaks using temporary inner class instance (closed: #141900).
+      + Default constructor for inner class causes broken bytecode.
+        (closed: #141902).
+      + gij-3.2 linked against libgcc1 (closed: #165180).
+      + gij-wrapper understands -classpath parameter (closed: #146634).
+      + gij-3.2 doesn't ignore -jar when run as "java" (closed: #167673).
+    - ObjC:
+      + ICE on alpha (closed: #172353).
+
+  * Closed reports reported against gcc-2.95 and fixed in newer versions:
+    - General:
+      + Undocumented option -pthread (closes: #165110).
+      + stdbool.h broken (closes: #167439).
+      + regparm/profiling breakage (closes: #20695).
+      + another gcc optimization error (closes: #51456).
+      + ICE in `output_fix_trunc' (closes: #55967).
+      + Fix "Unable to generate reloads for" (closes: #58219, #131890).
+      + gcc -c -MD x/y.c -o x/y.o leaves y.d in cwd (closes: #59232).
+      + Compiler error with -O2 (closes: #67631).
+      + ICE (unrecognizable insn) compiling php4 (closes: #83550, #84969).
+      + Another ICE (closes: #90666).
+      + man versus info inconsistency (-W and -Wall) (closes: #93708).
+      + ICE on invalid extended asm (closes: #136630).
+      + ICE in `emit_no_conflict_block' compiling perl (closes: #154599).
+      + ICE in `gen_tagged_type_instantiation_die'(closes: #166766).
+      + ICE on __builtin_memset(s, 0, -1) (closes: #170994).
+      + -Q option to gcc appears twice in the documentation (closes: #137382).
+      + New options for specifying targets:- -MQ and -MT (closes: #27878).
+      + Configure using --enable-nls (closes: #51651).
+      + gcc -dumpspecs undocumented (closes: #65406).
+    - Preprocessor:
+      + cpp fails to parse macros with varargs correctly(closes: #154767).
+      + __VA_ARGS__ stringification crashes preprocessor if __VA_ARGS__ is
+        empty (closes: #152709).
+      + gcc doesn't handle empty args in macro function if there is only
+        one arg(closes: #156450).
+    - C:
+      + Uncaught floating point exception causes ICE (closes: #33786).
+      + gcc -fpack-struct doesn't pack structs (closes: #64628).
+      + ICE in kernel (matroxfb) code (closes: #151196).
+      + gcc doesn't warn about unreachable code (closes: #158704).
+      + Fix docs for __builtin_return_address(closes: #165992).
+      + C99 symbols in limits.h not defined (closes: #168346).
+      + %zd printf spec generates warning, even in c9x mode (closes: #94891).
+      + Update GCC attribute syntax (closes: #12253, #43119).
+    - C++ & libstdc++-v3:
+      + template and virtual inheritance bug (closes: #152315).
+      + g++ has some troubles with nested templates (closes: #21255).
+      + vtable thunks implementation is broken (closes: #34876, #35477).
+      + ICE for templated friend (closes: #42662).
+      + ICE compiling mnemonic (closes: #42989).
+      + Deprecated: result naming doesn't work for functions defined in a
+        class (closes: #43170).
+      + volatile undefined ... (closes: #50529).
+      + ICE concerning templates (closes: #53698).
+      + Program compiled -O3 -malign-double segfaults in ofstream::~ofstream
+        (closes: #56867).
+      + __attribute__ ((constructor)) doesn't work with C++ (closes: #61806).
+      + Another ICE (closes: #65687).
+      + ICE in `const_hash' (closes: #72933).
+      + ICE on illegal code (closes: #83221).
+      + Wrong code with -O2 (closes: #83363).
+      + ICE on template class (closes: #85934).
+      + No warning for missing return in non-void member func (closes: #88260).
+      + Not a bug/fixed in libgcc1: libgcc.a symbols end up exported by
+        shared libraries (closes: #118670).
+      + ICE using nested templates (closes: #118781).
+      + Another ICE with templates (closes: #127489).
+      + More ICEs (closes: #140427, #141797).
+      + ICE when template declared after use(closes: #148603).
+      + template function default arguments are not handled (closes: #157292).
+      + Warning when including stl.h (closes: #162074).
+      + g++ -pedantic-errors -D_GNU_SOURCE cannot #include <complex>
+        (closes: #151671).
+      + c++ error message improvement suggestion (closes: #46181).
+      + Compilation error in stl_alloc.h with -fhonor-std (closes: #59005).
+      + libstdc++ has no method at() in stl_= (closes: #68963).
+    - Fortran:
+      + g77 crash (closes: #130415).
+    - ObjC:
+      + ICE: program cc1obj got fatal signal 11 (closes: #62309).
+      + Interface to garbage collector is undocumented. (closes: #68987).
+    - Architecture specific:
+      - alpha
+        + Can't compile with define gnu_source with stdio and curses
+          (closes: #97603).
+        + Header conflicts on alpha (closes: #134558).
+        + lapack-dev: cannot link on alpha (closes: #144602).
+        + ICE `fixup_var_refs_1' (closes: #43001).
+        + Mutt segv on viewing list of attachments (closes: #47981).
+        + ICE building open-amulet (closes: #48530).
+        + ICE compiling hatman (closes: #55291).
+        + dead code removal in switch() broken (closes: #142844).
+      - arm
+        + Miscompilation using -fPIC on arm (closes: #90363).
+        + infinite loop with -O on arm (closes: #151675).
+      - i386
+        + ICE when using -mno-ieee-fp and -march=i686 (closes: #87540).
+      - m68k
+        + Optimization (-O2) broken on m68k (closes: #146006).
+      - mips
+        + g++ exception catching does not work... (closes: #105569).
+        + update-menus gets Bus Error (closes: #120333).
+      - mipsel
+        + aspell: triggers ICE on mipsel (closes: #128367).
+      - powerpc
+        + -O2 produces wrong code (gnuchess example) (closes: #131454).
+      - sparc
+        + Misleading documentation for -malign-{jump,loop,function}s
+          (closes: #114029).
+        + Sparc GCC issue with -mcpu=ultrasparc (closes: #172956).
+        + flightgear: build failure on sparc (closes: #88694).
+
+ -- Matthias Klose <doko@debian.org>  Fri, 16 May 2003 07:13:57 +0200
+
+gcc-3.3 (1:3.3ds8-0pre9) unstable; urgency=high
+
+  * gcc-3.3 second prerelease.
+    - Fixing exception handling on s390 (urgency high).
+  * Reenabled gpc build (I had it disabled ...). Closes: #192347.
+
+ -- Matthias Klose <doko@debian.org>  Fri,  9 May 2003 07:32:14 +0200
+
+gcc-3.3 (1:3.3ds8-0pre8) unstable; urgency=low
+
+  * gcc-3.3 prerelease.
+    - Fixes gcj ICE (closes: #189545).
+  * For libstdc++ use the i486 atomicity implementation, introduced with
+    0pre6, left out in 0pre7 (closes: #191684).
+  * Add README.Debian for treelang (closes: #190812).
+  * Apply NetBSD changes (Joel Baker). Closes: #191551.
+  * New symbols in libgcc1, tighten the shlibs dependency.
+  * Disable testsuite run on mips/mipsel because of an outdated libc-dev
+    package.
+  * Do not build libffi with debug information, although configuring
+    with --enable-debug.
+
+ -- Matthias Klose <doko@debian.org>  Tue,  6 May 2003 06:53:49 +0200
+
+gcc-3.3 (1:3.3ds7-0pre7) unstable; urgency=low
+
+  * gcc-3.3 prerelease taken from the gcc-3_3-branch (CVS 20030429).
+  * Revert upstream libstdc++ change (closes: #191145, #191147, #191148,
+    #191149, #149159, #149151, and other reports).
+    Sorry for not detecting this before the upload, seems to be
+    broken on i386 "only".
+  * hurd-i386: Use /usr/include, not /include.
+  * Disable gpc on hurd-i386 (closes: #189851).
+  * Disable building the debug version of libstdc++ on powerpc-linux
+    (fixes about 200 java test cases).
+  * Install libstdc++v3 man pages (closes: #127263).
+
+ -- Matthias Klose <doko@debian.org>  Tue, 29 Apr 2003 23:28:44 +0200
+
+gcc-3.3 (1:3.3ds6-0pre6) unstable; urgency=high
+
+  * gcc-3.3 prerelease taken from the gcc-3_3-branch (CVS 20030426).
+  * libstdc++-doc: Fix index.html link (closes: #189424).
+  * Revert back to the i486 atomicity implementation, that was used
+    for gcc-3.2 as well. Reopens: #184446, #185662. Closes: #189983.
+    For this reason, tighten the libstdc++5 shlibs dependency. See
+    http://lists.debian.org/debian-devel/2003/debian-devel-200304/msg01895.html
+    Don't build the ix86 specfic libstdc++ libs anymore.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 27 Apr 2003 19:47:54 +0200
+
+gcc-3.3 (1:3.3ds5-0pre5) unstable; urgency=low
+
+  * gcc-3.3 prerelease taken from the gcc-3_3-branch (CVS 20030415).
+  * Disable treelang on powerpc.
+  * Disable gpc on m68k.
+  * Install locale data. Conflict with gcc-3.2 (<= 1:3.2.3-0pre8).
+  * Fix generated bits/atomicity.h (closes: #189183).
+  * Tighten libgcc1 shlibs dependency (new symbol _Unwind_Backtrace).
+
+ -- Matthias Klose <doko@debian.org>  Wed, 16 Apr 2003 00:37:05 +0200
+
+gcc-3.3 (1:3.3ds4-0pre4) unstable; urgency=low
+
+  * gcc-3.3 prerelease taken from the gcc-3_3-branch (CVS 20030412).
+  * Avoid sparc64 dependencies for libgcc1 on sparc (Clint Adams).
+  * Make the default sparc 32bit target v8 instead of v7. This mainly
+    enables hardmul, which should speed up v8 and v9 systems by a large
+    margin (Ben Collins).
+  * Tighten binutils dependency for sparc.
+  * On i386, build libstdc++ optimized for i486 and above. The library
+    in /usr/lib is built for i386. Closes: #184446, #185662.
+  * Add gpc build (from gcc-snapshot package).
+  * debian/control: Include all packages, that _can_ be built from
+    this source package (except the cross packages).
+  * Add m68k patches: m68k-const, m68k-subreg, m68k-loop.
+  * Run the 3.3 testsuite a second time with the installed gcc-3.2
+    to check for regressions (promised, only this time, and for the
+    final release ;). Add build dependencies (gobjc-3.2, g77-3.2, g++-3.2).
+
+ -- Matthias Klose <doko@debian.org>  Sat, 12 Apr 2003 10:11:11 +0200
+
+gcc-3.3 (1:3.3ds3-0pre3) unstable; urgency=low
+
+  * gcc-3.3 prerelease taken from the gcc-3_3-branch (CVS 20030331).
+  * Reenable java on arm.
+  * Build-Depend on binutils-2.13.90.0.18-1.3 on m68k. Fixes all
+    bprob/gcov testsuite failures.
+  * Enable C++ build on arm.
+  * Enable the sparc64 build.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 31 Mar 2003 23:24:54 +0200
+
+gcc-3.3 (1:3.3ds2-0pre2) unstable; urgency=low
+
+  * gcc-3.3 prerelease taken from the gcc-3_3-branch (CVS 20030317).
+  * Disable building the gcc-3.3-nof package.
+  * Disable Ada on mips and mipsel.
+  * Remove the workaround to build Ada on powerpc.
+  * Add GNU Free documentation license to copyright file.
+  * Update the sparc64 build patches (Clint Adams). Not yet enabled.
+  * Disable C++ on arm (Not yet tested).
+  * Add fix for ICE on powerpc (see: #184684).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 16 Mar 2003 21:40:57 +0100
+
+gcc-3.3 (1:3.3ds1-0pre1) unstable; urgency=low
+
+  * gcc-3.3 prerelease taken from the gcc-3_3-branch (CVS 20030310).
+  * Add gccbug manpage.
+  * Don't build libgnat package (no shared library).
+  * Configure with --enable-sjlj-exceptions on hppa and m68k for
+    binary compatibility with libstdc++ built with gcc-3.2.
+  * Disable Java on arm-linux (never seen it sucessfully bootstrap).
+  * Install non-conflicting baseline README.
+  * multilib *.so and *.a moved to /usr/lib/gcc-lib/... , so that several
+    compiler versions can be installed concurrently.
+  * Remove libstdc++-incdir patch applied upstream.
+  * libstdc++ 64 bit development files now handled in -dev target.
+    (Gerhard Tonn)
+  * Drop build dependencies for gpc (tetex-bin, help2man, libncurses5-dev).
+  * Add libstdc++5-3.3-dev confict to libstdc++5-dev (<= 1:3.2.3-0pre3).
+  * Enable builds on m68k (all but C++ for the moment). gcc-3.3 bootstraps,
+    while gcc-3.2 doesn't.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 10 Mar 2003 23:41:00 +0100
+
+gcc-3.3 (1:3.3ds0-0pre0) unstable; urgency=low
+
+  * First gcc-3.3 package, built for s390 only. All other architectures
+    build the gcc-3.3-base package only.
+    To build the package on other architectures, edit debian/rules.defs
+    (macro no_dummy_archs).
+  * gcc-3.3 prerelease taken from the gcc-3_3-branch (CVS 20030301).
+  * Don't include the gcc locale files (would conflict with 3.2).
+  * Remove libffi-install-fix patch.
+  * Fix netbsd-i386 patches.
+  * Change priority of libstdc++5 and gcc-3.2-base to important.
+  * Install gcjh-wrapper for javah.
+  * gij suggests fastjar, gcj recommends fastjar.
+  * Allow builds using automake1.4 | automake (<< 1.5).
+  * Backport fix for to output more correct line numbers.
+  * Add help2man to build dependencies needed for some gpc man pages.
+  * gpc: Install binobj and gpidump binaries and man pages.
+  * Apply cross compilation patches submitted by Bastian Blank.
+  * Replace s390-biarch patch and copy s390-config-ml patch from 3.2
+    (Gerhard Tonn).
+  * Configure using --enable-debug.
+  * Add infrastructure to only build a subset of binary packages.
+  * Rename libstdc++-{dev,dbg,pic,doc} packages.
+  * Build treelang compiler.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  1 Mar 2003 12:56:42 +0100
+
+gcc-3.2 (1:3.2.3ds2-0pre3) unstable; urgency=low
+
+  * gcc-3.2.3 prerelease (CVS 20030228)
+    - Fixes bootstrap failure on alpha-linux.
+    - Fixes ICE on m68k (closes: #177016).
+  * Build Pascal with -O1 on powerpc, disable Pascal on arm, m68k and
+    sparc (due to wrong code generation for fwrite in glibc,
+    see PR optimization/9279).
+  * Apply cross compilation patches submitted by Bastian Blank.
+
+ -- Matthias Klose <doko@debian.org>  Fri, 28 Feb 2003 20:26:30 +0100
+
+gcc-3.2 (1:3.2.3ds1-0pre2) unstable; urgency=medium
+
+  * gcc-3.2.3 prerelease (CVS 20030221)
+    - Fixes ICE on hppa (closes: #181813).
+  * Patch for ffitest in s390-java.dpatch deleted, since already fixed
+    upstream. (Gerhard Tonn)
+  * Build crtbeginT.o on m68k-linux (closes: #179807).
+  * Install gcjh-wrapper for javah (closes: #180218).
+  * gij suggests fastjar, gcj recommends fastjar (closes: #179298).
+  * Allow builds using automake1.4 | automake (<< 1.5) (closes: #180048).
+  * Backport fix for to output more correct line numbers (closes: #153965).
+  * Add help2man to build dependencies needed for some gpc man pages.
+  * gpc: Install binobj and gpidump binaries and man pages.
+  * Disable gpc on arm due to wrong code generation for fwrite in
+    glibc (see PR optimization/9279).
+
+ -- Matthias Klose <doko@debian.org>  Sat, 22 Feb 2003 19:58:20 +0100
+
+gcc-3.2 (1:3.2.3ds0-0pre1) unstable; urgency=low
+
+  * gcc-3.2.3 prerelease (CVS 20030210)
+    - Fixes long millicode calls on hppa (closes: #180520)
+  * New gpc-20030209 version.  Remove gpc-update.dpatch and gpc-testsuite.dptch
+    as they are no longer needed.
+  * Fix netbsd-i386 patches (closes: #180129, #179931)
+  * m68k-bootstrap.dpatch: backport gcse.c changes from 3.3/MAIN to 3.2
+  * Change priority of libstdc++5 and gcc-3.2-base to important.
+
+ -- Ryan Murray <rmurray@debian.org>  Tue, 11 Feb 2003 06:18:09 -0700
+
+gcc-3.2 (1:3.2.2ds8-1) unstable; urgency=low
+
+  * gcc-3.2.2 release.
+    - Fixes ICE, regression from 2.95 (closes: #176117).
+    - Fixes ICE, regression from 2.95 (closes: #179161).
+  * libstdc++ for biarch installs now upstream to usr/lib64,
+    therefore mv usr/lib/64 usr/lib64 no longer necessary. (Gerhard Tonn)
+
+ -- Ryan Murray <rmurray@debian.org>  Wed,  5 Feb 2003 01:35:29 -0700
+
+gcc-3.2 (1:3.2.2ds7-0pre8) unstable; urgency=low
+
+  * gcc-3.2.2 prerelease (CVS 20030130).
+  * update s390 libffi patch
+  * debian/control: add myself to uploaders and change libc12-dev depends to
+    libc-dev on i386 (closes: #179128)
+  * Build-Depend on procps so that ps is available for logwatch
+
+ -- Ryan Murray <rmurray@debian.org>  Fri, 31 Jan 2003 04:00:15 -0700
+
+gcc-3.2 (1:3.2.2ds6-0pre7) unstable; urgency=low
+
+  * gcc-3.2.2 prerelease (CVS 20030128).
+    - Update needed for hppa.
+    - Fixes ICE on arm, regression from 2.95.x (closes: #168086).
+    - Can use default bison (1.875).
+  * Apply netbsd build patches (closes: #177674, #178328, #178325,
+    #178326, #178327).
+  * Run the logwatch script on "slow" architectures (arm, m68k) only.
+  * autoreconf.dpatch: Only update libtool.m4, which is newer conceptually
+    than libtool 1.4 (Ryan Murray).
+  * Apply autoreconf patch universally (Ryan Murray).
+  * More robust gij/gcj wrapper scripts, include /usr/lib/jni in default
+    JNI search path (Ben Burton). Closes: #167932.
+  * Build crtbeginT.o on m68k (closes: #177036).
+  * Fixed libc-dev source dependency (closes: #178602).
+  * Tighten shlib dependency to the current package version; should be
+    1:3.2.2-1 for the final release (closes: #178867).
+
+ -- Matthias Klose <doko@debian.org>  Tue, 28 Jan 2003 21:59:30 +0100
+
+gcc-3.2 (1:3.2.2ds5-0pre6) unstable; urgency=low
+
+  * gcc-3.2 snapshot taken from the gcc-3_2-branch (CVS 20030123).
+  * Build locales needed by the libstdc++ testsuite.
+  * Update config.{guess,sub} files from autotools-dev (closes: #177674).
+  * Disable Ada and Java on netbsd-i386 (closes: #177679).
+  * gnat: Add suggests for gnat-doc and ada-reference-manual.
+
+ -- Matthias Klose <doko@debian.org>  Thu, 23 Jan 2003 22:16:53 +0100
+
+gcc-3.2 (1:3.2.2ds4-0pre5.1) unstable; urgency=low
+
+  * Readd build dependency `locales' on arm.  locales is now installable
+  * Add autoreconf patch for mips{,el}. (closes: #176311)
+
+ -- Ryan Murray <rmurray@debian.org>  Wed, 22 Jan 2003 14:31:14 -0800
+
+gcc-3.2 (1:3.2.2ds4-0pre5) unstable; urgency=low
+
+  * Remove build dependency `libc6-dev-sparc64 [sparc]' for now.
+  * Remove build dependency `locales' on arm. locales is uninstallable
+    on arm due to the missing glibc-2.3.
+  * Use bison-1.35. bison-1.875 causes an hard error on the reduce/reduce
+    conflict in objc-parse.y.
+
+ -- Matthias Klose <doko@debian.org>  Fri, 10 Jan 2003 10:10:43 +0100
+
+gcc-3.2 (1:3.2.2ds4-0pre4) unstable; urgency=low
+
+  * Try building with gcc-2.95 on m68k-linux. Building gcc-3.2 with gcc-3.2
+    does not work for me. m68k-linux doesn't look good at all ...
+  * Fix s390 build error.
+  * Add locales to build dependencies. A still unsolved issue is the
+    presence of the locales de_DE, en_PH, en_US, es_MX, fr_FR and it_IT,
+    or else some tests in the libstdc++ testsuite will fail.
+  * Put all -nof files in the -nof package (closes: #175253).
+  * Correctly exit logwatch script (closes: #175251).
+  * Install linker-map.gnu file for libstdc++_pic (closes: #175144).
+  * Install versioned gpcs docs only (closes: #173844).
+  * Include gpc test results in gpc package.
+  * Link local libstdc++ documentation to local source-level documentation.
+  * Clarify libstdc++ description (so version and library version).
+    Closes: #175799.
+  * Include library in libstdc++-dbg package (closes: #176005).
+
+ -- Matthias Klose <doko@debian.org>  Wed,  8 Jan 2003 23:39:50 +0100
+
+gcc-3.2 (1:3.2.2ds3-0pre3) unstable; urgency=low
+
+  * gcc-3.2 snapshot taken from the gcc-3_2-branch (CVS 20021231).
+    - Fix loop count computation for preconditioned unrolled loops.
+      Closes: #162919.
+    - Fix xmmintrin.h (_MM_TRANSPOSE4_PS) CVS 20021027 (closes: #163647).
+    - Fix [PR 8601] strlen/template interaction causes ICE CVS 20021201.
+      Closes: #166143.
+  * Watch the log files, which are written during the testsuite runs and print
+    out a message, if there is still activity. No more buildd timeouts on arm
+    and m68k ...
+  * Remove gpc's reference to librx1g-dev package (closes: #172953).
+  * Remove trailing dots on package descriptions.
+  * Fix external reference to cpp.info in gcc.info (closes: #174598).
+
+ -- Matthias Klose <doko@debian.org>  Tue, 31 Dec 2002 13:47:52 +0100
+
+gcc-3.2 (1:3.2.2ds2-0pre2) unstable; urgency=medium
+
+  * Friday, 13th upload, so what do you expect ...
+  * gcc-3.2 snapshot taken from the gcc-3_2-branch (CVS 20021212).
+  * Fix gnat build (autobuild maintainers: please revert back to gnat-3.2
+    (<= 1:3.2.1ds6-1) for building gnat-3.2, if the build fails building
+    gnatlib and gnattools).
+  * Really disable sparc64 support.
+
+ -- Matthias Klose <doko@debian.org>  Fri, 13 Dec 2002 00:26:37 +0100
+
+gcc-3.2 (1:3.2.2ds1-0pre1) unstable; urgency=low
+
+  * A candidate for the transition ...
+  * gcc-3.2 snapshot taken from the gcc-3_2-branch (CVS 20021210).
+    - doc/invoke.texi: Remove last reference to -a (closes: #171748).
+  * Disable sparc64 support. For now please use egcs64 to build sparc64
+    kernels.
+  * Disable Pascal on the sparc architecture (doesn't bootstrap).
+
+ -- Matthias Klose <doko@debian.org>  Tue, 10 Dec 2002 22:33:13 +0100
+
+gcc-3.2 (1:3.2.2ds0-0pre0) unstable; urgency=low
+
+  * gcc-3.2 snapshot taken from the gcc-3_2-branch (CVS 20021202).
+    - Should fix _Pragma expansion within macros (closes: #157416).
+  * New gpc-20021128 version. Run check using EXTRA_TEST_PFLAGS=-g0
+  * Add tetex-bin to build dependencies (gpc needs it). Closes: #171203.
+
+ -- Matthias Klose <doko@debian.org>  Tue,  3 Dec 2002 08:22:33 +0100
+
+gcc-3.2 (1:3.2.1ds6-1) unstable; urgency=low
+
+  * gcc-3.2.1 final release.
+  * Build gpc-20021111 for all architectures. hppa and i386 are
+    known to work. For the other architectures, send the usual FTBFS ...
+    WARNING: this gpc version is an alpha version, especially debug info
+    doesn't work well, so use -g0 for compiling. If you need a stable
+    gpc compiler, use gpc-2.95.
+  * Encode the gpc upstream version in the package name, the gpc release
+    date in the version number (requested by gpc upstream).
+  * Added libncurses5-dev and libgmp3-dev as build dependencies for the
+    gpc tests and runtime.
+  * Clean CVS files as well (closes: #169101).
+  * s390-biarch.dpatch added, backported from CVS (Gerhard Tonn).
+  * s390-config-ml.dpatch added, disables biarch for java,
+    libffi and boehm-gc on s390. They need a 64 bit runtime
+    during build which is not yet available on s390 (Gerhard Tonn).
+  * Biarch support for packaging adapted (Gerhard Tonn).
+    biarch variable added and with-sparc64 variable substituted in
+    most places by biarch.
+    dh_shlibdeps is applied only to 32 bit libraries on s390, since
+    ldd for 64 bit libraries don't work on 32 bit runtime.
+    Build dependency to libc6-dev-s390x added.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 20 Nov 2002 00:20:58 +0100
+
+gcc-3.2 (1:3.2.1ds5-0pre6) unstable; urgency=medium
+
+  * gcc-3.2.1 prerelease.
+  * Removed arm patch integrated upstream.
+  * Adjust gnat build dependency (closes: #167116).
+  * Always configure with --enable-clocale=gnu. The autobuilders do have
+    locales installed, but not generated the "de_DE" locale needed for
+    the autoconf test in libstdcc++-v3/aclocal.m4.
+  * libstdc++ documentaion: Don't compresss '*.txt' referenced by html pages.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 12 Nov 2002 07:19:44 +0100
+
+gcc-3.2 (1:3.2.1ds4-0pre5) unstable; urgency=medium
+
+  * gcc-3.2.1 snapshot (CVS 20021103).
+  * sparc64-build.dpatch: Updated. Lets sparc boostrap again.
+  * s390-loop.dpatch removed, already fixed upstream (Gerhard Tonn).
+  * bison.dpatch: Removed, patch submitted upstream.
+  * backport-java-6865.dpatch: Apply again during build.
+  * Tighten glibc dependency (closes: #166703).
+
+ -- Matthias Klose <doko@debian.org>  Sun,  3 Nov 2002 12:22:02 +0100
+
+gcc-3.2 (1:3.2.1ds3-0pre4) unstable; urgency=high
+
+  * gcc-3.2.1 snapshot (CVS 20021020).
+    - Expansion of _Pragma within macros fixed (closes: #157416).
+  * FTBFS: With the switch to bison-1.50 (and 1.75), gcc-3.2 fails to build from
+    source on Debian unstable systems. This is fixed in gcc HEAD, but not on
+    the current release branch.
+    HELP NEEDED:
+    - check what is missing from the patches in debian/patches/bison.dpatch.
+      This is a backport of the bison related patches, but showing regressions
+      in the gcc testsuite, so it cannot be applied.
+    - build gcc using byacc (bootstrap currently fails using byacc).
+    - build bison-1.35 in it's own package (the current 1.35-3 package fails
+      to build form source).
+    - and finally ask upstream to backport the patch to the branch. It's not
+      helpful not beeing able to follow the stable branch. Maybe we should
+      just switch to gcc HEAD as BSD does ...
+    As a terrible workaround, build the sources from CVS first on a machine,
+    with bison-1.35 installed, then package the tarball, so the bison
+    generated files are not rebuilt.
+
+  * re-add lost patch: configure with --enable-__cxa_atexit (closes: #163422),
+    Therefore urgency high.
+  * gcj-wrapper, gij-wrapper: Accept names starting with `.' (closes: #163172,
+    #164009).
+  * Point g++ manpage to correct g++ version (closes: #162843).
+  * Support for i386-freebsd-gnu (closes: #163883).
+  * s390-java.dpatch replaced with backport from cvs head (Gerhard Tonn).
+  * Disable the testsuite run on the Hurd (closes: #159650).
+  * s390-loop.dpatch added, fixes runtime problem (Gerhard Tonn).
+  * debian/patches/bison.dpatch: Backport for bison-1.75 compatibility.
+    Don't use it due to regressions.
+  * debian/patches/backport-java-6865.dpatch: Directly applied in the
+    included tarball because of bison problems.
+  * Make fixincludes priority optional, so linda can depend on it.
+  * Tighten binutils dependency.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 20 Oct 2002 10:52:49 +0200
+
+gcc-3.2 (1:3.2.1ds2-0pre3) unstable; urgency=low
+
+  * gcc-3.2.1 snapshot (CVS 20020923).
+  * Run the libstdc++ check-abi script. Results are put into the file
+    /usr/share/doc/libstdc++5/README.libstdc++-baseline in the libstdc++5-dev
+    package. This file contains a new baseline, if no baseline for this
+    architecture is included in the gcc sources.
+  * gcj-wrapper: Accept files starting with an underscore, accept
+    path names (closes: #160859, #161517).
+  * Explicitely call automake-1.4 when rebuilding Makefiles (closes: #161438).
+  * Let installed fixincludes script find files in /usr/lib/fixincludes.
+  * debian/rules.patch: Add .NOTPARALLEL as target, so that patches are
+    applied sequentially (closes: #159395).
+
+ -- Matthias Klose <doko@debian.org>  Tue, 24 Sep 2002 07:36:56 +0200
+
+gcc-3.2 (1:3.2.1ds1-0pre2) unstable; urgency=low
+
+  * gcc-3.2.1 snapshot (CVS 20020913). Welcome back m68k in bootstrap land!
+  * Fix arm-tune.dpatch (closes: #159354).
+  * Don't overwrite LD_LIBRARY_PATH in build (closes: #158459).
+  * --disable-__cxa_atexit on NetBSD (closes: #159620).
+  * Reenable installation of message catalogs (disabled in 3.2-0pre2).
+    Closes: #160175.
+  * Ben Collins
+    - Re-enable sparc64 build. This time, it's part of the default compiler.
+      I have disabled 64/alt libraries as they are too much overhead. All
+      libraries build 64bit, but currently only libgcc/libstdc++ include the
+      64bit libraries.
+    Closes: #160404.
+  * Depend on autoconf2.13, instead of autoconf.
+  * Phil Blundell
+    - debian/patches/arm-update.dpatch: Fix python2.2 build failure.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  7 Sep 2002 08:05:02 +0200
+
+gcc-3.2 (1:3.2.1ds0-0pre1) unstable; urgency=medium
+
+  * gcc-3.2.1 snapshot (CVS 20020829).
+    New g++ option -Wabi:
+      Warn when G++ generates code that is probably not compatible with the
+      vendor-neutral C++ ABI.  Although an effort has been made to warn about
+      all such cases, there are probably some cases that are not warned about,
+      even though G++ is generating incompatible code.  There may also be
+      cases where warnings are emitted even though the code that is generated
+      will be compatible.
+    The current version of the ABI is 102, defined by the __GXX_ABI_VERSION
+    macro.
+  * debian/NEWS.*: Updated.
+  * Fix libstdc++-dev dependency on libc-dev for the Hurd (closes: #157004).
+  * Add versioned expect build dependency.
+  * Tighten binutils dependency to 2.13.90.0.4.
+  * debian/patches/arm-tune.dpatch: Increase stack limit for configure.
+  * 3.2-0pre4 did build gnat-3.2 compilers for all architectures. Build-Depend
+    on gnat-3.2 now (closes: #156734).
+  * Remove bashism's in gcj-wrapper (closes: #157982).
+  * Add -cp and -classpath options to gij(1). Backport from HEAD (#146634).
+  * Add fastjar documentation.
+
+ -- Matthias Klose <doko@debian.org>  Fri, 30 Aug 2002 10:35:00 +0200
+
+gcc-3.2 (1:3.2ds0-0pre4) unstable; urgency=low
+
+  * Correct build dependency on gnat-3.1.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 12 Aug 2002 01:21:58 +0200
+
+gcc-3.2 (1:3.2ds0-0pre3) unstable; urgency=low
+
+  * gcc-3.2 upstream prerelease.
+  * Disable all configure options, which are standard:
+    --enable-threads=posix --enable-long-long, --enable-clocale=gnu
+
+ -- Matthias Klose <doko@debian.org>  Fri,  9 Aug 2002 21:59:08 +0200
+
+gcc-3.2 (1:3.2ds0-0pre2) unstable; urgency=low
+
+  * gcc-3.2 snapshot (CVS 20020802).
+  * Fix g++-include dir.
+  * Don't install the locale files (temporarily, until we don't build
+    gcc-3.1 anymore).
+  * New package libgcj-common to avoid conflict with classpath package.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  3 Aug 2002 09:08:34 +0200
+
+gcc-3.2 (1:3.2ds0-0pre1) unstable; urgency=low
+
+  * gcc-3.2 snapshot (CVS 20020729).
+
+ -- Matthias Klose <doko@debian.org>  Mon, 29 Jul 2002 20:36:54 +0200
+
+gcc-3.1 (1:3.1.1ds3-1) unstable; urgency=low
+
+  * gcc-3.1.1 release. Following this release we will have a gcc-3.2
+    release soon, which is gcc-3.1.1 plus some C++ ABI changes. Once
+    gcc-3.2 hits the archives, gcc-3.1.1 will go away.
+  * Don't build the sparc64 compiler. The packaging/patches are
+    currently broken.
+  * Add missing headers on m68k and powerpc.
+  * Install libgcc_s_nof on powerpc.
+  * Install libffi's copyright and doc files (closes: #152198).
+  * Remove dangling symlink (closes: #149002).
+  * libgcj3: Add a conflict to the classpath package (closes: #148664).
+  * README.C++: Fix URLs.
+  * libstdc++-dbg: Install into /usr/lib/debug, document it.
+  * backport-java-6865.dpatch: backport from HEAD.
+  * Fix typo in gcj docs (closes: #148890).
+  * Change libstdc++ include dir: /usr/include/c++/3.1.
+  * libstdc++-codecvt.dpatch: New patch (closes: #149776).
+  * Build libstdc++-pic package.
+  * Move 64bit libgcc in its own package libgcc1-64 (closes: #147249).
+  * Tighten glibc dependency.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 29 Jul 2002 00:34:49 +0200
+
+gcc-3.1 (1:3.1.1ds2-0pre3) unstable; urgency=low
+
+  * Updated to CVS 2002-06-06 (gcc-3_1-branch).
+  * Updated s390-java patch (Gerhard Tonn).
+  * Don't use -O in STAGE1_FLAGS on m68k.
+  * Fix `-classpath' option in gcj-wrapper script (closes: #150142).
+  * Remove g++-cxa-atexit patch, use --enable-__cxa_atexit configure option.
+
+ -- Matthias Klose <doko@debian.org>  Wed,  3 Jul 2002 23:52:58 +0200
+
+gcc-3.1 (1:3.1.1ds1-0pre2) unstable; urgency=low
+
+  * Updated to CVS 2002-06-06 (gcc-3_1-branch), fixing an ObjC regression.
+  * Welcome m68k to bootstrap land (thanks to Andreas Schwab).
+  * Add javac wrapper for gcj-3.1 (Michael Koch).
+  * Remove dangling symlink in /usr/share/doc/gcc-3.1 (closes: #149002).
+
+ -- Matthias Klose <doko@debian.org>  Fri,  7 Jun 2002 00:26:05 +0200
+
+gcc-3.1 (1:3.1.1ds0-0pre1) unstable; urgency=low
+
+  * Updated to CVS 2002-05-31 (gcc-3_1-branch).
+  * Change priorities from fastjar and gij-wrapper-3.1 from 30 to 31.
+  * Update arm-tune patch.
+  * Install xmmintrin.h header on i386 (closes: #148181).
+  * Install altivec.h header on powerpc.
+  * Call correct gij in gij-wrapper (closes: #148662, #148682).
+
+ -- Matthias Klose <doko@debian.org>  Wed, 29 May 2002 22:47:40 +0200
+
+gcc-3.1 (1:3.1ds2-2) unstable; urgency=low
+
+  * Tighten binutils dependency.
+  * Fix libstdc include dir for multilibs (Dan Jacobowitz).
+
+ -- Matthias Klose <doko@debian.org>  Tue, 21 May 2002 08:03:49 +0200
+
+gcc-3.1 (1:3.1ds2-1) unstable; urgency=low
+
+  * GCC 3.1 release.
+  * Ada cannot be built by the autobuilders for the first time. Do it by hand.
+    gnatgcc and gnatbind need to be in the PATH.
+  * Build with CC=gnatgcc, when building the Ada compiler.
+  * Hurd fixes.
+  * Don't build the sparc64 compiler; the hack isn't up to date and glibc
+    isn't converted to use /lib64 and /usr/lib64.
+  * m68k-linux shows bootstrap comparision failures. If you want to build
+    the compiler anyway and ignore the bootstrap comparision failure, edit
+    debian/rules.patch and uncomment the patch to ignore the failure. See
+    /usr/share/doc/gcc-3.1/BOOTSTRAP_COMPARISION_FAILURE for the differences.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 15 May 2002 09:53:00 +0200
+
+gcc-3.1 (1:3.1ds1-0pre6) unstable; urgency=low
+
+  * Build from the "final prerelease" tarball (gcc-3.1-20020508.tar.gz).
+  * Build gnat-3.1-doc package.
+  * Build fastjar package without building java packages.
+  * Hurd fixes.
+  * Updated sparc64-build patch.
+  * Add s390-ada patch (Gerhard Tonn).
+  * Undo the dwarf2 support for hppa from -0pre5.
+
+ -- Matthias Klose <doko@debian.org>  Thu,  9 May 2002 17:21:09 +0200
+
+gcc-3.1 (1:3.1ds0-0pre5) unstable; urgency=low
+
+  * Use /usr/include/g++-v3-3.1 as C++ include dir.
+  * Update s390-java patch (Gerhard Tonn).
+  * Tighten binutils dependency (gas patch for m68k-linux).
+  * Use gnat-3.1 as the gnat package name (as found in gcc/ada/gnatvsn.ads).
+  * dwarf2 support hppa: a snapshot of the gcc/config/pa directory
+    from the trunk dated 2002-05-02.
+
+ -- Matthias Klose <doko@debian.org>  Fri,  3 May 2002 22:51:37 +0200
+
+gcc-3.1 (1:3.1ds0-0pre4) unstable; urgency=low
+
+  * Use gnat-5.00w as the gnat package name (as found in gcc/ada/gnatvsn.ads).
+  * Don't build the shared libgnat library. It assumes an existing shared
+    libiberty library.
+  * Don't install the libgcjgc library.
+
+ -- Matthias Klose <doko@debian.org>  Thu, 25 Apr 2002 08:48:04 +0200
+
+gcc-3.1 (1:3.1ds0-0pre3) unstable; urgency=low
+
+  * Build fastjar on all architectures.
+  * Update m68k patches.
+  * Update s390-java patch (Gerhard Tonn).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 14 Apr 2002 15:34:47 +0200
+
+gcc-3.1 (1:3.1ds0-0pre2) unstable; urgency=low
+
+  * Add Ada support. To successfully build, a working gnatbind and gcc
+    driver with Ada support is needed.
+  * Apply needed arm patches from 3.0.4.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  6 Apr 2002 13:17:08 +0200
+
+gcc-3.1 (1:3.1ds0-0pre1) unstable; urgency=low
+
+  * First try for gcc-3.1.
+
+ -- Matthias Klose <doko@debian.org>  Mon,  1 Apr 2002 23:39:30 +0200
+
+gcc-3.0 (1:3.0.4ds3-6) unstable; urgency=medium
+
+  * Second try at fixing sparc build problems.
+
+ -- Phil Blundell <pb@debian.org>  Sun, 24 Mar 2002 14:49:26 +0000
+
+gcc-3.0 (1:3.0.4ds3-5) unstable; urgency=medium
+
+  * Enable java on ARM.
+  * Create missing directory to fix sparc build.
+
+ -- Phil Blundell <pb@debian.org>  Fri, 22 Mar 2002 20:21:59 +0000
+
+gcc-3.0 (1:3.0.4ds3-4) unstable; urgency=low
+
+  * Link with system zlib (closes: #136359).
+
+ -- Matthias Klose <doko@debian.org>  Tue, 12 Mar 2002 20:47:59 +0100
+
+gcc-3.0 (1:3.0.4ds3-3) unstable; urgency=low
+
+  * Build libf2c (pic and non-pic) with -mieee on alpha-linux.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 10 Mar 2002 00:37:24 +0100
+
+gcc-3.0 (1:3.0.4ds3-2) unstable; urgency=medium
+
+  * Apply hppa-build patch (Randolph Chung). Closes: #136731.
+  * Make libgcc1 conflict/replace with libgcc1-sparc64. Closes: #135709.
+  * gij-3.0 provides the `java' command. Closes: #128947.
+  * Depend on binutils (>= 2.11.93.0.2-2), allows stripping of libgcj.a
+    again. Closes: #99307.
+  * Update README.cross pointing to the README of the toolchain-source
+    package.
+
+ -- Matthias Klose <doko@debian.org>  Wed,  6 Mar 2002 21:53:34 +0100
+
+gcc-3.0 (1:3.0.4ds3-1) unstable; urgency=low
+
+  * Final gcc-3.0.4 release.
+  * debian/rules.d/binary-java.mk: Fix dormant typo, exposed by removing the
+    duplicate libgcj dependency and adding the gij-3.0 package.
+    Closes: #134005.
+  * New patch by Phil Blundell to fix scalapack build error on m68k.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 20 Feb 2002 23:59:43 +0100
+
+gcc-3.0 (1:3.0.4ds2-0pre020210) unstable; urgency=low
+
+  * Make the base package dependent on the binary-arch target. Closes: #133433.
+  * Get libstdc++ on arm woring (define _GNU_SOURCE). Closes: #133435.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 11 Feb 2002 20:31:12 +0100
+
+gcc-3.0 (1:3.0.4ds2-0pre020209) unstable; urgency=high
+
+  * Update to CVS sources (20020209 gcc-3_0-branch).
+  * Apply patch to fix bootstrap error on arm-linux (submitted upstream
+    by Phil Blundell). Closes: #130422.
+  * Make base package architecture any.
+  * Decouple versioned shlib dependencies from release number for
+    libobjc as well.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  9 Feb 2002 01:30:11 +0100
+
+gcc-3.0 (1:3.0.4ds1-0pre020203) unstable; urgency=medium
+
+  * One release critical bug outstanding:
+    - bootstrap error on arm.
+  * Update to CVS sources (20020203 gcc-3_0-branch).
+  * Fixed upstream: PR c/3504: Correct documentation of __alignof__.
+    Closes: #85445.
+  * Remove libgcc-powerpc patch, integrated upstream (closes: #131977).
+  * Tighten binutils build dependency (to address #126162).
+  * Move jv-convert to gcj package (closes: #131985).
+
+ -- Matthias Klose <doko@debian.org>  Sun,  3 Feb 2002 14:47:14 +0100
+
+gcc-3.0 (1:3.0.4ds0-0pre020127) unstable; urgency=low
+
+  * Two release critical bugs outstanding:
+    - bootstrap error on arm.
+    - bus errors for C++ and java executables on sparc (see the testsuite
+      results).
+  * Update to CVS sources (20020125 gcc-3_0-branch).
+  * Enable java support for s390 architecture (patch from Gerhard Tonn).
+  * Updated NEWS file for 3.0.3.
+  * Disable building the gcc-sparc64, but build a multilibbed compiler
+    for sparc as the default.
+  * Disabled the subreg-byte patch for sparc (request from Ben Collins).
+  * Fixed reference to libgcc1 package in README (closes: #126218).
+  * Do recommend libc-dev, not depend on it. For low-end or embedded systems
+    the dependency on libc-dev can make the difference between
+    having enough or having too little space to build a kernel.
+  * README.cross: Updated by Hakan Ardo.
+  * Decouple versioned shlib dependencies from release number. Closes: #118391.
+  * Fix diversions for gcc-3.0-sparc64 package (closes: #128178),
+    unconditionally remove `sparc64-linux-gcc' alternative.
+  * g77/README.libg2c.Debian: New file mentioning `libg2c-pic'. The next
+    g77 version (3.1) does build a static and shared library (closes: #104250).
+  * Fix formatting errors in the synopsis of the java man pages. Maybe the
+    reason for #127571. Closes: #127571.
+  * fastjar: Fail for the (currently incorrect) -u option. Addresses: #116145.
+    Add alternative for `jar' using priority 30 (closes: #118648).
+  * jv-convert: Add --help option and man page. Backport from HEAD branch.
+  * libgcj2-dev: Remove duplicate dependency (closes: #127805).
+  * Giving up and make just another new package gij-X.Y with only the gij-X.Y
+    binary for policy conformance (closes: #127111).
+  * gij: Provides an alternative for `java' (priority 30) using a wrapper
+    script (Stephen Zander) (closes: #128974). Added simple manpage.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 27 Jan 2002 13:33:41 +0100
+
+gcc-3.0 (1:3.0.3ds3-1) unstable; urgency=low
+
+  * Final gcc-3.0.3 release.
+  * Do not compress .txt files in libstdc++ docs referenced from html
+    pages (closes: #124136).
+  * libstdc++-dev suggests libstdc++-doc.
+  * debian/patches/gcc-ia64-NaT.dpatch: Update (closes: #123685).
+
+ -- Matthias Klose <doko@debian.org>  Fri, 21 Dec 2001 02:54:11 +0100
+
+gcc-3.0 (1:3.0.3ds2-0pre011215) unstable; urgency=low
+
+  * Update to CVS sources (011215).
+  * libstdc++ documentation updated upstream (closes: #123790).
+  * debian/patches/gcc-ia64-NaT.dpatch: Disable. Fixes bootstrap error
+    on ia64 (#123685).
+
+ -- Matthias Klose <doko@debian.org>  Sat, 15 Dec 2001 14:43:21 +0100
+
+gcc-3.0 (1:3.0.3ds1-0pre011210) unstable; urgency=medium
+
+  * Update to CVS sources (011208).
+  * Supposed to fix powerpc build error (closes: #123155).
+
+ -- Matthias Klose <doko@debian.org>  Thu, 13 Dec 2001 07:26:05 +0100
+
+gcc-3.0 (1:3.0.3ds0-0pre011209) unstable; urgency=medium
+
+  * Update to CVS sources (011208). Frozen for upstream 3.0.3 release.
+  * Apply contrib/PR3145.patch, a backport of Nathan Sidwell's patch to
+    fix PR c++/3145, the infamous "virtual inheritance" bug. This affected
+    especially KDE2 (eg. artsd). Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+  * cc1plus segfault in strength reduction fixed upstream. Closes: #122547.
+  * debian/patches/gcc-ia64-NaT.dpatch: Add patch to avoid a bug that can
+    cause miscompiled userapps to crash the kernel. Closes: #121924.
+  * Reenable shared libgcc for powerpc. Fixed upstream.
+    http://gcc.gnu.org/ml/gcc-patches/2001-11/msg00340.html
+    debian/patches/libgcc-powerpc.dpatch: New patch.
+  * Add upstream changelogs.
+  * Remove gij alternative. Move to gij package.
+
+ -- Matthias Klose <doko@debian.org>  Sun,  9 Dec 2001 09:36:48 +0100
+
+gcc-3.0 (1:3.0.2ds4-4) unstable; urgency=medium
+
+  * Disable building of libffi on mips and mipsel.
+    (closes: #117503).
+  * Enable building of shared libgcc on s390
+    (closes: #120452).
+
+ -- Christopher C. Chimelis <chris@debian.org>  Sat, 1 Dec 2001 06:15:29 -0500
+
+gcc-3.0 (1:3.0.2ds4-3) unstable; urgency=medium
+
+  * Fix logic to build libffi without java (closes: #117503).
+
+ -- Matthias Klose <doko@debian.org>  Sun,  4 Nov 2001 14:34:50 +0100
+
+gcc-3.0 (1:3.0.2ds4-2) unstable; urgency=medium
+
+  * Enable java for ia64 (Jeff Licquia). Closes: #116798.
+  * Allow building of libffi without gcj (Jeff Licquia).
+    New libffi packages for arm hurd-i386 mips mipsel,
+    still missing: hppa, s390.
+  * debian/NEWS.gcc: Add 3.0.2 release notes.
+  * debian/patches/hppa-align.dpatch: New patch from Alan Modra,
+    submitted by Randolph Tausq.
+
+ -- Matthias Klose <doko@debian.org>  Thu, 25 Oct 2001 23:59:31 +0200
+
+gcc-3.0 (1:3.0.2ds4-1) unstable; urgency=medium
+
+  * Final gcc-3.0.2 release. The source tarball is not the released
+    tarball, but taken from CVS 011024).
+  * Remove patch for s390, included upstream.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 24 Oct 2001 00:49:40 +0200
+
+gcc-3.0 (1:3.0.2ds3-0pre011014) unstable; urgency=low
+
+  * Update to CVS sources (011014). Frozen for upstream 3.0.2 release.
+    Closes: #109351, #114099, #114216, #105741 (allegro3938).
+  * Added debian/patches/fastjar.dpatch, which makes fastjar extract
+    filenames correctly (previously, some had incorrect names on extract).
+    Closes: #113236.
+  * Priorities fixed in the past (closes: #94404).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 14 Oct 2001 13:19:43 +0200
+
+gcc-3.0 (1:3.0.2ds2-0pre010923) unstable; urgency=low
+
+  * Bootstraps on powerpc again (closes: #112777).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 23 Sep 2001 01:32:11 +0200
+
+gcc-3.0 (1:3.0.2ds2-0pre010922) unstable; urgency=low
+
+  * Update to CVS sources (010922).
+  * Fixed upstream (closes: #111801). #105569 on hppa.
+  * Update hppa patch (Matt Taggart).
+  * Fix libstdc++-dev package description (closes: #112758).
+  * debian/rules.d/binary-objc.mk: Fix build error (closes: #112462).
+  * Make gobjc-3.0 conflict with gcc-3.0-sparc64 (closes: #111772).
+
+ -- Matthias Klose <doko@debian.org>  Sat, 22 Sep 2001 09:34:49 +0200
+
+gcc-3.0 (1:3.0.2ds1-0pre010908) unstable; urgency=low
+
+  * Update to CVS sources (010908).
+  * Update hppa patch (Matt Taggart).
+  * Depend on libgc6-dev, not libgc5-dev, which got obsolete (during
+    the freeze ...). However adds s390 support (closes: #110189).
+  * debian/patches/m68k-reload.dpatch: New patch (Roman Zippel).
+    Fixes #89023.
+  * debian/patches/gcc-sparc.dpatch: New patch ("David S. Miller").
+    Fixes libstdc++ testsuite failures on sparc.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 8 Sep 2001 14:26:20 +0200
+
+gcc-3.0 (1:3.0.2ds0-0pre010826) unstable; urgency=low
+
+  * gcc-3.0-nof: Fix symlink to gcc-3.0-base doc directory.
+  * debian/patches/gcj-without-rpath: New patch.
+  * Remove self dependency on libgcj package.
+  * Handle diversions for upgrades from 3.0 and 3.0.1 -> 3.0.2
+    in gcc-3.0-sparc64 package.
+  * Build libg2c.a with -fPIC -DPIC and name the result libg2c-pic.a.
+    Link with this library to avoid linking with non-pic code.
+    Use this library when building dynamically loadable objects (python
+    modules, gimp plugins, ...), which need to be linked against g2c or
+    a library which is linked against g2c (i.e. lapack).
+    Packages needing '-lg2c-pic' must have a build dependency on
+    'g77-3.0 (>= 1:3.0.2-0pre010826).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 26 Aug 2001 13:59:03 +0200
+
+gcc-3.0 (1:3.0.2ds0-0pre010825) unstable; urgency=low
+
+  * Update to CVS sources (010825).
+  * Add libc6-dev-sparc64 to gcc-3.0-sparc64 and to sparc build dependencies.
+  * Remove conflicts on egcc package (closes: #109718).
+  * Fix gcc-3.0-nof dependency.
+  * s390 patches against gcc-3.0.1 (Gerhard Tonn).
+  * debian/control: Require binutils (>= 2.11.90.0.27)
+
+ -- Matthias Klose <doko@debian.org>  Sat, 25 Aug 2001 10:59:15 +0200
+
+gcc-3.0 (1:3.0.1ds3-1) unstable; urgency=low
+
+  * Final gcc-3.0.1 release.
+  * Changed upstream: default of -flimit-inline is 600 (closes: #106716).
+  * Add fastjar man page (submitted by "The Missing Man Pages Project",
+    http://www.netmeister.org/misc/m2p2i/) (closes: #103051).
+  * Fixed in last upload as well: #105246.
+  * debian/patches/cpp-memory-leak.dpatch: New patch
+  * Disable installation of shared libgcc on s390 (Gerhard Tonn).
+
+ -- Matthias Klose <doko@debian.org>  Mon, 20 Aug 2001 20:47:13 +0200
+
+gcc-3.0 (1:3.0.1ds2-0pre010811) unstable; urgency=high
+
+  * Update to CVS sources (010811). Includes s390 support.
+  * Add xlibs-dev to Build-Depends (libgcj).
+  * Enable java for powerpc, disable java for ia64.
+  * Enable ObjC garbage collection for all archs, which have a libgc5-dev
+    package.
+  * New patch libstdc++-codecvt (Michael Piefel) (closes: #104614).
+  * Don't strip static libgcj library (work around binutils bug #107812).
+  * Handle diversions for upgrade 3.0 -> 3.0.1 in gcc-3.0-sparc64 package
+    (closes: #107569).
+
+ -- Matthias Klose <doko@debian.org>  Sat, 11 Aug 2001 20:42:15 +0200
+
+gcc-3.0 (1:3.0.1ds1-0pre010801) unstable; urgency=high
+
+  * Update to CVS sources (010801). (closes: #107012).
+  * Remove build dependency on non-free graphviz and include pregenerated
+    docs (closes: #107124).
+  * Fixed in 3.0.1 (closes: #99307).
+  * Updated m68k-updates patch (Roman Zippel).
+  * Another fix for ia64 packaging bits (Randolph Chung).
+
+ -- Matthias Klose <doko@debian.org>  Tue, 31 Jul 2001 21:52:55 +0200
+
+gcc-3.0 (1:3.0.1ds0-0pre010727) unstable; urgency=high
+
+  * Update to CVS sources (010727).
+  * Add epoch to source version. Change '.dsx' to 'dsx', so that
+    3.1.1ds0 gt 3.1ds7 (closes: #106538).
+
+ -- Matthias Klose <doko@debian.org>  Sat, 28 Jul 2001 09:56:29 +0200
+
+gcc-3.0 (3.0.1.ds0-0pre010723) unstable; urgency=high
+
+  * ia64 packaging bits (Randolph Chung) (closes: #106252).
+
+ -- Matthias Klose <doko@debian.org>  Mon, 23 Jul 2001 23:02:03 +0200
+
+gcc-3.0 (3.0.1.ds0-0pre010721) unstable; urgency=high
+
+  * Update to CVS sources (010721).
+    - Remove patches applied upstream: libstdc++-limits.dpatch,
+      objc-data-references
+    - Updated other patches.
+  * Fix gij alternative (closes: #103468, #103883).
+  * Patch to fix bootstrap on sparc (closes: #103568).
+  * Corrected (closes: #105371) and updated README.Debian.
+  * m68k patches for sucessful bootstrap (Roman Zippel).
+  * Add libstdc++v3 porting hints to README.Debian and README.C++.
+  * m68k md fix (#105622) (Roman Zippel).
+  * debian/rules2: Disable non-functional ulimit on Hurd (#105884).
+  * debian/control: Require binutils (>= 2.11.90.0.24)
+  * Java is enabled for alpha (closes: #87300).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 22 Jul 2001 08:24:04 +0200
+
+gcc-3.0 (3.0.ds9-4) unstable; urgency=high
+
+  * Move this version to testing ASAP. testing still has a prerelease
+    version with now incompatible ABI's. If sparc doesn't build,
+    then IMHO it's better to remove it from testing.
+  * debian/control.m4: Set uploaders field. Adjust description of
+    gcc-3.0 (binary) package (closes: #102271, #102620).
+  * Separate gij.1 in it's own pseudo man page (closes: #99523).
+  * debian/patches/java-manpages.dpatch: New patch.
+  * libgcj: Install unversioned gij.
+
+ -- Matthias Klose <doko@debian.org>  Tue,  3 Jul 2001 07:38:08 +0200
+
+gcc-3.0 (3.0.ds9-3) unstable; urgency=high
+
+  * Reenable configuration with posix threads on i386 (lost in hurd-i386
+    merge).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 24 Jun 2001 22:21:45 +0200
+
+gcc-3.0 (3.0.ds9-2) unstable; urgency=medium
+
+  * Move this version to testing ASAP. testing still has a prerelease
+    version with now incompatible ABI's.
+  * Add libgcc0 and libgcc300 to the build conflicts (#102041).
+  * debian/README.FIRST: Removed (#101534).
+  * Updated subreg-byte patch (doc files).
+  * Disable java for the Hurd, mips and mipsel (#101570).
+  * Patch for building on the Hurd (#101708) (Jeff Bailey <jbailey@nisa.net>).
+  * Packaging fixes for the Hurd (#101711) (Jeff Bailey <jbailey@nisa.net>).
+  * Include pregenerated doxygen (1.2.6) docs for libstdc++-v3 (#101557).
+    The current doxygen-1.2.8.1 segaults.
+  * C++: Enable -fuse-cxa-atexit by default (#101901).
+  * Correct mail address in gccbug (#101743).
+  * Make rules resumable after failure in binary-xxx targets (#101637).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 24 Jun 2001 16:04:53 +0200
+
+gcc-3.0 (3.0.ds9-1) unstable; urgency=low
+
+  * Final 3.0 release.
+  * Update libgcc version number (#100983, #100988, #101069, #101115, #101328).
+  * Updated hppa-build patch (Matt Taggart <taggart@carmen.fc.hp.com>).
+  * Disable java for hppa.
+  * Updated subreg-byte patch for sparc (Ben Collins).
+
+ -- Matthias Klose <doko@debian.org>  Mon, 18 Jun 2001 18:26:04 +0200
+
+gcc-3.0 (3.0.ds8-0pre010613) unstable; urgency=low
+
+  * Update patches for recent (010613 23:13 +0200) CVS sources.
+  * Fix packaging bugs (#100459, #100447, #100483).
+  * Build-Depend on gawk, mawk doesn't work well with test_summary.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 13 Jun 2001 23:13:38 +0200
+
+gcc-3.0 (3.0.ds7-0pre010609) unstable; urgency=low
+
+  * Fix build dependency for the hurd (#99164).
+  * Update patches for recent (010609) CVS sources.
+  * Disable java on powerpc (link error in libjava).
+  * gcc-3.0-base.postinst: Don't prompt for non-interactive installs (#100110).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 10 Jun 2001 09:45:57 +0200
+
+gcc-3.0 (3.0.ds6-0pre010526) unstable; urgency=high
+
+  * Urgency "high" for replacing the gcc-3.0 snapshots in testing, which
+    now are incompatile due to the changed ABIs.
+  * Upstream begins tagging with "gcc-3_0_pre_2001mmdd".
+  * Tighten dependencies to install only binary packages derived from
+    one source (#98851). Tighten libc6-dev dependency to match libc6.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 27 May 2001 11:35:31 +0200
+
+gcc-3.0 (3.0.ds6-0pre010525) unstable; urgency=low
+
+  * ATTENTION: The ABI (exception handling) changed. No upgrade path from
+    earlier snapshots (you had been warned in the postinst ...)
+    Closing #93597, #94576, #96448, #96461.
+    You have to rebuild
+  * HELP is appreciated for scanning the Debian BTS and sending followups
+    to bug reports!!!
+  * Should we name debian gcc uploads? What about a "still seeking
+    g++ maintainer" upload?
+  * Fixed in gcc-3.0: #97030
+  * Update patches for recent (010525) CVS sources.
+  * Make check depend on build target (fakeroot problmes).
+  * debian/rules.d/binary-libgcc.mk: new file, build first.
+  * Free memory detection on the hurd for running the testsuite.
+  * Update debhelper build dependency.
+  * libstdc++-doc: Include doxygen generated docs.
+  * Fix boring packaging bugs, too tired for appropriate changelogs ...
+    #93343, #96348, #96262, #97134, #97905, #96451, #95812, #93157
+  * Fixed bugs: #87000.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 26 May 2001 23:10:42 +0200
+
+gcc-3.0 (3.0.ds5-0pre010510) unstable; urgency=low
+
+  * Update patches for recent (010506) CVS sources.
+  * New version of source, as of 2001-05-10
+  * New version of gpc source, as of 2001-05-06 (disabled by default).
+  * Make gcc-3.0-sparc64 provide an alternative for sparc64-linux-gcc,
+    since it can build kernels just fine (it seems)
+  * Add hppa patch from Matt Taggart
+  * Fix objc info inclusion...now merged with gcc info
+  * Do not install the .la for libstdc++, since it confuses libtool linked
+    applications when libstdc++3-dev and libstdc++2.10-dev are both
+    installed (closes #97905).
+  * Fixed gcc-base and libgcc section/prio to match overrides
+
+ -- Ben Collins <bcollins@debian.org>  Mon,  7 May 2001 00:08:52 +0200
+
+gcc-3.0 (3.0.ds5-0pre010427) unstable; urgency=low
+
+  * Fixed priority for fastjar from optional to extra
+  * New version of source, as of 2001-04-27
+  * Fix description of libgcj-dev
+  * libffi-install: Make libffi installable
+  * Add libffi and libffi-dev packages. libffi is only enabled for java
+    targets right now. Perhaps more will be enabled later.
+  * Fixes to build cross compiler package (for avr)
+    (Hakan Ardo <hakan@debian.org>).
+  * Better fixincludes description (#93157).
+  * Remove all remnants of libg++
+  * Remove all hacks around libstdc++ version. Since we are strictly v3 now,
+    we can treat it like a normal shared lib, and not worry about all those
+    ABI changes.
+  * Remove all cruft control scripts. Note, debhelper will create scripts
+    that it needs to. It will do the doc link stuff and the ldconfig stuff
+    explicitly.
+  * Clean up the SONAME parsing stuff, make it a little more cleaner over
+    all the lib packages
+  * Make libffi install when built (IOW, whenever java is enabled). This
+    should obsolete the libffi package, which is old and broken
+  * Revert to normal sonames, except for ia64 (for now)
+  * Remove all references to dh_testversion, since they are deprecated for
+    Build-Depends
+  * Fix powerpc nof build
+  * Remove all references to the MULTILIB stuff, since the arches are
+    using specialized builds anyway (nof, softfloat).
+  * Added 64bit sparc64 package (gcc-3.0-sparc64, libgcc0-sparc64)
+  * Removed obsolete shlibs.local file
+
+ -- Ben Collins <bcollins@debian.org>  Sun, 15 Apr 2001 21:33:15 -0400
+
+gcc-3.0 (3.0.ds4-0pre010403) unstable; urgency=low
+
+  * debian/README: Updated for gcc-3.0
+  * debian/rules.patch: Added subreg-byte patch for sparc
+  * debian/rules.unpack: Update to current CVS for gcc tarball name
+  * debian/patches/subreg-byte.dpatch: sparc subreg-byte support
+  * debian/patches/gcc-rawhide.dpatch: Removed
+    debian/patches/gpc-2.95.dpatch: Removed
+    debian/patches/sparc32-rfi.dpatch: Removed
+    debian/patches/temporary.dpatch: Removed
+  * Moving to unstable now
+  * debian/patches/gcc-ppc-disable-shared-libgcc.dpatch: New patch,
+    disables shared libgcc for powerpc target, since it isn't compatible
+    with the EABI objects.
+  * Create $(with_shared_libgcc) var
+  * debian/rules.d/binary-gcc.mk: Use this new variable to determine if
+    the libgcc package actually has any files
+
+ -- Ben Collins <bcollins@debian.org>  Tue,  3 Apr 2001 23:00:55 -0400
+
+gcc-3.0 (3.0.ds2-0pre010223) experimental; urgency=low
+
+  * New snapshot. Use distinct shared object names for shared libraries:
+    we don't know if binary API's still change until the final release.
+  * Versioned package names.
+  * debian/control.m4: New file. Add gcc-base, libgcc0, libobjc1,
+    libstdc++-doc, libgcj1, libgcj1-dev, fastjar, fixincludes packages.
+    Remove gcc-docs package.
+  * debian/gcov.1: Remove.
+  * debian/*: Remove 2.95.x support. Prepare for 3.0.
+  * debian/patches: Remove 2.95.x patches.
+  * Changed source package name. It's not allowed anymore to overwrite
+    source packages with different content. Introducing a 'debian source
+    element' (.ds<num>), which is stripped again from the version number
+    for the binary packages.
+  * Fixed bugs and added functionality:
+    #26436, #27878, #33786, #34876, #35477, #42662, #46181, #42989,
+    #47981, #48530, #50529, #51227, #51456, #51651, #52382, #53698,
+    #55291, #55967, #56867, #58219, #59005, #59232, #59776, #64628,
+    #65687, #67631, #68632, #68963, #68987, #69530, #72933, #75120,
+    #75759, #76645, #76827, #83221, #87540
+  * libgcj fixes: 42894, #51266, #68560, #71187, #79984
+
+ -- Matthias Klose <doko@debian.org>  Sat, 24 Feb 2001 13:41:11 +0100
+
+gcc-2.95 (2.95.3-2.001222) experimental; urgency=low
+
+  * New upstream version 2.95.3 experimental (CVS 20001222).
+  * debian/control.in: Versioned package names, removal of snapshot logic.
+    Remove fake gcc-docs package.
+  * Reserve -1 release numbers for woody.
+  * Updated to gpc-20001218.
+
+ -- Matthias Klose <doko@debian.org>  Fri, 22 Dec 2000 19:53:03 +0100
+
+gcc (2.95.2-20) unstable; urgency=low
+
+    * Apply patch from gcc-2_95-branch; remove ulimit for make check.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 10 Dec 2000 17:01:13 +0100
+
+gcc (2.95.2-19) unstable; urgency=low
+
+  * Added testsuite-20001207 from current snapshots. We'll need results
+    for 2.95.2 to make sure there are no regressions against that release.
+    Dear build daemons and porters to other architectures, please send an
+    email to gcc-testresults@gcc.gnu.org.
+    You can do this by running "debian/rules mail-summary".
+  * Updated to gpc-20001206.
+  * Added S/390 patch prepared by Chu-yeon Park <kokids@debian.org> (#78983).
+  * debian/patches/libio.dpatch: Fix iostream doc (fixes #77647).
+  * debian/patches/gcc-doc.dpatch: Update URL (fixes #77542).
+  * debian/patches/gcc-reload1.dpatch Patch from the gcc-bug list which
+    fixes a problem in "long long" on i[345]86 (i686 was not affected).
+
+ -- Matthias Klose <doko@debian.org>  Sat,  9 Dec 2000 12:30:32 +0100
+
+gcc (2.95.2-18) unstable; urgency=low
+
+  * debian/control.in: Fix syntax errors (fixes #76146, #76458).
+    Disable gpc on the hurd by request (#75686).
+  * debian/patches/arm-various.dpatch: Patches from Philip Blundell
+    for ARM arch (fixes #75801).
+  * debian/patches/gcc-alpha-mi-thunk.dpatch: Patches from Chris Chimelis
+    for alpha arch.
+  * debian/patches/g77-docs.dpatch: Adjust g77 docs (fixes #72594).
+  * Update gpc to gpc-20001118.
+  * Reenable gpc for alpha.
+  * debian/README.C++: Merge debian/README.libstdc++ and C++ FAQ information
+    provided by Matt Zimmermann.
+  * Build gcj only on architectures, where libgcj-2.95.1 can be built as well.
+    Probably needs some adjustments ...
+  * Conditionalize for chill, fortran, java, objc and chill.
+
+  * NOT APPLIED:
+    debian/patches/libstdc++-bastring.dpatch: Apply fix (fixes #75759).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 19 Nov 2000 10:40:41 +0100
+
+gcc (2.95.2-17) unstable; urgency=low
+
+  * Disable gpc for alpha.
+  * Include gpc-cpp in gpc package (fixes #74492).
+  * Don't build gcc-docs compatibility package anymore.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 11 Oct 2000 06:16:53 +0200
+
+gcc (2.95.2-16) unstable; urgency=low
+
+  * Applied the emdebian/cross compiler patch and documentation
+    (Frank Smith <smith@amirix.com>).
+  * Applied patch for avr target (Hakan Ardo <hakan@debian.org>).
+  * debian/control.in: Add awk to Build-Depends.
+    Tighten libc6-dev dependency for libstdc++-dev (fixes #73031,
+    #72531, #72534).
+  * Disable libobjc_gc for m68k again (fixes #74380).
+  * debian/patches/arm-namespace.dpatch: Apply patch from Philip
+    Blundell <pb@futuretv.com> to fix name space pollution on arm
+    (fixes #70937).
+  * Fix more warnings in STL headers (fixes #69352, #71943).
+
+ -- Matthias Klose <doko@debian.org>  Mon,  9 Oct 2000 21:51:41 +0200
+
+gcc (2.95.2-15) unstable; urgency=low
+
+  * debian/control.in: Add libgc5-dev to build depends (fixes #67015).
+  * debian/rules.def: Build GC enabled ObjC runtime for sparc.
+  * Bug #58741 fixed (in some version since 2.95.2-5).
+  * debian/control.in: Recommend librx1g-dev, libgmp2-dev, libncurses5-dev
+    (unit dependencies).
+  * Patches from Marcus Brinkmann for the hurd (fixes #67763):
+    - debian/rules.defs: Disable objc_gc on hurd-i386.
+      Disable libg++ on GNU systems.
+    - debian/rules2: Set correct names of libstdc++/libg++
+      libraries on GNU systems.
+      Write out correct shlibs and shlibs.local file content.
+    - Keep _G_config.h for the Hurd.
+  * Apply patch for ObjC linker warnings.
+  * Don't apply gcj backport patch for sparc.
+  * Apply libio compatability patch
+  * debian/glibcver.sh: generate appropriate version for glibc
+  * debian/rules.conf: for everything after glibc 2.1, we always append
+    "-glibc$(ver)" to the C++ libs for linux.
+  * Back down gpc to -13 version (-14 wont compile on anything but i386
+    and m68k becuase of gpc).
+  * Remove extraneous and obsolete sparc64 patches/files from debian/*
+
+ -- Ben Collins <bcollins@debian.org>  Thu, 21 Sep 2000 08:08:35 -0400
+
+gcc-snapshot (20000901-2.2) experimental; urgency=low
+
+  * New snapshot.
+  * debian/rules2: Move tradcpp0 to cpp package.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  2 Sep 2000 01:14:28 +0200
+
+gcc-snapshot (20000802-2.1) experimental; urgency=low
+
+  * New snapshot.
+  * debian/rules2: Fixes. tradcpp0 is in gcc package, not cpp.
+
+ -- Matthias Klose <doko@debian.org>  Thu,  3 Aug 2000 07:40:05 +0200
+
+gcc-snapshot (20000720-2) experimental; urgency=low
+
+  * New snapshot.
+  * Enable libstdc++-v3.
+  * debian/rules2: Don't use -D for /usr/bin/install.
+
+ -- Matthias Klose <doko@debian.org>  Thu, 20 Jul 2000 22:33:37 +0200
+
+gcc (2.95.2-14) unstable; urgency=low
+
+  * Update gpc patch.
+
+ -- Matthias Klose <doko@debian.org>  Wed,  5 Jul 2000 20:51:16 +0200
+
+gcc (2.95.2-13) frozen unstable; urgency=low
+
+  * Update debian/README: document how to compile 2.0.xx kernels; don't
+    register gcc272 as an alternative for gcc (closes #62419).
+    Clarify compiler setup (closes #65548).
+  * debian/control.in: Make libstdc++-dev depend on current version of g++.
+  * Undo CVS update from release -8 (problems on alpha, #55263).
+
+ -- Matthias Klose <doko@debian.org>  Mon, 19 Jun 2000 23:06:48 +0200
+
+gcc (2.95.2-12) frozen unstable; urgency=low
+
+  * debian/gpc.postinst: Correct typo introduced with -11 (fixes #64193).
+  * debian/patches/gcc-rs600.dpatch: ppc codegen fix (fixes #63933).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 21 May 2000 15:56:05 +0200
+
+gcc (2.95.2-11) frozen unstable; urgency=medium
+
+  * Upload to unstable again (fixes critical #63784).
+  * Fix doc-base files (fixes important #63810).
+  * gpc wasn't built in -10 (fixes #63977).
+  * Make /usr/bin/pc an alternative (fixes #63888).
+  * Add SYSCALLS.c.X to gcc package.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 14 May 2000 22:17:44 +0200
+
+gcc (2.95.2-10) frozen; urgency=low
+
+  * debian/control.in: make gcc conflict on any version of egcc
+    (slink to potato upgrade problem, fixes grave #62084).
+  * Build protoize programs, separate out in new package (fixes #59436,
+    #62911).
+  * Create dummy gcc-docs package for smooth update from slink (fixes #62537).
+  * Add doc-base support for all -doc packages (fixes #63380).
+
+ -- Matthias Klose <doko@debian.org>  Mon,  1 May 2000 22:24:28 +0200
+
+gcc (2.95.2-9) frozen unstable; urgency=low
+
+  * Disable the sparc-bi-arch.dpatch (patch from Ben Collins, built
+    for sparc as NMU 8.1) (fixes critical #61529 and #61511).
+    "Seems that when you compile gcc 2.95.x for sparc64-linux and compile
+     sparc32 programs, the code is not the same as sparc-linux compile for
+     sparc32 (this is a bug, and is fixed in gcc 2.96 CVS)."
+  * debian/patches/gcj-vs-iconv.dpatch: Option '--encoding' for
+    encoding of input files. Patch from Tom Tromey  <tromey@cygnus.com>
+    backported to 2.95.2 (fixes #42895).
+    Compile a Latin-1 encoded file with `gcj --encoding=Latin1 ...'.
+  * debian/control.in: gcc, g++ and gobjc suggest their corresponding
+    task packages (fixes #59623).
+
+ -- Matthias Klose <doko@debian.org>  Sat,  8 Apr 2000 20:19:15 +0200
+
+gcc (2.95.2-8) frozen unstable; urgency=low
+
+  * Post-2.95.2 CVS updates of the gcc-2_95-branch until 20000313.
+  * debian/rules2: configure with --enable-java-gc=no for sparc. Fixes
+    gcj side of #60535.
+  * debian/rules.patch: Disable gcc-emit-rtl patch for all archs but
+    alpha. Disable g++-is-tree patch ("just for 2.95.1").
+  * debian/README: Update for gcc-2.95.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 27 Mar 2000 00:03:16 +0200
+
+gcc (2.95.2-7) frozen unstable; urgency=low
+
+  * debian/patches/gcc-empty-struct-init.dpatch; Apply patch from
+    http://gcc.gnu.org/ml/gcc-patches/2000-02/msg00637.html. Fixes
+    compilation of 2.3.4x kernels.
+  * debian/patches/gcc-emit-rtl.dpatch: Apply patch from David Huggins-Daines
+    <dhuggins@linuxcare.com> (backport from 2.96 CVS to fix #55263).
+  * debian/patches/gcc-pointer-arith.dpatch: Apply patch from Jim Kingdon
+    <kingdon@redhat.com> (backport from 2.96 CVS to fix #54951).
+
+ -- Matthias Klose <doko@debian.org>  Thu,  2 Mar 2000 23:16:43 +0100
+
+gcc (2.95.2-6) frozen unstable; urgency=low
+
+  * Post-2.95.2 CVS updates of the gcc-2_95-branch until 20000220.
+  * Remove dangling symlink probably left over from libstdc++2.9
+    package (fixes #53661).
+  * debian/patches/gcc-alpha-complex-float.dpatch: Fixed patch by
+    David Huggins-Daines (fixes #58486).
+  * debian/g++.{postinst,prerm}: Remove outdated g++FAQ registration
+    (fixes #58253).
+  * debian/control.in: gcc-doc replaces gcc-docs (fixes #58108).
+  * debian/rules2: Include some fixed headers (asm, bits, linux, ...).
+  * debian/patches/{gcc-alpha-ev5-fix,libstdc++-valarray}.dpatch: Remove.
+    Applied upstream.
+  * debian/patches/libstdc++-bastring.dpatch: Add patch from
+    sicard@bigruth.solsoft.fr (fixes #56715).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 20 Feb 2000 15:08:13 +0100
+
+gcc (2.95.2-5) frozen unstable; urgency=low
+
+  * Post-2.95.2 CVS updates of the gcc-2_95-branch until 20000116.
+  * Add more build dependencies (fixes #53204).
+  * debian/patches/gcc-alpha-complex-float.dpatch: Patch from
+    Joel Klecker <jk@espy.org> to compile glibc correctly on alpha.
+    "Should fix the g77 problems too."
+  * debian/patches/{libio,libstdc++-wall2}.dpatch. Remove patches
+    applied upstream.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 16 Jan 2000 19:16:54 +0100
+
+gcc (2.95.2-4) unstable; urgency=low
+
+  * debian/patches/libio.dpatch: Patch from Martin v. Loewis.
+    (fixes: #35628).
+  * debian/patches/libstdc++-deque.dpatch: Patch from Martin v. Loewis.
+    (fixes: #52689).
+  * debian/control.in: Updated Build-Depends, removed outdated README.build.
+    Fixes #51246.
+  * Tighten dependencies to cpp (>= 2.95.2-4) (closes: #50294).
+  * debian/rules.patch: Really do not apply patches/gcj-backport.dpatch.
+    Fixes #51636.
+  * Apply updated sparc-bi-arch.dpatch from Ben Collins.
+  * libstdc++: Define wstring type, if __ENABLE_WSTRING is defined. Request
+    from the author of the War FTP Daemon for Linux ("Jarle Aase"
+    <jgaa@jgaa.com>).
+  * debain/g++.preinst: Remove dangling sysmlinks (fixes #52359).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 19 Dec 1999 21:53:48 +0100
+
+gcc (2.95.2-3) unstable; urgency=low
+
+  * debian/rules2: Don't install $(gcc_lib_dir)/include/asm; these are
+    headers fixed for glibc-1.x (closes: #49434).
+  * debian/patches/cpp-dos-newlines.dpatch: Keep CR's without
+    following LF (closes: #49186).
+  * Bug #37358 (internal compiler errors when building vdk_0.6.0-5)
+    fixed in gcc-2.95.? (closes: #37358).
+  * Apply patch gcc-alpha-ev5-fix from Richard Henderson <rth@cygnus.com>
+    (should fix #48527 and #46963).
+  * debian/README.Bugs: Documented non bug #44554.
+  * Applied patch from Alexandre Oliva to fix gpc boostrap on alpha.
+    Reenabled gpc on all architectures.
+  * Post-2.95.2 CVS updates of the gcc-2_95-branch until 19991108.
+  * Explicitely generate postinst/prerm chunks for usr/doc transition.
+    debhelper currently doesn't handle generation for packages with
+    symlinked directories.
+  * debian/patches/libstdc++-wall3.dpatch: Fix warnings in stl_deque.h
+    and stl_rope.h (closes: #46444, #46720).
+  * debian/patches/gcj-backport.dpatch: Add file, don't apply (yet).
+
+ -- Matthias Klose <doko@debian.org>  Wed, 10 Nov 1999 18:58:45 +0100
+
+gcc (2.95.2-2) unstable; urgency=low
+
+  * New gpc-19991030 snapshot.
+  * Post-2.95.2 CVS updates of the gcc-2_95-branch until 19991103.
+  * Reintegrated sparc patches (bcollins@debian.org), which were lost
+    in 2.95.2-1.
+  * debian/rules2: Only install $(gcc_lib_dir)/include/asm, when existing.
+  * debian/patches/gpc-2.95.{dpatch,diff}: updated patch to drop
+    initialization in stor-layout.c.
+  * debian/NEWS.gcc: Updated for gcc-2.95.2.
+  * debian/bugs/bug-...: Removed testcases for fixed bugs.
+  * debian/patches/...dpatch: Removed patches applied upstream.
+  * debian/{rules2,g++.postinst,g++.prerm}: Handle c++ alternative.
+  * debian/changelog: Merged gcc272, egcs and snapshot changelogs.
+
+ -- Matthias Klose <doko@debian.org>  Tue,  2 Nov 1999 23:09:23 +0200
+
+gcc (2.95.2-1.1) unstable; urgency=low
+
+  * Most of the powerpc patches have been applied upstream.  Remove all
+    but ppc-ice, ppc-andrew-dwarf-eh, and ppc-descriptions.
+  * mulilib-install.dpatch was definitely a bad idea.  Fix it properly
+    by using install -D.
+  * Also, don't make directories before installing any more.  Simplifies
+    rules a (tiny) bit.
+  * Do not build with LDFLAGS=-s.  Everything gets stripped out anyway by
+    dh_strip -a -X_debug; so leave the binaries in the build tree with
+    debugging symbols for simplified debugging of the packages.
+
+ -- Daniel Jacobowitz <dan@debian.org>  Sat, 30 Oct 1999 12:40:12 -0400
+
+gcc (2.95.2-1) unstable; urgency=low
+
+  * gcc-2.95.2 release (taken from the CVS archive). -fstrict-aliasing
+    is disabled upstream.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 25 Oct 1999 10:26:19 +0200
+
+gcc (2.95.2-0pre4) unstable; urgency=low
+
+  * Updated to cvs updates of the gcc-2_95-branch until 19991021.
+  * Updated gpc to gpc-19991018 snapshot (closes: #33037, #47453).
+    Enable gpc for all architectures ...
+  * Document gcc exit codes (closes: #43863).
+  * According to the bug submitter (Sergey V Kovalyov <sqk0316@scires.nyu.edu>)
+    the original source of these CERN librarties is outdated now. The latest
+    version of cernlibs compiles and works fine with slink (closes #31546).
+  * According to the bug submitter (Gergely Madarasz <gorgo@sztaki.hu>),
+    the problem triggered on i386 cannot be reproduced with the current
+    jade and php3 versions anymore (closes: #35215).
+  * Replace corrupted m68k-pic.dpatch (from Roman Hodek and Andreas Schwab
+    <Roman.Hodek@informatik.uni-erlangen.de> <schwab@suse.de> and apply to
+    all architectures (closes: #48011).
+  * According to the bug submitter (Herbert Xu <herbert@gondor.apana.org.au>)
+    this bug "probably has been fixed". Setting it to severity "fixed"
+    (fixes: #39616), will close it later ...
+  * debian/README.Bugs: Document throwing C++ exceptions "through" C
+    libraries (closes: #22769).
+
+ -- Matthias Klose <doko@debian.org>  Fri, 22 Oct 1999 20:33:00 +0200
+
+gcc (2.95.2-0pre3) unstable; urgency=low
+
+  * Updated to cvs updates of the gcc-2_95-branch until 19991019.
+  * Apply NMU patches (closes: #46217).
+  * debian/control.in: Fix egcs64 conflict-dependency for sparc
+    architecture (closes: #47088).
+  * debian/rules2: dbg-packages share doc dir with lib packages
+    (closes #45067).
+  * debian/patches/gcj-debian-policy.dpatch: Patch from Stephane
+    Bortzmeyer to conform to Debian policy (closes: #44463).
+  * debian/bugs/bug-*: Added test cases for new bug reports.
+  * debian/patches/libstdc++-bastring.dpatch: Patch by Richard Kettlewell
+    (closes #46550).
+  * debian/rules.patch: Apply libstdc++-wall2 patch (closes #46609).
+  * debian/README: Fix typo (closes: #45253).
+  * debian/control.in: Remove primary/secondary distinction;
+    dbg-packages don't provide their normal counterparts (closes #45206).
+  * debian/rules.patch: gcc-combine patch applied upstream.
+  * debian/rules2: Only use mail if with_check is set (off by default).
+  * debian/rules.conf: Tighten binutils dependency to 2.9.5.0.12.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 19 Oct 1999 20:33:00 +0200
+
+gcc (2.95.2-0pre2.0.2) unstable; urgency=HIGH (for m68k)
+
+  * Binary-only NMU for m68k as quick fix for another bug; the patch
+    is in CVS already, too.
+  * Applied another patch by Andreas Schwab to fix %a5 restauration in
+    some cases.
+
+ -- Roman Hodek <Roman.Hodek@informatik.uni-erlangen.de>  Thu, 30 Sep 1999 16:09:15 +0200
+
+gcc (2.95.2-0pre2.0.1) unstable; urgency=HIGH (for m68k)
+
+  * Binary-only NMU for m68k as quick fix for serious bugs; the patches
+    are already checked into gcc CVS and should be in the next official
+    version, too.
+  * Applied two patches by Andreas Schwab to fix -fpic and loop optimization.
+
+ -- Roman Hodek <Roman.Hodek@informatik.uni-erlangen.de>  Mon, 27 Sep 1999 15:32:49 +0200
+
+gcc (2.95.2-0pre2) unstable; urgency=low
+
+  * Fixed in 2.95.2 (closes: #43478).
+  * Previous version had Pascal examples missing in doc directory.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 8 Sep 1999 22:18:17 +0200
+
+gcc (2.95.2-0pre1) unstable; urgency=low
+
+  * Updated to cvs updates of the gcc-2_95-branch until 19990828.
+  * Apply work around memory corruption (just for 2.95.1)  by
+    Daniel Jacobowitz <dan@debian.org>.
+  * debian/patches/libstdc++-wall2.dpatch: Patch from Franck Sicard
+    <sicard@miniruth.solsoft.fr> to fix some warnings (closes: #44670).
+  * debian/patches/libstdc++-valarray.dpatch: Patch from Hideaki Fujitani
+    <fjtani@flab.fujitsu.co.jp> to fix a bug in valarray_array.h.
+  * Applied NMU from Jim Pick minus the jump.c and fold-const.c patches
+    already in the gcc-2_95-branch (closes: #44690).
+  * Conform to debian-java policy (closes: #44463).
+  * Move docs to /usr/share/doc (closes: #44782).
+  * Remove debian/patches/gcc-align.dpatch applied upstream.
+  * debian/*.postinst: Call install-info only, when configuring.
+  * debian/*.{postinst,prerm}: Add #DEBHELPER# comments to handle
+    /usr/doc -> /usr/share/doc transition.
+
+ -- Matthias Klose <doko@debian.org>  Wed,  8 Sep 1999 22:18:17 +0200
+
+gcc (2.95.1-2.1) unstable; urgency=low
+
+  * Non-maintainer upload.
+  * ARM platform no longer needs library-prefix patch.
+  * Updated patches from Philip Blundell.
+
+ -- Jim Pick <jim@jimpick.com>  Wed,  8 Sep 1999 20:14:07 -0700
+
+gcc (2.95.1-2) unstable; urgency=low
+
+  * debian/gcc.{postinst,prerm}: gcc provides an alternative for
+    sparc64-linux-gcc.
+  * Applied patch from Ben Collins to enable bi-architecture (32/64)
+    support for sparc.
+  * Rebuild debian/control and debian/rules.parameters after unpacking.
+  * debian/rules2: binary-indep. Conditionalize on with_pascal.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  4 Sep 1999 13:47:30 +0200
+
+gcc (2.95.1-1) unstable; urgency=low
+
+  * Updated to release gcc-2.95.1 and cvs updates of the gcc-2_95-branch
+    until 19990828.
+  * debian/README.gcc: Updated NEWS file to include 2.95 and 2.95.1 news.
+  * debian/README.java: New file.
+  * debian/rules.defs: Disabled gpc for alpha, arm. Disabled ObjC-GC
+    for alpha.
+  * debian/rules [clean]: Remove debian/rules.parameters.
+  * debian/rules2 [binary-arch]: Call dh_shlibdeps with LD_LIBRARY_PATH set
+    to installation dir of libstdc++. Why isn't this the default?
+  * debian/control.in: *-dev packages do not longer conflict with
+    libg++272-dev package.
+  * Apply http://egcs.cygnus.com/ml/gcc-patches/1999-08/msg00599.html.
+  * Only define BAD_THROW_ALLOC, when using exceptions (fixes #43462).
+  * For ObjC (when configured with GC) recommend libgc4-dev, not libgc4.
+  * New version of 68060 build patch.
+  * debian/rules.conf: For m68k, depend on binutils version 2.9.1.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 28 Aug 1999 18:16:31 +0200
+
+gcc (2.95.1-0pre2) unstable; urgency=medium
+
+  * gpc is back again (fixes grave #43022).
+  * debian/patches/gpc-updates.dpatch: Patches sent to upstream authors.
+  * Work around the fatal dependtry assertion failure bug in dpkg (hint
+    from "Antti-Juhani Kaijanaho" <ajk@debian.org>, fixes important #43072).
+
+ -- Matthias Klose <doko@debian.org>  Mon, 16 Aug 1999 19:34:14 +0200
+
+gcc (2.95.1-0pre1) unstable; urgency=low
+
+  * Updated to cvs 19990815 gcc-2_95-branch; included install docs and
+    FAQ from 2.95 release; upload source package as well.
+  * Source package contains tarballs only (gcc, libg++, installdocs).
+  * debian/rules: Splitted into debian/rules{,.unpack,.patch,.conf,2}.
+  * debian/gcc.postinst: s/any key/RETURN; warn only when upgrading from
+    pre 2.95 version; reference /usr/doc, not /usr/share/doc.
+  * Checked syntax for attributes of functions; checked for #35068;
+    checked for bad gmon.out files (at least with libc6 2.1.2-0pre5 and
+    binutils 2.9.1.0.25-2 the problem doesn't show up anymore).
+  * debian/patches/cpp-macro-doc.dpatch: Document macro varargs in cpp.texi.
+  * gcc is primary compiler for all platforms but m68k. Setting
+    severity of #22513 to fixed.
+  * debian/patches/gcc-default-arch.dpatch: New patch to enable generation
+    of i386 instruction as default (fixes #42743).
+  * debian/rules: Removed outdated gcc NEWS file (fixes #42742).
+  * debian/patches/libstdc++-out-of-mem.dpatch: Throw exception instead
+    of aborting when out of memory (fixes #42622).
+  * debian/patches/cpp-dos-newlines.dpatch: Handle ibackslashes after
+    DOS newlines (fixes #29240).
+  * Fixed in gcc-2.95.1: #43001.
+  * Bugs closed in this version:
+    Closes: #11525, #12253, #22513, #29240, #35068, #36182, #42584, #42585,
+    #42602, #42622, #42742 #42743, #43001, #43002.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 15 Aug 1999 10:31:50 +0200
+
+gcc (2.95-3) unstable; urgency=high
+
+  * Provide /lib/cpp again (fixes important bug #42524).
+  * Updated to cvs 19990805 gcc-2_95-branch.
+  * Build with the default scheduler.
+  * Apply install-multilib patch from Dan Jacobowitz.
+  * Apply revised cpp-A- patch from Dan Jacobowitz.
+
+ -- Matthias Klose <doko@debian.org>  Fri,  6 Aug 1999 07:25:19 +0200
+
+gcc (2.95-2) unstable; urgency=low
+
+  * Remove /lib/cpp. This driver uses files from /usr/lib/gcc-lib anyway.
+  * The following bugs are fixed (compared to egcs-1.1.2).
+    Closes: #4429, #20889, #21122, #26369, #28417, #28261, #31416, #35261,
+    #35900, #35906, #38246, #38872, #39098, #39526, #40659, #40991, #41117,
+    #41290, #41302, #41313.
+  * The following by Joel Klecker:
+    - Adopt dpkg-architecture variables.
+    - Go back to SHELL = bash -e or it breaks where /bin/sh is not bash.
+    - Disabled the testsuite, it is not included in the gcc 2.95 release.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 31 Jul 1999 18:00:42 +0200
+
+gcc (2.95-1) unstable; urgency=low
+
+  * Update for official gcc-2.95 release.
+  * Built without gpc.
+  * debian/rules: Remove g++FAQ from rules, which is outdated.
+    For ix86, build for i386, not i486.
+  * Apply patch from Jim Pick for building multilib package on arm.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 31 Jul 1999 16:38:21 +0200
+
+gcc (2.95-0pre10) unstable; urgency=low
+
+  * Use ../builddir-gcc-$(VER) by default instead of ./builddir; upstream
+    strongly advises configuring outside of the source tree, and it makes
+    some things much easier.
+  * Add patch to prevent @local branches to weak symbols on powerpc (fixes
+    apt compilation).
+  * Add patch to make cpp -A- work as expected.
+  * Renamed debian/patches/ppc-library-prefix.dpatch to library-prefix.dpatch;
+    apply on all architectures.
+  * debian/control.in: Remove snapshot dependencies.
+  * debian/*.postinst: Reflect use of /usr/share/{info,man}.
+
+ -- Daniel Jacobowitz <dan@debian.org>  Thu, 22 Jul 1999 19:27:12 -0400
+
+gcc (2.95-0pre9) unstable; urgency=low
+
+  * The following bugs are fixed (compared to egcs-1.1.2): #4429, #20889,
+    #21122, #26369, #28417, #28261, #35261, #38246, #38872, #39526, #40659,
+    #40991, #41117, #41290.
+  * Updated to CVS gcc-19990718 snapshot.
+  * debian/control.in: Removed references to egcs in descriptions.
+    Changed gcj's Recommends libgcj-dev to Depends.
+  * debian/rules: Apply ppc-library-prefix for alpha as well.
+  * debian/patches/arm-config.dpatch: Updated patch sent by Jim Pick.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 18 Jul 1999 12:21:07 +0200
+
+gcc (2.95-0pre8) unstable; urgency=low
+
+  * Updated CVS.
+  * debian/copyright: s%doc/copyright%share/common-licenses%
+  * debian/README.Bugs: s/egcs.cygnus.com/gcc.gnu.org/ s/egcs-bugs/gcc-bugs/
+  * debian/patches/reporting.dpatch: Remake diff for current sources.
+  * debian/libstdc++-dev.postinst: It's /usr/share/info/iostream.info.
+  * debian/rules: Current dejagnu snapshot reports a framework version
+    of 1.3.1.
+
+ -- Joel Klecker <espy@debian.org>  Sun, 18 Jul 1999 02:09:57 -0700
+
+gcc-snapshot (19990714-0pre6) experimental; urgency=low
+
+  * Updated to CVS gcc-19990714 snapshot.
+  * Applied ARM patch (#40515).
+  * Converted DOS style linefeeds in debian/patches/ppc-* files.
+  * debian/rules: Reflect change in gcc/version.c; use sh -e as shell:
+    for some obscure reason, bash -e doesn't work.
+  * Reflect version change for libstdc++ (2.10). Remove libg++-name
+    patch; libg++ now has version 2.8.1.3. Removed libc version from
+    the package name.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 14 Jul 1999 18:43:57 +0200
+
+gcc-snapshot (19990625-0pre5.1) experimental; urgency=low
+
+  * Non-maintainer upload.
+  * Added ARM specific patch.
+
+ -- Jim Pick <jim@jimpick.com>  Tue, 29 Jun 1999 22:36:08 -0700
+
+gcc-snapshot (19990625-0pre5) experimental; urgency=low
+
+  * Updated to CVS gcc-19990625 snapshot.
+
+ -- Matthias Klose <doko@debian.org>  Fri, 25 Jun 1999 16:11:53 +0200
+
+gcc-snapshot (19990609-0pre4.1) experimental; urgency=low
+
+  * Added and re-added a few last PPC patches.
+
+ -- Daniel Jacobowitz <dan@debian.org>  Sat, 12 Jun 1999 16:48:01 -0500
+
+gcc-snapshot (19990609-0pre4) experimental; urgency=low
+
+  * Updated to CVS egcs-19990611 snapshot.
+
+ -- Matthias Klose <doko@debian.org>  Fri, 11 Jun 1999 10:20:09 +0200
+
+gcc-snapshot (19990609-0pre3) experimental; urgency=low
+
+  * CVS gcc-19990609 snapshot.
+  * New gpc-19990607 snapshot.
+
+ -- Matthias Klose <doko@debian.org>  Wed,  9 Jun 1999 19:40:44 +0200
+
+gcc-snapshot (19990524-0pre1) experimental; urgency=low
+
+  * egcs-19990524 snapshot.
+  * First snapshot of the gcc-2_95-branch. egcs-1.2 is renamed to gcc-2.95,
+    which is now the "official" successor to gcc-2.8.1. The full version
+    name is: gcc-2.95 19990521 (prerelease).
+  * debian/control.in: Changed maintainers to `Debian GCC maintainers'.
+  * Moved all version numbers to epoch 1.
+  * debian/rules: Major changes. The support for secondary compilers
+    was already removed for the egcs-1.2 snapshots. Many fixes by
+    Joel Klecker <espy@debian.org>.
+    - Send mail to Debian maintainers for successful builds.
+    - Fix VER and VERNO sed expressions.
+    - Replace remaining GNUARCH occurrences.
+  * New gpc snapshot (but don't build).
+  * debian/patches/valarray.dpatch: Backport from libstdc++-v3.
+  * debian/gcc-doc.*: Info is now gcc.info* (Joel Klecker <espy@debian.org>).
+  * Use cpp driver provided by the package.
+  * New script c89 (fixes #28261).
+
+ -- Matthias Klose <doko@debian.org>  Sat, 22 May 1999 16:10:36 +0200
+
+egcs (1.1.2-2) unstable; urgency=low
+
+  * Integrate NMU's for arm and sparc (fixes #37582, #36857).
+  * Apply patch for the Hurd (fixes #37753).
+  * Describe open bugs in TODO.Debian. Please have a look if you can help.
+  * Update README / math functions section (fixes #35906).
+  * Done by J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>:
+    - At Richard Braakman's request, made -dbg packages for libstdc++
+      and libg++.
+    - Provide egcc(1) (fixes lintian error).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 16 May 1999 14:30:56 +0200
+
+egcs-snapshot (19990502-1) experimental; urgency=low
+
+  * New snapshot.
+
+ -- Matthias Klose <doko@debian.org>  Thu,  6 May 1999 11:51:02 +0200
+
+egcs-snapshot (19990418-2) experimental; urgency=low
+
+  * Merged Rays changes to build debug packages.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 21 Apr 1999 16:54:56 +0200
+
+egcs-snapshot (19990418-1) experimental; urgency=low
+
+  * New snapshot.
+  * Disable cpplib.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 19 Apr 1999 11:32:19 +0200
+
+egcs (1.1.2-1.2) unstable; urgency=low
+
+  * NMU for arm
+  * Added arm-optimizer.dpatch with optimizer workaround for ARM
+
+ -- Jim Pick <jim@jimpick.com>  Mon, 19 Apr 1999 06:17:13 -0700
+
+egcs (1.1.2-1.1) unstable; urgency=low
+
+  * NMU for sparc
+  * Included dpatch to modify the references to gcc/crtstuff.c so that
+    __register_frame_info is not a weak reference. This allows potato to
+    remain binary compatible with slink, while still retaining compatibility
+    with other sparc/egcs1.1.2 distributions. Diff in .dpatch format has
+    been sent to the maintainer with a note it may not be needed for 1.1.3.
+
+ -- Ben Collins <bcollins@debian.org>  Tue, 27 Apr 1999 10:15:03 -0600
+
+egcs (1.1.2-1) unstable; urgency=low
+
+  * Final egcs-1.1.2 release built for potato as primary compiler
+    for all architectures except m68k.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Thu,  8 Apr 1999 13:14:29 +0200
+
+egcs-snapshot (19990321-1) experimental; urgency=low
+
+  * New snapshot.
+  * Disable gpc.
+  * debian/rules: Simplified (no secondary compiler, bumped all versions
+    to same epoch, libapi patch is included upstream).
+  * Separated out cpp documentation to cpp-doc package.
+  * Fixed in this version: #28417.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 23 Mar 1999 02:11:18 +0100
+
+egcs (1.1.2-0slink2) stable; urgency=low
+
+  * Applied H.J.Lu's egcs-19990315.linux patch.
+  * Install faq.html and egcs-1.1.2 announcment.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 23 Mar 1999 01:14:54 +0100
+
+egcs (1.1.2-0slink1) stable; urgency=low
+
+  * Final egcs-1.1.2 release; compiled with glibc-2.0 for slink on i386.
+  * debian/control.in: gcc provides egcc, when FIRST_PRIMARY defined.
+  * Fixes #30767, #32278, #34252, #34352.
+  * Don't build the libstdc++.so.2.9 library on architectures, which have
+    switched to glibc-2.1.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 17 Mar 1999 12:55:59 +0100
+
+egcs (1.1.1.63-2.2) unstable; urgency=low
+
+  * Non-maintainer upload.
+  * Incorporate patch from Joel Klecker to fix snapshot packages
+    by moving/removing the application of libapi.
+  * Disable the new libstdc++-dev-config and the postinst message in
+    glibc 2.1 versions.
+
+ -- Daniel Jacobowitz <dan@debian.org>  Mon, 12 Mar 1999 14:16:02 -0500
+
+egcs (1.1.1.63-2.1) unstable; urgency=low
+
+  * Non-maintainer upload.
+  * Compile with glibc 2.1 release version.
+  * New upstream version egcs-1.1.2 pre3.
+  * Miscellaneous rules updates (see changelog.snapshot).
+  * New set of powerpc-related patches from Franz Sirl,
+    <fsirl@kernel.crashing.org>.
+  * Disable libgcc.dpatch (new solution implemented upstream).  Remove it.
+  * Also pass $target to config.if.
+  * Enable Dwarf2 EH for powerpc.  Bump the C++ binary version.  No
+    loss in -backwards- compatibility as far as I can tell, so add a
+    compatibility symlink, and add to shlibs file.
+  * Add --no-backup-if-mismatch to the debian/patches/*.dpatch files,
+    to prevent bogus .orig's in diffs.
+  * Merged with (unreleased) 1.1.1.62-1 and 1.1.1.63-{1,2} packages from
+    Matthias Klose <doko@debian.org>.
+  * Stop adding a backwards compatibility link for egcs-nof on powerpc.
+    To my knowledge, nothing uses it.  Do add the libstdc++ API change
+    link, though.
+
+ -- Daniel Jacobowitz <dan@debian.org>  Mon, 8 Mar 1999 14:24:01 -0500
+
+egcs (1.1.1.63-2) stable; urgency=low
+
+  * Provide a libstdc++ with a shared object name, which is compatible
+    to other distributions. Documented the change in README.Debian,
+    the libstdc++-2.9.postinst and the libstdc++-dev-config script.
+
+ -- Matthias Klose <doko@debian.org>  Fri, 12 Mar 1999 00:36:20 +0100
+
+egcs (1.1.1.63-1.1) unstable; urgency=low
+
+  * Non-Maintainer release.
+  * Build against glibc 2.1.
+  * Make egcs the primary compiler on i386.
+  * Also confilct with egcc (<< FIRST_PRIMARY)
+    if FIRST_PRIMARY is defined.
+    (this tells dpkg that gcc completely obsoletes egcc)
+  * Remove hjl-12 patch again, HJL says it should not be
+    necessary with egcs 1.1.2.
+    (as per forwarded reply from Christopher Chimelis)
+  * Apply libapi patch in clean target before regenerating debian/control
+    and remove the patch afterward. Otherwise, the libstdc++ and libg++
+    package names are generated wrong on a glibc 2.1 system.
+
+ -- Joel Klecker <espy@debian.org>  Tue,  9 Mar 1999 15:31:02 -0800
+
+egcs (1.1.1.63-1) unstable; urgency=low
+
+  * New upstream version egcs-1.1.1-pre3.
+  * Applied improved libstdc++ warning patch from Rob Browning.
+
+ -- Matthias Klose <doko@debian.org>  Tue,  9 Mar 1999 16:14:07 +0100
+
+egcs (1.1.1.62-1) unstable; urgency=low
+
+  * New upstream version egcs-1.1.1-pre2.
+  * New upstream version libg++-2.8.1.3.
+  * Readded ARM support
+  * Readded hjl-12 per request from Christopher C Chimelis
+    <chris@classnet.med.miami.edu>
+
+ -- Matthias Klose <doko@debian.org>  Fri, 26 Feb 1999 09:54:01 +0100
+
+egcs-snapshot (19990224-0.1) experimental; urgency=low
+
+  * New snapshot.
+  * Add the ability to disable CPPLIB by setting CPPLIB=no in
+    the environment.
+  * Disable gpc for powerpc; I spent a long time getting it to
+    make correctly, and then it goes and ICEs.
+
+ -- Daniel Jacobowitz <dan@debian.org>  Tue, 24 Feb 1999 23:34:12 -0500
+
+egcs (1.1.1.61-1) unstable; urgency=low
+
+  * New upstream version egcs-1.1.1-pre1.
+  * debian/control.in: Applied patch from bug report #32987.
+  * Split up H.J.Lu's hjl-19990115-linux patch into several small
+    chunks: libapi, arm-mips, libgcc, hjl-other. The changelog.Linux
+    aren't included in the separate chunks. Please refer to the
+    unmodified hjl-19990115-linux patch file in the egcs source pkg.
+  * Apply warning patch to fix the annoying spew you get if you try to
+    use ropes or deques with -Wall (which makes -Wall mostly useless for
+    spotting errors in your own code). Fixes #32996.
+  * debian/rules: Unapply patches in the exact reverse order they were
+    applied.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 20 Feb 1999 22:06:21 +0100
+
+egcs (1.1.1-5) frozen unstable; urgency=medium
+
+  * Move libgcc.map file to g++ package, where gcc is the secondary
+    compiler (fixes #32329, #32605, #32631).
+  * Prepare to rename libstdc++2.9 package for glibc-2.1 (fixes #32148).
+  * Apply NMU patch for arm architecure (fixes #32367).
+  * Don't apply hjl-12 patch for alpha architectures (requested by the
+    alpha developers, Christopher C Chimelis <chris@classnet.med.miami.edu>).
+  * Call makeinfo with --no-validate to fix obscure build failure on alpha.
+  * Build gpc info files in doc subdirectory.
+  * Remove c++filt diversion (C++ name demangling patch is now in binutils,
+    fixes #30820 and #32502).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 31 Jan 1999 23:19:35 +0100
+
+egcs (1.1.1-4.1) unstable; urgency=low
+
+  * Non-maintainer upload.
+  * Pascal doesn't build for ARM.
+
+ -- Jim Pick <jim@jimpick.com>  Sun, 24 Jan 1999 16:13:34 -0800
+
+egcs (1.1.1-4) frozen unstable; urgency=high
+
+  * Don't strip compiler libraries libgcc.a libobjc.a libg2c.a libgpc.a
+  * Move Pascal examples to the right place (fixes #32149, part 1).
+  * Add dependencies for switching from secondary to primary compiler,
+    if FIRST_PRIMARY is defined (fixes #32149, part 2).
+
+ -- Matthias Klose <doko@debian.org>  Wed, 20 Jan 1999 16:51:30 +0100
+
+egcs (1.1.1-3) frozen unstable; urgency=low
+
+  * Updated with the H.J.Lu's hjl-19990115-linux patch (fixes the
+    __register_frame_info problems, mips and arm port included).
+  * Update gpc to 19990118 (beta release candidate).
+  * Strip static libraries (fixes #31247 and #31248).
+  * Changed maintainer address.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 19 Jan 1999 16:34:28 +0100
+
+egcs (1.1.1-2) frozen unstable; urgency=low
+
+  * Moved egcs-docs, g77-doc and gpc-doc packages to doc section.
+  * Downgraded Recommends: egcs-docs to Suggests: egcs-docs dependencies
+    (for archs, where egcs is the primary compiler).
+  * Add 'Suggests: stl-manual' dependency to libstdc++2.9-dev.
+  * Applied one more alpha patch:
+    ftp://ftp.yggdrasil.com/private/hjl/egcs/1.1.1/egcs-1.1.1.diff.12.gz
+  * Applied PPro optimization patch.
+  * Apply emit-rtl-nan patch.
+  * Upgraded to libg++-2.8.1.2a-19981218.tar.gz.
+  * Upgraded to gpc-19981218.
+  * Make symlinks for gobjc, libstdc++2.9-dev and libg++2.8.2 doc directories.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 23 Dec 1998 18:04:53 +0200
+
+egcs-snapshot (19981211-1) experimental; urgency=low
+
+  * New snapshot.
+  * Adapted gpc to egcs-2.92.x (BOOT_CFLAGS must include -g).
+  * New libg++-2.8.1.2a-19981209.tar.gz.
+  * debian/rules: new target mail-summary.
+
+ -- Matthias Klose <doko@debian.org>  Fri, 11 Dec 1998 18:14:53 +0200
+
+egcs (1.1.1-1) frozen unstable; urgency=high
+
+  * Final egcs-1.1.1 release.
+  * The last version depended on a versioned libc6 again.
+  * Add lost dependency for libg++ on libstdc++.
+  * Added debian-libstdc++.sh script to generate a libstdc++ on a Linux
+    system, which doesn't use the libapi patch.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Wed,  2 Dec 1998 12:06:15 +0200
+
+egcs (1.1.0.91.59-2) frozen unstable; urgency=high
+
+  * Fixes bugs from libc6 2.0.7u-6 upload without dependency line
+    Conflicts: libstdc++-2.9 (<< 2.91.59): #30019, #30066, #30078.
+  * debian/copyright: Updated URLs.
+  * gcc --help now mentions /usr/doc/debian/bug-reporting.txt.
+  * Install README.Debian and include information about patches applied.
+  * Depend on unversioned libc6 on i386, such that libstdc++2.9 can be used
+    on a hamm system.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Fri, 27 Nov 1998 18:32:02 +0200
+
+egcs (1.1.0.91.59-1) frozen unstable; urgency=low
+
+  * This is egcs-1.1.1 prerelease #3, compiled with libc6 2.0.7u-6.
+  * Added dependency for libstdc++2.9-dev on g++ (fixes #29631).
+  * Package g77 provides f77 (fixes #29817).
+  * Already fixed in earlier egcs-1.1 releases: #2493, #25271, #10620.
+  * Bugs reported for gcc-2.7.x and fixed in the egcs version of gcc:
+    #2493, #4430, #4954, #5367, #6047, #10612, #12375, #20606, #24788, #26100.
+  * Upgraded libg++ to libg++-2.8.1.2a-19981114.
+  * Upgraded gpc to gpc-19981124.
+  * Close #25869: egcs and splay maintainers are unable to reproduce this
+    bug with the current Debian packages. Bug submitter doesn't respond.
+  * Close #25407: egcs maintainer cannot reproduce this bug with the current
+    Debian compiler. Bug submitter doesn't respond.
+  * Use debhelper 1.2.7 for building.
+  * Replace the libstdc++ and libg++ compatibility links with fake libraries.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Wed, 25 Nov 1998 12:11:42 +0200
+
+egcs (1.1.0.91.58-5) frozen unstable; urgency=low
+
+  * Applied patch to build on the m68060.
+  * Added c++filt and c++filt.1 to the g++ package.
+  * Updated gpc to gpc-981105; fixes some regressions compared to egcs-1.1.
+  * Separated out g77 and gpc doumentation to new packages g77-doc and gpc-doc.
+  * Closed bugs (#22158).
+  * Close #20248; on platforms where gas and gld are the default versions,
+    it makes no difference to configure with or without enable-ld.
+  * Close #24349. The bugs are in the amulet source.
+    See http://www.cs.cmu.edu/afs/cs/project/amulet/www/FAQ.html#GCC28x
+  * Rename gcc.info* files to egcs.info* (fixes #24088).
+  * Documented known bugs (and workarounds) in BUGS.Debian.
+  * Fixed demangling of C++ names (fixes #28787).
+  * Applied patch form aspell to libstdc++/stl/stl_rope.h.
+  * Updated from cvs 16 Nov 1998.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Tue, 17 Nov 1998 09:41:24 +0200
+
+egcs-snapshot (19981115-2) experimental; urgency=low
+
+  * New snapshot. Disabled gpc.
+  * New packages g77-doc and gpc-doc.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 16 Nov 1998 12:48:09 +0200
+
+egcs (1.1.0.91.58-3) frozen unstable; urgency=low
+
+  * Previous version installed in potato, not slink.
+  * Updated from cvs 3 Nov 1998.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Tue, 3 Nov 1998 18:34:44 +0200
+
+egcs (1.1.0.91.58-2) unstable; urgency=low
+
+  * [debian/rules]: added targets to apply and unapply patches.
+  * [debian/README.patches]: New file.
+  * Moved patches dir to debian/patches. debian/rules has to select
+    the patches to apply.
+  * Manual pages for genclass and gcov (fixes #5995, #20950, #22196).
+  * Apply egcs-1.1-reload patch needed for powerpc architecture.
+  * Fixed bugs (#17768, #20252, #25508, #27788).
+  * Reapplied alpha patch (#20875).
+  * Fixes first part of #22513, extended README.Debian (combining C & C++).
+  * Already fixed in earlier egcs-1.1 releases: #17963, #20252, #20524,
+    #20640, #22450, #24244, #24288, #28520.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Fri, 30 Oct 1998 13:41:45 +0200
+
+egcs (1.1.0.91.58-1) experimental; urgency=low
+
+  * New upstream version. That's the egcs-1.1.1 prerelease plus patches from
+    the cvs archive upto 29 Oct 1998.
+  * Merged files from the egcs and snapshot packages.
+  * Updated libg++ to libg++-2.8.1.2 (although the Debian package name is still
+    2.8.2).
+  * Moved patches dir to patches-1.1.
+  * Dan Jacobowitz:
+    * This is a snapshot from the egcs_1_1_branch, with
+      libapi, reload, builtin-apply, and egcs patches from
+      the debian/patches/ dir applied, along with the egcs-gpc-patches
+      and gcc/p/diffs/gcc-egcs-2.91.55.diff.
+    * Conditionalize gcj and chill (since they aren't in this branch).
+    * Fake snapshots drop the -snap-main.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Thu, 29 Oct 1998 15:15:19 +0200
+
+egcs-snapshot (1.1-19981019-5.1) experimental; urgency=low
+
+  * This is a snapshot from the egcs_1_1_branch, with
+    libapi, reload, builtin-apply, and egcs patches from
+    the debian/patches/ dir applied, along with the egcs-gpc-patches
+    and gcc/p/diffs/gcc-egcs-2.91.55.diff.
+  * Conditionalize gcj and chill (since they aren't in this
+    branch).
+  * Fake snapshots drop the -snap-main.
+
+ -- Daniel Jacobowitz <dan@debian.org>  Mon, 19 Oct 1998 22:19:23 -0400
+
+egcs (1.1b-5) unstable; urgency=low
+
+  * [debian/control.in] Fixed typo in dependencies (#28076, #28087, #28092).
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Sun, 18 Oct 1998 22:56:51 +0200
+
+egcs (1.1b-4) unstable; urgency=low
+
+  * Strengthened g++ dependency on libstdc++_LIB_SO_-dev from
+    `Recommends' to `Depends'.
+  * Updated README.Debian for egcs-1.1.
+  * Updated TODO.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Thu, 15 Oct 1998 12:38:47 +0200
+
+egcs-snapshot (19981005-0.1) experimental; urgency=low
+
+  * Make libstdc++2.9-snap-main and libg++-snap-main provide
+    their mainstream equivalents and put those equivalents into
+    their shlibs file.
+  * Package gcj, the GNU Compiler for Java(TM).
+
+  * New upstream version of egcs (The -regcs_latest_snapshot branch).
+  * Build without libg++ entirely.
+  * Leave out gpc for now - the internals are sufficiently different
+    that it does not trivially compile.
+  * Include an experimental reload patch for powerpc - this is,
+    in the words of its author, not release quality, but it allows
+    powerpc linuxthreads to function.
+  * On architectures where we are the primary compiler, let snapshots
+    build with --prefix=/usr and conflict with the stable versions.
+  * Package chill, a front end for the language Chill.
+  * Other applied patches from debian/patches/: egcs-patches and
+    builtin-apply-patch.
+  * Use reload.c revision 1.43 to avoid a nasty bug.
+
+ -- Daniel Jacobowitz <dan@debian.org>  Wed,  7 Oct 1998 00:27:42 -0400
+
+egcs (1.1b-3.1) unstable; urgency=low
+
+  * NMU to fix the egcc -> gcc link once and for all
+
+ -- Christopher C. Chimelis <chris@classnet.med.miami.edu>  Tue, 22 Sep 1998 16:11:19 -0500
+
+egcs (1.1b-3) unstable; urgency=low
+
+  * Oops. The egcc -> gcc link on archs where gcc is egcc was broken.
+    Thanks to Chris Chimelis for pointing this out.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Mon, 21 Sep 1998 20:51:35 +0200
+
+egcs (1.1b-2) unstable; urgency=low
+
+  * New upstream spellfix release (Debian revision is 2 as the internal
+    version numbers didn't change).
+  * Added egcc -> gcc symlink on architectures where egcc is the primary C
+    compiler. Thus, maintainers of packages that require egcc, can now
+    simply use "egcc" without conditionals.
+  * Porters: we hope/plan to make egcs's gcc the default C compiler on all
+    platforms once the 2.2.x kernels are available. Please test this version
+    thoroughly, and give us a GO / NO GO for your architecture.
+  * Some symbols cpp used to predefine were removed upstream in order to clean
+    up the cpp namespace, but imake requires them for determining the proper
+    settings for LinuxMachineDefines (see /usr/X11R6/lib/X11/{Imake,linux}.cf),
+    thus we put them back. Thanks to Paul Slootman for reporting his imake
+    problems on Alpha.
+    * [gcc/config/alpha/linux.h] Added -D__alpha to CPP_PREDEFINES .
+      Thanks to Chris Chimelis for the alpha-only 1.1a-1.1 NMU which fixed
+      this already.
+    * [gcc/config/i386/linux.h] Added -D__i386__ to CPP_PREDEFINES .
+    * [gcc/config/sparc/linux.h] Has -Dsparc in CPP_PREDEFINES .
+    * [gcc/config/sparc/linux64.h] Has -Dsparc in CPP_PREDEFINES .
+    * [gcc/config/m68k/linux.h] Has -Dmc68000 in CPP_PREDEFINES .
+    * [gcc/config/rs6000/linux.h] Has -Dpowerpc in CPP_PREDEFINES .
+    * [gcc/config/arm/linux.h] Has -Darm in CPP_PREDEFINES .
+    * [gcc/config/i386/gnu.h] Has -Di386 in CPP_PREDEFINES .
+  * Small fixes and updates in README.
+  * Changes affecting the source package only:
+    * [gcc/Makefile.in, gcc/cp/Make-lang.in, gcc/p/Make-lang.in]
+      Daniel Jacobowitz: Ugly hacks of various kinds to make cplib2.txt get
+      properly regenerated with multilib.
+    * [debian/TODO] Created.
+    * [INSTALL/index.html] Fixed broken link.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Sun, 20 Sep 1998 14:05:15 +0200
+
+egcs (1.1a-1) unstable; urgency=low
+
+  * New upstream release.
+  * Added README.libstdc++ .
+  * Updated Standards-Version.
+  * Matthias:
+    * Downgraded gobjc dependency on egcs-docs from Recommends: to Suggests: .
+    * [libg++/Makefile.in] Patched not to rely on a `-f' flag of `ln'.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Wed,  2 Sep 1998 19:57:43 +0200
+
+egcs (1.1-1) unstable; urgency=low
+
+  * egcs-1.1 prerelease (from the last Debian package only the version file
+    changed).
+  * "Final" gpc Beta 2.1 gpc-19980830.
+  * Included libg++ and gpc in the .orig tarball. so that diffs are getting
+    smaller.
+  * debian/control.in: Changed maintainer address to galenh-egcs@debian.org.
+  * debian/copyright: Updated URLs.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Mon, 31 Aug 1998 12:43:13 +0200
+
+egcs (1.0.99.56-0.1) unstable; urgency=low
+
+  * New upstream snapshot 19980830 from CVS (called egcs-1.1 19980830).
+  * New libg++ snapshot 980828.
+  * Put all patches patches subdirectory; see patches/README in the source.
+  * debian/control.in: readded for libg++2.8.2-dev:
+    Replaces: libstdc++2.8-dev (<= 2.90.29-0.5)
+  * Renamed libg++2.9 package to libg++2.8.2.
+  * gcc/p/gpc-decl.c: Fix from Peter@Gerwinski.de; fixes optimization errors.
+  * patches/gpc-patch2: Fix from Peter@Gerwinski.de; fixes alpha errors.
+  * debian/rules: New configuration flag for building with and without
+    libstdc++api patch; untested without ...
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Sun, 30 Aug 1998 12:04:22 +0200
+
+egcs (1.0.99-0.6) unstable; urgency=low
+
+  * PowerPC fixes.
+  * On powerpc, generate the -msoft-float libs and package them
+    as egcs-nof.
+  * Fix signed char error in gpc.
+  * Create a libg++.so.2.9 compatibility symlink.
+
+ -- Daniel Jacobowitz <dan@debian.org>  Tue, 25 Aug 1998 11:44:09 -0400
+
+egcs (1.0.99-0.5) unstable; urgency=low
+
+  * New upstream snapshot 19980824.
+  * New gpc snapshot gpc-980822; reenabled gpc for alpha.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Tue, 25 Aug 1998 01:21:08 +0200
+
+egcs (1.0.99-0.4) unstable; urgency=low
+
+  * New upstream snapshot 19980819. Should build glibc 2.0.9x on PPC.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Wed, 19 Aug 1998 14:18:07 +0200
+
+egcs (1.0.99-0.3) unstable; urgency=low
+
+  * New upstream snapshot 19980816.
+  * debian/rules: build correct debian/control and debian/*.shlibs
+  * Enabled Haifa scheduler for ix86.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Mon, 17 Aug 1998 16:29:35 +0200
+
+egcs (1.0.99-0.2) unstable; urgency=low
+
+  * New upstream snapshot: egcs-19980812, minor changes only.
+  * Fixes for building on `primary' targets.
+  * Disabled gpc on `alpha' architecture.
+  * Uses debhelper 1.1.6
+  * debian/control.in: Replace older snapshot versions in favor of newer
+    normal versions.
+  * debian/rules: Fixes building of binary-arch target only.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Thu, 13 Aug 1998 11:59:41 +0200
+
+egcs (1.0.99-0.1) unstable; urgency=low
+
+  * New upstream version: pre egcs-1.1 version.
+  * Many changes ... for details see debian/changelog.snapshot in the
+    source package.
+  * New packages libstdc++2.9 and libstdc++2.9-dev.
+  * New libg++ snapshot 980731: new packages libg++2.9 and libg++2.9-dev.
+  * New gpc snapshot gpc-980729: new package gpc.
+  * Uses debhelper 1.1
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Mon, 10 Aug 1998 13:00:27 +0200
+
+egcs-snapshot (19980803-4) experimental; urgency=low
+
+  * rebuilt debian/control.
+
+ -- Matthias Klose <doko@debian.org>  Wed,  5 Aug 1998 08:51:47 +0200
+
+egcs-snapshot (19980803-3) experimental; urgency=low
+
+  * debian/rules: fix installation locations of NEWS, header and
+    `undocumented' files.
+  * man pages aren't compressed for the snapshot package.
+
+ -- Matthias Klose <doko@debian.org>  Tue,  4 Aug 1998 17:34:31 +0200
+
+egcs-snapshot (19980803-2) experimental; urgency=low
+
+  * debian/rules: Uses debhelper. Old in debian/rules.old.
+    renamed postinst, prerm files for use with debhelper.
+  * debian/{libg++2.9,libstdc++2.9}/postinst: call ldconfig only,
+    when called for configure.
+  * egcs-docs is architecture independent package.
+  * new libg++ snapshot 980731.
+  * installed libstdc++ api patch (still buggy).
+
+ -- Matthias Klose <doko@debian.org>  Mon,  3 Aug 1998 13:20:59 +0200
+
+egcs-snapshot (19980729-1) experimental; urgency=low
+
+  * New snapshot version 19980729 from CVS archive.
+  * New gpc snapshot gpc-980729.
+  * Let gcc/configure decide about using the Haifa scheduler.
+  * Remove -DDEBIAN. That was needed for the security improvements with
+    regard to the /tmp problem. egcs-1.1 chooses another approach.
+  * Save test-protocol and extract gpc errors to gpc-test-summary.
+  * Tighten binutils dependency to 2.9.1.
+  * debian/rules: new build-info target
+  * debian/{control.in,rules}: _SO_ and BINUTILSV substitution.
+  * debian/rules: add dependency for debian/control.
+  * debian/rules: remove bin/c++filt
+  * TODO: next version will use debhelper; the unorganized moving of
+    files becomes unmanageable ...
+  * TODO: g++ headers in stdc++ package? check!
+
+ -- Matthias Klose <doko@debian.org>  Thu, 30 Jul 1998 12:10:20 +0200
+
+egcs-snapshot (19980721-1) experimental; urgency=low
+
+  * Unreleased. Infinite loops in executables made by gpc.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 22 Jul 1998 18:07:20 +0200
+
+egcs-snapshot (19980715-1) experimental; urgency=low
+
+  * New snapshot version from CVS archive.
+  * New gpc snapshot gpc-980715.
+  * New libg++ version libg++-2.8.2-980708. Changed versioning
+    schema for library. The major versions of libc, libstdc++ and the
+    g++ interface are coded in the library name. Use this new schema,
+    but provide a symlink to our previous schema, since the library
+    seems to be binary compatible.
+  * [debian/rules]: Fixed bug in build target, when bootstrap returns
+    with an error
+
+ -- Matthias Klose <doko@debian.org>  Wed, 15 Jul 1998 10:55:05 +0200
+
+egcs-snapshot (19980701-1) experimental; urgency=low
+
+  * New snapshot version from CVS archive.
+    Two check programs in libg++ had to be manually killed to finish the
+    testsuite (tBag and tSet).
+  * New gpc snapshot gpc-980629.
+  * Incorporated debian/rules changes from egcs-1.0.3a-0.5 (but don't remove
+    gcc/cp/parse.c gcc/c-parse.c gcc/c-parse.y gcc/objc/objc-parse.c
+    gcc/objc/objc-parse.y, since these files are part of the release).
+  * Disable the -DMKTEMP_EACH_FILE -DHAVE_MKSTEMP -DDEBIAN flags for the
+    snapshot. egcs-1.1 will have another solution.
+  * Don't bootstrap the snapshot with -fno-force-mem. Internal compiler
+    error :-(
+  * libf2c.a and f2c.h have changed names to libg2c.a and g2c.h and
+    have moved again into the gcc-lib dir. They are installed under
+    libg2c.a and g2c.h. Is it necessary to provide links f2c -> g2c ?
+  * debian/rules: reflect change of build dir of libraries.
+
+ -- Matthias Klose <doko@debian.org>  Wed,  2 Jul 1998 13:15:28 +0200
+
+egcs-snapshot (19980628-0.1) experimental; urgency=low
+
+  * New upstream snapshot version.
+  * Non-maintainer upload; Matthias appears to be absent currently.
+  * Updated shlibs.
+  * Merged changes from regular egcs:
+    * [debian/control] Tightened dependency on binutils to 2.8.1.0.23 or
+      newer, as according to INSTALL/SPECIFIC PowerPC (and possibly Sparc)
+      need this.
+    * [debian/rules] Clean up some generated files outside builddir,
+      so the .diff.gz becomes smaller.
+    * [debian/rules] Partial sync/update with the one for the regular egcs
+      version.
+  * [debian/rules] Make gcc/p/configure executable.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Wed,  1 Jul 1998 07:12:15 +0200
+
+egcs (1.0.3a-0.6) frozen unstable; urgency=low
+
+  * Some libg++ development files were in libstdc++2.8-dev rather than
+    libg++2.8-dev. Fixed this and dealt with upgrading from the earlier
+    versions (fixes #23908; this bug is not marked release-critical, but
+    is annoying and can be quite confusing for users. Therefore, I think
+    this fix should go in 2.0).
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Tue, 30 Jun 1998 11:10:14 +0200
+
+egcs (1.0.3a-0.5) frozen unstable; urgency=low
+
+  * Fixed location of .hP files (Fixes #23448).
+  * [debian/rules] simplified extraction of the files for libg++2.8-dev.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Wed, 17 Jun 1998 09:33:41 +0200
+
+egcs (1.0.3a-0.4) frozen unstable; urgency=low
+
+  * [gcc/gcc.c] There is one call to choose_temp_base for determining the
+    tempdir to be used only; #ifdef HAVE_MKSTEMP delete the tempfile created
+    as a side effect. (fixes #23123 for egcs).
+  * [gcc/collect2.c] There's still a vulnerability here; I don't see how
+    I can fix it without leaving behind tempfiles though.
+  * [debian/control] Tightened dependency on binutils to 2.8.1.0.23 or
+    newer, as according to INSTALL/SPECIFIC PowerPC (and possibly Sparc)
+    need this.
+  * [debian/rules] Clean up some generated files outside builddir, so the
+    .diff.gz becomes smaller.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Sat, 13 Jun 1998 09:06:52 +0200
+
+egcs-snapshot (19980608-1) experimental; urgency=low
+
+  * New snapshot version.
+
+ -- Matthias Klose <doko@debian.org>  Tue,  9 Jun 1998 14:07:44 +0200
+
+egcs (1.0.3a-0.3) frozen unstable; urgency=high (security fixes)
+
+  * [gcc/toplev.c] set flag_force_mem to 1 at optimisation level 3 or higher.
+    This works around #17768 which is considered release-critical.
+  * Changes by Matthias:
+    * [debian/README] Documentation of the compiler situation for Objective C.
+    * [debian/rules, debian/control.*] Generate control file from a master
+      file.
+    * [debian/rules] Updates for Pascal and Fortran parts; brings it in sync
+      with the one for the egcs snapshots.
+  * Use the recommended settings LDFLAGS=-s CFLAGS= BOOT_CFLAGS='-O2'.
+  * Really compile -DMKTEMP_EACH_FILE -DHAVE_MKSTEMP (really fixes #19453
+    for egcs).
+  * [gcc/gcc.c] A couple of temp files weren't marked for deletion.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Sun, 31 May 1998 22:56:22 +0200
+
+egcs (1.0.3a-0.2) frozen unstable; urgency=high (security fixes)
+
+  * Security improvements with regard to the /tmp problem
+    (gcc opens predictably named files in TMPDIR which can be abused via
+    symlinks)  (Fixes #19453 for egcs).
+    * Compile -DMKTEMP_EACH_FILE to ensure the %u name is generated randomly
+      every time; affects gcc/gcc.c .
+    * [gcc/choose-temp.c, libiberty/choose-temp.c]: use mktemp(3) if compiled
+      -DUSE_MKSTEMP .
+    * Security improvements: don't use the result of choose_temp_base in a
+      predictable fashion.
+      [gcc/gcc.c]:
+      * @c, @objective-c: use random name rather then tempbasename.i for
+        intermediate preprocessor output (%g.i -> %d%u).
+      * @c, @objective-c: use random name rather then tempbasename.s for
+        intermediate compiler output (%g.s -> %d%u).
+      * @c, @objective-c, @cpp-output, @assembler-with-cpp: switched
+        "as [-o output file] <input file>" to
+        "as <input file> [-o output file]".
+      * @c, @objective-c, @assembler-with-cpp: use previous random name
+        (cc1|cpp output) rather then tempbasename.s for intermediate assembler
+        input (%g.s -> %U)
+      [gcc/f/lang-specs.h]:
+      * @f77-cpp-input: use random name rather then tempbasename.i for
+        intermediate cpp output (%g.i -> %d%u).
+      * @f77-cpp-input: use previous random name (cpp output) rather than
+        tempbasename.i for f771 input (%g.i -> %U).
+      * @f77-cpp-input: switched
+        "as [-o output file] <input file>" to
+        "as <input file> [-o output file]".
+      * @f77-cpp-input: use random name rather then tempbasename.s for
+        intermediate compiler output (%g.s -> %d%u).
+      * @ratfor: use random name rather then tempbasename.i for
+        intermediate ratfor output (%g.f -> %d%u).
+      * @ratfor: use previous random name (ratfor output) rather than
+        tempbasename.i for f771 input (%g.f -> %U).
+      * @ratfor: use random name rather then tempbasename.s for
+        intermediate compiler output (%g.s -> %d%u).
+      * @ratfor: switched
+        "as [-o output file] <input file>" to
+        "as <input file> [-o output file]".
+      * @ratfor: use previous random name
+        (ratfor output) rather then tempbasename.s for intermediate assembler
+        input (%g.s -> %U).
+      * @f77: use random name rather then tempbasename.s for
+        intermediate ratfor output (%g.f -> %d%u).
+      * @ratfor: use previous random name (ratfor output) rather than
+        tempbasename.i for f771 input (%g.f -> %U).
+      * @ratfor: use random name rather then tempbasename.s for
+        intermediate compiler output (%g.s -> %d%u).
+      * @ratfor: switched
+        "as [-o output file] <input file>" to
+        "as <input file> [-o output file]".
+      * @ratfor: use previous random name
+        (ratfor output) rather then tempbasename.s for intermediate assembler
+        input (%g.s -> %U).
+      * @f77: use random name rather then tempbasename.s for
+        intermediate compiler output (%g.s -> %d%u).
+      * @f77: switched
+        "as [-o output file] <input file>" to
+        "as <input file> [-o output file]".
+      * @ratfor: use random name rather then tempbasename.s for
+        intermediate compiler output (%g.s -> %U).
+  * Run the testsuite (this requires the dejagnu package in experimental;
+    unfortunately, it is difficult to distinguish this version from the one
+    in frozen).
+    if possible, and log the results in warn_summary and bootstrap-summary.
+  * [gcc/choose-temp.c, libiberty/choose-temp.c]: s|returh|return| in
+    comment.
+  * Added notes on the Debian compiler setup [debian/README] to the
+    development packages.
+  * Matthias:
+    * [libg++/etc/lf/Makefile.in] Replaced "-ltermcap" by "-lncurses".
+    * [debian/rules] Updated so it can be used for both egcs releases and
+      snapshots easily; added support for the GNU Pascal Compiler gpc.
+    * [contrib/test_summary, contrib/warn_summary] Added from CVS.
+    * Run compiler checks and include results in /usr/doc/<package>.
+    * Updates to the README.
+    * [debian/rules] Use assignments to speed up startup.
+  * [debian/rules] Show the important variables at the start of the build
+    process.
+  * [debian/control.secondary] Added a dependency of gobjc on egcc on
+    architectures where egcs provides the secondary compiler, as
+    /usr/bin/egcc is the compiler driver for gobjc. (Fixes #22829).
+  * [debian/control.*] Bumped Standards-Version; used shorter version
+    numbers in the dependency relationships (esthetic difference only);
+    fixed typo.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Tue, 26 May 1998 21:47:41 +0200
+
+egcs-snapshot (19980525-1) experimental; urgency=low
+
+  * New snapshot version.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 26 May 1998 18:04:06 +0200
+
+egcs-snapshot (19980517-1) experimental; urgency=low
+
+  * "Initial" release of the egcs-snapshot package; many debian/* files
+    derived from the egcs-1.0.3a-0.1 package (maintained by Galen Hazelwood
+    <galenh@micron.net>, NMU's by J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>)
+  * The egcs-snapshot packages can coexist with the packages of the
+    egcs release. Package names have a '-ss' appended.
+  * All packages are installed in a separate tree (/usr/lib/egcs-ss following
+    the FHSS).
+  * Made all snapshot packages extra, all snapshot packages conflict
+    with correspondent egcs packages, which are newer than the snapshot.
+  * Included libg++-2.8.1-980505.
+  * Included GNU Pascal (gpc-980511).
+  * Haifa scheduler enabled for all snapshot packages.
+  * Run compiler checks and include results in /usr/doc/<package>.
+  * Further information in /usr/doc/<package>/README.snapshot.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 20 May 1998 11:14:06 +0200
+
+egcs (1.0.3a-0.1) frozen unstable; urgency=low
+
+  * New upstream release egcs-2.90.29 980515 (egcs-1.0.3 release)
+    (we were using 1.0.3-prerelease).  This includes the Haifa patches
+    we had since 1.0.3-0.2 and the gcc/objc/thr-posix.c patch we had
+    since 1.0.3-0.1; the differences with 1.0.3-prerelease + patches
+    we had is negligable.
+  * iostream info documentation was in the wrong package (libg++2.8-dev).
+    Now it's in libstdc++2.8-dev. (Thanks to Jens Rosenboom for bringing
+    this to my attention). As 1.0.3-0.3 didn't make it out of Incoming,
+    I'm not adding "Replaces:" for this; folks who had 1.0.3-0.3 installed
+    already know enough to use --force-overwrite.
+  * [gcc/objc/objc-act.c] Applied patch Matthias Klose supplied me with that
+    demangles Objective C method names in gcc error messages.
+  * Explicitly disable Haifa scheduling on Alpha, to make it easier to use
+    this package's diff with egcs snapshots, which may turn on Haifa
+    scheduling even though it is still unstable. (Requested by Chris Chimelis)
+  * Don't run "configure" again if builddir already exists (makes it faster
+    to restart builds in case one is hacking internals). Requested by
+    Johnnie Ingram.
+  * [gcc/gbl-ctors.h] Don't use extern declaration for atexit on glibc 2.1
+    and higher (the prototype has probably changed; having the declaration
+    broke Sparc compiles).
+  * [debian/rules] Determine all version number automatically (from the
+    version string in gcc/version.c).
+  * [debian/copyright] Updated FTP locations; added text about libg++ (fixes
+    #22465).
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Sat, 16 May 1998 17:41:44 +0200
+
+egcs (1.0.3-0.3) frozen unstable; urgency=low
+
+  * Made an "egcs-doc" package containing documentation for egcs (e)gcc,
+    g++, gobjc, so that administrators can choose whether to have this
+    documenation or the documentation that comes with the GNU gcc package.
+    Dependency on this is Recommends: on architectures where egcs provides
+    the primary C compiler; Suggests: on the others (where GNU gcc is still
+    the primary C compiler).
+  * Use the g++ FAQ from gcc/cp rather than libg++, as that version is more
+    up to date.
+  * Added iostream info documentation to libstdc++2.8-dev.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Wed, 13 May 1998 08:46:10 +0200
+
+egcs (1.0.3-0.2) frozen unstable; urgency=low
+
+  * Added libg++ that works with egcs, found at
+    ftp://ftp.yggdrasil.com/private/hjl/libg++-2.8.1-980505.tar.gz
+    (fixes #20587 (Severity: important)).
+  * The "libg++" and "libg++-dev" virtual packages now refer to the GNU
+    extensions.
+  * Added the g++ FAQ that comes with libg++ to the g++ package.
+  * libg++/Makefile.in: added $(srcdir) to rule for g++FAQ.info so that it
+    builds OK in builddir.
+  * Added -D__i386__ to the cpp predefines on intel.
+  * Patches Matthias supplied me with:
+    * Further 1.0.3 prerelease patches from CVS.
+      This includes patches to the Haifa scheduler. Alpha porters, please
+      check if this makes the Haifa scheduler OK again.
+    * Objective C patches from CVS.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Fri,  8 May 1998 14:43:20 +0200
+
+egcs (1.0.3-0.1) frozen unstable; urgency=low (high for maintainers that use objc)
+
+  * bug fixes only in new upstream version
+  * Applied patches from egcs CVS archive (egcs_1_03_prerelease)
+    (see gcc/ChangeLog in the egcs source package).
+  * libstdc++2.8-dev no longer Provides: libg++-dev (fixes #21153).
+  * libstdc++2.8-dev now Conflicts: libg++27-dev (bo),
+    libg++272-dev (hamm) [regular packages] rather than
+    Conflicts: libg++-dev [virtual package] to prepare the way for "libg++"
+    to be used as a virtual package for a new libg++ package (i.e. an up to
+    date one, which not longer contains libstdc++, but only the GNU
+    extensions) that is compatible with the egcs g++ packages. Such a package
+    isn't available yet. Joel Klecker tried building libg++2.8.1.1a within
+    egcs's libstdc++ setup, but it appears to need true gcc 2.8.1 .
+  * Filed Severity: important bugs against wxxt1-dev (#21707) because these
+    still depend on libg++-dev, which is removed in this version.
+    A fixed libsidplay1-dev has already been uploaded.
+  * libstdc++2.8 is now Section: base and Priority: required (as dselect is
+    linked against it).
+  * Disabled Haifa scheduling on Alpha again; Chris Chimelis reported
+    that this caused problems on some machines.
+  * [gcc/extend.texi]
+    ftp://maya.idiap.ch/pub/tmb/usenix88-lexic.ps.Z is no longer available;
+    use http://master.debian.org/~karlheg/Usenix88-lexic.pdf .
+    (fixes the egcs part of #20002).
+  * Updated Standards-Version.
+  * Changed chmod in debian/rules at Johnie Ingram's request.
+  * Rather than hardwire the Debian part of the packages' version number,
+    extract it from debian/changelog .
+  * Use gcc/objc/thr-posix.c from 980418 egcs snapshot to make objc work.
+    (Fixes #21192).
+  * Applied workaround for the GNUstep packages on sparc systems.
+    See README.sparc (on sparc packages only) in the doc directory.
+    This affects the other compilers as well.
+  * Already done in 1.0.2-0.7: the gobjc package now provides a virtual
+    package objc-compiler.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Tue, 28 Apr 1998 12:05:28 +0200
+
+egcs (1.0.2-0.7) frozen unstable; urgency=low
+
+  * Separated out Objective-C compiler.
+  * Applied patch from http://www.cygnus.com/ml/egcs/1998-Apr/0614.html
+
+ -- Matthias Klose <doko@debian.org>  Fri, 17 Apr 1998 10:25:48 +0200
+
+egcs (1.0.2-0.6) frozen unstable; urgency=low
+
+  * Due to upstream changes (libg++ is now only the GNU specific C++
+    classes, and is no longer maintained; libstdc++ contains the C++
+    standard library, including STL), the virtual "libg++-dev"
+    package's meaning has become confusing. Therefore, new or updated
+    packages should no longer use the virtual "libg++-dev" package.
+  * Corrected g++'s Recommends to libstdc++2.8-dev (>=2.90.27-0.1).
+    The previous version had Recommends: libstdc++-dev (>=2.90.27-0.1)
+    which doesn't work, as libstc++-dev is a virtual package.
+  * Bumped Standards-Version.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Tue, 14 Apr 1998 11:52:08 +0200
+
+egcs (1.0.2-0.5) frozen unstable; urgency=low (high for maintainers of packages that use libstdc++)
+
+  * Modified shlibs file for libstdc++ to generate versioned dependencies,
+    as it is not link compatible with the 1.0.1-x versions in
+    project/experimental. (Fixes #20247, #20033)
+    Packages depending on libstd++ should be recompiled to fix their
+    dependencies.
+  * Strenghtened g++'s Recommends: libstdc++-dev to the 1.0.2 version or
+    newer.
+  * Fixed problems with the unknown(7) symlink for gcov.
+  * Reordering links now works.
+
+ -- Adam Heath <adam.heath@usa.net>  Sun, 12 Apr 1998 13:09:30 -0400
+
+egcs (1.0.2-0.4) frozen unstable; urgency=low
+
+  * Unreleased. This is the version Adam Heath received from me.
+  * Replaces: gcc (<= 2.7.2.3-3) so that the overlap with the older gcc
+    packages (including bo's gcc_2.7.2.1-8) is handled properly
+    (fixes #19931, #19672, #20217, #20593).
+  * Alpha architecture (fixes #20875):
+    * Patched gcc/config/alpha/linux.h for the gmon functions to operate
+      properly.
+    * Made egcs the primary C compiler.
+    * Enabled Hafia scheduling.
+  * Lintian-detected problems:
+    * E: libstdc++2.8: ldconfig-symlink-before-shlib-in-deb usr/lib/libstdc++.so.2.8
+    * E: egcc: binary-without-manpage gcov
+      Reported as wishlist bug; added link to undocumented(7).
+    * W: libstdc++2.8: non-standard-executable-perm usr/lib/libstdc++.so.2.8.0 0555
+    * E: libstdc++2.8: shlib-with-executable-bit usr/lib/libstdc++.so.2.8.0 0555
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Fri, 10 Apr 1998 14:46:46 +0200
+
+egcs (1.0.2-0.3) frozen unstable; urgency=low
+
+  * Really fixed dependencies.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Mon, 30 Mar 1998 11:30:26 +0200
+
+egcs (1.0.2-0.2) frozen unstable; urgency=low
+
+  * Fixed dependencies.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Sat, 28 Mar 1998 13:58:58 +0100
+
+egcs (1.0.2-0.1) frozen unstable; urgency=low
+
+  * New upstream version; it now has -Di386 in CPP_PREDEFINES.
+  * Only used the debian/* patches from 1.0.1-2; the rest of it appears
+    to be in 1.0.2 already.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Fri, 27 Mar 1998 11:47:14 +0100
+
+egcs (1.0.1-2) unstable; urgency=low
+
+  * Integrated pre-release 1.0.2 patches
+  * Split out g++
+  * egcs may now provide either the primary or secondary C compiler
+
+ -- Galen Hazelwood <galenh@micron.net>  Sat, 14 Mar 1998 14:15:32 -0700
+
+egcs (1.0.1-1) unstable; urgency=low
+
+  * New upstream version
+  * egcs is now the standard Debian gcc!
+  * gcc now provides c-compiler (#15248 et al.)
+  * g77 now provides fortran77-compiler
+  * g77 dependencies now correct (#16991)
+  * /usr/doc/gcc/changelog.gz now has correct permissions (#16139)
+
+ -- Galen Hazelwood <galenh@micron.net>  Sat,  7 Feb 1998 19:22:30 -0700
+
+egcs (1.0-1) experimental; urgency=low
+
+  * First official release
+
+ -- Galen Hazelwood <galenh@micron.net>  Thu,  4 Dec 1997 16:30:11 -0700
+
+egcs (970917-1) experimental; urgency=low
+
+  * New upstream snapshot (There's a lot of stuff here as well, including
+    a new libstdc++, but it _still_ won't build...)
+  * eg77 driver now works properly
+
+ -- Galen Hazelwood <galenh@micron.net>  Wed, 17 Sep 1997 20:44:29 -0600
+
+egcs (970904-1) experimental; urgency=low
+
+  * New upstream snapshot
+
+ -- Galen Hazelwood <galenh@micron.net>  Sun,  7 Sep 1997 18:25:06 -0600
+
+egcs (ss-970814-1) experimental; urgency=low
+
+  * Initial packaging (of initial snapshot!)
+
+ -- Galen Hazelwood <galenh@micron.net>  Wed, 20 Aug 1997 00:36:28 +0000
+
+gcc272 (2.7.2.3-12) unstable; urgency=low
+
+  * Compiled on a glibc-2.0 based system.
+  * Reflect move of manpage to /usr/share in gcc.postinst as well.
+  * Moved gcc272-docs to section doc, priority optional.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Sat, 28 Aug 1999 13:42:13 +0200
+
+gcc272 (2.7.2.3-11) unstable; urgency=low
+
+  * Follow Debian policy for GNU system type (fixes #42657).
+  * config/i386/linux.h: Remove %[cpp_cpu] from CPP_SPEC. Stops gcc-2.95
+    complaining about obsolete spec operators (using gcc -V 2.7.2.3).
+    Patch suggested by Zack Weinberg <zack@bitmover.com>.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Sun, 15 Aug 1999 20:12:21 +0200
+
+gcc272 (2.7.2.3-10) unstable; urgency=low
+
+  * Renamed source package to gcc272. The egcs source package is renamed
+    to gcc, because it's now the "official" GNU C compiler.
+  * Changed maintainer address to "Debian GCC maintainers".
+  * Install info and man stuff to /usr/share.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Thu, 27 May 1999 12:29:23 +0200
+
+gcc (2.7.2.3-9) unstable; urgency=low
+
+  * debian/{postinst,prerm}-doc: handle gcc272.info, not gcc.info.
+    Fixes #36306.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Tue, 20 Apr 1999 07:32:58 +0200
+
+gcc (2.7.2.3-8) unstable; urgency=low
+
+  * Make gcc-2.7 the secondary compiler. Rename gcc package to gcc272.
+    On i386, sparc and m68k, this package is compiled against glibc2.0.
+  * The cpp package is built from the egcs source package.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Mon, 29 Mar 1999 22:48:50 +0200
+
+gcc (2.7.2.3-7) frozen unstable; urgency=low
+
+  * Separated out ObjC compiler to gobjc27 package.
+  * Changed maintainer address.
+  * Synchronized README.Debian with egcs-1.1.1-3.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Tue, 29 Dec 1998 19:05:26 +0100
+
+gcc (2.7.2.3-6) frozen unstable; urgency=low
+
+  * Link with -lc on i386, m68k, sparc, when building shared libraries
+    (fixes #25122).
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Thu,  3 Dec 1998 12:12:12 +0200
+
+gcc (2.7.2.3-5) frozen unstable; urgency=low
+
+  * Updated maintainer info.
+  * Updated Standards-Version; made lintian-clean.
+  * gcc-docs can coexist with the latest egcs-docs, so added (<= version) to
+    the Conflicts.
+  * Updated the README and renamed it to README.Debian .
+  * Put a reference to /usr/doc/gcc/README.Debian in the info docs.
+  * Updated description of g++272 .
+  * Clean up generated info files, to keep the diff small.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Tue, 17 Nov 1998 20:05:59 +0100
+
+gcc (2.7.2.3-4.8) frozen unstable; urgency=high
+
+  * Non-maintainer release
+  * Fix type in extended description
+  * Removed wrong test in postinst
+  * Add preinst to clean up some stuff from an older gcc package properly
+    and stop man complaining about dangling symlinks
+
+ -- Wichert Akkerman <wakkerma@debian.org>  Fri, 17 Jul 1998 18:48:32 +0200
+
+gcc (2.7.2.3-4.7) frozen unstable; urgency=high
+
+  * Really fixed gcc-docs postinst (Fixes #23470), so that `gcc-docs'
+    becomes installable.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Mon, 15 Jun 1998 07:53:40 +0200
+
+gcc (2.7.2.3-4.6) frozen unstable; urgency=high
+
+  * [gcc.c] There is one call to choose_temp_base for determining the
+    tempdir to be used only;
+    #ifdef HAVE_MKSTEMP delete the tempfile created as a side effect.
+    (fixes #23123 for gcc).
+  * gcc-docs postinst was broken (due to a broken line) (fixes #23391, #23401).
+  * [debian/control] description for gcc-docs said `egcs' where it should have
+    said `gcc' (fixes #23396).
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Thu, 11 Jun 1998 12:48:50 +0200
+
+gcc (2.7.2.3-4.5) frozen unstable; urgency=high
+
+  * The previous version left temporary files behind, as they were not
+    marked for deletion afterwards.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Sun, 31 May 1998 22:49:14 +0200
+
+gcc (2.7.2.3-4.4) frozen unstable; urgency=high (security fixes)
+
+  * Security improvements with regard to the /tmp problem
+    (gcc opens predictably named files in TMPDIR which can be abused via
+    symlinks)  (Fixes #19453 for gcc):
+    * Compile -DMKTEMP_EACH_FILE to ensure the %u name is generated randomly
+      every time; affects gcc/gcc.c .
+    * [cp/g++.c, collect2.c, gcc.c] If compiled -DHAVE_MKSTEMP use mkstemp(3)
+      rather than mktemp(3).
+    * Security improvements: don't use the result of choose_temp_base in a
+      predictable fashion.
+      [gcc.c]:
+      * @c, @objective-c: use random name rather then tempbasename.i for
+        intermediate preprocessor output (%g.i -> %d%u).
+      * @c, @objective-c: use random name rather then tempbasename.s for
+        intermediate compiler output (%g.s -> %d%u).
+      * @c, @objective-c, @cpp-output, @assembler-with-cpp: switched
+        "as [-o output file] <input file>" to
+        "as <input file> [-o output file]".
+      * @c, @objective-c, @assembler-with-cpp: use previous random name
+        (cc1|cpp output) rather then tempbasename.s for intermediate assembler
+        input (%g.s -> %U)
+      [f/lang-specs.h]:
+      * @f77-cpp-input: use random name rather then tempbasename.i for
+        intermediate cpp output (%g.i -> %d%u).
+      * @f77-cpp-input: use previous random name (cpp output) rather than
+        tempbasename.i for f771 input (%g.i -> %U).
+      * @f77-cpp-input: switched
+        "as [-o output file] <input file>" to
+        "as <input file> [-o output file]".
+      * @f77-cpp-input: use random name rather then tempbasename.s for
+        intermediate compiler output (%g.s -> %d%u).
+      * @ratfor: use random name rather then tempbasename.i for
+        intermediate ratfor output (%g.f -> %d%u).
+      * @ratfor: use previous random name (ratfor output) rather than
+        tempbasename.i for f771 input (%g.f -> %U).
+      * @ratfor: use random name rather then tempbasename.s for
+        intermediate compiler output (%g.s -> %d%u).
+      * @ratfor: switched
+        "as [-o output file] <input file>" to
+        "as <input file> [-o output file]".
+      * @ratfor: use previous random name
+        (ratfor output) rather then tempbasename.s for intermediate assembler
+        input (%g.s -> %U).
+      * @f77: use random name rather then tempbasename.s for
+        intermediate ratfor output (%g.f -> %d%u).
+      * @ratfor: use previous random name (ratfor output) rather than
+        tempbasename.i for f771 input (%g.f -> %U).
+      * @ratfor: use random name rather then tempbasename.s for
+        intermediate compiler output (%g.s -> %d%u).
+      * @ratfor: switched
+        "as [-o output file] <input file>" to
+        "as <input file> [-o output file]".
+      * @ratfor: use previous random name
+        (ratfor output) rather then tempbasename.s for intermediate assembler
+        input (%g.s -> %U).
+      * @f77: use random name rather then tempbasename.s for
+        intermediate compiler output (%g.s -> %d%u).
+      * @f77: switched
+        "as [-o output file] <input file>" to
+        "as <input file> [-o output file]".
+      * @ratfor: use random name rather then tempbasename.s for
+        intermediate compiler output (%g.s -> %U).
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Sat, 30 May 1998 17:27:03 +0200
+
+gcc (2.7.2.3-4.3) frozen unstable; urgency=high
+
+  * The "alpha" patches from -4 affected a lot more than alpha support,
+    and in all likeliness broke compilation of libc6 2.0.7pre3-1
+    and 2.0.7pre1-4 . I removed them by selective application of the
+    diff between -4 and -4. (should fix #22292).
+  * Fixed reference to the trampolines paper (fixes #20002 for Debian;
+    this still needs to be forwarded).
+  * This is for frozen too. (obsoletes #22390 (request to move -4.2 to
+    frozen)).
+  * Split of gcc-docs package, so that the gcc can be succesfully installed
+    on systems that have egcs-docs installed.
+  * Added the README on the compiler situation that's already in the egcs
+    packages.
+  * Use the recommended settings LDFLAGS=-s CFLAGS= BOOT_CFLAGS='-O2'.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Thu, 28 May 1998 20:03:59 +0200
+
+gcc (2.7.2.3-4.2) unstable; urgency=low
+
+  * Still for unstable, as I have received no feedback about the g++272
+    package yet.
+  * gcc now Provides: objc-compiler .
+  * Clean up /etc/alternatives/{g++,g++.1.gz} if they are dangling.
+    (fixes #19765, #20563)
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Wed, 22 Apr 1998 12:40:45 +0200
+
+gcc (2.7.2.3-4.1) unstable; urgency=low
+
+  * Bumped Standards-Version.
+  * Forked off a g++272 package (e.g. for code that uses the GNU extensions
+    in libg++); for now this is in "unstable" only; feedback appreciated.
+  * Some cleanup (lintian): permissions, absolute link, gzip manpage.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Fri, 17 Apr 1998 13:05:25 +0200
+
+gcc (2.7.2.3-4) unstable; urgency=low
+
+  * Added alpha patches
+  * Only build C and objective-c compilers, split off g++
+
+ -- Galen Hazelwood <galenh@micron.net>  Sun,  8 Mar 1998 21:16:39 -0700
+
+gcc (2.7.2.3-3) unstable; urgency=low
+
+  * Added patches for m68k
+  * Added patches for sparc (#13968)
+
+ -- Galen Hazelwood <galenh@micron.net>  Fri, 17 Oct 1997 18:25:21 -0600
+
+gcc (2.7.2.3-2) unstable; urgency=low
+
+  * Added g77 support (g77 0.5.21)
+
+ -- Galen Hazelwood <galenh@micron.net>  Wed, 10 Sep 1997 18:44:54 -0600
+
+gcc (2.7.2.3-1) unstable; urgency=low
+
+  * New upstream version
+  * Now using pristine source
+  * Removed misplaced paragraph in cpp.texi (#10877)
+  * Fix security bug for temporary files (#5298)
+  * Added Suggests: libg++-dev (#12335)
+  * Patched objc/thr-posix.c to support conditions (#12502)
+
+ -- Galen Hazelwood <galenh@micron.net>  Mon,  8 Sep 1997 12:20:07 -0600
+
+gcc (2.7.2.2-7) unstable; urgency=low
+
+  * Made cc and c++ managed through alternates mechanism (for egcs)
+
+ -- Galen Hazelwood <galenh@micron.net>  Tue, 19 Aug 1997 22:37:03 +0000
+
+gcc (2.7.2.2-6) unstable; urgency=low
+
+  * Tweaked Objective-C thread support (#11069)
+
+ -- Galen Hazelwood <galenh@micron.net>  Wed,  9 Jul 1997 11:56:57 -0600
+
+gcc (2.7.2.2-5) unstable; urgency=low
+
+  * More updated m68k patches
+  * Now conflicts with libc5-dev (#10006, #10112)
+  * More strict Depends: cpp, prevents version mismatch (#9954)
+
+ -- Galen Hazelwood <galenh@micron.net>  Thu, 19 Jun 1997 01:29:02 -0600
+
+gcc (2.7.2.2-4) unstable; urgency=low
+
+  * Moved to unstable
+  * Temporarily removed fortran support (waiting for new g77)
+  * Updated m68k patches
+
+ -- Galen Hazelwood <galenh@micron.net>  Fri,  9 May 1997 13:35:14 -0600
+
+gcc (2.7.2.2-3) experimental; urgency=low
+
+  * Built against libc6 (fixes bug #8511)
+
+ -- Galen Hazelwood <galenh@micron.net>  Fri, 4 Apr 1997 13:30:10 -0700
+
+gcc (2.7.2.2-2) experimental; urgency=low
+
+  * Fixed configure to build crt{begin,end}S.o on i386
+
+ -- Galen Hazelwood <galenh@micron.net>  Tue, 11 Mar 1997 16:15:02 -0700
+
+gcc (2.7.2.2-1) experimental; urgency=low
+
+  * Built for use with libc6-dev (experimental purposes only!)
+  * Added m68k patches from Andreas Schwab
+
+ -- Galen Hazelwood <galenh@micron.net>  Fri, 7 Mar 1997 12:44:17 -0700
+
+gcc (2.7.2.1-7) unstable; urgency=low
+
+  * Patched to support g77 0.5.20
+
+ -- Galen Hazelwood <galenh@micron.net>  Thu, 6 Mar 1997 22:20:23 -0700
+
+gcc (2.7.2.1-6) unstable; urgency=low
+
+  * Added (small) manpage for protoize/unprotoize (fixes bug #6904)
+  * Removed -lieee from specs file (fixes bug #7741)
+  * No longer builds aout-gcc
+
+ -- Galen Hazelwood <galenh@micron.net>  Mon, 3 Mar 1997 11:10:20 -0700
+
+gcc (2.7.2.1-5) unstable; urgency=low
+
+  * debian/control now lists cpp in section "interpreters"
+  * Re-added Objective-c patches for unstable
+
+ -- Galen Hazelwood <galenh@micron.net>  Wed, 22 Jan 1997 10:27:52 -0700
+
+gcc (2.7.2.1-4) stable unstable; urgency=low
+
+  * Changed original source file so dpkg-source -x works
+  * Removed Objective-c patches (unsafe for stable)
+  * Built against rex's libc, so fixes placed in -3 are available to
+    those still using rex
+
+ -- Galen Hazelwood <galenh@micron.net>  Tue, 21 Jan 1997 11:11:53 -0700
+
+gcc (2.7.2.1-3) unstable; urgency=low
+
+  * New (temporary) maintainer
+  * Updated to new standards and source format
+  * Integrated aout-gcc into gcc source package
+  * Demoted aout-gcc to Priority "extra"
+  * cpp package description more clear (fixes bug #5428)
+  * Removed cpp "Replaces: gcc" (fixes bug #5762)
+  * Minor fix to invoke.texi (fixes bug #2909)
+  * Added latest Objective-C patches for GNUstep people (fixes bug #4657)
+
+ -- Galen Hazelwood <galenh@micron.net>  Sun, 5 Jan 1997 09:57:36 -0700
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gcc-BV-doc.prerm
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gcc-BV-doc.prerm
@@ -0,0 +1,6 @@
+#! /bin/sh -e
+
+install-info --quiet --remove gcc-@BV@
+install-info --quiet --remove gccint-@BV@
+
+#DEBHELPER#
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gij-BV.prerm
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gij-BV.prerm
@@ -0,0 +1,12 @@
+#! /bin/sh -e
+
+update-alternatives --quiet --remove java /usr/bin/gij-@BV@
+update-alternatives --quiet --remove rmiregistry /usr/bin/grmiregistry-@BV@
+update-alternatives --quiet --remove keytool /usr/bin/gkeytool-@BV@
+update-alternatives --quiet --remove orbd /usr/bin/gorbd-@BV@
+update-alternatives --quiet --remove rmid /usr/bin/grmid-@BV@
+update-alternatives --quiet --remove serialver /usr/bin/gserialver-@BV@
+
+#DEBHELPER#
+
+exit 0
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/libgcjLGCJ.postinst
+++ gdc-4.1-0.25-20080616-4.1.2/debian/libgcjLGCJ.postinst
@@ -0,0 +1,12 @@
+#! /bin/sh -e
+
+case "$1" in
+    configure)
+	docdir=/usr/share/doc/libgcj@GCJ@
+	if [ -d $docdir ] && [ ! -h $docdir ]; then
+	  rm -rf /usr/share/doc/libgcj@GCJ@
+	  ln -s gcj-@BV@-base /usr/share/doc/libgcj@GCJ@
+	fi
+esac
+
+#DEBHELPER#
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.unpack
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.unpack
@@ -0,0 +1,215 @@
+# -*- makefile -*-
+# rules to unpack the source tarballs in $(srcdir); if the source dir already
+# exists, the rule exits with an error to prevent deletion of modified
+# source files. It has to be deleted manually.
+
+tarballs = $(gcc_tarball) $(gcj_tarball)
+ifeq ($(with_pascal),yes)
+  tarballs += $(gpc_tarball)
+endif
+ifeq ($(with_d),yes)
+  tarballs += $(gdc_tarball)
+endif
+
+
+unpack_stamps = $(foreach i,$(tarballs),$(unpack_stamp)-$(i))
+
+unpack: stamp-dir $(unpack_stamp) debian-chmod
+$(unpack_stamp): $(unpack_stamps)
+$(unpack_stamp): $(foreach p,$(debian_tarballs),unpacked-$(p))
+	echo -e "\nBuilt from Debian source package $(PKGSOURCE)-$(SOURCE_VERSION)" \
+		> pxxx
+	echo -e "Integrated upstream packages in this version:\n" >> pxxx
+	for i in $(tarballs); do echo "  $$i" >> pxxx; done
+	mv -f pxxx $@
+
+debian-chmod:
+	@chmod 755 debian/dh_*
+
+# ---------------------------------------------------------------------------
+
+gfdl_texinfo_files = \
+	gcc/doc/bugreport.texi \
+	gcc/doc/cfg.texi \
+	gcc/doc/collect2.texi \
+	gcc/doc/compat.texi \
+	gcc/doc/configfiles.texi \
+	gcc/doc/configterms.texi \
+	gcc/doc/contrib.texi \
+	gcc/doc/contribute.texi \
+	gcc/doc/cppenv.texi \
+	gcc/doc/cppinternals.texi \
+	gcc/doc/cppopts.texi \
+	gcc/doc/cpp.texi \
+	gcc/doc/c-tree.texi \
+	gcc/doc/extend.texi \
+	gcc/doc/fragments.texi \
+	gcc/doc/frontends.texi \
+	gcc/doc/gccint.texi \
+	gcc/doc/gcc.texi \
+	gcc/doc/gcov.texi \
+	gcc/doc/gnu.texi \
+	gcc/doc/gty.texi \
+	gcc/doc/headerdirs.texi \
+	gcc/doc/hostconfig.texi \
+	gcc/doc/implement-c.texi \
+	gcc/doc/install-old.texi \
+	gcc/doc/install.texi \
+	gcc/doc/interface.texi \
+	gcc/doc/invoke.texi \
+	gcc/doc/languages.texi \
+	gcc/doc/libgcc.texi \
+	gcc/doc/makefile.texi \
+	gcc/doc/md.texi \
+	gcc/doc/objc.texi \
+	gcc/doc/options.texi \
+	gcc/doc/passes.texi \
+	gcc/doc/portability.texi \
+	gcc/doc/rtl.texi \
+	gcc/doc/service.texi \
+	gcc/doc/sourcebuild.texi \
+	gcc/doc/standards.texi \
+	gcc/doc/tm.texi \
+	gcc/doc/tree-ssa.texi \
+	gcc/doc/trouble.texi \
+	gcc/doc/include/gcc-common.texi \
+	gcc/doc/include/funding.texi \
+	gcc/fortran/invoke.texi \
+	gcc/fortran/intrinsic.texi \
+	libstdc++-v3/docs/html/17_intro/porting.texi \
+
+gfdl_toplevel_texinfo_files = \
+	gcc/doc/gcc.texi \
+	gcc/java/gcj.texi \
+	gcc/ada/gnat-style.texi \
+	gcc/ada/gnat_rm.texi \
+	gcc/ada/gnat_ugn.texi \
+	gcc/fortran/gfortran.texi \
+	gcc/treelang/treelang.texi \
+
+gfdl_manpages = \
+	gcc/doc/cpp.1 \
+	gcc/doc/g++.1 \
+	gcc/doc/gcc.1 \
+	gcc/doc/gcj.1 \
+	gcc/doc/gcj-dbtool.1 \
+	gcc/doc/gcjh.1 \
+	gcc/doc/gcov.1 \
+	gcc/doc/gij.1 \
+	gcc/doc/gjnih.1 \
+	gcc/doc/grmic.1 \
+	gcc/doc/grmiregistry.1 \
+	gcc/doc/jcf-dump.1 \
+	gcc/doc/jv-convert.1 \
+	gcc/doc/jv-scan.1
+
+# ---------------------------------------------------------------------------
+$(unpack_stamp)-$(gcc_tarball): $(gcc_tarpath)
+	: # unpack gcc tarball
+	-mkdir $(stampdir)
+	if [ -d $(srcdir) ]; then \
+	  echo >&2 "Source directory $(srcdir) exists. Delete by hand"; \
+	  false; \
+	fi
+	rm -rf $(gcc_srcdir)
+	case $(gcc_tarball) in \
+	  *.bz2) tar -x --bzip2 -f $(gcc_tarpath);; \
+	  *.gz)  tar -x --gzip  -f $(gcc_tarpath);; \
+	  *)     false; \
+	esac
+	mv $(gcc_srcdir) $(srcdir)
+ifeq (0,1)
+	cd $(srcdir) && tar cfj ../gcc-4.1.1-doc.tar.bz2 \
+		$(gfdl_texinfo_files) \
+		$(gfdl_toplevel_texinfo_files) \
+		$(gfdl_manpages) \
+		libstdc++-v3/docs/html/17_intro/porting.html
+endif
+ifeq ($(GFDL_INVARIANT_FREE),yes)
+	rm -f $(srcdir)/gcc/doc/*.1
+	rm -f $(srcdir)/gcc/doc/*.info
+	for i in $(gfdl_texinfo_files); do \
+	  cp $(SOURCE_DIR)debian/dummy.texi $(srcdir)/$$i; \
+	done
+	for i in $(gfdl_toplevel_texinfo_files); do \
+	  n=$$(basename $$i .texi); \
+	  sed "s/@name@/$$n/g" $(SOURCE_DIR)debian/gcc-dummy.texi > $(srcdir)/$$i; \
+	done
+	cp $(SOURCE_DIR)debian/porting.* $(srcdir)/libstdc++-v3/docs/html/17_intro/
+	for i in $(gfdl_manpages); do \
+	  touch $(srcdir)/$$i; \
+	done
+endif
+	echo "$(gcc_tarball) unpacked." > $@
+
+# ---------------------------------------------------------------------------
+$(unpack_stamp)-$(gcj_tarball): $(gcj_tarpath) $(unpack_stamp)-$(gcc_tarball)
+	: # unpack gcj tarball
+	rm -rf $(srcdir)/gcc/java $(srcdir)/libjava
+	tar -x -C $(srcdir) -f $(gcj_tarpath)
+ifeq ($(GFDL_INVARIANT_FREE),yes)
+	rm -f $(srcdir)/gcc/java/*.1
+	rm -f $(srcdir)/gcc/java/*.info
+	for i in $(gfdl_texinfo_files); do \
+	  cp $(SOURCE_DIR)debian/dummy.texi $(srcdir)/$$i; \
+	done
+	for i in $(gfdl_toplevel_texinfo_files); do \
+	  n=$$(basename $$i .texi); \
+	  sed "s/@name@/$$n/g" $(SOURCE_DIR)debian/gcc-dummy.texi > $(srcdir)/$$i; \
+	done
+endif
+	echo "$(gcj_tarball) unpacked." > $@
+
+# ---------------------------------------------------------------------------
+$(unpack_stamp)-$(gpc_tarball): $(gpc_tarpath)
+	: # unpack gpc tarball
+	-mkdir $(stampdir)
+	if [ -d $(srcdir)/gcc/p ]; then \
+	  echo >&2 "Source directory $(srcdir)/gcc/p exists. Delete by hand";\
+	  false; \
+	fi
+	#rm -rf $(gpc_srcdir)
+	rm -rf p
+	case $(gpc_tarball) in \
+	  *.bz2) tar -x --bzip2 -f $(gpc_tarpath);; \
+	  *.gz)  tar -x --gzip  -f $(gpc_tarpath);; \
+	  *)     false; \
+	esac
+	if [ -d p ]; then \
+	  mv p $(srcdir)/gcc/. ; \
+	else \
+	  mv $(gpc_srcdir)/p $(srcdir)/gcc/. ; \
+	  rm -rf $(gpc_srcdir)/CVS; \
+	  rmdir $(gpc_srcdir); \
+	fi
+	echo "$(gpc_tarball) unpacked." > $@
+
+# ---------------------------------------------------------------------------
+$(unpack_stamp)-$(gdc_tarball): $(gdc_tarpath)
+	: # unpack gdc tarball
+	-mkdir $(stampdir)
+	if [ -d $(srcdir)/gcc/d ]; then \
+	  echo >&2 "Source directory $(srcdir)/gcc/d exists. Delete by hand";\
+	  false; \
+	fi
+	#rm -rf $(gdc_srcdir)
+	rm -rf d
+	case $(gdc_tarball) in \
+	 *.bz2) tar -x --bzip2 -f $(gdc_tarpath);; \
+	 *.gz)  tar -x --gzip  -f $(gdc_tarpath);; \
+	 *)     false; \
+	esac
+	if [ -d d ]; then \
+	  mv d $(srcdir)/gcc/. ; \
+	else \
+	  mv $(gdc_srcdir)/d $(srcdir)/gcc/. ; \
+	  rm -rf $(gdc_srcdir)/CVS; \
+	  rmdir $(gdc_srcdir); \
+	fi
+	rm -f $(srcdir)/gcc/d/d-make-include
+ifeq ($(libphobos_version),2)
+	echo "D_LANGUAGE_VERSION=2" > $(srcdir)/gcc/d/d-make-include
+else
+	echo "D_LANGUAGE_VERSION=1" > $(srcdir)/gcc/d/d-make-include
+endif
+	echo "$(gdc_tarball) unpacked." > $@
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gij-BV.postinst
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gij-BV.postinst
@@ -0,0 +1,52 @@
+#! /bin/sh -e
+
+prio=$(echo @BV@ | sed 's/\.//g')
+
+update-alternatives --quiet \
+    --install /usr/bin/java java /usr/bin/gij-@BV@ $prio \
+    @GFDL@--slave /usr/share/man/man1/java.1.gz java.1.gz /usr/share/man/man1/gij-@BV@.1.gz
+
+update-alternatives --quiet \
+    --install /usr/bin/rmiregistry rmiregistry /usr/bin/grmiregistry-@BV@ $prio \
+    --slave /usr/share/man/man1/rmiregistry.1.gz rmiregistry.1.gz /usr/share/man/man1/grmiregistry-@BV@.1.gz
+
+update-alternatives --quiet \
+    --install /usr/bin/keytool keytool /usr/bin/gkeytool-@BV@ $prio \
+    --slave /usr/share/man/man1/keytool.1.gz keytool.1.gz /usr/share/man/man1/gkeytool-@BV@.1.gz
+
+update-alternatives --quiet \
+    --install /usr/bin/orbd orbd /usr/bin/gorbd-@BV@ $prio \
+    --slave /usr/share/man/man1/orbd.1.gz orbd.1.gz /usr/share/man/man1/gorbd-@BV@.1.gz
+
+update-alternatives --quiet \
+    --install /usr/bin/rmid rmid /usr/bin/grmid-@BV@ $prio \
+    --slave /usr/share/man/man1/rmid.1.gz rmid.1.gz /usr/share/man/man1/grmid-@BV@.1.gz
+
+update-alternatives --quiet \
+    --install /usr/bin/serialver serialver /usr/bin/gserialver-@BV@ $prio \
+    --slave /usr/share/man/man1/serialver.1.gz serialver.1.gz /usr/share/man/man1/gserialver-@BV@.1.gz
+
+case "$1" in
+configure)
+    if [ ! -f /var/lib/gcj-@BV@/classmap.db ]; then
+	uname=$(uname -m)
+	mkdir -p /var/lib/gcj-@BV@
+	if gcj-dbtool-@BV@ -n /var/lib/gcj-@BV@/classmap.db; then
+	    case "$uname" in arm*|m68k|parisc*)
+	        echo >&2 "gcj-dbtool succeeded unexpectedly"
+	    esac
+	else
+	    case "$uname" in
+	    arm*|m68k|parisc*)
+	        echo >&2 "ERROR: gcj-dbtool did fail; known problem on $uname";;
+	    *)
+		exit 2
+	    esac
+	    touch /var/lib/gcj-@BV@/classmap.db
+	fi
+    fi
+esac
+
+#DEBHELPER#
+
+exit 0
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gnat-BV-doc.doc-base.style
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gnat-BV-doc.doc-base.style
@@ -0,0 +1,16 @@
+Document: gnat-style-@BV@
+Title: GNAT Coding Style
+Author: Various
+Abstract: Most of GNAT is written in Ada using a consistent style to
+ ensure readability of the code.  This document has been written to
+ help maintain this consistent style, while having a large group of
+ developers work on the compiler.
+Section: Apps/Programming
+
+Format: html
+Index: /usr/share/doc/gcc-@BV@-base/Ada/gnat-style.html
+Files: /usr/share/doc/gcc-@BV@-base/Ada/gnat-style.html
+
+Format: info
+Index: /usr/share/info/gnat-style-@BV@.info.gz
+Files: /usr/share/info/gnat-style-@BV@*
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/compat
+++ gdc-4.1-0.25-20080616-4.1.2/debian/compat
@@ -0,0 +1 @@
+4
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/acats-killer.sh
+++ gdc-4.1-0.25-20080616-4.1.2/debian/acats-killer.sh
@@ -0,0 +1,62 @@
+#! /bin/sh
+
+# on ia64 systems, the acats hangs in unaligned memory accesses.
+# kill these testcases.
+
+pidfile=acats-killer.pid
+
+usage()
+{
+    echo >&2 "usage: `basename $0` [-p <pidfile>] <ada logfile> <next logfile>"
+    exit 1
+}
+
+while [ $# -gt 0 ]; do
+    case $1 in
+    -p)
+	pidfile=$2
+	shift
+	shift
+	;;
+    -*)
+	usage
+	;;
+    *)
+	break
+    esac
+done
+
+[ $# -eq 2 ] || usage
+
+logfile=$1
+stopfile=$2
+interval=30
+
+echo $$ > $pidfile
+
+while true; do
+    if [ -f "$stopfile" ]; then
+	echo "`basename $0`: finished."
+	rm -f $pidfile
+	exit 0
+    fi
+    sleep $interval
+    if [ ! -f "$logfile" ]; then
+	continue
+    fi
+    pids=$(ps aux | awk '/testsuite\/ada\/acats\/tests/ { print $2 }')
+    if [ -n "$pids" ]; then
+	sleep $interval
+        pids2=$(ps aux | awk '/testsuite\/ada\/acats\/tests/ { print $2 }')
+	if [ "$pids" = "$pids2" ]; then
+	    #echo kill: $pids
+	    kill $pids
+	    sleep 1
+            pids2=$(ps aux | awk '/testsuite\/ada\/acats\/tests/ { print $2 }')
+	    if [ "$pids" = "$pids2" ]; then
+	        #echo kill -9: $pids
+	        kill -9 $pids
+	    fi
+	fi
+    fi
+done
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gfortran-BV-doc.doc-base
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gfortran-BV-doc.doc-base
@@ -0,0 +1,14 @@
+Document: gfortran-@BV@
+Title: The GNU Fortran Compiler 
+Author: Various
+Abstract: This manual documents how to run, install and port `gfortran',
+ as well as its new features and incompatibilities, and how to report bugs.
+Section: Apps/Programming
+
+Format: html
+Index: /usr/share/doc/gcc-@BV@-base/fortran/gfortran.html
+Files: /usr/share/doc/gcc-@BV@-base/fortran/gfortran.html
+
+Format: info
+Index: /usr/share/info/gfortran-@BV@.info.gz
+Files: /usr/share/info/gfortran-@BV@*
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/cpp-BV-doc.prerm
+++ gdc-4.1-0.25-20080616-4.1.2/debian/cpp-BV-doc.prerm
@@ -0,0 +1,6 @@
+#! /bin/sh -e
+
+install-info --quiet --remove cpp-@BV@
+install-info --quiet --remove cppinternals-@BV@
+
+#DEBHELPER#
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rename-pkgs.sh
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rename-pkgs.sh
@@ -0,0 +1,32 @@
+#! /bin/bash
+
+rename_pkg()
+{
+  src=$1
+  dest=$2
+  for ext in preinst postinst prerm postrm doc-base; do
+    if [ -f $src.$ext ]; then
+      if [ -f $dest.ext ]; then
+	echo already exists: $dest.$ext
+      else
+	echo "$src.$ext --> $dest.$ext"
+	svn rename $src.$ext $dest.$ext
+	#mv $src.$ext $dest.$ext
+      fi
+    fi
+  done
+}
+
+v_new=3.4
+v_old=3.3
+
+for p in chill cpp gcc g++ g77 gpc gij gcj gobjc protoize treelang; do
+  rename_pkg $p-$v_old $p-$v_new
+done
+
+for p in cpp gcc g77 gnat; do
+  rename_pkg $p-$v_old-doc $p-$v_new-doc
+done
+
+rename_pkg gcc-$v_old-base gcc-$v_new-base
+rename_pkg gcc-$v_old-sparc64 gcc-$v_new-sparc64
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/README
+++ gdc-4.1-0.25-20080616-4.1.2/debian/README
@@ -0,0 +1,33 @@
+		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>
+Ray Dassen <jdassen@debian.org>
+Jeff Bailey <jbailey@nisa.net>			(hurd-i386)
+Joel Baker <fenton@debian.org>			(netbsd-i386)
+Philip Blundell <pb@debian.org>			(arm-linux)
+Ben Collins <bcollins@debian.org>		(sparc-linux)
+Randolph Chung <tausq@debian.org>		(ia64-linux)
+Falk Hueffner <falk@debian.org>			(alpha-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)
+Ludovic Brenta <ludovic@ludovic-brenta.org>	(gnat)
+Arthur Loiret <arthur.loiret@gmail.com>		(gdc)
+
+===============================================================================
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gij-wrapper-BV.1
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gij-wrapper-BV.1
@@ -0,0 +1,22 @@
+.TH GIJ-WRAPPER 1 "August 11, 2001" gij-wrapper "Java User's Manual"
+.SH NAME
+gij-wrapper \- a wrapper around gij
+
+.SH SYNOPSIS
+gij-wrapper [\fB\s-1OPTION\s0\fR] ... \fI\s-1JARFILE\s0\fR [\fI\s-1ARGS\s0\fR...]
+.PP
+gij-wrapper [\fB\-jar\fR] [\fB\s-1OPTION\s0\fR] ... \fI\s-1CLASS\s0\fR [\fI\s-1ARGS\s0\fR...]
+
+.SH DESCRIPTION
+
+\fBgij-wrapper\fR is a wrapper around gij(1) to be called as the java
+interpreter. Options different for java(1) and gij(1) are translated,
+options unknown to gij(1) are silently ignored.
+
+.SH OPTIONS
+See gij-@BV@(1) for a list of options that gij understands.
+
+.SH "SEE ALSO"
+.BR gij-@BV@(1)
+,
+.BR java(1)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gcjh-wrapper-BV
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gcjh-wrapper-BV
@@ -0,0 +1,86 @@
+#!/usr/bin/perl -w
+#
+# Starts the GNU Java header generator.
+#
+# Command-line arguments should be in the style of Sun's javah command;
+# these will be converted to gcjh arguments before being passed to the
+# gcjh itself.
+#
+# Copyright (C) 2003 by Peter Hawkins <peterh@debian.org>
+# Haphazardly hacked up based on the gcj-wrapper perl script.
+# Copyright (C) 2002-2003 by Ben Burton <bab@debian.org>
+# Based on the original gcj-wrapper-3.2 shell script.
+
+use strict;
+
+# The real Java header generator:
+my $javaHeaderGen = '/usr/bin/gcjh-@BV@';
+
+# The command-line arguments to pass to the real Java compiler:
+my @commandLine;
+
+# Build the command-line from the arguments given.
+my $parsingOptions = 1;
+my $copyNextArg = 0;
+my $ignoreNextArg = 0;
+my $appendNextArg = '';
+foreach my $arg (@ARGV) {
+    # See if we already know what to do with this argument.
+    if ($ignoreNextArg) {
+        # Throw it away.
+        $ignoreNextArg = 0;
+        next;
+    } elsif ($copyNextArg or not $parsingOptions) {
+        # Copy it directly.
+        push @commandLine, $arg;
+        $copyNextArg = 0;
+        next;
+    } elsif ($appendNextArg) {
+        # Append it to $appendNextArg and then copy directly.
+        push @commandLine, ($appendNextArg . $arg);
+        $appendNextArg = '';
+        next;
+    }
+
+    # Try to interpret Sun-style options.
+    if ($arg eq '-version') {
+        push @commandLine, '--version';
+    } elsif ($arg eq '-h' or $arg eq '-help') {
+        push @commandLine, '--help';
+    } elsif ($arg eq '-verbose') {
+        push @commandLine, '--verbose';
+    } elsif ($arg eq '-classpath' or $arg eq '--classpath' or $arg eq '--cp') {
+        $appendNextArg = '--classpath=';
+    } elsif ($arg eq '-encoding' or $arg eq '-bootclasspath' or
+             $arg eq '-extdirs') {
+        $appendNextArg = "-".$arg . '=';
+    } elsif ($arg eq '-d') {
+        push @commandLine, '-d';
+        $copyNextArg = 1;
+    } elsif ($arg eq '-o') {
+        push @commandLine, '-o';
+        $copyNextArg = 1;
+    } elsif ($arg eq '-stubs') {
+        push @commandLine, '-stubs';
+    } elsif ($arg eq '-jni') {
+        push @commandLine, '-jni';
+    } elsif ($arg =~ /^-old/) {
+        # An extended Sun option (which we don't support).
+        push @commandLine, '--help' if ($arg eq '-old');
+    } elsif ($arg =~ /^-/) {
+        # An unsupported standalone option.
+    } else {
+        # Some non-option argument has been given.
+        # Stop parsing options at this point.
+        push @commandLine, $arg;
+        $parsingOptions = 0;
+    }
+}
+
+# Was there a partial argument that was never completed?
+push @commandLine, $appendNextArg if ($appendNextArg);
+
+# Call the real Java header generator.
+my @fullCommandLine = ( $javaHeaderGen );
+push @fullCommandLine, @commandLine;
+exec @fullCommandLine or exit(1);
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/dummy-man.1
+++ gdc-4.1-0.25-20080616-4.1.2/debian/dummy-man.1
@@ -0,0 +1,29 @@
+.TH @NAME@ 1 "May 24, 2003" @name@ "Debian Free Documentation"
+.SH NAME
+@name@ \- A program with a man page covered by the GFDL with invariant sections
+.SH SYNOPSIS
+@name@ [\fB\s-1OPTION\s0\fR] ... [\fI\s-1ARGS\s0\fR...]
+
+.SH DESCRIPTION
+
+\fB@name@\fR is documented by a man page, which is covered by the "GNU
+Free Documentation License" (GFDL) containing invariant sections.
+.P
+In November 2002, version 1.2 of the GNU Free Documentation License (GNU
+FDL) was released by the Free Software Foundation after a long period
+of consultation. Unfortunately, some concerns raised by members of the
+Debian Project were not addressed, and as such the GNU FDL can apply
+to works that do not pass the Debian Free Software Guidelines (DFSG),
+and may thus only be included in the non-free component of the Debian
+archive, not the Debian distribution itself.
+
+.SH "SEE ALSO"
+.BR http://gcc.gnu.org/onlinedocs/
+for the complete documentation,
+.BR http://lists.debian.org/debian-legal/2003/debian-legal-200304/msg00307.html
+for a proposed statement of Debian with respect to the GFDL,
+.BR gfdl(7)
+
+.SH AUTHOR
+This manual page was written by the Debian GCC maintainers,
+for the Debian GNU/Linux system.
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/protoize.1
+++ gdc-4.1-0.25-20080616-4.1.2/debian/protoize.1
@@ -0,0 +1,42 @@
+.TH PROTOIZE 1
+.\" NAME should be all caps, SECTION should be 1-8, maybe w/ subsection
+.\" other parms are allowed: see man(7), man(1)
+.SH NAME
+protoize, unprotoize \- create/remove ANSI prototypes from C code
+.SH SYNOPSIS
+.B protoize
+.I "[options] files ...." 
+.br
+.B unprotoize
+.I "[options] files ...." 
+.SH "DESCRIPTION"
+This manual page documents briefly the
+.BR protoize ,
+and
+.B unprotoize
+commands.
+This manual page was written for the Debian GNU/Linux distribution
+(but may be used by others), because the original program does not
+have a manual page.
+Instead, it has documentation in the GNU Info format; see below.
+.PP
+.B protoize
+is an optional part of GNU C.  You can use it to add prototypes to a
+program, thus converting the program to ANSI C in one respect.  The companion
+program `unprotoize' does the reverse: it removes argument types from
+any prototypes that are found.
+.PP
+When you run these programs, you must specify a set of source files
+as command line arguments.
+.SH OPTIONS
+These programs are non-trivial to operate, and it is neither possible nor
+desirable to properly summarize options in this man page.  Read the info
+documentation for more information.
+.SH "SEE ALSO"
+The programs are documented fully by
+.IR "Gcc: The use and the internals of the GNU compiler",
+available via the Info system.  The documentation for protoize/unprotoize
+can be found in the subsection "Invoking GCC", under "Running Protoize."
+.SH AUTHOR
+This manual page was written by Galen Hazelwood,
+for the Debian GNU/Linux system.
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gnat-BV-doc.doc-base.ug
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gnat-BV-doc.doc-base.ug
@@ -0,0 +1,16 @@
+Document: gnat_ugn_unw-@BV@
+Title: GNAT User's Guide for Unix Platforms
+Author: Various
+Abstract: This guide describes the use of GNAT, a compiler and
+ software development toolset for the full Ada 95 programming language.
+ It describes the features of the compiler and tools, and details how
+ to use them to build Ada 95 applications.
+Section: Apps/Programming
+
+Format: html
+Index: /usr/share/doc/gcc-@BV@-base/Ada/gnat_ugn_unw.html
+Files: /usr/share/doc/gcc-@BV@-base/Ada/gnat_ugn_unw.html
+
+Format: info
+Index: /usr/share/info/gnat_ugn_unw-@BV@.info.gz
+Files: /usr/share/info/gnat_ugn_unw-@BV@*
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/reduce-test-diff.awk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/reduce-test-diff.awk
@@ -0,0 +1,33 @@
+#! /usr/bin/gawk -f
+
+BEGIN {
+	skip=0
+	warn=0
+}
+
+/^-(FAIL|ERROR|UNRESOLVED|WARNING)/ {
+	next
+}
+
+# only compare gcc, g++, g77 and objc results
+/=== treelang tests ===/ {
+	skip=1
+}
+
+# omit extra files appended to test-summary
+/^\+Compiler version/ {
+	skip=1
+}
+
+skip == 0 {
+	print
+	next
+}
+
+/^\+(FAIL|ERROR|UNRESOLVED|WARNING)/ {
+	warn=1
+}
+
+END {
+	exit warn
+}
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/README.snapshot
+++ gdc-4.1-0.25-20080616-4.1.2/debian/README.snapshot
@@ -0,0 +1,36 @@
+Debian gcc-snapshot package
+===========================
+
+This package contains  a recent development SNAPSHOT of all files
+contained in the GNU Compiler Collection (GCC).
+
+DO NOT USE THIS SNAPSHOT FOR BUILDING DEBIAN PACKAGES!
+
+This package will NEVER hit the testing distribution. It's used for
+tracking gcc bugs submitted to the Debian BTS in recent development
+versions of gcc.
+
+To use this snapshot, you should set the following environment variables:
+
+	LD_LIBRARY_PATH=/usr/lib/gcc-snapshot/lib:$LD_LIBRARY_PATH
+	PATH=/usr/lib/gcc-snapshot/bin:$PATH
+
+You might also like to use a shell script to wrap up this 
+funcationality, e.g. 
+ 
+place in /usr/local/bin/gcc-snapshot and chmod +x it 
+ 
+----------- snip ----------
+#! /bin/sh
+LD_LIBRARY_PATH=/usr/lib/gcc-snapshot/lib:$LD_LIBRARY_PATH
+PATH=/usr/lib/gcc-snapshot/bin:$PATH
+gcc "$@"
+----------- snip ----------
+
+Make the same for g++, g77, gij, gcj, cpp, ...
+ 
+Don't forget the quotes around the $@ or gcc will not parse it's 
+command line correctly! 
+
+Unset these variables before building Debian packages destined for an
+upload to ftp-master.debian.org.
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/TODO
+++ gdc-4.1-0.25-20080616-4.1.2/debian/TODO
@@ -0,0 +1,26 @@
+- gfortran man page generation
+
+- Clean up the sprawl of debian/rules.  I'm sure there are neater
+  ways to do some of it; perhaps split it up into some more files?
+  Partly done.
+
+- Build the shared Ada libraries. Be sure, that you they can be used at all...
+  Architecture specific!
+
+- Link the Ada tools with the shared Ada library.
+
+- The following bugs are still open; please step forward and have a look
+  at http://bugs.debian.org/debian-gcc@lists.debian.org
+  Never finished.
+
+[Arthur Loiret] D
+
+- Add support for gcc-4.2 and 4.3 to gdc (not yet supported upstream).
+
+- Make libphobos a shared lib.
+
+- Finish libphobos ports.
+
+Help needed for the following reports:
+
+[Needs to be updated]
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/lib64stdc++CXX.postinst
+++ gdc-4.1-0.25-20080616-4.1.2/debian/lib64stdc++CXX.postinst
@@ -0,0 +1,12 @@
+#! /bin/sh -e
+
+case "$1" in
+    configure)
+	docdir=/usr/share/doc/lib64stdc++@CXX@
+	if [ -d $docdir ] && [ ! -h $docdir ]; then
+	    rm -rf $docdir
+	    ln -s gcc-@BV@-base $docdir
+	fi
+esac
+
+#DEBHELPER#
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gij-hppa
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gij-hppa
@@ -0,0 +1,10 @@
+#! /bin/sh
+
+prctl=
+
+case "$(prctl --unaligned=)" in *signal)
+    echo >&2 "$(basename $0): ignore unaligned memory accesses"
+    prctl="prctl --unaligned=default"
+esac
+
+exec $prctl /usr/bin/gij-4.1.bin "$@"
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/relink
+++ gdc-4.1-0.25-20080616-4.1.2/debian/relink
@@ -0,0 +1,74 @@
+#! /bin/sh
+#
+# Relink GNAT utilities using the shared library
+#
+
+set -e
+
+pwd=`pwd`
+
+# why?
+chmod a-w build/gcc/ada/rts/*.ali
+
+rm -rf tmp
+ln -s $pwd/build/gcc/ada/rts/libgnat.so.1 tmp/libgnat.so
+
+LD_LIBRARY_PATH=$pwd/tmp
+export LD_LIBRARY_PATH
+
+PATH=$pwd/debian:$pwd/tmp:$PATH
+export PATH
+
+echo "#! /bin/sh" > tmp/dgcc
+echo "$pwd/build/gcc/xgcc -B$pwd/build/gcc/ "'"$@"' >> tmp/dgcc
+chmod 755 tmp/dgcc
+
+echo "#! /bin/sh" > tmp/dgnatlink
+echo "$pwd/build/gcc/gnatlink --GCC=dgcc "'"$@"' >> tmp/dgnatlink
+chmod 755 tmp/dgnatlink
+
+GMCMD="$pwd/build/gcc/gnatmake -I- -Irts -I. -a -m --GNATBIND=$pwd/build/gcc/gnatbind --GNATLINK=dgnatlink --GCC=dgcc"
+
+#cd $pwd/build/gcc/ada
+#make CFLAGS="-O2" CC="../xgcc -B../" STAGE_PREFIX=../ a-link.o a-gmem.o
+#cd $pwd
+
+[ -f build/gcc/gnatmake.old ] || cp -p build/gcc/gnatmake build/gcc/gnatmake.old
+[ -f build/gcc/gnatlink.old ] || cp -p build/gcc/gnatlink build/gcc/gnatlink.old
+
+make -C build/gcc/ada \
+	CFLAGS='-gnatp -gnata -O2 ' \
+	ADA_INCLUDES="-I." \
+	CC="../xgcc -B../" \
+	STAGE_PREFIX=../ \
+    ../gnatmake ../gnatlink
+
+mv gnatmake bgnatmake
+mv gnatlink bgnatlink
+exit 0
+
+cd build/gcc/ada
+for i in ../gnatchop ../gnatcmd \
+    ../gnatkr ../gnatlbr \
+    ../gnatls ../gnatmake \
+    ../gnatprep ../gnatpsys \
+    ../gnatxref ../gnatfind
+do
+  rm -f $i
+  $GMCMD -O2 -gnatp -o $i `basename $i`.adb -largs -L..
+done
+
+rm -f ../gnatmem
+$GMCMD -O2 -gnatp -o ../gnatmem gnatmem.adb -largs -L.. a-gmem.o
+$GMCMD -O2 -gnatp -o ../gnatlink gnatlink -largs -L.. a-link.o
+rm -f ../gnatpsta
+
+make CFLAGS="-O2" CC="../xgcc -B../" a-gettty.o a-deftar.o
+$GMCMD -O2 -gnatp -o ../gnatpsta gnatpsta -largs -L.. a-gettty.o a-deftar.o
+rm -f ../gnatbl
+
+make CFLAGS="-O2" CC="../xgcc -B../" gnatbl.o
+../xgcc -B../ -o ../gnatbl gnatbl.o -L.. -lgnat
+rm -f ../bgnatmake ../bgnatlink ../debian/dgcc ../debian/dgnatlink
+
+chmod +w rts/*.ali
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gpc-BV-doc.postinst
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gpc-BV-doc.postinst
@@ -0,0 +1,12 @@
+#! /bin/sh -e
+
+if [ -f /usr/share/info/gpc-@BV@.info.gz ]; then
+  install-info --quiet --section "Development" "Development" \
+	--description="The GNU Pascal compiler." \
+	/usr/share/info/gpc-@BV@.info
+else
+  # GFDL invariant free
+  true
+fi
+
+#DEBHELPER#
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/watch
+++ gdc-4.1-0.25-20080616-4.1.2/debian/watch
@@ -0,0 +1,2 @@
+version=2
+ftp://gcc.gnu.org/pub/gcc/releases/gcc-(4\.1[\d\.]*)	debian	uupdate
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/libstdc++CXX.postinst
+++ gdc-4.1-0.25-20080616-4.1.2/debian/libstdc++CXX.postinst
@@ -0,0 +1,12 @@
+#! /bin/sh -e
+
+case "$1" in
+    configure)
+	docdir=/usr/share/doc/libstdc++@CXX@
+	if [ -d $docdir ] && [ ! -h $docdir ]; then
+	    rm -rf $docdir
+	    ln -s gcc-@BV@-base $docdir
+	fi
+esac
+
+#DEBHELPER#
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gcc-cross.prerm
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gcc-cross.prerm
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+update-alternatives --quiet --remove cross-gcc /usr/bin/cross-gcc-ver
+
+exit 0
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/control.m4
+++ gdc-4.1-0.25-20080616-4.1.2/debian/control.m4
@@ -0,0 +1,1265 @@
+divert(-1)
+
+define(`checkdef',`ifdef($1, , `errprint(`error: undefined macro $1
+')m4exit(1)')')
+define(`errexit',`errprint(`error: undefined macro `$1'
+')m4exit(1)')
+
+dnl The following macros must be defined, when called:
+dnl ifdef(`SRCNAME',	, errexit(`SRCNAME'))
+dnl ifdef(`PV',		, errexit(`PV'))
+dnl ifdef(`ARCH',		, errexit(`ARCH'))
+
+dnl The architecture will also be defined (-D__i386__, -D__powerpc__, etc.)
+
+define(`PN', `$1')
+ifdef(`PRI', `', `
+    define(`PRI', `$1')
+')
+define(`MAINTAINER', `Debian GCC Maintainers <debian-gcc@lists.debian.org>')
+
+define(`ifenabled', `ifelse(index(enabled_languages, `$1'), -1, `dnl', `$2')')
+
+divert`'dnl
+dnl --------------------------------------------------------------------------
+Source: SRCNAME
+Section: devel
+Priority: PRI(optional)
+ifelse(DIST,`Ubuntu',`dnl
+ifelse(regexp(SRCNAME, `gcc-snapshot\|gnat'),0,`dnl
+Maintainer: Ubuntu MOTU Developers <ubuntu-motu@lists.ubuntu.com>
+', `dnl
+Maintainer: Ubuntu Core developers <ubuntu-devel-discuss@lists.ubuntu.com>
+')dnl SRCNAME
+XSBC-Original-Maintainer: MAINTAINER
+', `dnl
+Maintainer: MAINTAINER
+')dnl DIST
+ifelse(regexp(SRCNAME, `gnat'),0,`dnl
+Uploaders: Ludovic Brenta <lbrenta@debian.org>
+', regexp(SRCNAME, `gdc'),0,`dnl
+Uploaders: Arthur Loiret <arthur.loiret@gmail.com>
+', regexp(SRCNAME, `gpc'),0,`dnl
+Uploaders: Matthias Klose <doko@debian.org>
+', `dnl
+Uploaders: Matthias Klose <doko@debian.org>
+')dnl SRCNAME
+Standards-Version: 3.8.0
+ifdef(`TARGET',`dnl cross
+Build-Depends: dpkg-dev (>= 1.13.9), dpkg-cross (>= 1.25.99), LIBC_BUILD_DEP, LIBC_BIARCH_BUILD_DEP LIBUNWIND_BUILD_DEP LIBATOMIC_OPS_BUILD_DEP m4, autoconf, autoconf2.13, automake1.9, libtool, autogen, gawk, bzip2, BINUTILS_BUILD_DEP, debhelper (>= 5.0), bison (>= 1:2.3), flex, realpath (>= 1.9.12), lsb-release, make (>= 3.81)
+',`dnl native
+Build-Depends: dpkg-dev (>= 1.13.9), gcc-4.1-multilib [amd64 i386 powerpc ppc64 s390 sparc kfreebsd-amd64], LIBC_BUILD_DEP, LIBC_BIARCH_BUILD_DEP libunwind7-dev (>= 0.98.5-6) [ia64], libatomic-ops-dev [ia64], m4, autoconf, autoconf2.13, automake1.9, libtool, autogen, gawk, CHECK_BUILD_DEP, bzip2, BINUTILS_BUILD_DEP, binutils-hppa64 (>= BINUTILSV) [hppa], debhelper (>= 5.0), gperf (>= 3.0.1), bison (>= 1:2.3), flex, gettext, texinfo (>= 4.3), zlib1g-dev, libmpfr-dev (>= 2.3.0~rc1.dfsg.1) [fortran_no_archs], locales [locale_no_archs], procps [linux_gnu_archs], sharutils, PASCAL_BUILD_DEP GDC_BUILD_DEP JAVA_BUILD_DEP GNAT_BUILD_DEP realpath (>= 1.9.12), chrpath, lsb-release, make (>= 3.81)
+Build-Depends-Indep: LIBSTDCXX_BUILD_INDEP JAVA_BUILD_INDEP
+')dnl
+
+ifelse(SRCNAME,gcc-snapshot,`dnl
+Package: gcc-snapshot
+Architecture: any
+Section: devel
+Priority: extra
+Depends: binutils`'TS (>= ${binutils:Version}), ${dep:libcdev}, ${dep:libunwinddev}, ${shlibs:Depends}
+Provides: c++abi2-dev
+Description: A SNAPSHOT of the GNU Compiler Collection
+ This package contains a recent development SNAPSHOT of all files
+ contained in the GNU Compiler Collection (GCC).
+ .
+ DO NOT USE THIS SNAPSHOT FOR BUILDING DEBIAN PACKAGES!
+ .
+ This package will NEVER hit the testing distribution. It is used for
+ tracking gcc bugs submitted to the Debian BTS in recent development
+ versions of gcc.
+',`dnl gcc-X.Y
+
+dnl default base package dependencies
+define(`BASETARGET', `')
+define(`BASEDEP', `gcc`'PV-base (= ${gcc:Version})')
+define(`SOFTBASEDEP', `gcc`'PV-base (>= ${gcc:SoftVersion})')
+
+ifdef(`TARGET', `', `
+ifenabled(`gccbase',`
+
+Package: gcc`'PV-base
+Architecture: any
+Section: libs
+Priority: PRI(optional)
+Description: The GNU Compiler Collection (base package)
+ This package contains files common to all languages and libraries
+ contained in the GNU Compiler Collection (GCC).
+ifdef(`BASE_ONLY', `dnl
+ .
+ This version of GCC is not yet available for this architecture.
+ Please use the compilers from the gcc-snapshot package for testing.
+')`'dnl
+')`'dnl
+')`'dnl native
+
+ifenabled(`gccxbase',`
+dnl override default base package dependencies to cross version
+dnl This creates a toolchain that doesnt depend on the system -base packages
+dnl set via DEB_CROSS_INDEPENDENT=yes
+define(`BASETARGET', `PV`'TS')
+define(`BASEDEP', `gcc`'BASETARGET-base (= ${gcc:Version})')
+define(`SOFTBASEDEP', `gcc`'BASETARGET-base (>= ${gcc:SoftVersion})')
+
+Package: gcc`'BASETARGET-base
+Architecture: any
+Section: devel
+Priority: PRI(optional)
+Conflicts: gcc-3.5-base
+Replaces: gcc-3.5-base
+Description: The GNU Compiler Collection (base package)
+ This package contains files common to all languages and libraries
+ contained in the GNU Compiler Collection (GCC).
+')`'dnl
+
+ifenabled(`java',`
+Package: gcj`'PV-base
+Architecture: any
+Section: libs
+Priority: PRI(optional)
+Description: The GNU Compiler Collection (gcj base package)
+ This package contains files common to all java related packages
+ built from the GNU Compiler Collection (GCC).
+')`'dnl java
+
+ifenabled(`ada',`
+Package: gnat`'PV-base
+Architecture: any
+Section: libs
+Priority: PRI(optional)
+Description: The GNU Compiler Collection (gnat base package)
+ This package contains files common to all Ada related packages
+ built from the GNU Compiler Collection (GCC).
+')`'dnl ada
+
+ifenabled(`libgcc',`
+Package: libgcc1`'LS
+Architecture: ifdef(`TARGET',`all',`any')
+Section: ifdef(`TARGET',`devel',`libs')
+Priority: ifdef(`TARGET',`extra',required)
+Depends: BASEDEP, ${shlibs:Depends}
+ifdef(`TARGET',`Provides: libgcc1-TARGET-dcv1
+',`')`'dnl
+Description: GCC support library`'ifdef(`TARGET)',` (TARGET)', `')
+ Shared version of the support library, a library of internal subroutines
+ that GCC uses to overcome shortcomings of particular machines, or
+ special needs for some languages.
+ifdef(`TARGET', `dnl
+ .
+ This package contains files for TARGET architecture, for use in cross-compile
+ environment.
+')`'dnl
+
+Package: libgcc2`'LS
+Architecture: ifdef(`TARGET',`all',`m68k')
+Section: ifdef(`TARGET',`devel',`libs')
+Priority: ifdef(`TARGET',`extra',required)
+Depends: BASEDEP, ${shlibs:Depends}
+ifdef(`TARGET',`Provides: libgcc2-TARGET-dcv1
+',`')`'dnl
+Description: GCC support library`'ifdef(`TARGET)',` (TARGET)', `')
+ Shared version of the support library, a library of internal subroutines
+ that GCC uses to overcome shortcomings of particular machines, or
+ special needs for some languages.
+ifdef(`TARGET', `dnl
+ .
+ This package contains files for TARGET architecture, for use in cross-compile
+ environment.
+')`'dnl
+')`'dnl libgcc
+
+ifenabled(`lib4gcc',`
+Package: libgcc4`'LS
+Architecture: ifdef(`TARGET',`all',`hppa')
+Section: ifdef(`TARGET',`devel',`libs')
+Priority: ifdef(`TARGET',`extra',required)
+Depends: ifdef(`STANDALONEJAVA',`gcj`'PV-base (>= ${gcj:Version})',`BASEDEP'), ${shlibs:Depends}
+Description: GCC support library`'ifdef(`TARGET)',` (TARGET)', `')
+ Shared version of the support library, a library of internal subroutines
+ that GCC uses to overcome shortcomings of particular machines, or
+ special needs for some languages.
+ifdef(`TARGET', `dnl
+ .
+ This package contains files for TARGET architecture, for use in cross-compile
+ environment.
+')`'dnl
+')`'dnl lib4gcc
+
+ifenabled(`lib64gcc',`
+Package: lib64gcc1`'LS
+Architecture: ifdef(`TARGET',`all',`biarch64_archs')
+Section: ifdef(`TARGET',`devel',`libs')
+Priority: ifdef(`TARGET',`extra',PRI(optional))
+Depends: BASEDEP, ${dep:libcbiarch}
+ifdef(`TARGET',`Provides: lib64gcc1-TARGET-dcv1
+',`')`'dnl
+Conflicts: libgcc`'GCC_SO`'LS (<= 1:3.3-0pre9)
+Description: GCC support library`'ifdef(`TARGET)',` (TARGET)', `') (64bit)
+ Shared version of the support library, a library of internal subroutines
+ that GCC uses to overcome shortcomings of particular machines, or
+ special needs for some languages.
+ifdef(`TARGET', `dnl
+ .
+ This package contains files for TARGET architecture, for use in cross-compile
+ environment.
+')`'dnl
+')`'dnl lib64gcc
+
+ifdef(`TARGET', `', `dnl
+ifenabled(`lib32gcc',`
+Package: lib32gcc1`'LS
+Architecture: biarch32_archs
+Section: libs
+Priority: optional
+Depends: BASEDEP, ${dep:libcbiarch}
+ifdef(`TARGET',`Provides: lib32gcc1-TARGET-dcv1
+',`')`'dnl
+ifelse(DIST,`Ubuntu', `Replaces: ia32-libs-openoffice.org (<< 1ubuntu3)', `dnl')
+Description: GCC support library (32 bit Version)
+ Shared version of the support library, a library of internal subroutines
+ that GCC uses to overcome shortcomings of particular machines, or
+ special needs for some languages.
+')`'dnl
+')`'dnl
+
+ifenabled(`cdev',`
+Package: gcc`'PV`'TS
+Architecture: any
+Section: devel
+Priority: ifdef(`TARGET',`extra',`PRI(optional)')
+Depends: BASEDEP, cpp`'PV`'TS (= ${gcc:Version}), binutils`'TS (>= ${binutils:Version}), ${dep:libgcc}, ${dep:libssp}, ${dep:libunwinddev}, ${shlibs:Depends}
+Recommends: ${dep:libcdev}, libmudflap`'MF_SO-dev`'LS (>= ${gcc:Version})
+Suggests: ${gcc:multilib}, gcc`'PV-doc (>= ${gcc:SoftVersion}), gcc`'PV-locales (>= ${gcc:SoftVersion})
+Provides: c-compiler`'TS, libssp0-dev
+ifdef(`TARGET',`dnl',`Conflicts: libssp0-dev (<< 4.1.1-6)')
+ifdef(`TARGET',`dnl',`Replaces: gcj-4.1 (<< 4.1.1), libssp0-dev (<< 4.1.1-6)')
+Description: The GNU C compiler`'ifdef(`TARGET)',` (cross compiler for TARGET architecture)', `')
+ This is the GNU C compiler, a fairly portable optimizing compiler for C.
+ifdef(`TARGET', `dnl
+ .
+ This package contains C cross-compiler for TARGET architecture.
+')`'dnl
+
+ifenabled(`multilib',`
+Package: gcc`'PV-multilib`'TS
+Architecture: MULTILIB_ARCHS
+Section: devel
+Priority: ifdef(`TARGET',`extra',`PRI(optional)')
+Depends: BASEDEP, gcc`'PV`'TS (= ${gcc:Version}), ${dep:libcbiarchdev}, ${dep:libgccbiarch}, ${dep:libsspbiarch}, ${dep:libgompbiarch}, ${shlibs:Depends}
+Recommends: ${dep:libmudflapbiarch}
+Replaces: gcc-4.1 (<< 4.1.2-4)
+Description: The GNU C compiler (multilib files)`'ifdef(`TARGET)',` (cross compiler for TARGET architecture)', `')
+ This is the GNU C compiler, a fairly portable optimizing compiler for C.
+ .
+ On architectures with multilib support, the package contains files
+ and dependencies for the non-default multilib architecture(s).
+')`'dnl multilib
+')`'dnl cdev
+
+ifenabled(`cdev',`
+ifdef(`TARGET', `', `
+Package: gcc`'PV-hppa64
+Architecture: hppa
+Section: devel
+Priority: PRI(optional)
+Depends: BASEDEP, ${shlibs:Depends}
+Conflicts: gcc-3.3-hppa64 (<= 1:3.3.4-5), gcc-3.4-hppa64 (<= 3.4.1-3)
+Description: The GNU C compiler (cross compiler for hppa64)
+ This is the GNU C compiler, a fairly portable optimizing compiler for C.
+')`'dnl native
+')`'dnl cdev
+
+ifenabled(`cdev',`
+Package: cpp`'PV`'TS
+Architecture: any
+Section: ifdef(`TARGET',`devel',`interpreters')
+Priority: ifdef(`TARGET',`extra',`PRI(optional)')
+Depends: BASEDEP, ${shlibs:Depends}
+Suggests: gcc`'PV-locales (>= ${gcc:SoftVersion})
+ifdef(`TARGET',`dnl',`Conflicts: gcj-4.1 (<< 4.1.1), gnat-4.1 (<= 4.1.1-22)')
+ifdef(`TARGET',`dnl',`Replaces: gcj-4.1 (<< 4.1.1)')
+Description: The GNU C preprocessor
+ A macro processor that is used automatically by the GNU C compiler
+ to transform programs before actual compilation.
+ .
+ This package has been separated from gcc for the benefit of those who
+ require the preprocessor but not the compiler.
+ifdef(`TARGET', `dnl
+ .
+ This package contains preprocessor configured for TARGET architecture.
+')`'dnl
+
+ifdef(`TARGET', `', `
+ifenabled(`gfdldoc',`
+Package: cpp`'PV-doc
+Architecture: all
+Section: doc
+Priority: PRI(optional)
+Depends: gcc`'PV-base (>= ${gcc:SoftVersion})
+Description: Documentation for the GNU C preprocessor (cpp)
+ Documentation for the GNU C preprocessor in info `format'.
+')`'dnl gfdldoc
+')`'dnl native
+
+ifdef(`TARGET', `', `
+Package: gcc`'PV-locales
+Architecture: all
+Section: devel
+Priority: PRI(optional)
+Depends: SOFTBASEDEP, cpp`'PV (>= ${gcc:SoftVersion})
+Recommends: gcc`'PV (>= ${gcc:SoftVersion})
+Description: The GNU C compiler (native language support files)
+ Native language support for GCC. Lets GCC speak your language,
+ if translations are available.
+ .
+ Please do NOT submit bug reports in other languages than "C".
+ Always reset your language settings to use the "C" locales.
+')`'dnl native
+')`'dnl cdev
+
+ifenabled(`c++',`
+ifenabled(`c++dev',`
+Package: g++`'PV`'TS
+Architecture: any
+Section: devel
+Priority: ifdef(`TARGET',`extra',`PRI(optional)')
+Depends: BASEDEP, gcc`'PV`'TS (= ${gcc:Version}), libstdc++CXX_SO`'PV-dev`'LS (= ${gcc:Version}), ${shlibs:Depends}
+Provides: c++-compiler`'TS, c++abi2-dev
+Suggests: ${gxx:multilib}, gcc`'PV-doc (>= ${gcc:SoftVersion})
+Description: The GNU C++ compiler`'ifdef(`TARGET)',` (cross compiler for TARGET architecture)', `')
+ This is the GNU C++ compiler, a fairly portable optimizing compiler for C++.
+ifdef(`TARGET', `dnl
+ .
+ This package contains C++ cross-compiler for TARGET architecture.
+')`'dnl
+
+ifenabled(`multilib',`
+Package: g++`'PV-multilib`'TS
+Architecture: MULTILIB_ARCHS
+Section: devel
+Priority: ifdef(`TARGET',`extra',`PRI(optional)')
+Depends: BASEDEP, g++`'PV`'TS (= ${gcc:Version}), gcc`'PV-multilib`'TS (= ${gcc:Version}), ${dep:libcxxbiarch}, ${shlibs:Depends}
+Suggests: ${dep:libcxxbiarchdbg}
+Replaces: libstdc++6-4.1-dev (<< 4.1.2-4)
+Description: The GNU C++ compiler (multilib files)`'ifdef(`TARGET)',` (cross compiler for TARGET architecture)', `')
+ This is the GNU C++ compiler, a fairly portable optimizing compiler for C++.
+ .
+ On architectures with multilib support, the package contains files
+ and dependencies for the non-default multilib architecture(s).
+')`'dnl multilib
+')`'dnl c++dev
+')`'dnl c++
+
+ifdef(`TARGET', `', `
+ifenabled(`mudflap',`
+Package: libmudflap`'MF_SO
+Architecture: any
+Section: libs
+Priority: PRI(optional)
+Depends: BASEDEP, ${shlibs:Depends}
+Description: GCC mudflap shared support libraries
+ The libmudflap libraries are used by GCC for instrumenting pointer and array
+ dereferencing operations.
+
+Package: lib32mudflap`'MF_SO
+Architecture: biarch32_archs
+Section: libs
+Priority: PRI(optional)
+Depends: BASEDEP, ${dep:libcbiarch}, ${shlibs:Depends}
+Replaces: libmudflap0 (<< 4.1)
+Description: GCC mudflap shared support libraries (32bit)
+ The libmudflap libraries are used by GCC for instrumenting pointer and array
+ dereferencing operations.
+
+Package: lib64mudflap`'MF_SO
+Architecture: biarch64_archs
+Section: libs
+Priority: PRI(optional)
+Depends: BASEDEP, ${dep:libcbiarch}, ${shlibs:Depends}
+Replaces: libmudflap0 (<< 4.1)
+Description: GCC mudflap shared support libraries (64bit)
+ The libmudflap libraries are used by GCC for instrumenting pointer and array
+ dereferencing operations.
+
+Package: libmudflap`'MF_SO-dev
+Architecture: any
+Section: libdevel
+Priority: PRI(optional)
+Depends: BASEDEP, libmudflap`'MF_SO (>= ${gcc:Version}), ${dep:libcdev}, ${shlibs:Depends}
+Suggests: ${sug:libmudflapdev}
+Conflicts: libmudflap0-4.2-dev
+Description: GCC mudflap support libraries (development files)
+ The libmudflap libraries are used by GCC for instrumenting pointer and array
+ dereferencing operations.
+ .
+ This package contains the headers and the static libraries.
+')`'dnl
+')`'dnl native
+
+ifdef(`TARGET', `', `
+ifenabled(`ssp',`
+Package: libssp`'SSP_SO
+Architecture: any
+Section: libs
+Priority: PRI(optional)
+Depends: BASEDEP, ${shlibs:Depends}
+Description: GCC stack smashing protection library
+ GCC can now emit code for protecting applications from stack-smashing attacks.
+ The protection is realized by buffer overflow detection and reordering of
+ stack variables to avoid pointer corruption.
+
+Package: lib32ssp`'SSP_SO
+Architecture: biarch32_archs
+Section: libs
+Priority: PRI(optional)
+Depends: BASEDEP, ${dep:libcbiarch}, ${shlibs:Depends}
+Replaces: libssp0 (<< 4.1)
+Description: GCC stack smashing protection library (32bit)
+ GCC can now emit code for protecting applications from stack-smashing attacks.
+ The protection is realized by buffer overflow detection and reordering of
+ stack variables to avoid pointer corruption.
+
+Package: lib64ssp`'SSP_SO
+Architecture: biarch64_archs
+Section: libs
+Priority: PRI(optional)
+Depends: BASEDEP, ${dep:libcbiarch}, ${shlibs:Depends}
+Replaces: libssp0 (<< 4.1)
+Description: GCC stack smashing protection library (64bit)
+ GCC can now emit code for protecting applications from stack-smashing attacks.
+ The protection is realized by buffer overflow detection and reordering of
+ stack variables to avoid pointer corruption.
+')`'dnl
+')`'dnl native
+
+ifenabled(`proto',`
+Package: protoize
+Architecture: any
+Priority: PRI(optional)
+Depends: BASEDEP, gcc`'PV (>= ${gcc:Version}), ${shlibs:Depends}
+Description: Create/remove ANSI prototypes from C code
+ "protoize" can be used to add prototypes to a program, thus converting
+ the program to ANSI C in one respect.  The companion program "unprotoize"
+ does the reverse: it removes argument types from any prototypes
+ that are found.
+')`'dnl proto
+
+ifenabled(`objpp',`
+ifenabled(`objppdev',`
+Package: gobjc++`'PV`'TS
+Architecture: any
+Priority: ifdef(`TARGET',`extra',`PRI(optional)')
+Depends: BASEDEP, gobjc`'PV`'TS (= ${gcc:Version}), g++`'PV`'TS (= ${gcc:Version}), ${shlibs:Depends}, libobjc`'OBJC_SO`'LS (>= ${gcc:EpochVersion})
+Suggests: ${gobjcxx:multilib}, gcc`'PV-doc (>= ${gcc:SoftVersion})
+Provides: objc++-compiler`'TS
+Description: The GNU Objective-C++ compiler
+ This is the GNU Objective-C++ compiler, which compiles
+ Objective-C++ on platforms supported by the gcc compiler. It uses the
+ gcc backend to generate optimized code.
+')`'dnl obcppdev
+
+ifenabled(`multilib',`
+Package: gobjc++`'PV-multilib`'TS
+Architecture: MULTILIB_ARCHS
+Section: devel
+Priority: ifdef(`TARGET',`extra',`PRI(optional)')
+Depends: BASEDEP, gobjc++`'PV`'TS (= ${gcc:Version}), g++`'PV-multilib`'TS (= ${gcc:Version}), gobjc`'PV-multilib`'TS (= ${gcc:Version}), ${shlibs:Depends}
+Description: The GNU Objective-C++ compiler (multilib files)
+ This is the GNU Objective-C++ compiler, which compiles Objective-C++ on
+ platforms supported by the gcc compiler.
+ .
+ On architectures with multilib support, the package contains files
+ and dependencies for the non-default multilib architecture(s).
+')`'dnl multilib
+')`'dnl obcpp
+
+ifenabled(`objc',`
+ifenabled(`objcdev',`
+Package: gobjc`'PV`'TS
+Architecture: any
+Priority: ifdef(`TARGET',`extra',`PRI(optional)')
+Depends: BASEDEP, gcc`'PV`'TS (= ${gcc:Version}), ${dep:libcdev}, ${shlibs:Depends}, libobjc`'OBJC_SO`'LS (>= ${gcc:EpochVersion})
+Suggests: ${gobjc:multilib}, gcc`'PV-doc (>= ${gcc:SoftVersion})
+Provides: objc-compiler`'TS
+ifdef(`OBJC_GC',`Recommends: libgc-dev', `dnl')
+ifdef(`__sparc__',`Conflicts: gcc`'PV-sparc64', `dnl')
+Description: The GNU Objective-C compiler
+ This is the GNU Objective-C compiler, which compiles
+ Objective-C on platforms supported by the gcc compiler. It uses the
+ gcc backend to generate optimized code.
+
+ifenabled(`multilib',`
+Package: gobjc`'PV-multilib`'TS
+Architecture: MULTILIB_ARCHS
+Section: devel
+Priority: ifdef(`TARGET',`extra',`PRI(optional)')
+Depends: BASEDEP, gobjc`'PV`'TS (= ${gcc:Version}), gcc`'PV-multilib`'TS (= ${gcc:Version}), ${dep:libobjcbiarch}, ${shlibs:Depends}
+Replaces: gobjc-4.1 (<< 4.1.2-4)
+Description: The GNU Objective-C compiler (multilib files)`'ifdef(`TARGET)',` (cross compiler for TARGET architecture)', `')
+ This is the GNU Objective-C compiler, which compiles Objective-C on platforms
+ supported by the gcc compiler.
+ .
+ On architectures with multilib support, the package contains files
+ and dependencies for the non-default multilib architecture(s).
+')`'dnl multilib
+')`'dnl objcdev
+
+ifenabled(`libobjc',`
+Package: libobjc`'OBJC_SO`'LS
+Section: ifdef(`TARGET',`devel',`libs')
+Architecture: any
+Priority: ifdef(`TARGET',`extra',`PRI(optional)')
+Depends: BASEDEP, ${shlibs:Depends}
+Description: Runtime library for GNU Objective-C applications
+ Library needed for GNU ObjC applications linked against the shared library.
+')`'dnl libobjc
+
+ifenabled(`lib64objc',`
+Package: lib64objc`'OBJC_SO
+Section: libs
+Architecture: biarch64_archs
+Priority: PRI(optional)
+Depends: BASEDEP, ${dep:libcbiarch}, ${shlibs:Depends}
+Description: Runtime library for GNU Objective-C applications (64bit)
+ Library needed for GNU ObjC applications linked against the shared library.
+')`'dnl lib64objc
+
+ifenabled(`lib32objc',`
+Package: lib32objc`'OBJC_SO
+Section: libs
+Architecture: biarch32_archs
+Priority: PRI(optional)
+Depends: gcc`'PV-base (>= ${gcc:Version}), ${dep:libcbiarch}, ${shlibs:Depends}
+Description: Runtime library for GNU Objective-C applications (32bit)
+ Library needed for GNU ObjC applications linked against the shared library.
+')`'dnl lib32objc
+')`'dnl objc
+
+ifenabled(`fortran',`
+ifenabled(`fdev',`
+Package: gfortran`'PV
+Architecture: any
+Priority: PRI(optional)
+Depends: BASEDEP, gcc`'PV (= ${gcc:Version}), libgfortran`'FORTRAN_SO (>= ${gcc:Version}), ${dep:libcdev}, ${shlibs:Depends}
+Provides: fortran95-compiler
+Suggests: ${gfortran:multilib}, gfortran`'PV-doc
+Replaces: libgfortran`'FORTRAN_SO-dev
+Description: The GNU Fortran 95 compiler
+ This is the GNU Fortran compiler, which compiles
+ Fortran 95 on platforms supported by the gcc compiler. It uses the
+ gcc backend to generate optimized code.
+
+ifenabled(`multilib',`
+Package: gfortran`'PV-multilib`'TS
+Architecture: MULTILIB_ARCHS
+Section: devel
+Priority: ifdef(`TARGET',`extra',`PRI(optional)')
+Depends: BASEDEP, gfortran`'PV`'TS (= ${gcc:Version}), gcc`'PV-multilib`'TS (= ${gcc:Version}), ${dep:libfortranbiarch}, ${shlibs:Depends}
+Replaces: gfortran-4.1 (<< 4.1.2-4)
+Description: The GNU Fortran 95 compiler (multilib files)`'ifdef(`TARGET)',` (cross compiler for TARGET architecture)', `')
+ This is the GNU Fortran compiler, which compiles Fortran 95 on platforms
+ supported by the gcc compiler.
+ .
+ On architectures with multilib support, the package contains files
+ and dependencies for the non-default multilib architecture(s).
+')`'dnl multilib
+
+ifenabled(`gfdldoc',`
+Package: gfortran`'PV-doc
+Architecture: all
+Section: doc
+Priority: PRI(optional)
+Depends: gcc`'PV-base (>= ${gcc:SoftVersion})
+Description: Documentation for the GNU Fortran compiler (gfortran)
+ Documentation for the GNU Fortran 95 compiler in info `format'.
+')`'dnl gfdldoc
+')`'dnl fdev
+
+ifenabled(`libfortran',`
+Package: libgfortran`'FORTRAN_SO
+Section: libs
+Architecture: any
+Priority: PRI(optional)
+Depends: BASEDEP, ${shlibs:Depends}
+Description: Runtime library for GNU Fortran applications
+ Library needed for GNU Fortran applications linked against the
+ shared library.
+')`'dnl libgfortran
+
+ifenabled(`lib64gfortran',`
+Package: lib64gfortran`'FORTRAN_SO
+Section: libs
+Architecture: biarch64_archs
+Priority: PRI(optional)
+Depends: BASEDEP, ${dep:libcbiarch}, ${shlibs:Depends}
+Description: Runtime library for GNU Fortran applications (64bit)
+ Library needed for GNU Fortran applications linked against the
+ shared library.
+')`'dnl lib64gfortran
+
+ifenabled(`lib32gfortran',`
+Package: lib32gfortran`'FORTRAN_SO
+Section: libs
+Architecture: biarch32_archs
+Priority: PRI(optional)
+Depends: BASEDEP, ${dep:libcbiarch}, ${shlibs:Depends}
+Description: Runtime library for GNU Fortran applications (32bit)
+ Library needed for GNU Fortran applications linked against the
+ shared library.
+')`'dnl lib32gfortran
+')`'dnl fortran
+
+ifenabled(`java',`
+ifenabled(`gcj',`
+Package: gcj`'PV
+Architecture: any
+Priority: PRI(optional)
+Depends: gcj`'PV-base (= ${gcj:Version}), ${dep:gcj}, ${dep:libcdev}, gij`'PV (= ${gcj:Version}), libgcj`'GCJ_SO-dev (= ${gcj:Version}), libgcj`'GCJ_SO-jar (>= ${gcj:SoftVersion}), libecj-java (>= 3.3.0-2), java-common, ${shlibs:Depends}
+Recommends: fastjar, libecj-java-gcj
+Suggests: java-gcj-compat-dev
+Provides: java-compiler
+Conflicts: cpp-4.1 (<< 4.1.1), gcc-4.1 (<< 4.1.1), java-gcj-compat-dev (<< 1.0.56-2)
+Description: The GNU compiler for Java(TM)
+ GCJ is a front end to the GCC compiler which can natively compile both
+ Java(tm) source and bytecode files. The compiler can also generate class
+ files.
+')`'dnl gcj
+
+ifenabled(`libgcj',`
+ifenabled(`libgcjcommon',`
+Package: libgcj-common
+Section: libs
+Architecture: all
+Priority: PRI(optional)
+Depends: gcj`'PV-base (>= ${gcj:SoftVersion})
+Conflicts: classpath (<= 0.04-4)
+Replaces: java-gcj-compat (<< 1.0.65-3), java-gcj-compat-dev (<< 1.0.65-3)
+Description: Java runtime library (common files)
+ This package contains files shared by classpath and libgcj libraries.
+')`'dnl libgcjcommon
+
+Package: gij`'PV
+Priority: optional
+Architecture: any
+Depends: gcj`'PV-base (= ${gcj:Version}), libgcj`'LIBGCJ_EXT (= ${gcj:Version}), ${dep:prctl}, ${shlibs:Depends}
+Recommends: libgcj`'LIBGCJ_EXT-awt (= ${gcj:Version})
+Suggests: fastjar, gcj`'PV (= ${gcj:Version}), java-gcj-compat
+Provides: java-virtual-machine, java2-runtime, java1-runtime, java-runtime
+Replaces: libgcj7, libgcj7-0 (<< 4.1.2-31)
+Conflicts: java-gcj-compat (<< 1.0.69)
+Description: The GNU Java bytecode interpreter
+ GIJ is not limited to interpreting bytecode. It includes a class loader which
+ can dynamically load shared objects, so it is possible to give it the name
+ of a class which has been compiled and put into a shared library on the
+ class path.
+
+Package: libgcj`'LIBGCJ_EXT
+Section: libs
+Architecture: any
+Priority: PRI(optional)
+Depends: gcj`'PV-base (>= ${gcj:Version}), libgcj-common (>= 1:4.1.1-21), ${shlibs:Depends}
+Recommends: libgcj`'GCJ_SO-jar (>= ${gcj:SoftVersion}), libgcj`'LIBGCJ_EXT-awt (= ${gcj:Version})
+Suggests: libgcj`'GCJ_SO-dbg
+Conflicts: libgcj7
+Replaces: libgcj7, libgcj7-awt (<< 4.1.1-12)
+Description: Java runtime library for use with gcj
+ This is the runtime that goes along with the gcj front end to
+ gcc. libgcj includes parts of the Java Class Libraries, plus glue to
+ connect the libraries to the compiler and the underlying OS.
+ .
+ To show file names and line numbers in stack traces, the packages
+ libgcj`'GCJ_SO-dbg and binutils are required.
+
+Package: libgcj`'GCJ_SO-jar
+Section: libs
+Architecture: all
+Priority: PRI(optional)
+Depends: gcj`'PV-base (>= ${gcj:SoftVersion}), libgcj`'LIBGCJ_EXT (>= ${gcj:SoftVersion})
+Conflicts: libgcj7-common
+Replaces: libgcj7-common
+Description: Java runtime library for use with gcj (jar files)
+ This is the jar file that goes along with the gcj front end to gcc.
+
+Package: libgcj`'LIBGCJ_EXT-awt
+Section: libs
+Architecture: any
+Priority: PRI(optional)
+Depends: gcj`'PV-base (>= ${gcj:Version}), libgcj`'LIBGCJ_EXT (= ${gcj:Version}), ${shlibs:Depends}
+Description: AWT peer runtime libraries for use with gcj
+ These are runtime libraries holding the AWT peer implementations
+ for libgcj (currently only the GTK based peer library).
+
+Package: gappletviewer`'PV
+Section: utils
+Architecture: any
+Priority: PRI(optional)
+Depends: gcj`'PV-base (= ${gcj:Version}), gij`'PV (= ${gcj:Version}), libgcj`'LIBGCJ_EXT-awt (= ${gcj:Version}), ${shlibs:Depends}
+Description: Standalone application to execute Java (tm) applets
+ gappletviewer is a standalone application to execute Java (tm) applets.
+
+Package: gcjwebplugin`'PV
+Section: web
+Architecture: any
+Priority: PRI(optional)
+Depends: gcj`'PV-base (= ${gcj:Version}), gappletviewer`'PV (= ${gcj:Version}), ${shlibs:Depends}, firefox | mozilla-browser | epiphany-browser | galeon | konqueror
+Description: Web browser plugin to execute Java (tm) applets
+ gcjwebplugin is a little web browser plugin to execute Java (tm) applets.
+ It is targeted for Mozilla and compatible browsers that support the NPAPI.
+')`'dnl libgcj
+
+ifenabled(`libgcjdev',`
+Package: libgcj`'GCJ_SO-dev
+Section: libdevel
+Architecture: any
+Priority: PRI(optional)
+Depends: gcj`'PV-base (= ${gcj:Version}), gcj`'PV (= ${gcj:Version}), libgcj`'GCJ_SO-jar (>= ${gcj:SoftVersion}), libgcj`'LIBGCJ_EXT-awt (= ${gcj:Version}), libgcj-bc, zlib1g-dev, ${shlibs:Depends}
+Suggests: libgcj-doc
+Provides: classpath-doc
+Description: Java development headers and static library for use with gcj
+ These are the development headers and static libraries that go along
+ with the gcj front end to gcc. libgcj includes parts of the Java Class
+ Libraries, plus glue to connect the libraries to the compiler and the
+ underlying OS.
+
+Package: libgcj`'GCJ_SO-dbg
+Section: libdevel
+Architecture: any
+Priority: extra
+Depends: gcj`'PV-base (= ${gcj:Version}), libgcj`'LIBGCJ_EXT (= ${gcj:Version})
+Recommends: binutils
+Description: Debugging symbols for libraries provided in libgcj`'GCJ_SO-dev
+ The package provides debugging symbols for the libraries provided
+ in libgcj`'GCJ_SO-dev.
+ .
+ binutils is required to show file names and line numbers in stack traces.
+
+Package: libgcj`'GCJ_SO-src
+Section: libdevel
+Architecture: all
+Priority: PRI(optional)
+Depends: gcj`'PV-base (>= ${gcj:SoftVersion}), gcj`'PV (>= ${gcj:SoftVersion}), libgcj`'GCJ_SO-jar (= ${gcj:Version})
+Description: libgcj java sources for use in eclipse
+ These are the java source files packaged as a zip file for use in development
+ environments like eclipse.
+
+Package: libgcj-doc
+Section: doc
+Architecture: all
+Priority: PRI(optional)
+Depends: gcj`'PV-base (>= ${gcj:SoftVersion})
+Enhances: libgcj`'GCJ_SO-dev
+Description: libgcj API documentation and example programs
+ Autogenerated documentation describing the API of the libgcj library.
+ Sources and precompiled example programs from the classpath library.
+')`'dnl libgcjdev
+')`'dnl java
+
+ifenabled(`fastjar',`
+Package: fastjar
+Section: devel
+Architecture: any
+Priority: PRI(optional)
+Depends: ${shlibs:Depends}
+Provides: jar
+Description: Jar creation utility
+ Replacement for Suns .jar creation program.  It is written in C
+ instead of java and is tons faster.
+')`'dnl fastjar
+
+ifenabled(`libffi',`
+Package: libffi`'FFI_SO
+Section: libs
+Architecture: any
+Priority: PRI(optional)
+Depends: gcc`'PV`'-base (= ${gcc:Version}), ${shlibs:Depends}
+Description: Foreign Function Interface library runtime
+ A foreign function interface is the popular name for the interface that
+ allows code written in one language to call code written in another
+ language.
+
+Package: lib32ffi`'FFI_SO
+Section: libs
+Architecture: biarch32_archs
+Priority: PRI(optional)
+Depends: gcc`'PV`'-base (= ${gcc:Version}), ${dep:libcbiarch}, ${shlibs:Depends}
+Replaces: libffi4 (<< 4.1)
+Description: Foreign Function Interface library runtime (32bit)
+ A foreign function interface is the popular name for the interface that
+ allows code written in one language to call code written in another
+ language.
+
+Package: lib64ffi`'FFI_SO
+Section: libs
+Architecture: biarch64_archs
+Priority: PRI(optional)
+Depends: gcc`'PV`'-base (= ${gcc:Version}), ${dep:libcbiarch}, ${shlibs:Depends}
+Replaces: libffi4 (<< 4.1)
+Description: Foreign Function Interface library runtime (64bit)
+ A foreign function interface is the popular name for the interface that
+ allows code written in one language to call code written in another
+ language.
+
+Package: libffi`'FFI_SO-dev
+Section: libdevel
+Architecture: any
+Priority: PRI(optional)
+Depends: gcc`'PV`'-base (= ${gcc:Version}), libffi`'FFI_SO (>= ${gcc:Version})
+Suggests: ${sug:libffidev}
+Provides: libffi-dev
+Conflicts: libffi1-dev, libffi2-dev, libffi3-dev, libffi-dev, libffi
+Description: Foreign Function Interface library (development files)
+ This package contains the headers and static library files necessary for
+ building programs which use libffi.
+ .
+ A foreign function interface is the popular name for the interface that
+ allows code written in one language to call code written in another
+ language.
+')`'dnl libffi
+
+ifenabled(`c++',`
+ifenabled(`libcxx',`
+Package: libstdc++CXX_SO`'LS
+Architecture: ifdef(`TARGET',`all',`any')
+Section: ifdef(`TARGET',`devel',`libs')
+Priority: ifdef(`TARGET',`extra',PRI(required))
+Depends: BASEDEP, ${shlibs:Depends}
+ifdef(`TARGET',`Provides: libstdc++CXX_SO-TARGET-dcv1
+',`')`'dnl
+Conflicts: scim (<< 1.4.2-1)
+Description: The GNU Standard C++ Library v3`'ifdef(`TARGET)',` (TARGET)', `')
+ This package contains an additional runtime library for C++ programs
+ built with the GNU compiler.
+ .
+ libstdc++-v3 is a complete rewrite from the previous libstdc++-v2, which
+ was included up to g++-2.95. The first version of libstdc++-v3 appeared
+ in g++-3.0.
+ifdef(`TARGET', `dnl
+ .
+ This package contains files for TARGET architecture, for use in cross-compile
+ environment.
+')`'dnl
+')`'dnl libcxx
+
+ifenabled(`lib32cxx',`
+Package: lib32stdc++CXX_SO`'LS
+Architecture: ifdef(`TARGET',`all',`biarch32_archs')
+Section: ifdef(`TARGET',`devel',`libs')
+Priority: ifdef(`TARGET',`extra',PRI(optional))
+Depends: BASEDEP, lib32gcc1`'LS
+ifdef(`TARGET',`Provides: lib32stdc++CXX_SO-TARGET-dcv1
+',`')`'dnl
+Description: The GNU Standard C++ Library v3 (32 bit Version)
+ This package contains an additional runtime library for C++ programs
+ built with the GNU compiler.
+ifdef(`TARGET', `dnl
+ .
+ This package contains files for TARGET architecture, for use in cross-compile
+ environment.
+')`'dnl
+')`'dnl lib32cxx
+
+ifenabled(`lib64cxx',`
+Package: lib64stdc++CXX_SO`'LS
+Architecture: ifdef(`TARGET',`all',`biarch64_archs')
+Section: ifdef(`TARGET',`devel',`libs')
+Priority: ifdef(`TARGET',`extra',PRI(optional))
+Depends: BASEDEP, ${shlibs:Depends}, lib64gcc1`'LS
+ifdef(`TARGET',`Provides: lib64stdc++CXX_SO-TARGET-dcv1
+',`')`'dnl
+Description: The GNU Standard C++ Library v3`'ifdef(`TARGET)',` (TARGET)', `') (64bit)
+ This package contains an additional runtime library for C++ programs
+ built with the GNU compiler.
+ .
+ libstdc++-v3 is a complete rewrite from the previous libstdc++-v2, which
+ was included up to g++-2.95. The first version of libstdc++-v3 appeared
+ in g++-3.0.
+ifdef(`TARGET', `dnl
+ .
+ This package contains files for TARGET architecture, for use in cross-compile
+ environment.
+')`'dnl
+')`'dnl lib64cxx
+
+ifenabled(`c++dev',`
+Package: libstdc++CXX_SO`'PV-dev`'LS
+Architecture: ifdef(`TARGET',`all',`any')
+Section: ifdef(`TARGET',`devel',`libdevel')
+Priority: ifdef(`TARGET',`extra',PRI(optional))
+Depends: BASEDEP, g++`'PV`'TS (= ${gcc:Version}), libstdc++CXX_SO`'LS (>= ${gcc:Version}), ${dep:libcdev}
+ifdef(`TARGET',`',`dnl native
+Conflicts: libg++27-dev, libg++272-dev (<< 2.7.2.8-1), libstdc++2.8-dev, libg++2.8-dev, libstdc++2.9-dev, libstdc++2.9-glibc2.1-dev, libstdc++2.10-dev (<< 1:2.95.3-2), libstdc++3.0-dev
+Suggests: libstdc++CXX_SO`'PV-doc
+')`'dnl native
+Provides: libstdc++-dev`'LS`'dnl
+ifdef(`TARGET',`, libstdc++-dev-TARGET-dcv1, libstdc++CXX_SO-dev-TARGET-dcv1
+',`
+')`'dnl
+Description: The GNU Standard C++ Library v3 (development files)`'ifdef(`TARGET)',` (TARGET)', `')
+ This package contains the headers and static library files necessary for
+ building C++ programs which use libstdc++.
+ .
+ libstdc++-v3 is a complete rewrite from the previous libstdc++-v2, which
+ was included up to g++-2.95. The first version of libstdc++-v3 appeared
+ in g++-3.0.
+ifdef(`TARGET', `dnl
+ .
+ This package contains files for TARGET architecture, for use in cross-compile
+ environment.
+')`'dnl
+
+Package: libstdc++CXX_SO`'PV-pic`'LS
+Architecture: ifdef(`TARGET',`all',`any')
+Section: ifdef(`TARGET',`devel',`libdevel')
+Priority: extra
+Depends: BASEDEP, libstdc++CXX_SO`'LS (>= ${gcc:Version}), libstdc++CXX_SO`'PV-dev`'LS (= ${gcc:Version})
+ifdef(`TARGET',`Provides: libstdc++CXX_SO-pic-TARGET-dcv1
+',`')`'dnl
+Description: The GNU Standard C++ Library v3 (shared library subset kit)`'ifdef(`TARGET)',` (TARGET)', `')
+ This is used to develop subsets of the libstdc++ shared libraries for
+ use on custom installation floppies and in embedded systems.
+ .
+ Unless you are making one of those, you will not need this package.
+ifdef(`TARGET', `dnl
+ .
+ This package contains files for TARGET architecture, for use in cross-compile
+ environment.
+')`'dnl
+
+Package: libstdc++CXX_SO`'PV-dbg`'LS
+Architecture: ifdef(`TARGET',`all',`any')
+Section: ifdef(`TARGET',`devel',`libdevel')
+Priority: extra
+Depends: BASEDEP, libstdc++CXX_SO`'LS (>= ${gcc:Version}), ${shlibs:Depends}
+ifdef(`TARGET',`Provides: libstdc++CXX_SO-dbg-TARGET-dcv1
+',`')`'dnl
+Recommends: libstdc++CXX_SO`'PV-dev`'LS (= ${gcc:Version})
+Conflicts: libstdc++5-dbg`'LS, libstdc++5-3.3-dbg`'LS, libstdc++6-dbg`'LS, libstdc++6-4.0-dbg`'LS
+Description: The GNU Standard C++ Library v3 (debugging files)`'ifdef(`TARGET)',` (TARGET)', `')
+ This package contains the shared library of libstdc++ compiled with
+ debugging symbols.
+ifdef(`TARGET', `dnl
+ .
+ This package contains files for TARGET architecture, for use in cross-compile
+ environment.
+')`'dnl
+
+Package: lib32stdc++CXX_SO`'PV-dbg`'LS
+Architecture: ifdef(`TARGET',`all',`biarch32_archs')
+Section: ifdef(`TARGET',`devel',`libdevel')
+Priority: extra
+Depends: BASEDEP, lib32stdc++CXX_SO`'LS (>= ${gcc:Version}), libstdc++CXX_SO`'PV-dev`'LS (= ${gcc:Version})
+ifdef(`TARGET',`Provides: lib32stdc++CXX_SO-dbg-TARGET-dcv1
+',`')`'dnl
+Conflicts: lib32stdc++6-dbg`'LS, lib32stdc++6-4.0-dbg`'LS
+Description: The GNU Standard C++ Library v3 (debugging files)`'ifdef(`TARGET)',` (TARGET)', `')
+ This package contains the shared library of libstdc++ compiled with
+ debugging symbols.
+ifdef(`TARGET', `dnl
+ .
+ This package contains files for TARGET architecture, for use in cross-compile
+ environment.
+')`'dnl
+
+Package: lib64stdc++CXX_SO`'PV-dbg`'LS
+Architecture: ifdef(`TARGET',`all',`biarch64_archs')
+Section: ifdef(`TARGET',`devel',`libdevel')
+Priority: extra
+Depends: BASEDEP, lib64stdc++CXX_SO`'LS (>= ${gcc:Version}), libstdc++CXX_SO`'PV-dev`'LS (= ${gcc:Version})
+ifdef(`TARGET',`Provides: lib64stdc++CXX_SO-dbg-TARGET-dcv1
+',`')`'dnl
+Conflicts: lib64stdc++6-dbg`'LS, lib64stdc++6-4.0-dbg`'LS
+Description: The GNU Standard C++ Library v3 (debugging files)`'ifdef(`TARGET)',` (TARGET)', `')
+ This package contains the shared library of libstdc++ compiled with
+ debugging symbols.
+ifdef(`TARGET', `dnl
+ .
+ This package contains files for TARGET architecture, for use in cross-compile
+ environment.
+')`'dnl
+
+ifdef(`TARGET', `', `
+Package: libstdc++CXX_SO`'PV-doc
+Architecture: all
+Section: doc
+Priority: PRI(optional)
+Depends: gcc`'PV-base (>= ${gcc:SoftVersion})
+Conflicts: libstdc++5-doc, libstdc++5-3.3-doc, libstdc++6-doc, libstdc++6-4.0-doc
+Description: The GNU Standard C++ Library v3 (documentation files)
+ This package contains documentation files for the GNU stdc++ library.
+ .
+ One set is the distribution documentation, the other set is the
+ source documentation including a namespace list, class hierarchy,
+ alphabetical list, compound list, file list, namespace members,
+ compound members and file members.
+')`'dnl native
+')`'dnl c++dev
+')`'dnl c++
+
+ifenabled(`ada',`
+Package: gnat`'-GNAT_V
+Architecture: any
+Priority: PRI(optional)
+Depends: gnat`'PV-base (= ${gnat:Version}), gcc`'PV (>= ${gcc:Version}), ${dep:libgnat}, ${dep:libcdev}, ${shlibs:Depends}
+Suggests: gnat`'PV-doc, ada-reference-manual
+Provides: ada-compiler
+Conflicts: gnat (<< 4.1), gnat-3.1, gnat-3.2, gnat-3.3, gnat-3.4, gnat-3.5, gnat-4.0, gnat-4.2
+Description: The GNU Ada compiler
+ This is the GNU Ada compiler, which compiles Ada on platforms supported
+ by the gcc compiler. It uses the gcc backend to generate optimized code.
+
+ifenabled(`libgnat',`
+Package: libgnat`'-GNAT_V
+Section: libs
+Architecture: any
+Priority: PRI(optional)
+Depends: gnat`'PV-base (= ${gnat:Version}), ${shlibs:Depends}
+Description: Runtime library for GNU Ada applications
+ Library needed for GNU Ada applications linked against the shared library.
+
+Package: libgnat`'-GNAT_V-dbg
+Section: libdevel
+Architecture: any
+Priority: extra
+Depends: gnat`'PV-base, libgnat`'-GNAT_V
+Recommends: gnat-gdb (>= 6.4)
+Description: Runtime library for GNU Ada applications
+ Debugging symbols for the library needed for GNU Ada applications linked
+ against the shared library.
+
+Package: libgnatvsn`'GNAT_V-dev
+Section: libdevel
+Architecture: any
+Priority: PRI(optional)
+Depends: gnat`'PV-base (= ${gnat:Version}), gnat`'PV (= ${gnat:Version}), libgnatvsn`'GNAT_V (= ${gnat:Version})
+Conflicts: libgnatvsn-dev (<< 4.1.2-19)
+Description: GNU Ada compiler version library - development files
+ This library exports selected components of GNAT, the GNU Ada compiler, for use
+ in other packages, most notably ASIS and ASIS-based packages.  It is licensed
+ under the GNAT-Modified GPL, allowing to link proprietary programs with it.
+ .
+ This package contains the development files and static library.
+
+Package: libgnatvsn`'GNAT_V
+Architecture: any
+Priority: PRI(optional)
+Section: libs
+Depends: gnat`'PV-base (= ${gnat:Version}), libgnat`'-GNAT_V (= ${gnat:Version})
+Description: GNU Ada compiler version library
+ This library exports selected components of GNAT, the GNU Ada compiler, for use
+ in other packages, most notably ASIS and ASIS-based packages.  It is licensed
+ under the GNAT-Modified GPL, allowing to link proprietary programs with it.
+ .
+ This package contains the run-time shared library.
+
+Package: libgnatvsn`'GNAT_V-dbg
+Architecture: any
+Priority: extra
+Section: libdevel
+Depends: gnat`'PV-base, libgnatvsn`'GNAT_V
+Recommends: gnat-gdb (>= 6.4)
+Description: GNU Ada compiler version library
+ This library exports selected components of GNAT, the GNU Ada compiler, for use
+ in other packages, most notably ASIS and ASIS-based packages.  It is licensed
+ under the GNAT-Modified GPL, allowing to link proprietary programs with it.
+ .
+ This package contains the debugging symbols for the run-time shared library.
+
+Package: libgnatprj`'GNAT_V-dev
+Section: libdevel
+Architecture: any
+Priority: PRI(optional)
+Depends: gnat`'PV-base (= ${gnat:Version}), gnat`'PV (= ${gnat:Version}), libgnatprj`'GNAT_V (= ${gnat:Version}), libgnatvsn`'GNAT_V-dev (= ${gnat:Version})
+Conflicts: libgnatprj-dev (<< 4.1.2-19)
+Description: GNU Ada Project Manager development files
+ GNAT, the GNU Ada compiler, uses project files to organise source and object
+ files in large-scale development efforts.  Several other tools, such as
+ ASIS tools (package asis-programs) and GNAT Programming Studio (package
+ gnat-gps) also use project files.  This library contains the necessary
+ support; it was built from GNAT itself.  It is licensed under the pure GPL;
+ all programs that use it must also be distributed under the GPL, or not
+ distributed at all.
+ .
+ This package contains development files: install it to develop applications
+ that understand GNAT project files.
+
+Package: libgnatprj`'GNAT_V
+Architecture: any
+Priority: PRI(optional)
+Section: libs
+Depends: gnat`'PV-base (= ${gnat:Version}), libgnat`'-GNAT_V (= ${gnat:Version}), libgnatvsn`'GNAT_V (= ${gnat:Version})
+Description: GNU Ada Project Manager
+ GNAT, the GNU Ada compiler, uses project files to organise source and object
+ files in large-scale development efforts.  Several other tools, such as
+ ASIS tools (package asis-programs) and GNAT Programming Studio (package
+ gnat-gps) also use project files.  This library contains the necessary
+ support; it was built from GNAT itself.  It is licensed under the pure GPL;
+ all programs that use it must also be distributed under the GPL, or not
+ distributed at all.
+ .
+ This package contains the run-time shared library.
+
+Package: libgnatprj`'GNAT_V-dbg
+Architecture: any
+Priority: extra
+Section: libdevel
+Depends: gnat`'PV-base, libgnatprj`'GNAT_V
+Recommends: gnat-gdb (>= 6.4)
+Description: GNU Ada Project Manager
+ GNAT, the GNU Ada compiler, uses project files to organise source and object
+ files in large-scale development efforts.  Several other tools, such as
+ ASIS tools (package asis-programs) and GNAT Programming Studio (package
+ gnat-gps) also use project files.  This library contains the necessary
+ support; it was built from GNAT itself.  It is licensed under the pure GPL;
+ all programs that use it must also be distributed under the GPL, or not
+ distributed at all.
+ .
+ This package contains the debugging symbols for the run-time shared library.
+')`'dnl libgnat
+
+ifenabled(`lib64gnat',`
+Package: lib64gnat`'-GNAT_V
+Section: libs
+Architecture: biarch64_archs
+Priority: PRI(optional)
+Depends: gnat`'PV-base (= ${gnat:Version}), ${dep:libcbiarch}, ${shlibs:Depends}
+Description: Runtime library for GNU Ada applications
+ Library needed for GNU Ada applications linked against the shared library.
+')`'dnl libgnat
+
+ifenabled(`gfdldoc',`
+Package: gnat`'PV-doc
+Architecture: all
+Section: doc
+Priority: PRI(optional)
+Depends: SOFTBASEDEP
+Suggests: gnat`'PV
+Description: Documentation for the GNU Ada compiler (gnat)
+ Documentation for the GNU Ada compiler in info `format'.
+')`'dnl gfdldoc
+')`'dnl ada
+
+ifenabled(`pascal',`
+Package: gpc`'PV
+Architecture: any
+Priority: PRI(optional)
+Depends: SOFTBASEDEP, gcc`'PV (>= ${gcc:SoftVersion}), ${dep:libcdev}, ${shlibs:Depends}
+Recommends: libgmp3-dev, libncurses5-dev
+Suggests: gpc`'PV-doc (>= ${gpc:Version})
+Provides: pascal-compiler
+Description: The GNU Pascal compiler
+ This is the GNU Pascal compiler, which compiles Pascal on platforms supported
+ by the gcc compiler. It uses the gcc backend to generate optimized code.
+ .
+ WARNING: the integration of gpc into gcc-4.x is still in an experimental
+ stage. For production use, please use gpc or gpc-2.1-3.4.
+
+Package: gpc`'PV-doc
+Architecture: all
+Section: doc
+Priority: PRI(optional)
+Depends: SOFTBASEDEP
+Replaces: gpc (<= 2.91.58-3)
+Suggests: gpc`'PV
+Description: Documentation for the GNU Pascal compiler (gpc)
+ Documentation for the GNU Pascal compiler in info `format'.
+ .
+ WARNING: the integration of gpc into gcc-4.x is still in an experimental
+ stage. For production use, please use gpc or gpc-2.1-3.4.
+')`'dnl pascal
+
+ifenabled(`d ',`
+Package: gdc`'PV`'TS
+Architecture: any
+Priority: PRI(optional)
+Depends: SOFTBASEDEP, g++`'PV`'TS (>= ${gcc:SoftVersion}), libphobos`'PHOBOS_V`'PV`'TS-dev (= ${gdc:Version}) [libphobos_no_archs], ${shlibs:Depends}
+Provides: d-compiler`'TS
+Description: The D compiler
+ This is the D compiler, which compiles D on platforms supported by the gcc
+ compiler. It uses the GCC backend to generate optimised code.
+ .
+  Homepage: http://dgcc.sourceforge.net/
+
+ifenabled(`libphobos',`
+Package: libphobos`'PHOBOS_V`'PV`'TS-dev
+Architecture: any
+Priority: PRI(optional)
+Depends: ${shlibs:Depends}, gdc`'PV`'TS (= ${gdc:Version}), zlib1g-dev (>= 1:1.2.3.3)
+Provides: libphobos`'PHOBOS_V`'TS-dev
+Replaces: gdc-4.1`'TS (<< 0.25-4.1.2-17)
+Description: The phobos D standard library
+ This is the Phobos standard library that comes with the D compiler.
+ .
+  Homepage: http://www.digitalmars.com/d/phobos/phobos.html
+')`'dnl libphobos
+')`'dnl d
+
+ifdef(`TARGET',`',`dnl
+ifenabled(`libs',`
+Package: gcc`'PV-soft-float
+Architecture: arm armeb
+Priority: PRI(optional)
+Depends: BASEDEP, ifenabled(`cdev',`gcc`'PV (= ${gcc:Version}),') ${shlibs:Depends}
+Replaces: gcc-soft-float-ss
+Description: The soft-floating-point gcc libraries (arm)
+ These are versions of basic static libraries such as libgcc.a compiled
+ with the -msoft-float option, for CPUs without a floating-point unit.
+')`'dnl commonlibs
+')`'dnl
+
+ifenabled(`fixincl',`
+Package: fixincludes
+Architecture: any
+Priority: PRI(optional)
+Depends: BASEDEP, gcc`'PV (= ${gcc:Version}), ${shlibs:Depends}
+Description: Fix non-ANSI header files
+ FixIncludes was created to fix non-ANSI system header files. Many
+ system manufacturers supply proprietary headers that are not ANSI compliant.
+ The GNU compilers cannot compile non-ANSI headers. Consequently, the
+ FixIncludes shell script was written to fix the header files.
+ .
+ Not all packages with header files are installed on the system, when the
+ package is built, so we make fixincludes available at build time of other
+ packages, such that checking tools like lintian can make use of it.
+')`'dnl fixincl
+
+ifenabled(`cdev',`
+ifdef(`TARGET', `', `
+ifenabled(`gfdldoc',`
+Package: gcc`'PV-doc
+Architecture: all
+Section: doc
+Priority: PRI(optional)
+Depends: gcc`'PV-base (>= ${gcc:SoftVersion})
+Conflicts: gcc-docs (<< 2.95.2)
+Replaces: gcc (<=2.7.2.3-4.3), gcc-docs (<< 2.95.2)
+Description: Documentation for the GNU compilers (gcc, gobjc, g++)
+ Documentation for the GNU compilers in info `format'.
+')`'dnl gfdldoc
+')`'dnl native
+')`'dnl cdev
+
+ifdef(`TARGET',`',`dnl
+ifenabled(`libnof',`
+Package: gcc`'PV-nof
+Architecture: powerpc
+Priority: PRI(optional)
+Depends: BASEDEP, ${shlibs:Depends}ifenabled(`cdev',`, gcc`'PV (= ${gcc:Version})')
+Conflicts: gcc-3.2-nof
+Description: The no-floating-point gcc libraries (powerpc)
+ These are versions of basic static libraries such as libgcc.a compiled
+ with the -msoft-float option, for CPUs without a floating-point unit.
+')`'dnl libnof
+')`'dnl
+
+ifenabled(`source',`
+Package: gcc`'PV-source
+Architecture: all
+Priority: PRI(optional)
+Depends: gcc`'PV-base (>= ${gcc:SoftVersion}), make (>= 3.81)
+Description: Source of the GNU Compiler Collection
+ This package contains the sources and patches which are needed to
+ build the GNU Compiler Collection (GCC).
+')`'dnl source
+dnl
+')`'dnl gcc-X.Y
+dnl last line in file
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gpc-BV-doc.prerm
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gpc-BV-doc.prerm
@@ -0,0 +1,10 @@
+#! /bin/sh -e
+
+if [ -f /usr/share/info/gpc-@BV@.info.gz ]; then
+  install-info --quiet --remove gpc-@BV@
+else
+  # GFDL invariant free
+  true
+fi
+
+#DEBHELPER#
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/fastjar.postinst
+++ gdc-4.1-0.25-20080616-4.1.2/debian/fastjar.postinst
@@ -0,0 +1,14 @@
+#! /bin/sh -e
+
+if [ -f /usr/share/info/fastjar.info.gz ]; then
+  install-info --quiet --section "Development" "Development" \
+	/usr/share/info/fastjar.info.gz
+else
+  # GFDL invariant free
+  true
+fi
+
+update-alternatives --quiet --install /usr/bin/jar jar /usr/bin/fastjar 40 \
+  --slave /usr/share/man/man1/jar.1.gz jar.1.gz /usr/share/man/man1/fastjar.1.gz
+
+#DEBHELPER#
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gnat-BV-doc.postinst
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gnat-BV-doc.postinst
@@ -0,0 +1,16 @@
+#! /bin/sh -e
+
+case "$1" in
+    configure)
+	install-info --quiet --section "Development" "Development" \
+	    --description="GNAT (GNU Ada) User's Guide for Unix Platforms." \
+	    /usr/share/info/gnat_ugn_unw-@BV@.info
+	install-info --quiet --section "Development" "Development" \
+	    --description="GNAT (GNU Ada) Reference Manual." \
+	    /usr/share/info/gnat_rm-@BV@.info
+	install-info --quiet --section "Development" "Development" \
+	    --description="GNAT Coding Style." \
+	    /usr/share/info/gnat-style-@BV@.info
+esac
+
+#DEBHELPER#
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gccbug.1
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gccbug.1
@@ -0,0 +1,178 @@
+.\" Automatically generated by Pod::Man v1.34, Pod::Parser v1.13
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sh \" Subsection heading
+.br
+.if t .Sp
+.ne 5
+.PP
+\fB\\$1\fR
+.PP
+..
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.\" Set up some character translations and predefined strings.  \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote.  | will give a
+.\" real vertical bar.  \*(C+ will give a nicer C++.  Capital omega is used to
+.\" do unbreakable dashes and therefore won't be available.  \*(C` and \*(C'
+.\" expand to `' in nroff, nothing in troff, for use with C<>.
+.tr \(*W-|\(bv\*(Tr
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+.    ds -- \(*W-
+.    ds PI pi
+.    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+.    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
+.    ds L" ""
+.    ds R" ""
+.    ds C` ""
+.    ds C' ""
+'br\}
+.el\{\
+.    ds -- \|\(em\|
+.    ds PI \(*p
+.    ds L" ``
+.    ds R" ''
+'br\}
+.\"
+.\" If the F register is turned on, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
+.\" entries marked with X<> in POD.  Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.if \nF \{\
+.    de IX
+.    tm Index:\\$1\t\\n%\t"\\$2"
+..
+.    nr % 0
+.    rr F
+.\}
+.\"
+.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.hy 0
+.if n .na
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear.  Run.  Save yourself.  No user-serviceable parts.
+.    \" fudge factors for nroff and troff
+.if n \{\
+.    ds #H 0
+.    ds #V .8m
+.    ds #F .3m
+.    ds #[ \f1
+.    ds #] \fP
+.\}
+.if t \{\
+.    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+.    ds #V .6m
+.    ds #F 0
+.    ds #[ \&
+.    ds #] \&
+.\}
+.    \" simple accents for nroff and troff
+.if n \{\
+.    ds ' \&
+.    ds ` \&
+.    ds ^ \&
+.    ds , \&
+.    ds ~ ~
+.    ds /
+.\}
+.if t \{\
+.    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+.    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+.    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+.    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+.    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+.    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+.    \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+.    \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+.    \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+.    ds : e
+.    ds 8 ss
+.    ds o a
+.    ds d- d\h'-1'\(ga
+.    ds D- D\h'-1'\(hy
+.    ds th \o'bp'
+.    ds Th \o'LP'
+.    ds ae ae
+.    ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "GCCBUG 1"
+.TH GCCBUG 1 "2003-06-03" "gcc-3.4" "GNU"
+.SH "NAME"
+gccbug \- Reporting GCC Bugs
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+gccbug
+       [ \fB\-\-cc\fR \fImail-address\fR ]
+       [ \fB\-\-version\fR ] | [ \fB\-\-help\fR ]
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+\&\fBgccbug\fR is a version of \s-1GNU\s0 \s-1GNATS\s0 send-pr configured for \s-1GCC\s0 bug
+reporting.
+.PP
+Invoking \fBgccbug\fR calls the editor named in your environment
+variable \fB\s-1VISUAL\s0\fR or \fB\s-1EDITOR\s0\fR on a problem report template.
+.PP
+Your bug reports play an essential role in making \s-1GCC\s0 reliable. However
+since the maintainers are very overloaded, please first make sure that:
+.IP "\(bu" 4
+The problem is not already known.  See
+<\fBhttp://gcc.gnu.org/bugs.html#known\fR> for a list of known bugs.
+If it isn't known, then you should report the problem.
+.Sp
+You can browse the bug database for bugs reported at
+<\fBhttp://gcc.gnu.org/cgi\-bin/gnatsweb.pl\fR>.
+.IP "\(bu" 4
+You include the information that makes for fixing the bug. See
+<\fBhttp://gcc.gnu.org/bugs.html#report\fR> for bug reporting instructions.
+.SH "OPTIONS"
+.IX Header "OPTIONS"
+.IP "\fB\-\-cc\fR \fImail-address\fR" 4
+.IX Item "--cc mail-address"
+Specifies the mail-address to which the \s-1PR\s0 should be carbon\-copied.
+.IP "\fB\-\-version\fR" 4
+.IX Item "--version"
+Displays the \fBgccbug\fR version number and a usage summary.  No mail
+is sent.
+.IP "\fB\-\-help\fR" 4
+.IX Item "--help"
+Displays a usage summary for \fBgccbug\fR.  No mail is sent.
+.PP
+\&\fBgccbug\fR has more (undocumented) options, which may be
+unsupported by a future \s-1GCC\s0 bug tracking system.
+.SH "SEE ALSO"
+.IX Header "SEE ALSO"
+\&\fIgcc\fR\|(1), \fIsend\-pr\fR\|(1), \fIsend\-pr\fR\|(8), the info entries for \fIgcc\fR (node Bugs),
+and the online pages at <\fBhttp://gcc.gnu.org/bugs.html\fR>.
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/README.libstdc++-baseline.in
+++ gdc-4.1-0.25-20080616-4.1.2/debian/README.libstdc++-baseline.in
@@ -0,0 +1,2 @@
+The libstdc++ baseline file is a list of symbols exported by the
+libstdc++ library.
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/libgnat-BV.overrides
+++ gdc-4.1-0.25-20080616-4.1.2/debian/libgnat-BV.overrides
@@ -0,0 +1 @@
+libgnat-@BV@: package-name-doesnt-match-sonames
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules2
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules2
@@ -0,0 +1,1581 @@
+#! /usr/bin/make -f
+# -*- makefile -*-
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+.SUFFIXES:
+
+include debian/rules.defs
+include debian/rules.parameters
+
+# some tools
+SHELL	= /bin/bash -e		# brace expansion in rules file
+IR	= install -m 644	# Install regular file
+IP	= install -m 755	# Install program
+IS	= install -m 755	# Install script
+
+#number of jobs to run for build
+ifeq ($(USE_NJOBS),no)
+  NJOBS :=
+  USE_CPUS := 1
+else
+  ifeq ($(with_java),yes)
+    MEM_PER_CPU = 192
+  else
+    MEM_PER_CPU = 128
+  endif
+  NUM_CPUS := $(shell if echo $(USE_NJOBS) | grep -q -E '^[0-9]+$$'; \
+			then echo $(USE_NJOBS); \
+			else getconf _NPROCESSORS_ONLN 2>/dev/null || echo 1; fi)
+  USE_CPUS := $(shell mt=`awk '/^MemTotal/ { print $$2 }' /proc/meminfo`; \
+			awk -vn=$(NUM_CPUS) -vmt=$$mt -vm=$(MEM_PER_CPU) \
+				'END { mt/=1024; n2 = int(mt/m); print n==1 ? 1 : n2<n+1 ? n2 : n+1}' < /dev/null)
+  ifneq (,$(strip $(USE_CPUS)))
+    NJOBS := -j $(USE_CPUS)
+  endif
+endif
+
+# Support parallel=<n> in DEB_BUILD_OPTIONS (see #209008)
+ifneq (,$(filter parallel=%,$(subst $(COMMA), ,$(DEB_BUILD_OPTIONS))))
+  NJOBS := -j $(subst parallel=,,$(filter parallel=%,$(subst $(COMMA), ,$(DEB_BUILD_OPTIONS))))
+endif
+
+ifeq ($(with_pascal),yes)
+  NJOBS :=
+endif
+
+ifeq ($(with_d),yes)
+  NJOBS :=
+endif
+
+# kernel-specific ulimit hack
+ifeq ($(findstring linux,$(DEB_HOST_GNU_SYSTEM)),linux)
+  ULIMIT_M =  if [ -e /proc/meminfo ]; then \
+	    m=`awk '/^((Mem|Swap)Free|Cached)/{m+=$$2}END{print int(m*.9)}' \
+		/proc/meminfo`; \
+	  else \
+	    m=`vmstat --free --swap-free --kilobytes|awk '{m+=$$2}END{print int(m*.9)}'`; \
+	  fi; \
+	  ulimit -m $$m; \
+	  echo "Limited memory for test runs to `ulimit -m`kB"
+else
+  ULIMIT_M = true
+endif
+
+ifeq ($(locale_data),generate)
+  SET_LOCPATH = LOCPATH=$(PWD)/locales
+endif
+
+# the recipient for the test summaries. Send with: debian/rules mail-summary
+S_EMAIL = gcc@packages.debian.org gcc-testresults@gcc.gnu.org
+
+CC	= $(if $(filter yes,$(with_ada)),gcc-4.1,gcc)
+
+ifeq ($(with_d),yes)
+  CFLAGS  += -std=gnu99
+  LDFLAGS += -lm
+endif
+
+ifeq ($(DEB_HOST_ARCH), $(findstring $(DEB_HOST_ARCH),m68k))
+  STAGE1_CFLAGS= -g -O2
+endif
+
+ifeq ($(with_ssp_default),yes)
+  # FIXME: only use -fno-stack-protector when known to the stage1 compiler
+  STAGE1_CFLAGS	= -g -O -fno-stack-protector
+  BOOT_CFLAGS	= -g -O2 -fno-stack-protector
+endif
+
+ifdef DEB_CROSS
+  CFLAGS	= -g -O2
+endif
+
+CFLAGS_TO_PASS = \
+	$(if $(CFLAGS),CFLAGS="$(CFLAGS)") \
+	$(if $(BOOT_CFLAGS),BOOT_CFLAGS="$(BOOT_CFLAGS)")
+LDFLAGS_TO_PASS = \
+	$(if $(LDFLAGS),LDFLAGS="$(LDFLAGS)")
+STAGE1_CFLAGS_TO_PASS = \
+	$(if $(STAGE1_CFLAGS),STAGE1_CFLAGS="$(STAGE1_CFLAGS)")
+
+docdir		= usr/share/doc
+
+# PF is the installation prefix for the package without the leading slash.
+# It's "usr" for gcc releases
+ifeq ($(PKGSOURCE),gcc-snapshot)
+  PF		= usr/lib/gcc-snapshot
+else
+  PF		= usr
+endif
+
+ifeq ($(with_multiarch_lib),yes)
+  libdir	= lib/$(DEB_TARGET_GNU_TYPE)
+else
+  libdir	= lib
+endif
+# /usr/libexec doesn't follow the FHS
+ifeq ($(PKGSOURCE),gcc-snapshot)
+  libexecdir	= $(PF)/libexec
+else
+  libexecdir	= $(PF)/$(libdir)
+endif
+buildlibdir	= $(builddir)/$(TARGET_ALIAS)
+
+ifeq ($(with_common_gcclibdir),yes)
+  gcc_lib_dir	= $(PF)/$(libdir)/gcc/$(TARGET_ALIAS)/$(BASE_VERSION)
+  gcc_lexec_dir	= $(libexecdir)/gcc/$(TARGET_ALIAS)/$(BASE_VERSION)
+  old_lib_dir	= $(PF)/$(libdir)/gcc/$(TARGET_ALIAS)/4.1.2
+else
+  gcc_lib_dir	= $(PF)/$(libdir)/gcc/$(TARGET_ALIAS)/$(GCC_VERSION)
+  gcc_lexec_dir	= $(libexecdir)/gcc/$(TARGET_ALIAS)/$(GCC_VERSION)
+endif
+
+ifneq ($(distribution)-$(DEB_TARGET_ARCH),Debian-amd64)
+  lib32		= $(PF)/lib32
+else
+  lib32		= emul/ia32-linux/usr/lib
+endif
+lib64		= lib64
+
+checkdir = $(builddir)
+ifeq ($(with_separate_libgcj),yes)
+  ifeq ($(PKGSOURCE),gcj-$(BASE_VERSION))
+    ifneq ($(with_standalone_gcj),yes)
+      checkdir = $(buildlibdir)/libjava
+    endif
+  endif
+endif
+ifeq ($(with_separate_gnat),yes)
+  ifeq ($(PKGSOURCE),gnat-$(BASE_VERSION))
+    checkdir = $(builddir)/gcc
+  endif
+endif
+
+ifndef DEB_CROSS
+  cxx_inc_dir	= $(PF)/include/c++/$(GCC_VERSION)
+else
+  cxx_inc_dir	= $(PF)/$(TARGET_ALIAS)/include/c++/$(GCC_VERSION)
+endif
+
+CONFARGS = -v \
+	--enable-languages=$(subst $(SPACE),$(COMMA),$(enabled_languages)) \
+	--prefix=/$(PF) \
+	--enable-shared \
+	--with-system-zlib \
+
+ifneq ($(PKGSOURCE),gcc-snapshot)
+  CONFARGS += \
+	--libexecdir=/$(libexecdir) \
+	--without-included-gettext \
+	--enable-threads=posix
+endif
+
+CONFARGS += $(if $(filter yes,$(with_nls)),--enable-nls,--disable-nls)
+
+ifneq ($(PKGSOURCE),gcc-snapshot)
+  CONFARGS += --with-gxx-include-dir=/$(cxx_inc_dir)
+endif
+
+ifeq ($(versioned_packages),yes)
+  CONFARGS += --program-suffix=-$(BASE_VERSION)
+endif
+
+ifneq ($(with_sysroot),)
+  CONFARGS += --with-sysroot=$(with_sysroot)
+endif
+
+ifeq ($(with_cxa_atexit),yes)
+  CONFARGS += --enable-__cxa_atexit
+else
+  CONFARGS += --disable-__cxa_atexit
+endif
+
+ifneq ($(with_bootstrap),)
+  CONFARGS += --enable-bootstrap=$(with_bootstrap)
+endif
+
+ifeq ($(force_gnu_locales),yes)
+  CONFARGS += --enable-clocale=gnu
+endif
+
+ifeq ($(with_cxx)-$(with_debug),yes-yes)
+  CONFARGS += --enable-libstdcxx-debug
+endif
+
+ifeq ($(with_java),yes)
+  CONFARGS += --enable-java-maintainer-mode
+  ifeq ($(with_java_biarch_awt),yes)
+    CONFARGS += --enable-java-awt=$(subst $(SPACE),$(COMMA),$(foreach p,$(java_awt_peers),$(p)-default))
+  else
+    CONFARGS += --enable-java-awt=$(subst $(SPACE),$(COMMA),$(foreach p,$(java_awt_peers),$(p)))
+  endif
+  ifneq (,$(findstring gtk,$(java_awt_peers)))
+    CONFARGS += --enable-gtk-cairo
+  endif
+  CONFARGS += $(if $(filter yes,$(with_java_plugin)),--enable-plugin,--disable-plugin)
+  ifeq ($(PKGSOURCE),gcc-snapshot)
+    CONFARGS += --with-java-home=/$(PF)/jre
+  else
+    CONFARGS += --with-java-home=/$(PF)/lib/jvm/java-1.5.0-gcj-$(BASE_VERSION)-1.5.0.0/jre
+  endif
+  CONFARGS += --with-ecj-jar=/usr/share/java/eclipse-ecj.jar
+endif
+
+ifeq ($(with_objc)-$(with_objc_gc),yes-yes)
+  CONFARGS += --enable-objc-gc
+endif
+
+ifeq ($(with_fortran),yes)
+  CONFARGS += --enable-mpfr
+endif
+
+ifneq ($(with_mudflap),yes)
+  CONFARGS += --disable-libmudflap
+endif
+
+ifneq ($(with_ssp),yes)
+  CONFARGS += --disable-libssp
+endif
+
+ifeq ($(findstring x86_64-linux,$(DEB_TARGET_GNU_TYPE)),x86_64-linux)
+    ifneq ($(biarch32),yes)
+      CONFARGS += --disable-multilib
+    endif
+endif
+
+ifeq ($(with_gcj),yes)
+    ifeq ($(DEB_HOST_GNU_CPU),m32r)
+	CONFARGS += --enable-libgcj
+    endif
+endif
+
+ifeq ($(findstring powerpc-linux,$(DEB_TARGET_GNU_TYPE)),powerpc-linux)
+    ifeq ($(biarch),yes)
+      CONFARGS += --disable-softfloat --enable-secureplt \
+	--enable-targets=powerpc-linux,powerpc64-linux --with-cpu=default32
+    else
+      CONFARGS += --disable-multilib
+    endif
+endif
+
+ifneq (,$(findstring softfloat,$(DEB_TARGET_GNU_CPU)))
+  CONFARGS += --with-float=soft
+endif
+
+ifneq (,$(findstring arm-vfp,$(DEB_TARGET_GNU_CPU)))
+  CONFARGS += --with-fpu=vfp
+endif
+
+ifeq ($(DEB_TARGET_GNU_CPU),$(findstring $(DEB_TARGET_GNU_CPU),m68k))
+  CONFARGS += --disable-werror
+endif
+
+ifeq ($(findstring sparc-linux,$(DEB_TARGET_GNU_TYPE)),sparc-linux)
+  ifeq ($(biarch),yes)
+    CONFARGS += --with-cpu=v8
+  endif
+endif
+
+ifeq ($(findstring sh4-linux,$(DEB_TARGET_GNU_TYPE)),sh4-linux)
+  CONFARGS += --with-multilib-list=m4,m4-nofpu --with-cpu=sh4
+endif
+
+ifeq ($(DEB_TARGET_ARCH_OS),linux)
+  ifneq (,$(findstring $(DEB_TARGET_ARCH), alpha powerpc ppc64 s390 s390x sparc sparc64))
+    ifeq ($(DEB_TARGET_ARCH),alpha)
+      glibc_version := $(shell dpkg -s libc6.1 | awk '/^Version:/ {print $$2}')
+    else
+      glibc_version := $(shell dpkg -s libc6 | awk '/^Version:/ {print $$2}')
+    endif
+    with_ldbl128 := $(shell dpkg --compare-versions $(glibc_version) gt 2.3.99 && echo yes)
+    ifeq ($(with_ldbl128),yes)
+      CONFARGS += --with-long-double-128
+    endif
+  endif
+endif
+
+ifeq ($(findstring ia64-linux,$(DEB_TARGET_GNU_TYPE)),ia64-linux)
+  CONFARGS += --with-system-libunwind
+endif
+
+ifeq ($(findstring i486,$(DEB_TARGET_GNU_TYPE)),i486)
+  # conflicts with biarch builds, see cpu-default-generic patch
+  #CONFARGS += --with-arch=i486
+endif
+
+# lpia
+ifeq ($(DEB_TARGET_ARCH),lpia)
+  CONFARGS += --with-arch=i686 --with-tune=i586
+endif
+
+ifeq ($(PKGSOURCE),gcc-snapshot)
+  ifeq ($(findstring --disable-werror, $(CONFARGS)),)
+    CONFARGS += --disable-werror
+  endif
+else
+  CONFARGS += --enable-checking=release
+endif
+
+ifndef DEB_CROSS
+  CONFARGS += $(TARGET_ALIAS)
+else
+  CONFARGS += \
+	--program-prefix=$(TARGET_ALIAS)- \
+	--includedir=/$(PF)/$(DEB_TARGET_GNU_TYPE)/include \
+	--build=$(DEB_BUILD_GNU_TYPE) \
+	--host=$(DEB_HOST_GNU_TYPE) \
+	--target=$(TARGET_ALIAS)
+endif
+
+ifeq ($(with_bootstrap),)
+  # no profiledbootstrap on the following architectures
+  # - m68k: we're happy that it builds at all
+  # - ia64: doesn't work, see PR16108
+  # - hppa: when using gcc-3.3.4 as stage1 compiler, nearly all of the
+  #   tests in the libstdc++-v3 testsuite fail
+  no_profiled_bs_archs := hppa ia64 m68k
+  ifneq (,$(findstring $(DEB_TARGET_GNU_CPU),$(no_profiled_bs_archs)))
+    bootstrap_target = bootstrap-lean
+  else
+    bootstrap_target = profiledbootstrap
+  endif
+endif
+bootstrap_target = bootstrap
+
+# Increase the timeout for one testrun on slow architectures
+ifeq ($(DEB_TARGET_GNU_CPU), $(findstring $(DEB_TARGET_GNU_CPU),arm armeb hppa m68k sparc))
+  DEJAGNU_TIMEOUT=600
+else
+  DEJAGNU_TIMEOUT=450
+endif
+ifeq ($(DEB_TARGET_GNU_SYSTEM),gnu)
+  DEJAGNU_TIMEOUT=900
+endif
+
+DEJAGNU_RUNS =
+ifeq ($(with_ssp),yes)
+  ifeq ($(with_ssp_default),yes)
+    DEJAGNU_RUNS += -fno-stack-protector
+  else
+    DEJAGNU_RUNS += -fstack-protector
+  endif
+endif
+ifeq ($(with_32bit_check),yes)
+  DEJAGNU_RUNS += -m32
+endif
+ifeq ($(with_64bit_check),yes)
+  DEJAGNU_RUNS += -m64
+endif
+# the builds already take that long
+ifneq (,$(findstring $(DEB_TARGET_GNU_CPU),arm m68k))
+  DEJAGNU_RUNS =
+endif
+
+# gdc is not multilib'd
+ifneq (,$(findstring gdc, $(PKGSOURCE)))
+  DEJAGNU_RUNS =
+endif
+
+ifneq (,$(DEJAGNU_RUNS))
+  RUNTESTFLAGS = RUNTESTFLAGS="--target_board=unix\{,$(subst $(SPACE),$(COMMA),$(strip $(DEJAGNU_RUNS)))\}"
+endif
+
+default: build
+
+configure: $(configure_dependencies)
+
+$(configure_dummy_stamp):
+	touch $(configure_dummy_stamp)
+
+$(configure_stamp):
+	dh_testdir
+	: # give information about the build process
+	@echo "------------------------ Build process variables ------------------------"
+	@echo "Number of parallel processes used for the build: $(USE_CPUS)"
+	@echo "Package source: $(PKGSOURCE)"
+	@echo "GCC version: $(GCC_VERSION)"
+	@echo "Base Debian version: $(BASE_VERSION)"
+	@echo -e "Configured with: $(foreach i,$(CONFARGS),$(i)\n\t)"
+ifdef DEB_CROSS
+	@echo "Building cross compiler for $(DEB_TARGET_ARCH)"
+endif
+	@echo "Using shell $(SHELL)"
+	@echo "Architecture: $(DEB_TARGET_ARCH) (GNU: $(TARGET_ALIAS))"
+	@echo "CPPFLAGS: $(CPPFLAGS)"
+	@echo "CFLAGS: $(CFLAGS)"
+	@echo "LDFLAGS: $(LDFLAGS)"
+	@echo "BOOT_CFLAGS: $(BOOT_CFLAGS)"
+	@echo "DEBIAN_BUILDARCH: $(DEBIAN_BUILDARCH)"
+	@echo "Install prefix: /$(PF)"
+ifeq ($(biarch),yes)
+	@echo "Will build the biarch compilers (32/64, defaulting to 32bit)"
+else
+  ifeq ($(biarch32),yes)
+	@echo "Will build the biarch compilers (64/32, defaulting to 64bit)"
+  else
+	@echo "Will not build the biarch compilers"
+  endif
+endif
+
+ifeq ($(with_cxx),yes)
+	@echo "Will build the C++ compiler"
+else
+	@echo "Will not build the C++ compiler: $(with_cxx)"
+endif
+ifeq ($(with_objc),yes)
+	@echo "Will build the ObjC compiler."
+    ifeq ($(with_objc_gc),yes)
+	@echo "Will build the extra ObjC runtime for garbage collection."
+    else
+	@echo "Will not build the extra ObjC runtime for garbage collection."
+    endif
+else
+	@echo "Will not build the ObjC compiler: $(with_objc)"
+endif
+ifeq ($(with_objcxx),yes)
+	@echo "Will build the Obj-C++ compiler"
+else
+	@echo "Will not build the Obj-C++ compiler: $(with_objcxx)"
+endif
+ifeq ($(with_fortran),yes)
+	@echo "Will build the Fortran 95 compiler."
+else
+	@echo "Will not build the Fortran 95 compiler: $(with_fortran)"
+endif
+ifeq ($(with_java),yes)
+	@echo "Will build the Java compiler."
+else
+	@echo "Will not build the Java compiler: $(with_java)"
+endif
+ifeq ($(with_pascal),yes)
+	@echo "Will build the Pascal compiler."
+else
+	@echo "Will not build the Pascal compiler: $(with_pascal)"
+endif
+ifeq ($(with_ada),yes)
+	@echo "Will build the Ada compiler."
+  ifeq ($(with_libgnat),yes)
+	@echo "Will build the shared Ada libraries."
+  else
+	@echo "Will not build the shared Ada libraries."
+  endif
+else
+	@echo "Will not build the Ada compiler: $(with_ada)"
+endif
+ifeq ($(with_d),yes)
+	@echo "Will build the D compiler."
+  ifeq ($(with_libphobos),yes)
+	@echo "Will build the phobos D runtime library."
+  else
+	@echo "Will not build the phobos D runtime library: $(with_libphobos)"
+  endif
+else
+	@echo "Will not build the D compiler: $(with_d)"
+endif
+ifeq ($(with_libffi),yes)
+	@echo "Will build the FFI library."
+else
+	@echo "Will not build the FFI library: $(with_libffi)"
+endif
+ifeq ($(with_ssp),yes)
+	@echo "Will build with SSP support."
+else
+	@echo "Will build without SSP support: $(with_ssp)"
+endif
+ifeq ($(with_check),yes)
+	@echo "Will run the testsuite."
+  ifeq ($(biarch),yes)
+	@echo 'Will run the testsuite with -m64: $(with_64bit_check)'
+  endif
+  ifeq ($(biarch32),yes)
+	@echo 'Will run the testsuite with -m32: $(with_32bit_check)'
+  endif
+else
+	@echo "Will not run the testsuite: $(with_check)"
+endif
+ifeq ($(with_nls),yes)
+	@echo "Will enable national language support."
+else
+	@echo "Will disable national language support: $(with_nls)"
+endif
+	@echo "-----------------------------------------------------------------------------"
+	@echo ""
+ifeq ($(with_check),yes)
+	@if echo "spawn true" | /usr/bin/expect -f - >/dev/null; then \
+	  : ; \
+	else \
+	  echo "expect is failing on your system with the above error, which means the GCC"; \
+	  echo "testsuite will fail.  Please resolve the above issues and retry the build."; \
+	  echo "-----------------------------------------------------------------------------"; \
+	  exit 1; \
+	fi
+endif
+	rm -f $(configure_stamp) $(build_stamp)
+	: # generate debian/README.Debian
+	cat debian/README $(patch_stamp) > debian/README.Debian
+
+	rm -rf $(builddir)
+	mkdir $(builddir)
+
+	: # configure
+	cd $(builddir) \
+	  && echo '' | PATH=$(PWD)/bin:$$PATH \
+		CC="$(CC)" \
+		$(SET_SHELL) \
+	LD_LIBRARY_PATH=$${LD_LIBRARY_PATH:+$$LD_LIBRARY_PATH:}$(builddir)/gcc/ada/rts \
+		../src/configure $(CONFARGS)
+
+	mkdir -p $(builddir)/gcc
+	( \
+	  echo '#define __$(subst -,_,$(DEB_TARGET_GNU_TYPE))__'; \
+	  echo ''; \
+	  echo '  { "",  "$(DEB_TARGET_GNU_TYPE)"},'; \
+	  cat debian/multiarch.inc; \
+	) > $(builddir)/gcc/multiarch.inc
+
+	touch $(configure_stamp)
+
+build: $(build_dependencies)
+
+$(build_dummy_stamp):
+	touch $(build_dummy_stamp)
+
+$(build_stamp): $(configure_stamp)
+	dh_testdir
+	rm -f bootstrap-protocol
+ifndef DEB_CROSS
+  ifeq ($(with_java),yes)
+	mkdir -p bin
+	ln -sf /usr/bin/fastjar bin/jar
+    ifeq ($(with_native_ecj),yes)
+	: # prepare the standalone ecj jar
+	cp /usr/share/java/ecj.jar $(srcdir)/ecj-standalone.jar
+	zip -d $(srcdir)/ecj-standalone.jar 'org/eclipse/jdt/core/JDTCompilerAdapter*'
+    endif
+	: # If we don't have gjavah in $PATH, try to build it with the old gij
+	mkdir -p bin
+	if [ -x /usr/bin/gjavah-4.1 ]; then \
+	  ln -sf /usr/bin/gjavah-4.1 bin/gjavah; \
+	elif [ -x bin/gjavah ]; then \
+	  : ; \
+	else \
+	  mkdir -p $(builddir)/java_hacks; \
+	  cd $(builddir)/java_hacks; \
+	  cp -a $(srcdir)/libjava/classpath/tools/external external; \
+	  mkdir -p gnu/classpath/tools; \
+	  cp -a $(srcdir)/libjava/classpath/tools/gnu/classpath/tools/{common,javah,getopt} \
+	    gnu/classpath/tools/; \
+	  cp -a $(srcdir)/libjava/classpath/resource/gnu/classpath/tools/common/Messages.properties \
+	    gnu/classpath/tools/common; \
+	  cd external/asm; \
+	  for i in `find . -name \*.java`; do gcj-4.1 --encoding ISO-8859-1 -C $$i -I.; done; \
+	  cd ../..; \
+	  for i in `find gnu -name \*.java`; do gcj-4.1 -C $$i -I. -Iexternal/asm/; done; \
+	  gcj-4.1 -findirect-dispatch -O2 -fmain=gnu.classpath.tools.javah.Main \
+	    -I. -Iexternal/asm/ `find . -name \*.class` -o $(PWD)/bin/gjavah.real; \
+	  ( \
+	    echo '#!/bin/sh'; \
+	    echo 'export CLASSPATH='`pwd`'$${CLASSPATH:+:$$CLASSPATH}'; \
+	    echo 'exec $(PWD)/bin/gjavah.real "$$@"'; \
+	  ) > $(PWD)/bin/gjavah; \
+	  chmod +x $(PWD)/bin/gjavah; \
+	fi
+	( \
+	  echo '#!/bin/sh'; \
+	  echo 'exec gij-4.1 -cp /usr/share/java/ecj.jar org.eclipse.jdt.internal.compiler.batch.GCCMain "$$@"'; \
+	) > bin/ecj1
+	chmod +x bin/ecj1
+  endif
+	: # build native compiler
+	( \
+	  set +e; \
+	  PATH=$(PWD)/bin:$$PATH \
+	  $(SET_SHELL) \
+	    $(MAKE) -C $(builddir) $(NJOBS) $(bootstrap_target) \
+		CC="$(CC)" \
+		$(CFLAGS_TO_PASS) \
+		$(STAGE1_CFLAGS_TO_PASS) \
+		$(LDFLAGS_TO_PASS) \
+		; \
+	  echo $$? > status; \
+	) 2>&1 | tee bootstrap-protocol
+	s=`cat status`; rm -f status; test $$s -eq 0
+
+  ifneq ($(with_java),yes)
+    ifeq ($(with_fastjar),yes)
+	rm -rf $(builddir)/fastjar
+	mkdir -p $(builddir)/fastjar
+	cd $(builddir)/fastjar \
+	  && CC="$(builddir)/gcc/xgcc -B$(builddir)/gcc/" CFLAGS="$(CFLAGS)" \
+		../../src/fastjar/configure $(CONFARGS)
+	$(MAKE) -C $(builddir)/fastjar ZDEPS= ZINCS= ZLIBS=-lz
+    endif
+  endif
+else
+	: # build cross compiler for $(TARGET_ALIAS)
+	( \
+	  set +e; \
+	  PATH=$(PWD)/bin:$$PATH \
+	    $(MAKE) -C $(builddir) $(NJOBS) \
+		CC="$(CC)" \
+		$(CFLAGS_TO_PASS) \
+		$(LDFLAGS_TO_PASS) \
+		; \
+	  echo $$? > status; \
+	) 2>&1 | tee bootstrap-protocol
+	s=`cat status`; rm -f status; test $$s -eq 0
+endif
+	-chmod 755 $(srcdir)/contrib/warn_summary
+	if [ -x $(srcdir)/contrib/warn_summary ]; then \
+	  rm -f bootstrap-summary; \
+	  $(srcdir)/contrib/warn_summary bootstrap-protocol \
+	    > bootstrap-summary; \
+	fi
+
+	touch $(build_stamp)
+
+ifeq ($(versioned_packages),yes)
+  hppa64_configure_flags += --program-suffix=-$(BASE_VERSION)
+endif
+
+$(configure_hppa64_stamp): $(build_stamp)
+	dh_testdir
+	rm -f $(configure_hppa64_stamp) $(build_hppa64_stamp)
+	rm -rf $(builddir_hppa64)
+	mkdir $(builddir_hppa64)
+	: # configure
+	cd $(builddir_hppa64) && \
+	  PATH=$(PWD)/bin:$$PATH \
+	  $(SET_SHELL) \
+	  CC="$(builddir)/gcc/xgcc -B$(builddir)/gcc/" \
+	     ../src/configure \
+		--enable-languages=c \
+		--prefix=/$(PF) \
+		--libexecdir=/$(libexecdir) \
+		--disable-shared \
+		--disable-nls \
+		--disable-threads \
+		--disable-libffi \
+		--disable-libgomp \
+		--disable-libmudflap \
+		--disable-libssp \
+		--with-as=/usr/bin/hppa64-linux-gnu-as \
+		--with-ld=/usr/bin/hppa64-linux-gnu-ld \
+		--includedir=/usr/hppa64-linux-gnu/include \
+		--host=hppa-linux-gnu \
+		--build=hppa-linux-gnu \
+		--target=hppa64-linux-gnu
+
+	mkdir -p $(builddir_hppa64)/gcc
+	( \
+	  echo '#define __$(subst -,_,hppa64-linux-gnu)__'; \
+	  echo ''; \
+	  echo '  { "",  "hppa64-linux-gnu"},'; \
+	) > $(builddir_hppa64)/gcc/multiarch.inc
+
+	touch $(configure_hppa64_stamp)
+
+$(build_hppa64_stamp): $(configure_hppa64_stamp)
+	  PATH=$(PWD)/bin:$$PATH \
+	  $(SET_SHELL) \
+	    $(MAKE) -C $(builddir_hppa64) $(NJOBS) \
+		CC="$(builddir)/gcc/xgcc -B$(builddir)/gcc/" \
+		$(CFLAGS_TO_PASS) \
+		$(LDFLAGS_TO_PASS)
+	touch $(build_hppa64_stamp)
+
+$(configure_ia6432_stamp): $(build_stamp)
+	dh_testdir
+	rm -f $(configure_ia6432_stamp) $(build_ia6432_stamp)
+	rm -rf $(builddir_ia6432)
+	mkdir $(builddir_ia6432)
+	: # configure
+	cd $(builddir_ia6432) && \
+	  PATH=$(PWD)/bin:$$PATH \
+	  $(SET_SHELL) \
+	  CC="$(builddir)/gcc/xgcc -B$(builddir)/gcc/" \
+	     ../src/configure \
+		--enable-languages=c \
+		--prefix=/$(PF) \
+		--libexecdir=/$(libexecdir) \
+		--disable-nls \
+		--disable-libmudflap \
+		--program-suffix=-$(BASE_VERSION) \
+		--host=ia64-linux-gnu \
+		--build=ia64-linux-gnu \
+		--target=i486-linux-gnu
+	touch $(configure_ia6432_stamp)
+
+$(build_ia6432_stamp): $(configure_ia6432_stamp)
+	  PATH=$(PWD)/bin:$$PATH \
+	  $(SET_SHELL) \
+	    $(MAKE) -C $(builddir_ia6432) $(NJOBS) \
+		CC="$(builddir)/gcc/xgcc -B$(builddir)/gcc/" \
+		$(CFLAGS_TO_PASS) \
+		$(LDFLAGS_TO_PASS)
+	touch $(build_ia6432_stamp)
+
+
+MANUALS = \
+	$(srcdir)/gcc/doc/cpp.texi \
+	$(srcdir)/gcc/doc/cppinternals.texi \
+	$(srcdir)/gcc/doc/gcc.texi \
+	$(srcdir)/gcc/doc/gccint.texi
+ifeq ($(with_fortran),yes)
+  MANUALS += $(srcdir)/gcc/fortran/gfortran.texi
+endif
+ifeq ($(with_java),yes)
+  MANUALS += $(srcdir)/gcc/java/gcj.texi
+endif
+ifeq ($(with_ada),yes)
+  MANUALS += \
+	$(builddir)/gcc/doc/gnat_ugn_unw.texi \
+	$(srcdir)/gcc/ada/gnat_rm.texi \
+	$(srcdir)/gcc/ada/gnat-style.texi
+endif
+ifeq ($(with_pascal),yes)
+  MANUALS += \
+	$(srcdir)/gcc/p/doc/en/gpc.texi \
+	$(srcdir)/gcc/p/doc/en/gpcs.texi
+endif
+
+html-docs: $(build_html_stamp)
+#$(build_html_stamp): html-texi2html
+#$(build_html_stamp): html-makeinfo
+$(build_html_stamp): html-makeinfo-nosplit
+
+html-texi2html:
+	rm -rf html
+	mkdir html
+	for manual in $(MANUALS); do \
+	  outname=`basename $${manual} .texi`; \
+	  echo "generating $$outname ..."; \
+	  texi2html -number -split chapter \
+		-I $(srcdir)/gcc/doc/include \
+		-I $(srcdir)/gcc/p/doc \
+		-I $(srcdir)/gcc/p/doc/generated \
+		-I `dirname $${manual}` \
+		-I $(builddir)/gcc \
+		-subdir html \
+		$${manual}; \
+	done
+
+html-makeinfo:
+	rm -rf html
+	mkdir html
+	cd html && \
+	for manual in $(MANUALS); do \
+	  manual=`find $(srcdir) -name $${file}.texi`; \
+	  outname=`basename $${manual} .texi`; \
+	  echo "generating $$outname ..."; \
+	  if [ "$${manual}" ]; then \
+	    makeinfo --html --number-sections \
+		-I $(srcdir)/gcc/doc/include -I `dirname $${manual}` \
+		-I $(srcdir)/gcc/p/doc \
+		-I $(srcdir)/gcc/p/doc/generated \
+		-I $(builddir)/gcc \
+		-o $${outname} \
+		$${manual}; \
+	  fi; \
+	done
+
+html-makeinfo-nosplit:
+	rm -rf html
+	mkdir html
+	cd html && \
+	for manual in $(MANUALS); do \
+	  outname=`basename $${manual} .texi`.html; \
+	  echo "generating $$outname ..."; \
+	  makeinfo --html --number-sections --no-split \
+		-I $(srcdir)/gcc/doc/include -I `dirname $${manual}` \
+		-I $(srcdir)/gcc/p/doc \
+		-I $(srcdir)/gcc/p/doc/generated \
+		-I $(builddir)/gcc \
+		-o $${outname} \
+		$${manual}; \
+	done
+
+# start the script only on architectures known to have slow autobilders ...
+logwatch_archs := arm armeb m68k mips mipsel sparc
+ifeq ($(DEB_HOST_GNU_CPU), $(findstring $(DEB_HOST_GNU_CPU),$(logwatch_archs)))
+  start_logwatch = yes
+endif
+ifeq ($(DEB_HOST_GNU_SYSTEM),gnu)
+  start_logwatch = yes
+endif
+
+check: $(check_stamp) #$(check_inst_stamp)
+$(check_stamp): $(build_stamp)
+	rm -f test-protocol
+
+ifeq ($(locale_data),generate)
+	: # build locales needed by libstdc++ testsuite
+	rm -rf locales
+	mkdir locales
+	-sh debian/locale-gen
+endif
+
+ifeq ($(start_logwatch),yes)
+	: # start logwatch script for regular output during test runs
+	chmod +x debian/logwatch.sh
+	-debian/logwatch.sh -t 900 -p $(builddir)/logwatch.pid \
+		-m '\ntestsuite still running ...\n' \
+		test-protocol \
+		$(builddir)/gcc/testsuite/{gcc,g++,g77,objc,obj-c++}.log \
+		$(builddir)/gcc/testsuite/ada/acats/acats.log \
+		$(builddir)/gcc/p/test/test_log \
+		$(buildlibdir)/libstdc++-v3/testsuite/libstdc++-v3.log \
+		$(buildlibdir)/libjava/testsuite/libjava.log \
+		$(buildlibdir)/libmudflap/testsuite/libmudflap.log \
+		&
+endif
+
+ifeq ($(with_ada),yes)
+	chmod +x debian/acats-killer.sh
+	-debian/acats-killer.sh -p $(builddir)/acats-killer.pid \
+		$(builddir)/gcc/testsuite/ada/acats/acats.log \
+		$(builddir)/gcc/testsuite/g++.log \
+		&
+endif
+
+ifeq ($(with_ada),yes)
+ifneq ($(PKGSOURCE),gcc-snapshot)
+# seems to be necessary for all archs
+# see above, hppa & gnatlib-shared-dual target
+#  ifeq ($(with_libgnat_shared_dual),yes)
+	if [ ! -f $(builddir)/gcc/ada/rts/libgnat-$(GNAT_SONAME).so ]; then \
+	  ln -sf libgnat-$(GNAT_SONAME).so.1 \
+	    $(builddir)/gcc/ada/rts/libgnat-$(GNAT_SONAME).so; \
+	fi
+	if [ ! -f $(builddir)/gcc/ada/rts/libgnarl-$(GNAT_SONAME).so ]; then \
+	  ln -sf libgnarl-$(GNAT_SONAME).so.1 \
+	    $(builddir)/gcc/ada/rts/libgnarl-$(GNAT_SONAME).so; \
+	fi
+#  endif
+endif
+endif
+
+	echo "Running testsuite ..."
+	-$(ULIMIT_M); \
+	    $(SET_SHELL) \
+	    $(SET_LOCPATH) \
+	    PATH=$(PWD)/bin:$$PATH \
+	    EXTRA_TEST_PFLAGS=-g0 \
+	    DEJAGNU_TIMEOUT=$(DEJAGNU_TIMEOUT) \
+		$(MAKE) -C $(checkdir) -k $(NJOBS) \
+		    check $(RUNTESTFLAGS) 2>&1 | tee test-protocol
+
+	-ps aux | fgrep logwatch | fgrep -v fgrep
+	-if [ -f $(builddir)/logwatch.pid ]; then \
+	  kill -1 `cat $(builddir)/logwatch.pid`; \
+	  sleep 1; \
+	  kill -9 `cat $(builddir)/logwatch.pid`; \
+	  rm -f $(builddir)/logwatch.pid; \
+	fi
+	-ps aux | fgrep logwatch | fgrep -v fgrep
+
+ifeq ($(with_ada),yes)
+	-if [ -f $(builddir)/acats-killer.pid ]; then \
+	  kill -1 `cat $(builddir)/acats-killer.pid`; \
+	  sleep 1; \
+	  kill -9 `cat $(builddir)/acats-killer.pid`; \
+	  rm -f $(builddir)/acats-killer.pid; \
+	fi
+endif
+
+	: # running the libjava testsuite alone is missing this information
+	$(builddir)/gcc/xgcc -B$(builddir)/gcc/ -v > $(builddir)/compiler_version.sum 2>&1
+
+	-chmod 755 $(srcdir)/contrib/test_summary
+	if [ -x $(srcdir)/contrib/test_summary ]; then \
+	  rm -f test-summary; \
+	  ( \
+	    cd $(builddir); \
+	    echo '' > ts-include; \
+	    echo '' >> ts-include; \
+	    if [ -f $(builddir)/gcc/.bad_compare ]; then \
+	      echo 'Bootstrap comparison failure:' >> ts-include; \
+	      cat $(builddir)/gcc/.bad_compare >> ts-include; \
+	      echo '' >> ts-include; \
+	      echo '' >> ts-include; \
+	    fi; \
+	    echo "Build Dependencies:" >> ts-include; \
+	    dpkg -l binutils `echo '$(LIBC_DEP)' | awk '{print $$1}'` \
+	        >> ts-include; \
+	    echo '' >> ts-include; \
+	    cat ../$(patch_stamp) >> ts-include; \
+	    BOOT_CFLAGS="$(BOOT_CFLAGS)" \
+	      $(srcdir)/contrib/test_summary \
+		-i ts-include -m "$(S_EMAIL)" \
+	  ) > raw-test-summary; \
+	  if [ -n "$(testsuite_tarball)" ]; then \
+	    echo "Test suite used: $(testsuite_srcdir)" > test-summary; \
+	    echo "  Do not interpret the results on its own" >> test-summary; \
+	    echo "  but compare them with the results from" >> test-summary; \
+	    echo "  the gcc-snapshot package." >> test-summary; \
+	  fi; \
+	  sed -n '/^Mail/s/.*"\([^"][^"]*\)".*/\1/p' raw-test-summary \
+		>> test-summary; \
+	  awk '/^cat/, /^EOF/' raw-test-summary | grep -v EOF >> test-summary; \
+	  if [ -f bootstrap-summary -a "$(bootstrap_target)" != profiledbootstrap ]; then \
+	    echo '' >> test-summary; \
+	    cat bootstrap-summary >> test-summary; \
+	  fi; \
+	  echo 'BEGIN test-summary'; \
+	  cat test-summary; \
+	  echo 'END test-summary'; \
+	fi
+
+	touch $(check_stamp)
+
+$(check_inst_stamp): $(check_stamp)
+	rm -f test-inst-protocol
+
+ifeq ($(start_logwatch),yes)
+	: # start logwatch script for regular output during test runs
+	chmod +x debian/logwatch.sh
+	-debian/logwatch.sh -t 900 -p $(builddir)/logwatch-inst.pid \
+		-m '\ntestsuite (3.3) still running ...\n' \
+		test-inst-protocol \
+		check-inst/{gcc,g++,g77,objc}.log \
+		&
+endif
+
+	rm -rf check-inst
+	mkdir check-inst
+
+	echo "Running testsuite ..."
+	-$(ULIMIT_M) ; \
+	    $(SET_SHELL) \
+	    $(SET_LOCPATH) \
+	    EXTRA_TEST_PFLAGS=-g0 \
+	    DEJAGNU_TIMEOUT=$(DEJAGNU_TIMEOUT) \
+	  cd check-inst && $(srcdir)/contrib/test_installed \
+	    --with-gcc=gcc-3.3 --with-g++=g++-3.3 --with-g77=g77-3.3 \
+		2>&1 | tee test-inst-protocol
+
+	-ps aux | fgrep logwatch | fgrep -v fgrep
+	if [ -f $(builddir)/logwatch-inst.pid ]; then \
+	  kill -1 `cat $(builddir)/logwatch-inst.pid`; \
+	else \
+	  true; \
+	fi
+	-ps aux | fgrep logwatch | fgrep -v fgrep
+
+	-chmod 755 $(srcdir)/contrib/test_summary
+	if [ -x $(srcdir)/contrib/test_summary ]; then \
+	  rm -f test-inst-summary; \
+	  ( \
+	    cd check-inst; \
+	    echo '' > ts-include; \
+	    echo '' >> ts-include; \
+	    echo "Build Dependencies:" >> ts-include; \
+	    dpkg -l g++-3.3 binutils `echo '$(LIBC_DEP)' | awk '{print $$1}'` \
+	        >> ts-include; \
+	    echo '' >> ts-include; \
+	    echo 'Results for the installed GCC-3.3 compilers' >> ts-include; \
+	    $(srcdir)/contrib/test_summary \
+		-i ts-include -m "$(S_EMAIL)" \
+	  ) > raw-test-inst-summary; \
+	  sed -n '/^Mail/s/.*"\([^"][^"]*\)".*/\1/p' raw-test-inst-summary \
+		>> test-inst-summary; \
+	  awk '/^cat/, /^EOF/' raw-test-inst-summary \
+		| grep -v EOF >> test-inst-summary; \
+	  echo 'BEGIN test-installed-summary'; \
+	  cat test-inst-summary; \
+	  echo 'END test-installed-summary'; \
+	fi
+
+	chmod 755 debian/reduce-test-diff.awk
+	if diff -u test-inst-summary test-summary \
+		| debian/reduce-test-diff.awk > diff-summary; \
+	then \
+	  mv -f diff-summary testsuite-comparision; \
+	else \
+	  ( \
+	    echo "WARNING: New failures in gcc-3.4 compared to gcc-3.3"; \
+	    echo ''; \
+	    cat diff-summary; \
+	  ) > testsuite-comparision; \
+	  rm -f diff-summary; \
+	fi
+	touch $(check_inst_stamp)
+
+clean: debian/control
+	dh_testdir
+	rm -f pxxx status
+	rm -f *-summary *-protocol testsuite-comparision summary-diff
+ifeq ($(with_pascal),yes)
+	-rm -f $(srcdir)/gcc/p/doc/*info
+	rm -f $(srcdir)/gcc/p/test/{fjf51,fjf141aa,fjf199aa,magic,?,knownbugs/a.out}
+endif
+	if [ -f $(srcdir)/gcc/p/config-lang.in.debian ]; then \
+	  mv -f $(srcdir)/gcc/p/config-lang.in.debian $(srcdir)/gcc/p/config-lang.in; \
+	else true; fi
+	rm -f $(srcdir)/gcc/po/*.gmo
+	rm -f debian/lib{ffi,g2c,gcc,gcj,objc,stdc++}{-v3,[0-9]}*.{{pre,post}{inst,rm},shlibs}
+	fs=`echo debian/*-BV* debian/*GCJ* debian/*CXX* debian/*LC*|sort -u`; \
+	for f in $$fs; do \
+	  [ -f $$f ] || continue; \
+	  f2=$$(echo $$f \
+		| sed 's/BV/$(BASE_VERSION)/;s/PV/$(GPC_BASE_VERSION)/;s/CXX/$(CXX_SONAME)/;s/LGCJ/$(PKG_LIBGCJ_EXT)/;s/GCJ/$(PKG_GCJ_EXT)/;s/LC/$(GCC_SONAME)/;s/FFI/$(FFI_SONAME)/'); \
+	  rm -f $$f2; \
+	done
+	rm -f debian/shlibs.local debian/substvars.local
+	rm -f debian/*.debhelper
+	-[ -d debian/bugs ] && $(MAKE) -C debian/bugs clean
+	rm -f debian/README.libstdc++-baseline
+	rm -rf bin locales
+	rm -rf check-inst
+	dh_clean
+
+# -----------------------------------------------------------------------------
+# some abbrevations for the package names and directories;
+# p_XXX is the package name, d_XXX is the package directory
+# these macros are only used in the binary-* targets.
+
+ifeq ($(versioned_packages),yes)
+  pkg_ver := -$(BASE_VERSION)
+endif
+
+ifndef DEB_CROSS
+  p_base = gcc$(pkg_ver)-base
+  p_gcc  = gcc$(pkg_ver)
+  p_cpp  = cpp$(pkg_ver)
+  p_cppd = cpp$(pkg_ver)-doc
+  p_cxx  = g++$(pkg_ver)
+  p_doc  = gcc$(pkg_ver)-doc
+  p_lgcc = libgcc$(GCC_SONAME)
+else
+  # only triggered if DEB_CROSS_INDEPENDENT set
+  p_base = gcc$(pkg_ver)$(cross_bin_arch)-base
+  p_cpp  = cpp$(pkg_ver)$(cross_bin_arch)
+  p_gcc  = gcc$(pkg_ver)$(cross_bin_arch)
+  p_cxx  = g++$(pkg_ver)$(cross_bin_arch)
+endif
+p_hppa64 = gcc$(pkg_ver)-hppa64
+
+d	= debian/tmp
+d_base	= debian/$(p_base)
+d_gcc	= debian/$(p_gcc)
+d_cpp	= debian/$(p_cpp)
+d_cppd	= debian/$(p_cppd)
+d_cxx	= debian/$(p_cxx)
+d_doc	= debian/$(p_doc)
+d_lgcc	= debian/$(p_lgcc)
+d_hppa64= debian/$(p_hppa64)
+
+common_substvars = \
+	$(shell awk "{printf \"'-V%s' \", \$$0}" debian/substvars.local)
+
+# ---------------------------------------------------------------------------
+
+ifeq ($(PKGSOURCE),gcc-snapshot)
+  include debian/rules.d/binary-snapshot.mk
+else
+
+ifndef DEB_CROSS
+# ----------------------------------------
+# native target
+
+ifeq ($(with_gccbase),yes)
+  include debian/rules.d/binary-base.mk
+endif
+ifeq ($(with_libgcc),yes)
+  include debian/rules.d/binary-libgcc.mk
+endif
+
+ifeq ($(with_source),yes)
+  include debian/rules.d/binary-source.mk
+endif
+
+ifeq ($(with_cdev),yes)
+  include debian/rules.d/binary-cpp.mk
+endif
+
+ifeq ($(with_proto),yes)
+  include debian/rules.d/binary-proto.mk
+endif
+
+ifeq ($(with_fixincl),yes)
+  include debian/rules.d/binary-fixincl.mk
+endif
+
+ifeq ($(PKGSOURCE),gcc-$(BASE_VERSION))
+  ifeq ($(with_mudflap),yes)
+    include debian/rules.d/binary-libmudflap.mk
+  endif
+endif
+
+ifeq ($(with_libssp),yes)
+  include debian/rules.d/binary-libssp.mk
+endif
+
+ifeq ($(with_objcxx),yes)
+  include debian/rules.d/binary-objcxx.mk
+endif
+
+ifeq ($(with_objc),yes)
+  include debian/rules.d/binary-objc.mk
+endif
+ifeq ($(with_libobjc),yes)
+  include debian/rules.d/binary-libobjc.mk
+endif
+
+# include before cxx
+include debian/rules.d/binary-java.mk
+ifeq ($(with_fastjar),yes)
+  include debian/rules.d/binary-fastjar.mk
+endif
+
+ifeq ($(with_libffi),yes)
+  include debian/rules.d/binary-libffi.mk
+endif
+
+ifeq ($(with_cxxdev),yes)
+  include debian/rules.d/binary-cxx.mk
+endif
+ifeq ($(with_cxx),yes)
+  include debian/rules.d/binary-libstdcxx.mk
+endif
+
+ifeq ($(with_f77),yes)
+  include debian/rules.d/binary-f77.mk
+endif
+
+ifeq ($(with_fortran),yes)
+  include debian/rules.d/binary-fortran.mk
+endif
+
+ifeq ($(with_ada),yes)
+  include debian/rules.d/binary-ada.mk
+endif
+
+ifeq ($(with_pascal),yes)
+  include debian/rules.d/binary-pascal.mk
+endif
+
+ifeq ($(with_d),yes)
+  include debian/rules.d/binary-d.mk
+endif
+
+ifeq ($(with_libnof),yes)
+  ifeq ($(DEB_TARGET_GNU_CPU),powerpc)
+    include debian/rules.d/binary-nof.mk
+  endif
+endif
+
+# gcc must be moved/built after g77 and g++
+ifeq ($(with_cdev),yes)
+  include debian/rules.d/binary-gcc.mk
+endif
+
+ifeq ($(with_hppa64),yes)
+  include debian/rules.d/binary-hppa64.mk
+endif
+
+else
+# ----------------------------------------
+# cross target
+
+ifeq ($(with_gccxbase),yes)
+  include debian/rules.d/binary-base.mk
+endif
+
+ifeq ($(with_libgcc),yes)
+  include debian/rules.d/binary-libgcc-cross.mk
+endif
+
+ifeq ($(with_cdev),yes)
+  include debian/rules.d/binary-cpp-cross.mk
+endif
+
+ifeq ($(with_objcxx),yes)
+  include debian/rules.d/binary-objcxx-cross.mk
+endif
+
+ifeq ($(with_objc),yes)
+  include debian/rules.d/binary-objc-cross.mk
+endif
+ifeq ($(with_libobjc),yes)
+  include debian/rules.d/binary-libobjc-cross.mk
+endif
+
+ifeq ($(with_d),yes)
+  include debian/rules.d/binary-d-cross.mk
+endif
+
+ifeq ($(with_cxxdev),yes)
+  include debian/rules.d/binary-cxx-cross.mk
+endif
+ifeq ($(with_cxx),yes)
+  include debian/rules.d/binary-libstdcxx-cross.mk
+endif
+
+ifeq ($(with_libnof),yes)
+  ifeq ($(DEB_TARGET_GNU_CPU),powerpc)
+    include debian/rules.d/binary-nof-cross.mk
+  endif
+endif
+
+ifeq ($(with_cdev),yes)
+  include debian/rules.d/binary-gcc-cross.mk
+endif
+
+endif
+endif # ($(PKGSOURCE),gcc-snapshot)
+
+# ----------------------------------------------------------------------
+install: $(install_dependencies)
+
+$(install_dummy_stamp): $(build_dummy_stamp)
+	touch $(install_dummy_stamp)
+
+$(install_snap_stamp): $(build_stamp)
+	dh_testdir
+	dh_testroot
+	dh_clean -k
+
+	: # Install directories
+	rm -rf $(d)
+	mkdir -p $(d)/$(PF)
+
+	: # Install everything
+	PATH=$(PWD)/bin:$$PATH \
+	$(SET_SHELL) \
+	  $(MAKE) -C $(builddir) \
+	    $(CFLAGS_TO_PASS) \
+	    $(LDFLAGS_TO_PASS) \
+	    DESTDIR=$(PWD)/$(d) \
+	    infodir=/$(PF)/share/info \
+	    mandir=/$(PF)/share/man \
+		install
+
+	chmod 755 debian/dh_*
+	touch $(install_snap_stamp)
+
+$(install_stamp): $(build_stamp)
+	dh_testdir
+	dh_testroot
+	dh_clean -k -N$(p_hppa64)
+	if [ -f $(binary_stamp)-hppa64 ]; then \
+	  mv $(binary_stamp)-hppa64 saved-stamp; \
+	  rm -f $(binary_stamp)*; \
+	  mv saved-stamp $(binary_stamp)-hppa64; \
+	else \
+	  rm -f $(binary_stamp)*; \
+	fi
+
+	: # Install directories
+	rm -rf $(d)
+	mkdir -p $(d)/$(libdir) $(d)/$(PF) $(d)/$(PF)/lib/debug
+ifeq ($(biarch32),yes)
+	mkdir -p $(d)/$(PF)/lib32/debug
+endif
+ifeq ($(biarch),yes)
+	mkdir -p $(d)/$(PF)/lib64/debug
+endif
+
+ifeq ($(DEB_TARGET_GNU_CPU),x86_64)
+	: # link lib to lib64 and $(PF)/lib to $(PF)/lib64
+	: # (this works when CONFARGS contains '--disable-multilib')
+	ln -s $(libdir) $(d)/lib64
+	mkdir -p $(d)/$(PF)/$(libdir)
+	ln -s $(libdir) $(d)/$(PF)/lib64
+endif
+
+#	cd $(buildlibdir)/libjava/classpath/native/jni/gtk-peer \
+#	  && ldd .libs/libgtkpeer.so \
+#	  && rm -f .libs/libgtkpeer.so libgtkpeer.la \
+#	  && $(MAKE)
+#	cd $(buildlibdir)/libjava/classpath/native/jawt \
+#	  && ldd .libs/libjawt.so \
+#	  && rm -f .libs/libjawt.so libjawt.la \
+#	  && $(MAKE)
+
+	: # Install everything
+	PATH=$(PWD)/bin:$$PATH \
+	$(SET_SHELL) \
+	  $(MAKE) -C $(builddir) \
+	    $(CFLAGS_TO_PASS) \
+	    $(LDFLAGS_TO_PASS) \
+	    DESTDIR=$(PWD)/$(d) \
+	    infodir=/$(PF)/share/info \
+	    mandir=/$(PF)/share/man \
+		install
+
+ifeq ($(with_common_gcclibdir),yes)
+	mv $(d)/$(subst /$(BASE_VERSION),/$(GCC_VERSION),$(gcc_lib_dir)) \
+		$(d)/$(gcc_lib_dir)
+  ifneq ($(gcc_lib_dir),$(gcc_lexec_dir))
+	mv $(d)/$(subst /$(BASE_VERSION),/$(GCC_VERSION),$(gcc_lexec_dir)) \
+		$(d)/$(gcc_lexec_dir)
+  endif
+  ifeq ($(with_d)-$(with_libphobos),yes-yes)
+	mv $(d)/$(PF)/include/d$(libphobos_version)/$(GCC_VERSION) \
+		$(d)/$(PF)/include/d$(libphobos_version)/$(BASE_VERSION)
+  endif
+endif
+
+ifeq ($(DEB_TARGET_GNU_CPU),x86_64)
+	rm -f $(libdir) $(d)/$(PF)/lib64
+endif
+	-ls -l $(d)/$(PF)/lib*/lib*.so.* $(d)/$(PF)/lib*/gcj$(pkg_ver)*/lib*.so
+
+ifeq ($(DEB_TARGET_GNU_CPU),x86_64)
+	rm -f $(libdir) $(d)/$(PF)/lib64
+endif
+	-ls -l $(d)/$(PF)/lib*/lib*.so.* $(d)/$(PF)/lib*/gcj$(pkg_ver)*/lib*.so
+
+#	cd $(buildlibdir)/libjava/classpath/native/jni/gtk-peer \
+#	  && ldd .libs/libgtkpeer.so \
+#	  && rm -f .libs/libgtkpeer.so libgtkpeer.la \
+#	  && $(MAKE)
+#	cd $(buildlibdir)/libjava/classpath/native/jawt \
+#	  && ldd .libs/libjawt.so \
+#	  && rm -f .libs/libjawt.so libjawt.la \
+#	  && $(MAKE)
+
+	-cd $(d)/$(PF)/lib/gcj$(pkg_ver) \
+	  && ldd libjawt.so libgtkpeer.so
+
+ifneq ($(PKGSOURCE),gcc-snapshot)
+	: # remove rpath settings from binaries and shared libs
+	for i in $$(chrpath -k $(d)/$(PF)/bin/* $(d)/$(PF)/lib*/lib*.so.* \
+			$(d)/$(PF)/lib*/gcj$(pkg_ver)*/lib*.so \
+			2>/dev/null | awk -F: '/RPATH=/ {print $$1}'); \
+	do \
+	  case "$$i" in ecj1|*gij-*|*libjawt*|*libjvm*) continue; esac; \
+	  [ -h $$i ] && continue; \
+	  chrpath --delete $$i; \
+	  echo "removed RPATH: $$i"; \
+	done
+	-cd $(d)/$(PF)/lib/gcj$(pkg_ver) \
+	  && ldd libjawt.so libgtkpeer.so
+endif
+
+ifeq ($(biarch),yes)
+  ifneq (,$(findstring emul/ia32-linux, $(lib32)))
+	mkdir -p $(d)/$(lib32)
+	mv $(d)/$(PF)/lib32/* $(d)/$(lib32)/.
+	rmdir $(d)/$(PF)/lib32
+  endif
+  ifneq (,$(filter libstdc++-v3, $(biarch_multidir_names)))
+	: # fix biarch C++ header installation
+    ifeq ($(DEB_TARGET_ARCH),i386)
+	mv $(d)/$(cxx_inc_dir)/x86_64-linux-gnu/64 \
+	  $(d)/$(cxx_inc_dir)/i486-linux-gnu/
+	rmdir $(d)/$(cxx_inc_dir)/x86_64-linux-gnu
+    endif
+    ifeq ($(DEB_TARGET_ARCH),powerpc)
+	mv $(d)/$(cxx_inc_dir)/powerpc64-linux-gnu/64 \
+	  $(d)/$(cxx_inc_dir)/powerpc-linux-gnu/
+	rmdir $(d)/$(cxx_inc_dir)/powerpc64-linux-gnu
+    endif
+    ifeq ($(DEB_TARGET_ARCH),s390)
+	mv $(d)/$(cxx_inc_dir)/s390x-linux-gnu/64 \
+	  $(d)/$(cxx_inc_dir)/s390-linux-gnu/
+	rmdir $(d)/$(cxx_inc_dir)/s390x-linux-gnu
+    endif
+  endif
+endif
+
+ifneq ($(with_java),yes)
+  ifeq ($(with_fastjar),yes)
+	: # Install fastjar
+	$(MAKE) -C $(builddir)/fastjar \
+	    ZDEPS= ZINCS= ZLIBS=-lz \
+	    DESTDIR=$(PWD)/$(d) \
+	    infodir=/$(PF)/share/info \
+	    mandir=/$(PF)/share/man \
+		install
+  endif
+endif
+
+	: # fix '*.la' and '*.lai' files
+	for i in $$(find $(d) -name '*.la' -o -name '*.lai'); do \
+	  libdir=$$(sed -n "s,^libdir='\(.*\)'.*,\1,p" $$i); \
+	  [ -z "$$libdir" ] && continue; \
+	  libdir=$$(realpath -s $$libdir); \
+	  sed -e "s,^libdir='\(.*\)'.*,libdir='$$libdir'," \
+	    -e 's, -L$(builddir)[^ ]*,,g' \
+	    $$i > $$i.new; \
+	  if diff -u $$i $$i.new; then \
+	    rm -f $$i.new; \
+	  else \
+	    echo "$$i: path normalized"; \
+	    touch -r $$i $$i.new; \
+	    mv -f $$i.new $$i; \
+	  fi; \
+	done
+
+ifeq ($(DEB_TARGET_ARCH),amd64)
+	: # fix '*.la' and '*.lai' files (don't resolve the /lib64 symlink)
+	for i in $$(find $(d) -name '*.la' -o -name '*.lai'); do \
+	  sed -e 's,/usr/lib64,/usr/lib,g' -e 's,/lib/\.\./lib64,/lib,g' \
+	    $$i > $$i.new; \
+	  if diff -u $$i $$i.new; then \
+	    rm -f $$i.new; \
+	  else \
+	    echo "$$i: references to lib64 fixed"; \
+	    touch -r $$i $$i.new; \
+	    mv -f $$i.new $$i; \
+	  fi; \
+	done
+endif
+
+ifneq ($(PKGSOURCE),gcc-snapshot)
+  ifneq ($(with_libgnat),yes)
+	rm -f $(d)/$(gcc_lib_dir)/adalib/lib*.so*
+  endif
+endif
+
+ifeq ($(GFDL_INVARIANT_FREE),yes)
+	for i in gcc gcov; do \
+	  I=`echo $$i | tr a-z A-Z`; \
+	  sed -e "s/@NAME@/$$I$(pkg_ver)/g" -e "s/@name@/$$i$(pkg_ver)/g" \
+	    debian/dummy-man.1 > $(d)/$(PF)/share/man/man1/$$i.1; \
+	done
+	cp -p debian/gccbug.1 $(d)/$(PF)/share/man/man1/$(TP)gccbug$(pkg_ver)
+
+  ifeq ($(with_fortran),yes)
+	for i in g77; do \
+	  I=`echo $$i | tr a-z A-Z`; \
+	  sed -e "s/@NAME@/$$I$(pkg_ver)/g" -e "s/@name@/$$i$(pkg_ver)/g" \
+	    debian/dummy-man.1 > $(d)/$(PF)/share/man/man1/$$i.1; \
+	done
+  endif
+  ifeq ($(with_java),yes)
+	for i in gcj gcjh gij jv-convert jv-scan jcf-dump grmic grmiregistry; \
+	do \
+	  I=`echo $$i | tr a-z A-Z`; \
+	  sed -e "s/@NAME@/$$I$(pkg_ver)/g" -e "s/@name@/$$i$(pkg_ver)/g" \
+	    debian/dummy-man.1 > $(d)/$(PF)/share/man/man1/$$i.1; \
+	done
+  endif
+endif
+
+ifeq ($(with_pascal),yes)
+	: # gpc is already versioned with the gcc version.
+	mv $(d)/$(PF)/bin/gpc$(pkg_ver) $(d)/$(PF)/bin/gpc
+	mv $(d)/$(PF)/share/man/man1/gpc$(pkg_ver).1 \
+		$(d)/$(PF)/share/man/man1/gpc.1
+endif
+ifeq ($(versioned_packages),yes)
+  ifeq ($(with_pascal),yes)
+    ifeq ($(GFDL_INVARIANT_FREE),yes)
+	for i in binobj gpc gpc-run gpidump; do \
+	  I=`echo $$i | tr a-z A-Z`; \
+	  sed -e "s/@NAME@/$$I$(pkg_ver)/g" \
+	      -e "s/@name@/$$i$(pkg_ver)/g" \
+	    debian/dummy-man.1 > $(d)/$(PF)/share/man/man1/$$i.1; \
+	done
+    endif
+    ifeq ($(with_gpidump),yes)
+	: # rename files (versioned gpc binaries)
+	for i in binobj gpc gpc-run gpidump; do \
+	  mv $(d)/$(PF)/bin/$$i $(d)/$(PF)/bin/$$i$(pkg_ver); \
+	done
+	: # rename files (versioned gpc man pages)
+	for i in binobj gpc gpc-run gpidump; do \
+	  mv $(d)/$(PF)/share/man/man1/$$i.1 \
+		$(d)/$(PF)/share/man/man1/$$i$(pkg_ver).1; \
+	done
+    else
+	: # rename files (versioned gpc binaries)
+	for i in binobj gpc gpc-run; do \
+	  mv $(d)/$(PF)/bin/$$i $(d)/$(PF)/bin/$$i$(pkg_ver); \
+	done
+	: # rename files (versioned gpc man pages)
+	for i in binobj gpc gpc-run; do \
+	  mv $(d)/$(PF)/share/man/man1/$$i.1 \
+		$(d)/$(PF)/share/man/man1/$$i$(pkg_ver).1; \
+	done
+    endif
+  endif
+endif
+
+#  ifeq ($(with_ada),yes)
+#	: # rename files (versioned ada binaries)
+#	for i in ; do \
+#	  mv $(d)/$(PF)/bin/$$i $(d)/$(PF)/bin/$$i-$(GNAT_VERSION); \
+#	  mv $(d)/$(PF)/share/man/man1/$$i.1 \
+#		$(d)/$(PF)/share/man/man1/$$i-$(GNAT_VERSION).1; \
+#	done
+#	for i in $(GNAT_TOOLS); do \
+#	  mv $(d)/$(PF)/bin/$$i $(d)/$(PF)/bin/$$i-$(GNAT_VERSION); \
+#	done
+#  endif
+
+#ifneq ($(with_libgcc),yes)
+#	: # needed for dependency of other shared libs
+#	echo 'libgcc_s $(GCC_SONAME) libgcc$(GCC_SONAME) (>= $(DEB_LIBGCC_SOVERSION))' \
+#	    > debian/shlibs.local
+#endif
+
+ifdef DEB_CROSS
+  ifeq ($(DEB_TARGET_ARCH),s390)
+	: # s390 64bit stuff happens to be in s390x-linux-gnu/lib64/
+	mkdir -p $(d)/$(PF)/s390-linux-gnu/lib64
+	cp -a $(d)/$(PF)/s390x-linux-gnu/lib64/* $(d)/$(PF)/s390-linux-gnu/lib64/
+  endif
+endif
+
+	chmod 755 debian/dh_*
+	touch $(install_stamp)
+
+$(install_hppa64_stamp): $(build_hppa64_stamp)
+	dh_testdir
+	dh_testroot
+	rm -rf $(d_hppa64)
+	mkdir -p $(d_hppa64)/$(PF)
+
+	PATH=$(PWD)/bin:$$PATH \
+	    $(MAKE) -C $(builddir_hppa64) \
+		CC="$(CC)" \
+		$(CFLAGS_TO_PASS) \
+		$(LDFLAGS_TO_PASS) \
+		DESTDIR=$(PWD)/$(d_hppa64) \
+		    install
+
+ifeq ($(versioned_packages),yes)
+	mv $(d_hppa64)/$(PF)/bin/hppa64-linux-gnu-gcc-$(GCC_VERSION) \
+		$(d_hppa64)/$(PF)/bin/hppa64-linux-gnu-gcc$(pkg_ver)
+	mv $(d_hppa64)/$(PF)/bin/hppa64-linux-gnu-cpp \
+		$(d_hppa64)/$(PF)/bin/hppa64-linux-gnu-cpp$(pkg_ver)
+endif
+
+ifneq ($(PKGSOURCE),gcc-snapshot)
+	: # remove files not needed
+	rm -rf $(d_hppa64)/$(PF)/info
+	rm -rf $(d_hppa64)/$(PF)/man
+	rm -f $(d_hppa64)/$(PF)/lib/libiberty.a
+	rm -f $(d_hppa64)/$(PF)/bin/*{protoize,gcov,gccbug,gcc}
+
+	rm -rf $(d_hppa64)/$(PF)/hppa64-linux-gnu/include
+	rm -rf $(d_hppa64)/$(PF)/hppa64-linux-gnu/lib
+endif
+
+	touch $(install_hppa64_stamp)
+
+# ----------------------------------------------------------------------
+# Build architecture-dependent files here.
+#binary-arch: build install $(foreach i,$(arch_binaries),$(binary_stamp)-$(i))
+binary-arch: $(foreach i,$(arch_binaries),$(binary_stamp)-$(i))
+ifeq ($(with_check),yes)
+	@echo Done
+#	: # Send Email about sucessfull build.
+#	# cat raw-test-summary | sh; echo "Sent mail to $(S_EMAIL)"
+endif
+
+# ----------------------------------------------------------------------
+# Build architecture-independent files here.
+#binary-indep: build install $(foreach i,$(indep_binaries),$(binary_stamp)-$(i))
+binary-indep: $(foreach i,$(indep_binaries),$(binary_stamp)-$(i))
+
+source diff:
+	@echo >&2 'source and diff are obsolete - use dpkg-source -b'; false
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.conf
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.conf
@@ -0,0 +1,740 @@
+# -*- makefile -*-
+# rules.conf
+#	- used to build debian/control and debian/rules.parameters
+#	- assumes unpacked sources
+
+include debian/rules.defs
+
+SOURCE_VERSION := $(call vafilt,$(CHANGELOG_VARS),Version)
+DEB_VERSION := $(shell echo $(SOURCE_VERSION) \
+	| sed -e 's/.*://' -e 's/ds[0-9]*//')
+ifneq (,$(findstring gpc,$(PKGSOURCE)))
+  GPC_BASE_VERSION := $(word 1, $(subst -, ,$(DEB_VERSION)))
+  DEB_VERSION := $(subst $(GPC_BASE_VERSION)-,,$(DEB_VERSION))
+endif
+ifneq (,$(findstring gdc,$(PKGSOURCE)))
+  GDC_BASE_VERSION := $(word 1, $(subst -, ,$(DEB_VERSION)))
+  DEB_VERSION := $(shell echo $(DEB_VERSION) | sed -r 's/[0-9]{8}-//')
+  DEB_VERSION := $(subst $(GDC_BASE_VERSION)-,,$(DEB_VERSION))
+endif
+
+# epoch used for gcc versions up to 3.3.x, now used for some remaining
+# libraries: libgcc1, libobjc1, libffi2, libffi2-dev, libg2c0
+EPOCH := 1
+DEB_EVERSION := $(EPOCH):$(DEB_VERSION)
+BASE_VERSION := $(shell echo $(DEB_VERSION) | sed -e 's/\([1-9]\.[0-9]\).*-.*/\1/')
+
+# The binutils version needed.
+# The oldest suitable versions for the various platforms can be found in
+# INSTALL/specific.html ; we take a tighter dependency if possible to be on
+# the safe side (something like newest( version in stable, versions for the
+# various platforms in INSTALL/specific.html) ).
+BINUTILSV = 2.17cvs20070426
+ifdef DEB_CROSS
+  BINUTILS_BUILD_DEP := binutils$(TS) (>= $(BINUTILSV))
+else
+  BINUTILS_BUILD_DEP := binutils (>= $(BINUTILSV)) | binutils-multiarch (>= $(BINUTILSV))
+endif
+
+# libc-dev dependencies
+libc_ver := 2.5
+ifeq ($(DEB_TARGET_ARCH_OS),linux)
+  ifneq (,$(findstring $(DEB_TARGET_ARCH),alpha ia64))
+    LIBC_DEP = libc6.1
+    LIBC_DEV_DEP = libc6.1-dev$(LS) (>= $(libc_ver))
+  else
+    LIBC_DEP = libc6
+    LIBC_DEV_DEP = libc6-dev$(LS) (>= $(libc_ver))
+  endif
+else
+  ifeq ($(DEB_TARGET_ARCH_OS),gnu)
+    LIBC_DEP = libc0.3
+    LIBC_DEV_DEP = libc0.3-dev$(LS)
+  endif
+  ifeq ($(DEB_TARGET_ARCH_OS),kfreebsd)
+    LIBC_DEP = libc0.1
+    LIBC_DEV_DEP = libc0.1-dev
+  endif
+  ifeq ($(DEB_TARGET_ARCH_OS),knetbsd)
+    LIBC_DEP = libc0.1
+    LIBC_DEV_DEP = libc0.1-dev$(LS)
+  endif
+  ifeq ($(DEB_TARGET_ARCH_OS),netbsd)
+    LIBC_DEP = libc12
+    LIBC_DEV_DEP = libc12-dev$(LS)
+  endif
+endif
+
+LIBC_BIARCH_DEP :=
+LIBC_BIARCH_DEV_DEP :=
+LIBCXX_BIARCH_DEP :=
+ifeq ($(biarch),yes)
+  ifeq ($(DEB_TARGET_ARCH),i386)
+    LIBC_BIARCH_DEP := libc6-amd64$(LS) (>= $(libc_ver))
+    LIBC_BIARCH_DEV_DEP := libc6-dev-amd64$(LS)
+  endif
+  ifeq ($(DEB_TARGET_ARCH),powerpc)
+    LIBC_BIARCH_DEP := libc6-ppc64$(LS) (>= $(libc_ver))
+    LIBC_BIARCH_DEV_DEP := libc6-dev-ppc64$(LS) (>= $(libc_ver))
+  endif
+  ifeq ($(DEB_TARGET_ARCH),sparc)
+    LIBC_BIARCH_DEP := libc6-sparc64$(LS) (>= $(libc_ver))
+    LIBC_BIARCH_DEV_DEP := libc6-dev-sparc64$(LS) (>= $(libc_ver))
+  endif
+  ifeq ($(DEB_TARGET_ARCH),s390)
+    LIBC_BIARCH_DEP := libc6-s390x$(LS) (>= $(libc_ver))
+    LIBC_BIARCH_DEV_DEP := libc6-dev-s390x$(LS) (>= $(libc_ver))
+  endif
+  LIBCXX_BIARCH_DEP = lib64stdc++$(CXX_SONAME)$(LS) (>= $${gcc:Version})
+  LIBCXX_BIARCH_DBG_DEP = lib64stdc++$(CXX_SONAME)-$(BASE_VERSION)-dbg
+endif
+ifeq ($(biarch32),yes)
+  ifeq ($(DEB_TARGET_ARCH),amd64)
+    LIBC_BIARCH_DEV_DEP := libc6-dev-i386$(LS) (>= $(libc_ver))
+    LIBC_BIARCH_DEP := libc6-i386$(LS) (>= $(libc_ver))
+  endif
+  ifeq ($(DEB_TARGET_ARCH),ppc64)
+    LIBC_BIARCH_DEP := libc6-powerpc$(LS) (>= $(libc_ver))
+    LIBC_BIARCH_DEV_DEP := libc6-dev-powerpc$(LS) (>= $(libc_ver))
+  endif
+  ifeq ($(DEB_TARGET_ARCH),kfreebsd-amd64)
+    LIBC_BIARCH_DEV_DEP := libc0.1-dev-i386$(LS) (>= $(libc_ver))
+    LIBC_BIARCH_DEP := libc0.1-i386$(LS) (>= $(libc_ver))
+  endif
+  LIBCXX_BIARCH_DEP = lib32stdc++$(CXX_SONAME)$(LS) (>= $${gcc:Version})
+  LIBCXX_BIARCH_DBG_DEP = lib32stdc++$(CXX_SONAME)-$(BASE_VERSION)-dbg
+endif
+
+LIBUNWIND_DEV_DEP :=
+ifeq ($(DEB_TARGET_ARCH),ia64)
+  LIBUNWIND_DEV_DEP := libunwind7-dev$(LS) (>= 0.98.5-6)
+endif
+
+SOURCE_BUILD_DEP += gcc-$(BASE_VERSION)-source (>= $(BASE_VERSION).2), gcc-$(BASE_VERSION)-source (<< $(BASE_VERSION).3),
+
+CHECK_BUILD_DEP := expect-tcl8.3 [hppa], dejagnu [check_no_archs]
+ifeq ($(distribution),Ubuntu)
+  ifneq ($(PKGSOURCE),gcc-snapshot)
+    CHECK_BUILD_DEP = dejagnu [check_no_archs]
+  endif
+endif
+
+ifndef DEB_CROSS
+LIBC_BUILD_DEP := libc6.1-dev (>= $(libc_ver)) [alpha ia64] | libc0.3-dev (>= $(libc_ver)) [hurd-i386] | libc0.1-dev (>= $(libc_ver)) [kfreebsd-i386 kfreebsd-amd64] | libc6-dev (>= $(libc_ver))
+
+ifneq (,$(java_awt_peers))
+  JAVA_BUILD_DEP := libmagic-dev [java_no_archs],
+  JAVA_BUILD_DEP += libasound2-dev [java_no_archs !hurd-i386 !kfreebsd-i386 !kfreebsd-amd64],
+  ifneq (,$(findstring gtk,$(java_awt_peers)))
+    JAVA_BUILD_DEP += libxtst-dev [java_no_archs], libxt-dev [java_no_archs], libgtk2.0-dev (>= 2.4.4-2) [java_no_archs], libart-2.0-dev [java_no_archs], libcairo2-dev [java_no_archs],
+  endif
+  ifneq (,$(findstring qt,$(java_awt_peers)))
+    JAVA_BUILD_DEP += libqt4-dev (>= 4.1.0) [java_no_archs],
+  endif
+  # plugin
+  JAVA_BUILD_DEP += libgconf2-dev [java_no_archs],
+  JAVA_BUILD_DEP += libxul-dev [java_plugin_no_archs],
+  JAVA_BUILD_DEP += fastjar [java_no_archs],
+  JAVA_BUILD_DEP += ecj (>= 3.3.0-2) [java_no_archs], zip [java_no_archs],
+  # gcj-4.1 needed for gjavah-4.1.
+  JAVA_BUILD_DEP += gcj-4.1 [java_no_archs],
+endif
+ifneq ($(with_standalone_gcj),yes)
+  ifeq ($(PKGSOURCE),gcj-$(BASE_VERSION))
+    JAVA_BUILD_DEP += $(SOURCE_BUILD_DEP)
+    JAVA_BUILD_DEP += gcc-4.1 (>= 4.1.2),
+  endif
+endif
+JAVA_BUILD_INDEP := gjdoc
+ifeq ($(with_separate_libgcj),yes)
+  ifeq ($(PKGSOURCE),gcc-$(BASE_VERSION))
+    JAVA_BUILD_DEP :=
+    JAVA_BUILD_INDEP :=
+  endif
+endif
+
+ifeq ($(PKGSOURCE),gcc-$(BASE_VERSION))
+  LIBSTDCXX_BUILD_INDEP = doxygen (>= 1.4.2), graphviz (>= 2.2), gsfonts-x11
+  JAVA_BUILD_INDEP := , $(JAVA_BUILD_INDEP)
+endif
+
+PASCAL_BUILD_DEP := libncurses5-dev [pascal_no_archs], texlive-latex-base [pascal_no_archs], libgmp3-dev [pascal_no_archs], help2man [pascal_no_archs],
+
+ifeq ($(PKGSOURCE),gcc-$(BASE_VERSION))
+  ifneq ($(with_separate_gnat),yes)
+    # Build gnat as part of the combiled gcc-x.y source package.  Do not fail
+    # if gnat is not present on unsupported architectures; the build scripts
+    # will not use gnat anyway.
+    GNAT_BUILD_DEP := gnat-4.1 [ada_no_archs],
+  endif
+  ifeq ($(with_separate_gpc),yes)
+    PASCAL_BUILD_DEP :=
+  endif
+else ifeq ($(PKGSOURCE),gcc-snapshot)
+  # Ditto, as part of the gcc-snapshot package.
+  GNAT_BUILD_DEP := gnat-4.1 [ada_no_archs],
+  PASCAL_BUILD_DEP :=
+else ifeq ($(PKGSOURCE),gnat-$(BASE_VERSION))
+  # Special source package just for gnat. Fail early if gnat is not present,
+  # rather than waste CPU cycles and fail later.
+  GNAT_BUILD_DEP := gnat-4.1,
+  GNAT_BUILD_DEP += $(SOURCE_BUILD_DEP)
+  JAVA_BUILD_DEP :=
+  JAVA_BUILD_INDEP :=
+  GDC_BUILD_DEP :=
+  PASCAL_BUILD_DEP :=
+else ifeq ($(PKGSOURCE),gcj-$(BASE_VERSION))
+  # Special source package just for gcj.
+  GNAT_BUILD_DEP :=
+  PASCAL_BUILD_DEP :=
+  GDC_BUILD_DEP :=
+else ifeq ($(PKGSOURCE),gdc-$(BASE_VERSION))
+  # Special source package just for gdc.
+  GNAT_BUILD_DEP :=
+  JAVA_BUILD_DEP :=
+  JAVA_BUILD_INDEP :=
+  PASCAL_BUILD_DEP :=
+  GDC_BUILD_DEP := $(SOURCE_BUILD_DEP)
+else ifeq ($(PKGSOURCE),gpc-$(BASE_VERSION))
+  # Special source package just for gpc.
+  GNAT_BUILD_DEP :=
+  JAVA_BUILD_DEP :=
+  JAVA_BUILD_INDEP :=
+  GDC_BUILD_DEP :=
+  PASCAL_BUILD_DEP += $(SOURCE_BUILD_DEP)
+endif
+
+LIBC_BIARCH_BUILD_DEP = libc6-dev-amd64 [i386], libc6-dev-sparc64 [sparc], libc6-dev-s390x [s390], libc6-dev-i386 [amd64], libc6-dev-powerpc [ppc64], libc6-dev-ppc64 [powerpc], libc0.1-dev-i386 [kfreebsd-amd64], lib32gcc1 [amd64 ppc64 kfreebsd-amd64], lib64gcc1 [i386 powerpc sparc s390], lib64z1-dev [i386 powerpc sparc s390], lib32z1-dev [amd64 ppc64 kfreebsd-amd64],
+
+#ifeq ($(PKGSOURCE),gcc-snapshot)
+#  LIBC_BIARCH_BUILD_DEP =
+#endif
+
+else
+# build cross compiler
+
+LIBC_BUILD_DEP := $(LIBC_DEV_DEP)
+
+ifneq ($(LIBC_BIARCH_DEV_DEP),)
+  LIBC_BIARCH_BUILD_DEP := $(LIBC_BIARCH_DEV_DEP),
+else
+  LIBC_BIARCH_BUILD_DEP :=
+endif
+
+ifneq ($(LIBUNWIND_DEV_DEP),)
+  LIBUNWIND_BUILD_DEP := $(LIBUNWIND_DEV_DEP),
+else
+  LIBUNWIND_BUILD_DEP := 
+endif
+
+ifeq ($(DEB_TARGET_ARCH),ia64)
+  LIBATOMIC_OPS_BUILD_DEP := libatomic-ops-dev$(LS),
+else
+  LIBATOMIC_OPS_BUILD_DEP :=
+endif
+
+JAVA_BUILD_DEP :=
+JAVA_BUILD_INDEP :=
+GNAT_BUILD_DEP :=
+
+endif # cross compiler
+
+GCC_VERSION := $(strip $(shell cat $(srcdir)/gcc/BASE-VER))
+
+# The numeric part of the gcc version number (x.yy.zz)
+NEXT_GCC_VERSION := $(shell echo $(GCC_VERSION) | \
+		awk -F. '{OFS="."; if (NF==2) $$3=1; else $$NF += 1; print}')
+# first version with a new path component in gcc_lib_dir (i.e. GCC_VERSION
+# or TARGET_ALIAS changes), or last version available for all architectures
+DEB_GCC_SOFT_VERSION := 4.1.2-2
+DEB_GCJ_SOFT_VERSION := 4.1.2-2
+ifeq ($(with_pascal),yes)
+GPC_DATE := $(shell sed -n 's/^.define GPC_VERSION_STRING "\(.*\)"/\1/p' $(srcdir)/gcc/p/version.h || true)
+DEB_GPC_VERSION := $(shell echo $(DEB_VERSION) \
+			   | sed 's/.*:\(.*\)-\(.*\)/2:\1.$(GPC_DATE)-\2/')
+endif
+
+ifeq ($(with_pascal),yes)
+  DEB_GPC_VERSION := $(GPC_BASE_VERSION)-$(DEB_VERSION)
+endif
+
+ifeq ($(with_d),yes)
+  DEB_GDC_VERSION := $(GDC_BASE_VERSION)-$(DEB_VERSION)
+endif
+
+# semiautomatic ...
+DEB_SOVERSION := $(DEB_VERSION)
+DEB_SOVERSION := 4.1.2
+DEB_SOEVERSION := $(EPOCH):4.1.2
+DEB_STDCXX_SOVERSION := 4.1.2
+DEB_GCJ_SOVERSION := 4.1.2-1
+DEB_FFI_SOVERSION := $(DEB_SOVERSION)
+
+DEB_GCC_VERSION := $(DEB_VERSION)
+DEB_GCJ_VERSION := $(DEB_VERSION)
+ifeq ($(with_separate_libgcj),yes)
+  ifeq ($(PKGSOURCE),gcj-$(BASE_VERSION))
+    DEB_GCC_VERSION := $(DEB_GCC_SOFT_VERSION)
+  endif
+endif
+
+DEB_GNAT_VERSION := $(DEB_VERSION)
+ifeq ($(with_separate_gnat),yes)
+  ifeq ($(PKGSOURCE),gnat-$(BASE_VERSION))
+    DEB_GCC_VERSION := $(DEB_GCC_SOFT_VERSION)
+  endif
+endif
+
+# manual ...
+ifeq ($(DEB_TARGET_GNU_CPU), $(findstring $(DEB_TARGET_GNU_CPU),hppa m68k))
+  ifeq ($(DEB_TARGET_ARCH),m68k)
+    GCC_SONAME := 2
+  endif
+  ifeq ($(DEB_TARGET_ARCH),hppa)
+    GCC_SONAME := 4
+  endif
+  DEB_LIBGCC_SOVERSION := $(DEB_SOVERSION)
+  DEB_LIBGCC_VERSION := $(DEB_VERSION)
+else
+  GCC_SONAME := 1
+  DEB_LIBGCC_SOVERSION := $(DEB_SOEVERSION)
+  DEB_LIBGCC_VERSION := $(DEB_EVERSION)
+endif
+
+LIBGCC_DEP := libgcc$(GCC_SONAME)$(LS) (>= $(DEB_LIBGCC_VERSION))
+LIBGCC_BIARCH_DEP := 
+ifeq ($(biarch),yes)
+  LIBGCC_BIARCH_DEP := lib64gcc$(GCC_SONAME)$(LS) (>= $(DEB_LIBGCC_VERSION))
+endif
+ifeq ($(biarch32),yes)
+  LIBGCC_BIARCH_DEP := lib32gcc$(GCC_SONAME)$(LS) (>= $(DEB_LIBGCC_VERSION))
+endif
+
+ifeq (,$(wildcard debian/soname-cache))
+  SONAME_VARS := $(shell \
+	cache=debian/soname-cache; \
+	rm -f $$cache; \
+	v=`awk -F= '/^libtool_VERSION/ {split($$2,v,":"); print v[1]}' \
+		$(srcdir)/libstdc++-v3/configure.ac`; \
+	echo CXX_SONAME=$$v >> $$cache; \
+	v=`awk -F= '/^VERSION/ {split($$2,v,":"); print v[1]}' \
+		$(srcdir)/libobjc/configure.ac`; \
+	echo OBJC_SONAME=$$v >> $$cache; \
+	v=`tail -1 $(srcdir)/libgfortran/libtool-version | cut -d: -f1`; \
+	echo FORTRAN_SONAME=$$v >> $$cache; \
+	v=`tail -1 $(srcdir)/libmudflap/libtool-version | cut -d: -f1`; \
+	echo MUDFLAP_SONAME=$$v >> $$cache; \
+	v=`tail -1 $(srcdir)/libssp/libtool-version | cut -d: -f1`; \
+	echo SSP_SONAME=$$v >> $$cache; \
+	v=`tail -1 $(srcdir)/libjava/libtool-version | cut -d: -f1`; \
+	echo GCJ_SONAME=$$v >> $$cache; \
+	if [ "$$v" -ge 70 ]; then \
+	  echo GCJ_SONAME1=`echo $$v | sed 's/.$$//'` >> $$cache; \
+	  echo GCJ_SONAME2=`echo $$v | sed 's/.*\(.\)$$/\1/'` >> $$cache; \
+	else \
+	  echo GCJ_SONAME1=$$v >> $$cache; \
+	  echo GCJ_SONAME2= >> $$cache; \
+	fi; \
+	v=`tail -1 $(srcdir)/libffi/libtool-version | cut -d: -f1`; \
+	echo FFI_SONAME=$$v >> $$cache; \
+	v=`grep '[^_]Library_Version.*:' $(srcdir)/gcc/ada/gnatvsn.ads \
+		| sed -e 's/.*"\([^"]*\)".*/\1/'`; \
+	echo GNAT_SONAME=$$v >> $$cache; \
+	cat $$cache)
+else
+  SONAME_VARS := $(shell cat debian/soname-cache)
+endif
+CXX_SONAME	= $(call vafilt,$(SONAME_VARS),CXX_SONAME)
+OBJC_SONAME	= $(call vafilt,$(SONAME_VARS),OBJC_SONAME)
+FORTRAN_SONAME	= $(call vafilt,$(SONAME_VARS),FORTRAN_SONAME)
+MUDFLAP_SONAME	= $(call vafilt,$(SONAME_VARS),MUDFLAP_SONAME)
+SSP_SONAME	= $(call vafilt,$(SONAME_VARS),SSP_SONAME)
+GCJ_SONAME	= $(call vafilt,$(SONAME_VARS),GCJ_SONAME)
+GCJ_SONAME1	= $(call vafilt,$(SONAME_VARS),GCJ_SONAME1)
+GCJ_SONAME2	= $(call vafilt,$(SONAME_VARS),GCJ_SONAME2)
+FFI_SONAME	= $(call vafilt,$(SONAME_VARS),FFI_SONAME)
+GNAT_SONAME	= $(call vafilt,$(SONAME_VARS),GNAT_SONAME)
+
+GNAT_VERSION := $(BASE_VERSION)
+
+LIBGNAT_DEP :=
+ifeq ($(with_libgnat),yes)
+  LIBGNAT_DEP := libgnat-$(GNAT_VERSION) (= $(DEB_VERSION))
+endif
+
+pkg_ver := -$(BASE_VERSION)
+
+PKG_GCJ_EXT = $(GCJ_SONAME1)
+PKG_LIBGCJ_EXT = $(GCJ_SONAME1)$(if $(GCJ_SONAME2),-$(GCJ_SONAME2))
+
+ctrl_flags = \
+	-DBINUTILSV=$(BINUTILSV) \
+	-DSRCNAME=$(PKGSOURCE) \
+	-D__$(DEB_TARGET_GNU_CPU)__ \
+	-DARCH=$(DEB_TARGET_ARCH) \
+	-DDIST=$(distribution)
+ifeq ($(with_objc)-$(with_objc_gc),yes-yes)
+  ctrl_flags +=	-DOBJC_GC
+endif
+
+ctrl_flags += \
+	-DLIBC_DEV_DEP="$(LIBC_DEV_DEP)" \
+	-DLIBC_BIARCH_BUILD_DEP="$(LIBC_BIARCH_BUILD_DEP)" \
+	-DGNAT_BUILD_DEP="$(GNAT_BUILD_DEP)" \
+	-DJAVA_BUILD_DEP="$(JAVA_BUILD_DEP)" \
+	-DJAVA_BUILD_INDEP="$(JAVA_BUILD_INDEP)" \
+	-DLIBSTDCXX_BUILD_INDEP="$(LIBSTDCXX_BUILD_INDEP)" \
+	-DPASCAL_BUILD_DEP="$(PASCAL_BUILD_DEP)" \
+	-DGDC_BUILD_DEP="$(GDC_BUILD_DEP)" \
+	-DBINUTILS_BUILD_DEP="$(BINUTILS_BUILD_DEP)" \
+	-DLIBC_BUILD_DEP="$(LIBC_BUILD_DEP)" \
+	-DCHECK_BUILD_DEP="$(CHECK_BUILD_DEP)" \
+	-DMULTILIB_ARCHS="$(multilib_archs)" \
+	-DTP=$(TP) \
+	-DTS=$(TS) \
+	-DLS=$(LS)
+
+ifdef DEB_CROSS
+  ctrl_flags += \
+	-DTARGET=$(DEB_TARGET_ARCH) \
+	-DLIBUNWIND_BUILD_DEP="$(LIBUNWIND_BUILD_DEP)" \
+	-DLIBATOMIC_OPS_BUILD_DEP="$(LIBATOMIC_OPS_BUILD_DEP)"
+else
+  # add '-DPRI=optional' to ctrl_flags if this is not the default compiler
+  # ctrl_flags += \
+  #     -DPRI=optional
+endif
+
+ifeq ($(with_base_only),yes)
+  ctrl_flags += \
+	-DBASE_ONLY=yes
+endif
+
+control: control-file parameters-file substvars-file versioned-files
+
+ifdef DEB_CROSS
+  languages = c c++ objc objpp
+  addons = libgcc lib64gcc libcxx lib64cxx cdev c++dev libobjc objcdev objppdev
+  ifdef DEB_CROSS_INDEPENDENT
+    addons += gccxbase
+  endif
+  ifeq ($(with_d),yes)
+    ifeq ($(with_separate_gdc),yes)
+      languages = # disable others languages
+      addons = # disable others addons
+    endif
+    languages += d
+    ifeq ($(with_libphobos),yes)
+      addons += libphobos
+    endif
+  endif
+else
+  languages = ada c c++ java d # pascal
+  addons = gccbase cdev c++dev fdev fixincl libcxx lib4gcc \
+	   libgcc libffi libgcj libgcjdev libgnat libs \
+	   lib64gcc lib64cxx lib64ffi \
+	   lib32gcc lib32cxx \
+	   proto mudflap source \
+	   multilib # libnof lib64gnat ssp
+  ifeq ($(with_fastjar),yes)
+     addons += fastjar
+  endif
+  ifeq ($(with_separate_libgcj),yes)
+    ifeq ($(PKGSOURCE),gcc-$(BASE_VERSION))
+      languages := $(filter-out java,$(languages))
+      addons := $(filter-out gcj libgcj libgcjdev,$(addons))
+    endif
+    ifeq ($(PKGSOURCE),gcj-$(BASE_VERSION))
+      languages = java
+      addons = gcj libgcj libgcjdev
+    endif
+  endif
+  ifeq ($(with_standalone_gcj),yes)
+    ifeq ($(PKGSOURCE),gcj-$(BASE_VERSION))
+      addons += lib4gcc
+      ifeq ($(with_fastjar),yes)
+         addons += fastjar
+      endif
+      ctrl_flags += -DSTANDALONEJAVA
+    endif
+    ifeq ($(PKGSOURCE),gcc-$(BASE_VERSION))
+      addons := $(filter-out fastjar,$(addons))
+    endif
+  endif
+  ifeq ($(with_separate_gnat),yes)
+    ifeq ($(PKGSOURCE),gcc-$(BASE_VERSION))
+      languages := $(filter-out ada,$(languages))
+      addons := $(filter-out libgnat,$(addons))
+    endif
+    ifeq ($(PKGSOURCE),gnat-$(BASE_VERSION))
+      languages = ada
+      addons = libgnat
+    endif
+  endif
+  ifeq ($(with_separate_gpc),yes)
+    ifeq ($(PKGSOURCE),gcc-$(BASE_VERSION))
+      languages := $(filter-out pascal,$(languages))
+    endif
+    ifeq ($(PKGSOURCE),gpc-$(BASE_VERSION))
+      languages = pascal
+      addons = 
+    endif
+  endif
+  ifeq ($(with_separate_gdc),yes)
+    ifeq ($(PKGSOURCE),gcc-$(BASE_VERSION))
+      languages := $(filter-out d,$(languages))
+    endif
+    ifeq ($(PKGSOURCE),gdc-$(BASE_VERSION))
+      languages = d
+      addons = 
+      ifeq ($(with_libphobos),yes)
+        addons += libphobos
+      endif
+    endif
+  endif
+  ifneq ($(GFDL_INVARIANT_FREE),yes)
+    addons += gfdldoc
+  endif
+endif
+
+ifeq ($(distribution),DebianXXX)
+# use type-handling
+ada_no_archs := $(strip \
+	$(shell type-handling -n -r `echo $(ada_no_cpus) | tr ' ' ,` any) \
+	$(shell type-handling -n -r any `echo $(ada_no_systems) | tr ' ' ,`))
+java_no_archs := $(strip \
+	$(shell type-handling -n -r `echo $(java_no_cpus) | tr ' ' ,` any) \
+	$(shell type-handling -n -r any `echo $(java_no_systems) | tr ' ' ,`))
+pascal_no_archs := $(strip \
+	$(shell type-handling -n -r `echo $(pascal_no_cpus) | tr ' ' ,` any) \
+	$(shell type-handling -n -r any `echo $(pascal_no_systems) | tr ' ' ,`))
+fortran_no_archs := $(strip \
+	$(shell type-handling -n -r `echo $(fortran_no_cpus) | tr ' ' ,` any) \
+	$(shell type-handling -n -r any `echo $(fortran_no_systems) | tr ' ' ,`))
+libphobos_no_archs := $(strip \
+	$(shell type-handling -n -r `echo $(libphobos_no_cpus) | tr ' ' ,` any) \
+	$(shell type-handling -n -r any `echo $(libphobos_no_systems) | tr ' ' ,`))
+libgc_no_archs := $(strip \
+	$(shell type-handling -n -r `echo $(libgc_no_cpus) | tr ' ' ,` any) \
+	$(shell type-handling -n -r any `echo $(libgc_no_systems) | tr ' ' ,`))
+check_no_archs := $(strip \
+	$(shell type-handling -n -r `echo $(check_no_cpus) | tr ' ' ,` any) \
+	$(shell type-handling -n -r any `echo $(check_no_systems) | tr ' ' ,`) \
+	!hurd-i386)
+locale_no_archs := $(strip \
+	$(shell type-handling -n -r `echo $(locale_no_cpus) | tr ' ' ,` any) \
+	$(shell type-handling -n -r any `echo $(locale_no_systems) | tr ' ' ,`))
+
+linux_gnu_archs := $(shell type-handling -r any linux-gnu)
+else
+# avoid it ...
+ada_no_archs    := $(strip $(foreach cpu,$(ada_no_cpus),!$(cpu)) \
+			!kfreebsd-amd64 !kfreebsd-i386 !hurd-i386)
+java_no_archs   := $(strip $(foreach cpu,$(java_no_cpus),!$(cpu)) \
+			)
+java_plugin_no_archs := $(strip $(foreach cpu,$(java_plugin_no_cpus),!$(cpu)) \
+			)
+pascal_no_archs := $(strip $(foreach cpu,$(pascal_no_cpus),!$(cpu)) \
+			)
+fortran_no_archs:= $(strip $(foreach cpu,$(fortran_no_cpus),!$(cpu)) \
+			!avr)
+libphobos_no_archs    := $(strip $(foreach cpu,$(libphobos_no_cpus),!$(cpu)) \
+			!hurd-i386)
+libgc_no_archs  := $(strip $(foreach cpu,$(libgc_no_cpus),!$(cpu)) \
+			)
+check_no_archs  := $(strip $(foreach cpu,$(check_no_cpus),!$(cpu)) \
+			!hurd-i386)
+locale_no_archs := $(strip $(foreach cpu,$(locale_no_cpus),!$(cpu)) \
+			!hurd-i386)
+linux_gnu_archs := !hurd-i386
+endif
+
+locale_no_archs += !m68k
+
+
+control-file:
+	echo "addons: $(addons)"; \
+	m4 $(ctrl_flags) \
+	  -DPV=$(pkg_ver) \
+	  -DCXX_SO=$(CXX_SONAME) \
+	  -DGCC_SO=$(GCC_SONAME) \
+	  -DOBJC_SO=$(OBJC_SONAME) \
+	  -DFORTRAN_SO=$(FORTRAN_SONAME) \
+	  -DGCJ_SO=$(PKG_GCJ_EXT) \
+	  -DLIBGCJ_EXT=$(PKG_LIBGCJ_EXT) \
+	  -DGNAT_SO=$(GNAT_SONAME) \
+	  -DGNAT_V=$(GNAT_VERSION) \
+	  -DPHOBOS_V=$(libphobos_version) \
+	  -DFFI_SO=$(FFI_SONAME) \
+	  -DMF_SO=$(MUDFLAP_SONAME) \
+	  -DSSP_SO=$(SSP_SONAME) \
+	  -Denabled_languages="$(languages) $(addons)" \
+	  -Dada_no_archs="$(ada_no_archs)" \
+	  -Djava_no_archs="$(java_no_archs)" \
+	  -Djava_plugin_no_archs="$(java_plugin_no_archs)" \
+	  -Dpascal_no_archs="$(pascal_no_archs)" \
+	  -Dfortran_no_archs="$(fortran_no_archs)" \
+	  -Dlibgc_no_archs="$(libgc_no_archs)" \
+	  -Dcheck_no_archs="$(check_no_archs)" \
+	  -Dlocale_no_archs="$(locale_no_archs)" \
+	  -Dlinux_gnu_archs="$(linux_gnu_archs)" \
+	  -Dlibphobos_no_archs="$(libphobos_no_archs)" \
+	  -Dbiarch32_archs="$(strip $(subst /, ,$(biarch32_archs)))" \
+	  -Dbiarch64_archs="$(strip $(subst /, ,$(biarch_archs)))" \
+		debian/control.m4 > debian/control.tmp2
+	uniq debian/control.tmp2 | sed '/^Build/s/ *, */, /g' \
+		> debian/control.tmp
+	rm -f debian/control.tmp2
+	[ -e debian/control ] \
+	  && cmp -s debian/control debian/control.tmp \
+	  && rm -f debian/control.tmp && exit 0; \
+	  mv debian/control.tmp debian/control; touch $(control_stamp)
+
+substvars-file:
+	rm -f debian/substvars.local.tmp
+	( \
+		echo 'gcc:Version=$(DEB_GCC_VERSION)'; \
+		echo 'gcc:EpochVersion=$(DEB_EVERSION)'; \
+		echo 'gcc:SoftVersion=$(DEB_GCC_SOFT_VERSION)'; \
+		echo 'gpc:Version=$(DEB_GPC_VERSION)'; \
+		echo 'gdc:Version=$(DEB_GDC_VERSION)'; \
+		echo 'gcj:Version=$(DEB_GCJ_VERSION)'; \
+		echo 'gcj:SoftVersion=$(DEB_GCJ_SOFT_VERSION)'; \
+		echo 'gnat:Version=$(DEB_GNAT_VERSION)'; \
+		echo 'binutils:Version=$(BINUTILSV)'; \
+		echo 'dep:libgcc=$(LIBGCC_DEP)'; \
+		echo 'dep:libgccbiarch=$(LIBGCC_BIARCH_DEP)'; \
+		echo 'dep:libcdev=$(LIBC_DEV_DEP)'; \
+		echo 'dep:libcbiarch=$(LIBC_BIARCH_DEP)'; \
+		echo 'dep:libcbiarchdev=$(LIBC_BIARCH_DEV_DEP)'; \
+		echo 'dep:libunwinddev=$(LIBUNWIND_DEV_DEP)'; \
+		echo 'dep:libcxxbiarch=$(LIBCXX_BIARCH_DEP)'; \
+		echo 'dep:libcxxbiarchdbg=$(LIBCXX_BIARCH_DBG_DEP)'; \
+		echo 'dep:libgnat=$(LIBGNAT_DEP)'; \
+	) > debian/substvars.local.tmp
+ifneq (,$(filter $(DEB_TARGET_ARCH), $(multilib_archs)))
+	( \
+		echo 'gcc:multilib=gcc-$(BASE_VERSION)-multilib$(TS)'; \
+		echo 'gxx:multilib=g++-$(BASE_VERSION)-multilib$(TS)'; \
+		echo 'gobjc:multilib=gobjc-$(BASE_VERSION)-multilib$(TS)'; \
+		echo 'gobjcxx:multilib=gobjc++-$(BASE_VERSION)-multilib$(TS)'; \
+		echo 'gfortran:multilib=gfortran-$(BASE_VERSION)-multilib$(TS)'; \
+	) >> debian/substvars.local.tmp
+endif
+ifeq ($(with_libssp),yes)
+	echo 'dep:libssp=libssp$(SSP_SONAME)' \
+		>> debian/substvars.local.tmp
+endif
+ifeq ($(with_lib32fortran),yes)
+	echo 'dep:libfortranbiarch=lib32gfortran$(FORTRAN_SONAME) (>= $${gcc:Version})' \
+		>> debian/substvars.local.tmp
+endif
+ifeq ($(with_lib32objc),yes)
+	echo 'dep:libobjcbiarch=lib32objc$(OBJC_SONAME) (>= $${gcc:Version})' \
+		>> debian/substvars.local.tmp
+endif
+ifeq ($(with_lib32ffi),yes)
+	echo 'sug:libffidev=lib32ffi$(FFI_SONAME)' \
+		>> debian/substvars.local.tmp
+endif
+ifeq ($(with_lib32mudflap),yes)
+	echo 'dep:libmudflapbiarch=lib32mudflap$(MUDFLAP_SONAME)' \
+		>> debian/substvars.local.tmp
+endif
+ifeq ($(with_lib32ssp),yes)
+	echo 'dep:libsspbiarch=lib32ssp$(SSP_SONAME) (>= $${gcc:Version})' \
+		>> debian/substvars.local.tmp
+endif
+ifeq ($(with_lib64fortran),yes)
+	echo 'dep:libfortranbiarch=lib64gfortran$(FORTRAN_SONAME) (>= $${gcc:Version})' \
+		>> debian/substvars.local.tmp
+endif
+ifeq ($(with_lib64objc),yes)
+	echo 'dep:libobjcbiarch=lib64objc$(OBJC_SONAME) (>= $${gcc:Version})' \
+		>> debian/substvars.local.tmp
+endif
+ifeq ($(with_lib64ffi),yes)
+	echo 'dep:libffidev=lib64ffi$(FFI_SONAME)' \
+		>> debian/substvars.local.tmp
+endif
+ifeq ($(with_lib64mudflap),yes)
+	echo 'dep:libmudflapbiarch=lib64mudflap$(MUDFLAP_SONAME)' \
+		>> debian/substvars.local.tmp
+endif
+ifeq ($(with_lib64ssp),yes)
+	echo 'dep:libsspbiarch=lib64ssp$(SSP_SONAME) (>= $${gcc:Version})' \
+		>> debian/substvars.local.tmp
+endif
+ifneq ($(with_standalone_gcj),yes)
+	echo 'dep:gcj=gcc$(pkg_ver) (>= $(DEB_GCC_SOFT_VERSION))' \
+		>> debian/substvars.local.tmp
+endif
+ifeq ($(DEB_HOST_ARCH),hppa)
+	echo 'dep:prctl=prctl' >> debian/substvars.local.tmp
+endif
+	[ -e debian/substvars.local ] \
+	  && cmp -s debian/substvars.local debian/substvars.local.tmp \
+	  && rm -f debian/substvars.local.tmp && exit 0; \
+	  mv debian/substvars.local.tmp debian/substvars.local; \
+	  touch $(control_stamp)
+
+parameters-file:
+	rm -f debian/rules.parameters.tmp
+	( \
+		echo '# configuration parameters taken from upstream source files'; \
+		echo 'GCC_VERSION	:= $(GCC_VERSION)'; \
+		echo 'NEXT_GCC_VERSION	:= $(NEXT_GCC_VERSION)'; \
+		echo 'BASE_VERSION	:= $(BASE_VERSION)'; \
+		echo 'SOURCE_VERSION	:= $(SOURCE_VERSION)'; \
+		echo 'DEB_VERSION	:= $(DEB_VERSION)'; \
+		echo 'DEB_EVERSION	:= $(DEB_EVERSION)'; \
+		echo 'GPC_BASE_VERSION	:= $(GPC_BASE_VERSION)'; \
+		echo 'GDC_BASE_VERSION  := $(GDC_BASE_VERSION)'; \
+		echo 'DEB_GPC_VERSION	:= $(DEB_GPC_VERSION)'; \
+		echo 'DEB_GDC_VERSION	:= $(DEB_GDC_VERSION)'; \
+		echo 'DEB_SOVERSION	:= $(DEB_SOVERSION)'; \
+		echo 'DEB_SOEVERSION	:= $(DEB_SOEVERSION)'; \
+		echo 'DEB_LIBGCC_SOVERSION	:= $(DEB_LIBGCC_SOVERSION)'; \
+		echo 'DEB_LIBGCC_VERSION	:= $(DEB_LIBGCC_VERSION)'; \
+		echo 'DEB_STDCXX_SOVERSION	:= $(DEB_STDCXX_SOVERSION)'; \
+		echo 'DEB_GCJ_SOVERSION	:= $(DEB_GCJ_SOVERSION)'; \
+		echo 'PKG_GCJ_EXT	:= $(PKG_GCJ_EXT)'; \
+		echo 'PKG_LIBGCJ_EXT	:= $(PKG_LIBGCJ_EXT)'; \
+		echo 'DEB_FFI_SOVERSION	:= $(DEB_FFI_SOVERSION)'; \
+		echo 'GCC_SONAME	:= $(GCC_SONAME)'; \
+		echo 'CXX_SONAME	:= $(CXX_SONAME)'; \
+		echo 'FORTRAN_SONAME	:= $(FORTRAN_SONAME)'; \
+		echo 'OBJC_SONAME	:= $(OBJC_SONAME)'; \
+		echo 'GCJ_SONAME	:= $(GCJ_SONAME)'; \
+		echo 'GNAT_VERSION	:= $(GNAT_VERSION)'; \
+		echo 'GNAT_SONAME	:= $(GNAT_SONAME)'; \
+		echo 'FFI_SONAME	:= $(FFI_SONAME)'; \
+		echo 'MUDFLAP_SONAME	:= $(MUDFLAP_SONAME)'; \
+		echo 'SSP_SONAME	:= $(SSP_SONAME)'; \
+		echo 'LIBC_DEP		:= $(LIBC_DEP)'; \
+	) > debian/rules.parameters.tmp
+	[ -e debian/rules.parameters ] \
+	  && cmp -s debian/rules.parameters debian/rules.parameters.tmp \
+	  && rm -f debian/rules.parameters.tmp && exit 0; \
+	  mv debian/rules.parameters.tmp debian/rules.parameters; \
+	  touch $(control_stamp)
+
+versioned-files:
+	fs=`echo debian/*-BV* debian/*GCJ* debian/*CXX* debian/*LC* debian/*FFI*|sort -u`; \
+	for f in $$fs; do \
+	  [ -f $$f ] || echo "CANNOT FIND $$f"; \
+	  [ -f $$f ] || continue; \
+	  f2=$$(echo $$f \
+		| sed 's/BV/$(BASE_VERSION)/;s/PV/$(GPC_BASE_VERSION)/;s/CXX/$(CXX_SONAME)/;s/LGCJ/$(PKG_LIBGCJ_EXT)/;s/GCJ/$(PKG_GCJ_EXT)/;s/LC/$(GCC_SONAME)/;s/FFI/$(FFI_SONAME)/'); \
+	  sed -e 's/@BV@/$(BASE_VERSION)/g' \
+	      -e 's/@PV@/$(GPC_BASE_VERSION)/g' \
+	      -e 's/@CXX@/$(CXX_SONAME)/g' \
+	      -e 's/@LGCJ@/$(PKG_LIBGCJ_EXT)/g' \
+	      -e 's/@GCJ@/$(PKG_GCJ_EXT)/g' \
+	      -e 's/@LC@/$(GCC_SONAME)/g' \
+	      -e 's/@FFI@/$(FFI_SONAME)/g' \
+	      -e 's/@browser_dirs@/$(browser_plugin_dirs)/g' \
+	      -e 's/@GFDL@/$(if $(filter yes,$(GFDL_INVARIANT_FREE)),#)/g' \
+	    $$f > $$f2; \
+	  touch -r $$f $$f2; \
+	done
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/gnat-BV.overrides
+++ gdc-4.1-0.25-20080616-4.1.2/debian/gnat-BV.overrides
@@ -0,0 +1 @@
+gnat-@BV@: bad-permissions-for-ali-file
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-libobjc.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-libobjc.mk
@@ -0,0 +1,122 @@
+ifeq ($(with_objcdev),yes)
+  arch_binaries := $(arch_binaries) libobjc
+endif
+ifeq ($(with_lib64objc),yes)
+  arch_binaries  := $(arch_binaries) lib64objc
+endif
+ifeq ($(with_lib32objc),yes)
+  arch_binaries	:= $(arch_binaries) lib32objc
+endif
+
+p_lobjc		= libobjc$(OBJC_SONAME)
+p_l32objc	= lib32objc$(OBJC_SONAME)
+p_l64objc	= lib64objc$(OBJC_SONAME)
+
+d_lobjc		= debian/$(p_lobjc)
+d_l32objc	= debian/$(p_l32objc)
+d_l64objc	= debian/$(p_l64objc)
+
+dirs_lobjc = \
+	$(docdir)/objc \
+	$(PF)/$(libdir)
+files_lobjc = \
+	$(PF)/$(libdir)/libobjc.so.*
+ifeq ($(with_objc_gc),yes)
+  files_lobjc += \
+	$(PF)/$(libdir)/libobjc_gc.so.*
+endif
+
+
+$(binary_stamp)-libobjc: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_lobjc)
+	dh_installdirs -p$(p_lobjc) $(dirs_lobjc)
+#	mv $(d)/$(gcc_lib_dir)/libobjc.so.* $(d)/$(PF)/$(libdir)/.
+#ifeq ($(with_objc_gc),yes)
+#	mv $(d)/$(gcc_lib_dir)/libobjc_gc.so.* $(d)/$(PF)/$(libdir)/.
+#endif
+	DH_COMPAT=2 dh_movefiles -p$(p_lobjc) $(files_lobjc)
+
+	dh_installdocs -p$(p_lobjc)
+	echo "See /$(docdir)/$(p_base) for more information" \
+		> $(d_lobjc)/$(docdir)/$(p_lobjc)/README.Debian
+	dh_installchangelogs -p$(p_lobjc) $(srcdir)/libobjc/ChangeLog
+
+	debian/dh_rmemptydirs -p$(p_lobjc)
+
+	dh_strip -p$(p_lobjc)
+	dh_compress -p$(p_lobjc)
+
+	dh_fixperms -p$(p_lobjc)
+	b=libobjc; \
+	for ext in preinst postinst prerm postrm; do \
+	  for t in '' -dev -dbg; do \
+	    v=$(OBJC_SONAME); \
+	    if [ -f debian/$$b$$t.$$ext ]; then \
+	      cp -pf debian/$$b$$t.$$ext debian/$$b$$v$$t.$$ext; \
+	    fi; \
+	  done; \
+	done
+	dh_makeshlibs -p$(p_lobjc) -V '$(p_lobjc) (>= $(DEB_SOEVERSION))'
+	dh_shlibdeps -p$(p_lobjc)
+	dh_gencontrol -p$(p_lobjc) -- -v$(DEB_EVERSION) $(common_substvars)
+	dh_installdeb -p$(p_lobjc)
+	dh_md5sums -p$(p_lobjc)
+	dh_builddeb -p$(p_lobjc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib64objc: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_l64objc)
+	dh_installdirs -p$(p_l64objc) \
+		$(PF)/lib64
+	DH_COMPAT=2 dh_movefiles -p$(p_l64objc) \
+		$(PF)/lib64/libobjc.so.*
+
+	debian/dh_doclink -p$(p_l64objc) $(p_base)
+
+	dh_strip -p$(p_l64objc)
+	dh_compress -p$(p_l64objc)
+	dh_fixperms -p$(p_l64objc)
+	dh_makeshlibs -p$(p_l64objc) -V '$(p_l64objc) (>= $(DEB_SOVERSION))'
+#	dh_shlibdeps -p$(p_l64objc)
+	dh_gencontrol -p$(p_l64objc) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_l64objc)
+	dh_md5sums -p$(p_l64objc)
+	dh_builddeb -p$(p_l64objc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib32objc: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_l32objc)
+	dh_installdirs -p$(p_l32objc) \
+		$(lib32)
+	DH_COMPAT=2 dh_movefiles -p$(p_l32objc) \
+		$(lib32)/libobjc.so.*
+
+	debian/dh_doclink -p$(p_l32objc) $(p_base)
+
+	dh_strip -p$(p_l32objc)
+	dh_compress -p$(p_l32objc)
+	dh_fixperms -p$(p_l32objc)
+	dh_makeshlibs -p$(p_l32objc) -V '$(p_l32objc) (>= $(DEB_SOVERSION))'
+#	dh_shlibdeps -p$(p_l32objc)
+	dh_gencontrol -p$(p_l32objc) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_l32objc)
+	dh_md5sums -p$(p_l32objc)
+	dh_builddeb -p$(p_l32objc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-d-cross.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-d-cross.mk
@@ -0,0 +1,16 @@
+arch_binaries := $(arch_binaries) gdc
+
+ifeq ($(with_libphobos),yes)
+  arch_binaries += libphobos
+endif
+
+p_gdc		= gdc$(pkg_ver)$(cross_bin_arch)
+d_gdc		= debian/$(p_objc)
+
+# no shared lib for now
+p_libphobos 	= libphobos$(libphobos_version)$(pkg_ver)$(cross_bin_arch)-dev
+d_libphobis	= debian/$(p_libphobos)
+
+
+# TODO
+
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-cxx.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-cxx.mk
@@ -0,0 +1,112 @@
+ifneq (,$(filter yes, $(biarch) $(biarch32)))
+  arch_binaries  := $(arch_binaries) cxx-multi
+endif
+arch_binaries  := $(arch_binaries) cxx
+
+dirs_cxx = \
+	$(docdir)/$(p_base)/C++ \
+	$(PF)/bin \
+	$(PF)/share/info \
+	$(gcc_lexec_dir) \
+	$(PF)/share/man/man1
+files_cxx = \
+	$(PF)/bin/g++$(pkg_ver) \
+	$(gcc_lexec_dir)/cc1plus
+
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+  files_cxx += \
+	$(PF)/share/man/man1/g++$(pkg_ver).1
+endif
+
+p_cxx_m	= g++$(pkg_ver)-multilib
+d_cxx_m	= debian/$(p_cxx_m)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-cxx: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_cxx)
+	dh_installdirs -p$(p_cxx) $(dirs_cxx)
+	DH_COMPAT=2 dh_movefiles -p$(p_cxx) $(files_cxx)
+
+	ln -sf g++$(pkg_ver) \
+	    $(d_cxx)/$(PF)/bin/$(DEB_TARGET_GNU_TYPE)-g++$(pkg_ver)
+	ln -sf g++$(pkg_ver) \
+	    $(d_cxx)/$(PF)/bin/$(TARGET_ALIAS)-g++$(pkg_ver)
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+# g++ man page is a .so link
+	rm -f $(d_cxx)/$(PF)/share/man/man1/g++$(pkg_ver).1
+	ln -sf gcc$(pkg_ver).1.gz \
+		$(d_cxx)/$(PF)/share/man/man1/g++$(pkg_ver).1.gz
+	ln -sf g++$(pkg_ver).1.gz \
+	    $(d_cxx)/$(PF)/share/man/man1/$(DEB_TARGET_GNU_TYPE)-g++$(pkg_ver).1.gz
+	ln -sf g++$(pkg_ver).1.gz \
+	    $(d_cxx)/$(PF)/share/man/man1/$(TARGET_ALIAS)-g++$(pkg_ver).1.gz
+endif
+
+	debian/dh_doclink -p$(p_cxx) $(p_base)
+	cp -p debian/README.C++ $(d_cxx)/$(docdir)/$(p_base)/C++/
+	cp -p $(srcdir)/gcc/cp/ChangeLog \
+		$(d_cxx)/$(docdir)/$(p_base)/C++/changelog
+	debian/dh_rmemptydirs -p$(p_cxx)
+
+	dh_strip -p$(p_cxx)
+	dh_compress -p$(p_cxx)
+	dh_fixperms -p$(p_cxx)
+	dh_shlibdeps -p$(p_cxx)
+	dh_gencontrol -p$(p_cxx) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_cxx)
+	dh_md5sums -p$(p_cxx)
+	dh_builddeb -p$(p_cxx)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-cxx-multi: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_cxx_m)
+	dh_installdirs -p$(p_cxx_m) \
+		$(docdir) \
+		$(gcc_lib_dir)/$(biarchsubdir)
+
+ifeq ($(biarch),yes)
+	mv $(d)/$(PF)/lib64/lib*c++*.{a,so} $(d)/$(gcc_lib_dir)/$(biarchsubdir)/.
+endif
+ifeq ($(biarch32),yes)
+	mv $(d)/$(lib32)/lib*c++*.{a,so} $(d)/$(gcc_lib_dir)/$(biarchsubdir)/.
+endif
+
+	DH_COMPAT=2 dh_movefiles -p$(p_cxx_m) \
+		$(gcc_lib_dir)/$(biarchsubdir)/libstdc++.{a,so} \
+	        $(gcc_lib_dir)/$(biarchsubdir)/libsupc++.a \
+		$(gcc_lib_dir)/$(biarchsubdir)/libstdc++_pic.a
+
+ifeq ($(biarch),yes)
+	dh_link -p$(p_cxx_m) \
+		/$(PF)/lib64/libstdc++.so.$(CXX_SONAME) \
+		/$(gcc_lib_dir)/$(biarchsubdir)/libstdc++.so
+endif
+ifeq ($(biarch32),yes)
+	dh_link -p$(p_cxx_m) \
+		/$(lib32)/libstdc++.so.$(CXX_SONAME) \
+		/$(gcc_lib_dir)/$(biarchsubdir)/libstdc++.so
+endif
+
+	debian/dh_doclink -p$(p_cxx_m) $(p_base)
+	debian/dh_rmemptydirs -p$(p_cxx_m)
+
+	dh_strip -p$(p_cxx_m)
+	dh_compress -p$(p_cxx_m)
+	dh_fixperms -p$(p_cxx_m)
+	dh_shlibdeps -p$(p_cxx_m)
+	dh_gencontrol -p$(p_cxx_m) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_cxx_m)
+	dh_md5sums -p$(p_cxx_m)
+	dh_builddeb -p$(p_cxx_m)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-objcxx-cross.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-objcxx-cross.mk
@@ -0,0 +1,35 @@
+arch_binaries := $(arch_binaries) objcxx
+
+p_objcx	= gobjc++$(pkg_ver)$(cross_bin_arch)
+d_objcx	= debian/$(p_objcx)
+
+dirs_objcx = \
+	$(docdir) \
+	$(gcc_lib_dir)
+
+files_objcx = \
+	$(gcc_lib_dir)/cc1objplus
+
+$(binary_stamp)-objcxx: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_objcx)
+	dh_installdirs -p$(p_objcx) $(dirs_objcx)
+	DH_COMPAT=2 dh_movefiles -p$(p_objcx) $(files_objcx)
+
+	debian/dh_doclink -p$(p_objcx) $(p_base)
+	debian/dh_rmemptydirs -p$(p_objcx)
+
+	dh_strip -p$(p_objcx)
+	dh_compress -p$(p_objcx)
+
+	dh_fixperms -p$(p_objcx)
+	dh_shlibdeps -p$(p_objcx)
+	dh_gencontrol -p$(p_objcx) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_objcx)
+	dh_md5sums -p$(p_objcx)
+	dh_builddeb -p$(p_objcx)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-pascal.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-pascal.mk
@@ -0,0 +1,112 @@
+arch_binaries  := $(arch_binaries) pascal
+indep_binaries := $(indep_binaries) pascal-doc
+
+p_gpc	= gpc$(pkg_ver)
+p_gpcd	= gpc$(pkg_ver)-doc
+
+d_gpc	= debian/$(p_gpc)
+d_gpcd	= debian/$(p_gpcd)
+
+dirs_gpc = \
+	$(docdir)/$(p_base)/pascal \
+	$(PF)/bin \
+	$(gcc_lexec_dir) \
+	$(gcc_lib_dir)/{include,units} \
+	$(PF)/share/man/man1
+ifeq ($(with_gpidump),yes)
+  files_gpc = \
+	$(PF)/bin/{binobj,gpc,gpc-run,gpidump}$(pkg_ver) \
+	$(PF)/share/man/man1/{binobj,gpc,gpc-run,gpidump}$(pkg_ver).1 \
+	$(gcc_lexec_dir)/gpc1 \
+	$(gcc_lib_dir)/{libgpc.a,units} \
+	$(gcc_lib_dir)/include/gpc-in-c.h
+else
+  files_gpc = \
+	$(PF)/bin/{binobj,gpc,gpc-run}$(pkg_ver) \
+	$(PF)/share/man/man1/{binobj,gpc,gpc-run}$(pkg_ver).1 \
+	$(gcc_lexec_dir)/gpc1 \
+	$(gcc_lib_dir)/{libgpc.a,units} \
+	$(gcc_lib_dir)/include/gpc-in-c.h
+endif
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-pascal: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_gpc)
+	dh_installdirs -p$(p_gpc) $(dirs_gpc)
+
+	rm -f $(d)/$(PF)/bin/pc $(d)/$(PF)/share/man/man1/pc.1
+	DH_COMPAT=2 dh_movefiles -p$(p_gpc) $(files_gpc)
+
+	dh_installdocs -p$(p_gpc)
+	dh_installchangelogs -p$(p_gpc)
+
+	cp -p $(srcdir)/gcc/p/{AUTHORS,FAQ,NEWS,README} \
+		$(d_gpc)/$(docdir)/$(p_base)/pascal/.
+	cp -p $(srcdir)/gcc/p/test/README \
+		$(d_gpc)/$(docdir)/$(p_base)/pascal/README.gpc-test
+	cp -p $(srcdir)/gcc/p/ChangeLog \
+		$(d_gpc)/$(docdir)/$(p_base)/pascal/changelog
+
+	ln -sf ../$(p_base)/pascal $(d_gpc)/$(docdir)/$(p_gpc)/pascal
+
+#	ln -sf ../$(p_gpc)/examples $(d_gpc)/$(docdir)/$(p_gpcd)/examples
+#	ln -sf ../$(p_gpc)/docdemos $(d_gpc)/$(docdir)/$(p_gpcd)/docdemos
+
+	dh_strip -p$(p_gpc)
+	dh_compress -p$(p_gpc)
+	dh_fixperms -p$(p_gpc)
+	dh_shlibdeps -p$(p_gpc)
+	dh_gencontrol -p$(p_gpc) -- -v$(DEB_GPC_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_gpc)
+	dh_md5sums -p$(p_gpc)
+	dh_builddeb -p$(p_gpc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-pascal-doc: $(build_html_stamp) $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_gpcd)
+	dh_installdirs -p$(p_gpcd) \
+		$(docdir)/$(p_base)/pascal \
+		$(docdir)/$(p_gpc)/pascal \
+		$(PF)/share/info
+	DH_COMPAT=2 dh_movefiles -p$(p_gpcd) \
+		$(PF)/share/info/gpc*$(pkg_ver)*info*
+
+	dh_installdocs -p$(p_gpcd)
+	dh_installchangelogs -p$(p_gpcd)
+	cp -p html/gpc.html html/gpcs.html \
+		$(d_gpcd)/$(docdir)/$(p_base)/pascal/
+	mv $(d)/$(PF)/doc/gpc/demos \
+		$(d_gpcd)/$(docdir)/$(p_base)/pascal/examples
+	mv $(d)/$(PF)/doc/gpc/docdemos \
+		$(d_gpcd)/$(docdir)/$(p_base)/pascal/.
+
+	for i in gpc.html gpc.html docdemos examples; do \
+	  ln -sf ../$(p_base)/pascal/$$i \
+	    $(d_gpcd)/usr/share/doc/$(p_gpcd)/$$i; \
+	  ln -sf ../$(p_base)/pascal/$$i \
+	    $(d_gpcd)/usr/share/doc/$(p_gpc)/$$i; \
+	done
+
+#	-$(MAKE) -C $(builddir)/gcc gpc.ps
+#	cp -p $(builddir)/gcc/gpc.ps $(d_gpcd)/$(docdir)/$(p_base)/pascal/.
+
+	debian/dh_rmemptydirs -p$(p_gpcd)
+
+	dh_compress -p$(p_gpcd)
+	dh_fixperms -p$(p_gpcd)
+	dh_installdeb -p$(p_gpcd)
+	dh_gencontrol -p$(p_gpcd) -- -v$(DEB_GPC_VERSION) $(common_substvars)
+	dh_md5sums -p$(p_gpcd)
+	dh_builddeb -p$(p_gpcd)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-libmudflap.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-libmudflap.mk
@@ -0,0 +1,177 @@
+ifeq ($(with_dev),yes)
+  arch_binaries  := $(arch_binaries) libmudflapdev
+endif
+
+ifeq ($(with_libmudflap),yes)
+  arch_binaries  := $(arch_binaries) libmudflap
+  ifeq ($(with_lib64mudflap),yes)
+    arch_binaries  := $(arch_binaries) lib64mudflap
+  endif
+  ifeq ($(with_lib32mudflap),yes)
+    arch_binaries	:= $(arch_binaries) lib32mudflap
+  endif
+endif
+
+p_mf	= libmudflap$(MUDFLAP_SONAME)
+p_l32mf	= lib32mudflap$(MUDFLAP_SONAME)
+p_l64mf	= lib64mudflap$(MUDFLAP_SONAME)
+p_mfd	= libmudflap$(MUDFLAP_SONAME)-dev
+
+d_mf	= debian/$(p_mf)
+d_l32mf	= debian/$(p_l32mf)
+d_l64mf	= debian/$(p_l64mf)
+d_mfd	= debian/$(p_mfd)
+
+dirs_mfd = \
+	$(docdir)/$(p_base)/mudflap \
+	$(PF)/include \
+	$(PF)/$(libdir)
+files_mfd = \
+	$(PF)/include/mf-runtime.h \
+	$(PF)/$(libdir)/libmudflap*.{a,so,la}
+
+ifeq ($(with_lib32mudflap),yes)
+	dirs_mfd  += $(lib32)
+	files_mfd += $(lib32)/libmudflap*.{a,so,la}
+endif
+ifeq ($(with_lib64mudflap),yes)
+	dirs_mfd  += $(PF)/lib64
+	files_mfd += $(PF)/lib64/libmudflap*.{a,so,la}
+endif
+
+$(binary_stamp)-libmudflap: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_mf)
+	dh_installdirs -p$(p_mf) \
+		$(docdir) \
+		$(PF)/$(libdir)
+
+	DH_COMPAT=2 dh_movefiles -p$(p_mf) \
+		$(PF)/$(libdir)/libmudflap*.so.*
+
+	debian/dh_doclink -p$(p_mf) $(p_base)
+	debian/dh_rmemptydirs -p$(p_mf)
+	dh_strip -p$(p_mf)
+	dh_compress -p$(p_mf)
+	dh_fixperms -p$(p_mf)
+	dh_makeshlibs -p$(p_mf) -V '$(p_mf) (>= $(DEB_SOVERSION))'
+	dh_shlibdeps -p$(p_mf)
+	dh_gencontrol -p$(p_mf) \
+		-- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_mf)
+	dh_md5sums -p$(p_mf)
+	dh_builddeb -p$(p_mf)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-libmudflapdev: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_mfd)
+	dh_installdirs -p$(p_mfd) $(dirs_mfd)
+
+	rm -f $(d)/$(PF)/$(libdir)/libmudflap*.so
+	mv $(d)/$(PF)/$(libdir)/libmudflap*.a $(d)/$(gcc_lib_dir)/
+
+	rm -f $(d)/$(PF)/$(libdir)/libmudflap*.la
+	rm -f $(d)/$(PF)/$(libdir)/$(biarchsubdir)/libmudflap*.la
+
+	DH_COMPAT=2 dh_movefiles -p$(p_mfd) $(files_mfd)
+
+	dh_link -p$(p_mfd) \
+	  /$(PF)/$(libdir)/libmudflap.so.$(MUDFLAP_SONAME) /$(gcc_lib_dir)/libmudflap.so \
+	  /$(PF)/$(libdir)/libmudflapth.so.$(MUDFLAP_SONAME) /$(gcc_lib_dir)/libmudflapth.so
+
+ifeq ($(with_lib32mudflap),yes)
+	rm -f $(d)/$(lib32)/libmudflap*.so
+	mkdir -p $(d_mfd)/$(gcc_lib_dir)/$(biarchsubdir)
+	mv $(d)/$(lib32)/libmudflap*.a $(d_mfd)/$(gcc_lib_dir)/$(biarchsubdir)/
+	dh_link -p$(p_mfd) \
+	  /$(lib32)/libmudflap.so.$(MUDLFLAP_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libmudflap.so \
+	  /$(lib32)/libmudflapth.so.$(MUDFLAP_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libmudflapth.so
+endif
+
+ifeq ($(with_lib64mudflap),yes)
+	rm -f $(d)/$(PF)/$(lib64)/libmudflap*.so
+	mkdir -p $(d_mfd)/$(gcc_lib_dir)/$(biarchsubdir)
+	mv $(d)/$(PF)/$(lib64)/libmudflap*.a $(d_mfd)/$(gcc_lib_dir)/$(biarchsubdir)/
+	dh_link -p$(p_mfd) \
+	  /$(PF)/lib64/libmudflap.so.$(MUDLFLAP_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libmudflap.so \
+	  /$(PF)/lib64/libmudflapth.so.$(MUDFLAP_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libmudflapth.so
+endif
+
+	cp -p $(srcdir)/libmudflap/ChangeLog \
+		$(d_mfd)/$(docdir)/$(p_base)/mudflap/changelog
+
+	debian/dh_doclink -p$(p_mfd) $(p_base)
+	debian/dh_rmemptydirs -p$(p_mfd)
+
+	dh_strip -p$(p_mfd)
+	dh_compress -p$(p_mfd)
+	dh_fixperms -p$(p_mfd)
+	dh_shlibdeps -p$(p_mfd)
+	dh_gencontrol -p$(p_mfd) \
+		-- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_mfd)
+	dh_md5sums -p$(p_mfd)
+	dh_builddeb -p$(p_mfd)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib64mudflap: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_l64mf)
+	dh_installdirs -p$(p_l64mf) \
+		$(PF)/lib64
+	DH_COMPAT=2 dh_movefiles -p$(p_l64mf) \
+		$(PF)/lib64/libmudflap*.so.*
+
+	debian/dh_doclink -p$(p_l64mf) $(p_base)
+
+	dh_strip -p$(p_l64mf)
+	dh_compress -p$(p_l64mf)
+	dh_fixperms -p$(p_l64mf)
+	dh_makeshlibs -p$(p_l64mf) -V '$(p_l64mf) (>= $(DEB_SOVERSION))'
+#	dh_shlibdeps -p$(p_l64mf)
+	dh_gencontrol -p$(p_l64mf) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_l64mf)
+	dh_md5sums -p$(p_l64mf)
+	dh_builddeb -p$(p_l64mf)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib32mudflap: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_l32mf)
+	dh_installdirs -p$(p_l32mf) \
+		$(lib32)
+	DH_COMPAT=2 dh_movefiles -p$(p_l32mf) \
+		$(lib32)/libmudflap*.so.*
+
+	debian/dh_doclink -p$(p_l32mf) $(p_base)
+
+	dh_strip -p$(p_l32mf)
+	dh_compress -p$(p_l32mf)
+	dh_fixperms -p$(p_l32mf)
+	dh_makeshlibs -p$(p_l32mf) -V '$(p_l32mf) (>= $(DEB_SOVERSION))'
+#	dh_shlibdeps -p$(p_l32mf)
+	dh_gencontrol -p$(p_l32mf) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_l32mf)
+	dh_md5sums -p$(p_l32mf)
+	dh_builddeb -p$(p_l32mf)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-cpp.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-cpp.mk
@@ -0,0 +1,90 @@
+arch_binaries  := $(arch_binaries) cpp
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+  indep_binaries := $(indep_binaries) cpp-doc
+endif
+
+dirs_cpp = \
+	$(docdir) \
+	$(PF)/share/man/man1 \
+	$(PF)/bin \
+	$(gcc_lexec_dir)
+
+files_cpp = \
+	$(PF)/bin/cpp$(pkg_ver) \
+	$(gcc_lexec_dir)/cc1
+
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+  files_cpp += \
+	$(PF)/share/man/man1/cpp$(pkg_ver).1
+endif
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-cpp: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_cpp)
+	dh_installdirs -p$(p_cpp) $(dirs_cpp)
+	DH_COMPAT=2 dh_movefiles -p$(p_cpp) $(files_cpp)
+
+ifeq ($(with_common_gcclibdir),yes)
+	ln -sf $(BASE_VERSION) \
+	    $(d_cpp)/$(subst /$(BASE_VERSION),/$(GCC_VERSION),$(gcc_lib_dir))
+  ifneq ($(gcc_lib_dir),$(gcc_lexec_dir))
+	ln -sf $(BASE_VERSION) \
+	    $(d_cpp)/$(subst /$(BASE_VERSION),/$(GCC_VERSION),$(gcc_lexec_dir))
+  endif
+endif
+
+	ln -sf cpp$(pkg_ver) \
+	    $(d_cpp)/$(PF)/bin/$(DEB_TARGET_GNU_TYPE)-cpp$(pkg_ver)
+	ln -sf cpp$(pkg_ver) \
+	    $(d_cpp)/$(PF)/bin/$(TARGET_ALIAS)-cpp$(pkg_ver)
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+	ln -sf cpp$(pkg_ver).1 \
+	    $(d_cpp)/$(PF)/share/man/man1/$(DEB_TARGET_GNU_TYPE)-cpp$(pkg_ver).1
+	ln -sf cpp$(pkg_ver).1 \
+	    $(d_cpp)/$(PF)/share/man/man1/$(TARGET_ALIAS)-cpp$(pkg_ver).1
+endif
+
+	debian/dh_doclink -p$(p_cpp) $(p_base)
+	debian/dh_rmemptydirs -p$(p_cpp)
+
+	dh_strip -p$(p_cpp)
+	dh_compress -p$(p_cpp)
+	dh_fixperms -p$(p_cpp)
+	dh_shlibdeps -p$(p_cpp)
+	dh_gencontrol -p$(p_cpp) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_cpp)
+	dh_md5sums -p$(p_cpp)
+	dh_builddeb -p$(p_cpp)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-cpp-doc: $(build_html_stamp) $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_cppd)
+	dh_installdirs -p$(p_cppd) \
+		$(docdir)/$(p_base) \
+		$(PF)/share/info
+	DH_COMPAT=2 dh_movefiles -p$(p_cppd) \
+		$(PF)/share/info/cpp*
+
+	debian/dh_doclink -p$(p_cppd) $(p_base)
+	dh_installdocs -p$(p_cppd) html/cpp.html html/cppinternals.html
+	rm -f $(d_cppd)/$(docdir)/$(p_base)/copyright
+	debian/dh_rmemptydirs -p$(p_cppd)
+
+	dh_compress -p$(p_cppd)
+	dh_fixperms -p$(p_cppd)
+	dh_installdeb -p$(p_cppd)
+	dh_gencontrol -p$(p_cppd) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_md5sums -p$(p_cppd)
+	dh_builddeb -p$(p_cppd)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-libstdcxx.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-libstdcxx.mk
@@ -0,0 +1,424 @@
+
+ifeq ($(with_libcxx),yes)
+  arch_binaries  := $(arch_binaries) libstdcxx
+endif
+ifeq ($(with_lib64cxx),yes)
+  arch_binaries  := $(arch_binaries) lib64stdcxx
+endif
+ifeq ($(with_lib64cxxdbg),yes)
+  arch_binaries	:= $(arch_binaries) lib64stdcxxdbg
+endif
+ifeq ($(with_lib32cxx),yes)
+  arch_binaries	:= $(arch_binaries) lib32stdcxx
+endif
+ifeq ($(with_lib32cxxdbg),yes)
+  arch_binaries	:= $(arch_binaries) lib32stdcxxdbg
+endif
+
+ifeq ($(with_cxxdev),yes)
+  arch_binaries  := $(arch_binaries) libstdcxx-dev
+  indep_binaries := $(indep_binaries) libstdcxx-doc
+endif
+
+libstdc_ext = -$(BASE_VERSION)
+
+p_lib	= libstdc++$(CXX_SONAME)
+p_lib64	= lib64stdc++$(CXX_SONAME)
+p_lib32	= lib32stdc++$(CXX_SONAME)
+p_dev	= libstdc++$(CXX_SONAME)$(libstdc_ext)-dev
+p_pic	= libstdc++$(CXX_SONAME)$(libstdc_ext)-pic
+p_dbg	= libstdc++$(CXX_SONAME)$(libstdc_ext)-dbg
+p_dbg64	= $(p_lib64)$(libstdc_ext)-dbg
+p_dbg32	= $(p_lib32)$(libstdc_ext)-dbg
+p_libd	= libstdc++$(CXX_SONAME)$(libstdc_ext)-doc
+
+d_lib	= debian/$(p_lib)
+d_lib64	= debian/$(p_lib64)
+d_lib32	= debian/$(p_lib32)
+d_dev	= debian/$(p_dev)
+d_pic	= debian/$(p_pic)
+d_dbg	= debian/$(p_dbg)
+d_dbg64	= debian/$(p_dbg64)
+d_dbg32	= debian/$(p_dbg32)
+d_libd	= debian/$(p_libd)
+
+dirs_dev = \
+	$(docdir)/$(p_base)/C++ \
+	$(PF)/$(libdir) \
+	$(gcc_lib_dir)/include \
+	$(cxx_inc_dir)
+
+files_dev = \
+	$(cxx_inc_dir)/ \
+	$(gcc_lib_dir)/libstdc++.{a,so} \
+	$(gcc_lib_dir)/libsupc++.a
+# Not yet...
+#	$(PF)/$(libdir)/lib{supc,stdc}++.la
+
+dirs_dbg = \
+	$(docdir) \
+	$(PF)/$(libdir)/debug \
+	$(gcc_lib_dir)
+files_dbg = \
+	$(PF)/$(libdir)/debug/libstdc++.{a,so*}
+
+dirs_pic = \
+	$(docdir) \
+	$(gcc_lib_dir)
+files_pic = \
+	$(gcc_lib_dir)/libstdc++_pic.a
+
+# ----------------------------------------------------------------------
+
+gxx_baseline_dir = $(shell \
+			sed -n '/^baseline_dir *=/s,.*= *\(.*\)\$$.*$$,\1,p' \
+			    $(buildlibdir)/libstdc++-v3/testsuite/Makefile)
+gxx_baseline_file = $(gxx_baseline_dir)/baseline_symbols.txt
+
+debian/README.libstdc++-baseline:
+	cat debian/README.libstdc++-baseline.in \
+		> debian/README.libstdc++-baseline
+
+	baseline_name=`basename $(gxx_baseline_dir)`; \
+	baseline_parentdir=`dirname $(gxx_baseline_dir)`; \
+	compat_baseline_name=""; \
+	if [ -f "$(gxx_baseline_file)" ]; then \
+	  ( \
+	    echo "A baseline file for $$baseline_name was found."; \
+	    echo "Running the check-abi script ..."; \
+	    echo ""; \
+	    $(MAKE) -C $(buildlibdir)/libstdc++-v3/testsuite \
+		check-abi; \
+	  ) >> debian/README.libstdc++-baseline; \
+	else \
+	  ( \
+	    echo "No baseline file found for $$baseline_name."; \
+	    echo "Generating a new baseline file ..."; \
+	    echo ""; \
+	  ) >> debian/README.libstdc++-baseline; \
+	  mkdir $(gxx_baseline_dir); \
+	  $(MAKE) -C $(buildlibdir)/libstdc++-v3/testsuite new-abi-baseline; \
+	  cat $(gxx_baseline_file) >> debian/README.libstdc++-baseline; \
+	fi
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-libstdcxx: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_lib)
+	dh_installdirs -p$(p_lib) \
+		$(docdir) \
+		$(PF)/$(libdir)
+
+	cp -a $(d)/$(PF)/$(libdir)/libstdc++.so.* \
+		$(d_lib)/$(PF)/$(libdir)/
+
+	debian/dh_doclink -p$(p_lib) $(p_base)
+	debian/dh_rmemptydirs -p$(p_lib)
+
+	dh_strip -p$(p_lib)
+	dh_compress -p$(p_lib)
+	dh_fixperms -p$(p_lib)
+	dh_makeshlibs -p$(p_lib) -V '$(p_lib) (>= $(DEB_STDCXX_SOVERSION))'
+	cat debian/$(p_lib)/DEBIAN/shlibs >> debian/shlibs.local
+	dh_shlibdeps \
+		-L$(p_lgcc) -l:$(d)/$(PF)/lib:$(d_lgcc)/lib:\
+		-p$(p_lib)
+	dh_gencontrol -p$(p_lib) -- -v$(DEB_VERSION) $(common_substvars)
+
+	dh_installdeb -p$(p_lib)
+	dh_md5sums -p$(p_lib)
+	dh_builddeb -p$(p_lib)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib64stdcxx: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_lib64)
+	dh_installdirs -p$(p_lib64) \
+		$(docdir) \
+		$(PF)/lib64
+
+	cp -a $(d)/$(PF)/lib64/libstdc++.so.* \
+		$(d_lib64)/$(PF)/lib64/.
+
+	dh_strip -p$(p_lib64)
+
+	debian/dh_doclink -p$(p_lib64) $(p_base)
+	debian/dh_rmemptydirs -p$(p_lib64)
+
+	dh_compress -p$(p_lib64)
+	dh_fixperms -p$(p_lib64)
+	dh_makeshlibs -p$(p_lib64) -V '$(p_lib64) (>= $(DEB_STDCXX_SOVERSION))'
+# pass explicit dependencies to dh_shlibdeps
+#	dh_shlibdeps -p$(p_lib64) -L $(p_l64gcc) -l $(d_l64gcc)/lib
+#/usr/bin/ldd: line 1: /lib/ld64.so.1: cannot execute binary file
+#dpkg-shlibdeps: failure: ldd on `debian/lib64gcc1/lib64/libgcc_s.so.1' gave error exit status 1
+	echo 'shlibs:Depends=$(p_l64gcc) (>= $(DEB_LIBGCC_SOVERSION))' \
+		> debian/$(p_lib64).substvars
+	dh_gencontrol -p$(p_lib64) -- -v$(DEB_VERSION) $(common_substvars)
+
+	dh_installdeb -p$(p_lib64)
+	dh_md5sums -p$(p_lib64)
+	dh_builddeb -p$(p_lib64)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib64stdcxxdbg: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_dbg64)
+	dh_installdirs -p$(p_dbg64) \
+		$(PF)/lib64
+ifeq ($(with_lib64cxx),yes)
+	cp -a $(d)/$(PF)/lib64/libstdc++.so.* \
+		$(d_dbg64)/$(PF)/lib64/.
+	dh_strip -p$(p_dbg64) --keep-debug
+	rm -f $(d_dbg64)/$(PF)/lib64/libstdc++.so.*
+endif
+
+#	mv $(d)/$(PF)/lib64/debug $(d_dbg64)/$(PF)/lib64/.
+	rm -f $(d_dbg64)/$(PF)/lib64/debug/libstdc++_pic.a
+	rm -f $(d_dbg64)/$(PF)/lib64/debug/libstdc++.la
+
+	debian/dh_doclink -p$(p_dbg64) $(p_base)
+	debian/dh_rmemptydirs -p$(p_dbg64)
+
+	dh_compress -p$(p_dbg64)
+	dh_fixperms -p$(p_dbg64)
+	dh_gencontrol -p$(p_dbg64) -- -v$(DEB_VERSION) $(common_substvars)
+
+	dh_installdeb -p$(p_dbg64)
+	dh_md5sums -p$(p_dbg64)
+	dh_builddeb -p$(p_dbg64)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib32stdcxx: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_lib32)
+
+	dh_installdirs -p$(p_lib32) \
+		$(docdir) \
+		$(lib32)
+
+	cp -a $(d)/$(lib32)/libstdc++.so.* \
+		$(d_lib32)/$(lib32)/.
+
+	debian/dh_doclink -p$(p_lib32) $(p_base)
+	debian/dh_rmemptydirs -p$(p_lib32)
+
+	dh_strip -p$(p_lib32)
+	dh_compress -p$(p_lib32)
+	dh_fixperms -p$(p_lib32)
+	dh_makeshlibs -p$(p_lib32) -V '$(p_lib32) (>= $(DEB_STDCXX_SOVERSION))'
+	dh_gencontrol -p$(p_lib32) -- -v$(DEB_VERSION) $(common_substvars)
+
+	dh_installdeb -p$(p_lib32)
+	dh_md5sums -p$(p_lib32)
+	dh_builddeb -p$(p_lib32)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib32stdcxxdbg: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_dbg32)
+	dh_installdirs -p$(p_dbg32) \
+		$(lib32)
+
+ifeq ($(with_lib32cxx),yes)
+	cp -a $(d)/$(lib32)/libstdc++.so.* \
+		$(d_dbg32)/$(lib32)/.
+	dh_strip -p$(p_dbg32) --keep-debug
+	rm -f $(d_dbg32)/$(lib32)/libstdc++.so.*
+endif
+
+	mv $(d)/$(lib32)/debug $(d_dbg32)/$(lib32)/.
+	rm -f $(d_dbg32)/$(lib32)/debug/libstdc++_pic.a
+	rm -f $(d_dbg32)/$(lib32)/debug/libstdc++.la
+
+	debian/dh_doclink -p$(p_dbg32) $(p_base)
+	debian/dh_rmemptydirs -p$(p_dbg32)
+
+	dh_compress -p$(p_dbg32)
+	dh_fixperms -p$(p_dbg32)
+	dh_gencontrol -p$(p_dbg32) -- -v$(DEB_VERSION) $(common_substvars)
+
+	dh_installdeb -p$(p_dbg32)
+	dh_md5sums -p$(p_dbg32)
+	dh_builddeb -p$(p_dbg32)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+libcxxdev_deps = $(install_stamp)
+ifeq ($(with_libcxx),yes)
+  libcxxdev_deps += $(binary_stamp)-libstdcxx
+endif
+ifeq ($(with_check),yes)
+  libcxxdev_deps += debian/README.libstdc++-baseline
+endif
+$(binary_stamp)-libstdcxx-dev: $(libcxxdev_deps)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_dev) $(d_pic)
+	dh_installdirs -p$(p_dev) $(dirs_dev)
+	dh_installdirs -p$(p_pic) $(dirs_pic)
+	dh_installdirs -p$(p_dbg) $(dirs_dbg)
+
+	: # - correct libstdc++-v3 file locations
+	mv $(d)/$(PF)/$(libdir)/libsupc++.a $(d)/$(gcc_lib_dir)/
+	mv $(d)/$(PF)/$(libdir)/libstdc++.{a,so} $(d)/$(gcc_lib_dir)/
+	ln -sf ../../../$(DEB_TARGET_GNU_TYPE)/libstdc++.so.$(CXX_SONAME) \
+		$(d)/$(gcc_lib_dir)/libstdc++.so
+	mv $(d)/$(PF)/$(libdir)/libstdc++_pic.a $(d)/$(gcc_lib_dir)/
+
+	rm -f $(d)/$(PF)/$(libdir)/debug/libstdc++_pic.a
+	rm -f $(d)/$(PF)/lib64/debug/libstdc++_pic.a
+
+	: # remove precompiled headers
+	-find $(d) -type d -name '*.gch' | xargs rm -rf
+
+	for i in $(d)/$(PF)/include/c++/$(GCC_VERSION)/*-linux; do \
+	  if [ -d $$i ]; then mv $$i $$i-gnu; fi; \
+	done
+
+	DH_COMPAT=2 dh_movefiles -p$(p_dev) $(files_dev)
+	DH_COMPAT=2 dh_movefiles -p$(p_pic) $(files_pic)
+	DH_COMPAT=2 dh_movefiles -p$(p_dbg) $(files_dbg)
+
+	dh_link -p$(p_dev) \
+		/$(PF)/$(libdir)/libstdc++.so.$(CXX_SONAME) \
+		/$(gcc_lib_dir)/libstdc++.so \
+		/$(cxx_inc_dir) /$(PF)/include/c++/$(BASE_VERSION)
+
+	debian/dh_doclink -p$(p_dev) $(p_base)
+	debian/dh_doclink -p$(p_pic) $(p_base)
+	debian/dh_doclink -p$(p_dbg) $(p_base)
+	cp -p $(srcdir)/libstdc++-v3/ChangeLog \
+		$(d_dev)/$(docdir)/$(p_base)/C++/changelog.libstdc++
+ifeq ($(with_check),yes)
+	cp -p debian/README.libstdc++-baseline \
+		$(d_dev)/$(docdir)/$(p_base)/C++/README.libstdc++-baseline
+	if [ -f $(buildlibdir)/libstdc++-v3/testsuite/current_symbols.txt ]; \
+	then \
+	  cp -p $(buildlibdir)/libstdc++-v3/testsuite/current_symbols.txt \
+	    $(d_dev)/$(docdir)/$(p_base)/C++/libstdc++_symbols.txt; \
+	fi
+endif
+	cp -p $(srcdir)/libstdc++-v3/config/linker-map.gnu \
+		$(d_pic)/$(gcc_lib_dir)/libstdc++_pic.map
+
+ifeq ($(with_cxxdev),yes)
+	debian/dh_rmemptydirs -p$(p_dev)
+	debian/dh_rmemptydirs -p$(p_pic)
+	debian/dh_rmemptydirs -p$(p_dbg)
+endif
+
+ifeq ($(with_libcxx),yes)
+	cp -a $(d)/$(PF)/$(libdir)/libstdc++.so.* \
+		$(d_dbg)/$(PF)/$(libdir)/
+	dh_strip -p$(p_dbg) --keep-debug
+	rm -f $(d_dbg)/$(PF)/$(libdir)/libstdc++.so.*
+endif
+
+	dh_strip -p$(p_dev) --dbg-package=$(p_lib)
+	dh_strip -p$(p_pic)
+
+	dh_compress -p$(p_dev) -p$(p_pic) -p$(p_dbg) -X.txt
+	dh_fixperms -p$(p_dev) -p$(p_pic) -p$(p_dbg)
+ifeq ($(biarch),yes)
+	dh_shlibdeps -p$(p_dev) -p$(p_pic) -p$(p_dbg) -Xlib64
+else
+	dh_shlibdeps -p$(p_dev) -p$(p_pic) -p$(p_dbg) -Xlib32/debug
+endif
+	dh_gencontrol -p$(p_dev) -p$(p_pic) -p$(p_dbg) \
+		-- -v$(DEB_VERSION) $(common_substvars)
+
+	dh_installdeb -p$(p_dev) -p$(p_pic) -p$(p_dbg)
+	dh_md5sums -p$(p_dev) -p$(p_pic) -p$(p_dbg)
+	dh_builddeb -p$(p_dev) -p$(p_pic) -p$(p_dbg)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+
+doxygen_doc_dir = $(buildlibdir)/libstdc++-v3/docs/doxygen
+
+doxygen-docs: $(build_doxygen_stamp)
+$(build_doxygen_stamp):
+	rm -rf $(doxygen_doc_dir)/html*
+	$(MAKE) -C $(buildlibdir)/libstdc++-v3 SHELL=/bin/bash doxygen
+	$(MAKE) -C $(buildlibdir)/libstdc++-v3 SHELL=/bin/bash doxygen-man
+	sed -e 's,http://gcc\.gnu\.org/onlinedocs/libstdc++,../html,g' \
+	    -e 's,<title>Main Page</title>,<title>libstdc++-v3 Source: Main Index</title>,' \
+	  $(doxygen_doc_dir)/html_user/index.html \
+	    > $(doxygen_doc_dir)/html_user/index.html.new
+	mv -f $(doxygen_doc_dir)/html_user/index.html.new \
+	    $(doxygen_doc_dir)/html_user/index.html
+
+	-find $(doxygen_doc_dir)/html_user -name 'struct*' -empty | xargs rm -f
+
+	touch $@
+
+$(binary_stamp)-libstdcxx-doc: $(install_stamp) doxygen-docs
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_libd)
+	dh_installdirs -p$(p_libd) \
+		$(docdir)/$(p_base)/libstdc++ \
+		$(PF)/share/man
+
+#	debian/dh_doclink -p$(p_libd) $(p_base)
+	dh_link -p$(p_libd) /usr/share/doc/$(p_base) /usr/share/doc/$(p_libd)
+	dh_installdocs -p$(p_libd)
+	rm -f $(d_libd)/$(docdir)/$(p_base)/copyright
+
+	cp -a $(srcdir)/libstdc++-v3/docs/html \
+		$(d_libd)/$(docdir)/$(p_base)/libstdc++/.
+	ln -sf documentation.html \
+		$(d_libd)/$(docdir)/$(p_base)/libstdc++/html/index.html
+	-find $(d_libd)/$(docdir)/$(p_base)/libstdc++/ -name CVS -type d \
+		| xargs rm -rf
+
+	cp -a $(doxygen_doc_dir)/html_user \
+		$(d_libd)/$(docdir)/$(p_base)/libstdc++/.
+	cp -a $(doxygen_doc_dir)/man/man3 \
+		$(d_libd)/$(PF)/share/man/.
+	cp -p $(srcdir)/libstdc++-v3/docs/doxygen/Intro.3 \
+		$(d_libd)/$(PF)/share/man/man3/C++Intro.3
+
+	mkdir -p $(d_libd)/usr/share/lintian/overrides
+	cp -p debian/$(p_libd).overrides \
+		$(d_libd)/usr/share/lintian/overrides/$(p_libd)
+
+	dh_compress -p$(p_libd) -Xhtml/17_intro -X.txt -X.tag
+	dh_fixperms -p$(p_libd)
+	dh_gencontrol -p$(p_libd) -- -v$(DEB_VERSION) $(common_substvars)
+
+	dh_installdeb -p$(p_libd)
+	dh_md5sums -p$(p_libd)
+	dh_builddeb -p$(p_libd)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-libgcc.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-libgcc.mk
@@ -0,0 +1,157 @@
+ifeq ($(with_libgcc),yes)
+  arch_binaries	:= $(arch_binaries) libgcc
+endif
+ifeq ($(with_lib64gcc),yes)
+  arch_binaries	:= $(arch_binaries) lib64gcc
+endif
+ifeq ($(biarch32),yes)
+  arch_binaries	:= $(arch_binaries) lib32gcc
+endif
+
+p_lgcc		= libgcc$(GCC_SONAME)
+d_lgcc		= debian/$(p_lgcc)
+
+p_l32gcc	= lib32gcc$(GCC_SONAME)
+d_l32gcc	= debian/$(p_l32gcc)
+
+p_l64gcc	= lib64gcc$(GCC_SONAME)
+d_l64gcc	= debian/$(p_l64gcc)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-libgcc: $(install_dependencies)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_lgcc)
+	dh_installdirs -p$(p_lgcc) \
+		$(docdir)/$(p_lgcc) \
+		$(libdir)
+
+ifeq ($(with_shared_libgcc),yes)
+	mv $(d)/$(PF)/lib/libgcc_s.so.$(GCC_SONAME) $(d_lgcc)/$(libdir)/.
+endif
+
+ifeq ($(with_standalone_gcj)-$(DEB_TARGET_ARCH),yes-hppa)
+	debian/dh_doclink -p$(p_lgcc) $(p_jbase)
+else
+	debian/dh_doclink -p$(p_lgcc) $(p_base)
+endif
+	debian/dh_rmemptydirs -p$(p_lgcc)
+	dh_strip -p$(p_lgcc)
+	dh_compress -p$(p_lgcc)
+	dh_fixperms -p$(p_lgcc)
+ifeq ($(with_shared_libgcc),yes)
+	dh_makeshlibs -p$(p_lgcc) -V '$(p_lgcc) (>= $(DEB_LIBGCC_SOVERSION))'
+	cat debian/$(p_lgcc)/DEBIAN/shlibs >> debian/shlibs.local
+endif
+	dh_shlibdeps -p$(p_lgcc)
+	dh_gencontrol -p$(p_lgcc) \
+		-- -v$(DEB_LIBGCC_VERSION) $(common_substvars)
+
+	mkdir -p $(d_lgcc)/usr/share/lintian/overrides
+	echo '$(p_lgcc): package-name-doesnt-match-sonames' \
+		> $(d_lgcc)/usr/share/lintian/overrides/$(p_lgcc)
+
+	dh_installdeb -p$(p_lgcc)
+	dh_md5sums -p$(p_lgcc)
+	dh_builddeb -p$(p_lgcc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib64gcc: $(install_dependencies)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_l64gcc)
+	dh_installdirs -p$(p_l64gcc) \
+		$(docdir)/$(p_l64gcc) \
+		lib64
+
+ifeq ($(with_shared_libgcc),yes)
+	mv $(d)/$(PF)/lib64/libgcc_s.so.$(GCC_SONAME) $(d_l64gcc)/lib64/.
+endif
+
+	debian/dh_doclink -p$(p_l64gcc) $(p_base)
+	debian/dh_rmemptydirs -p$(p_l64gcc)
+	dh_strip -p$(p_l64gcc)
+	dh_compress -p$(p_l64gcc)
+	dh_fixperms -p$(p_l64gcc)
+ifeq ($(with_shared_libgcc),yes)
+	dh_makeshlibs -p$(p_l64gcc) \
+		-V '$(p_l64gcc) (>= $(DEB_LIBGCC_SOVERSION))'
+# this does not work ... shlibs.local doesn't distinguish 32/64 bit libs
+#	cat debian/$(p_l64gcc)/DEBIAN/shlibs >> debian/shlibs.local
+endif
+#	dh_shlibdeps -p$(p_l64gcc)
+#/usr/bin/ldd: line 1: /lib/ld64.so.1: cannot execute binary file
+#dpkg-shlibdeps: failure: ldd on `debian/lib64gcc1/lib64/libgcc_s.so.1' gave error exit status 1
+ifeq ($(DEB_TARGET_ARCH),s390)
+	echo 'shlibs:Depends=libc6-s390x (>= 2.3.1-1)' \
+		> debian/$(p_l64gcc).substvars
+endif
+ifeq ($(DEB_TARGET_ARCH),i386)
+	echo 'shlibs:Depends=libc6-amd64' \
+		> debian/$(p_l64gcc).substvars
+endif
+ifeq ($(DEB_TARGET_ARCH),sparc)
+	echo 'shlibs:Depends=libc6-sparc64 (>= 2.3.1-1)' \
+		> debian/$(p_l64gcc).substvars
+endif
+ifeq ($(DEB_TARGET_ARCH),powerpc)
+	# FIXME change dependency when lib64c6 exists
+	echo 'shlibs:Depends=libc6 (>= 0.1)' \
+		> debian/$(p_l64gcc).substvars
+endif
+	dh_gencontrol -p$(p_l64gcc) \
+		-- -v$(DEB_LIBGCC_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_l64gcc)
+	dh_md5sums -p$(p_l64gcc)
+	dh_builddeb -p$(p_l64gcc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+
+$(binary_stamp)-lib32gcc: $(install_dependencies)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_l32gcc)
+
+	dh_installdirs -p$(p_l32gcc) \
+		$(docdir)/$(p_l32gcc) \
+		$(lib32)
+	mv $(d)/$(lib32)/libgcc_s.so.$(GCC_SONAME) \
+		$(d_l32gcc)/$(lib32)/.
+
+	debian/dh_doclink -p$(p_l32gcc) $(p_base)
+	debian/dh_rmemptydirs -p$(p_l32gcc)
+	dh_strip -p$(p_l32gcc)
+
+	dh_makeshlibs -p$(p_l32gcc) \
+		-V '$(p_l32gcc) (>= $(DEB_LIBGCC_SOVERSION))'
+ifeq ($(DEB_TARGET_ARCH),amd64)
+	echo 'shlibs:Depends=libc6-i386 | ia32-libs' \
+		> debian/$(p_l32gcc).substvars
+endif
+ifeq ($(DEB_TARGET_ARCH),ppc64)
+	echo 'shlibs:Depends=libc6-powerpc' \
+		> debian/$(p_l32gcc).substvars
+endif
+
+	dh_compress -p$(p_l32gcc)
+	dh_fixperms -p$(p_l32gcc)
+	dh_gencontrol -p$(p_l32gcc) \
+		-- -v$(DEB_LIBGCC_VERSION) $(common_substvars)
+ifeq (,$(findstring emul, $(lib32)))
+	rm -f debian/lib32gcc1.preinst
+endif
+	dh_installdeb -p$(p_l32gcc)
+	dh_md5sums -p$(p_l32gcc)
+	dh_builddeb -p$(p_l32gcc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-base.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-base.mk
@@ -0,0 +1,27 @@
+arch_binaries := base $(arch_binaries)
+
+# ---------------------------------------------------------------------------
+# gcc-base
+
+$(binary_stamp)-base: $(install_dependencies)
+	dh_testdir
+	dh_testroot
+	rm -rf $(d_base)
+	dh_installdirs -p$(p_base)
+	dh_installdocs -p$(p_base)
+ifeq ($(with_base_only),yes)
+	dh_installchangelogs -p$(p_base)
+else
+	dh_installchangelogs -p$(p_base) $(srcdir)/ChangeLog
+endif
+	dh_compress -p$(p_base)
+	for i in copyright changelog.Debian.gz; do \
+	  ln -f $(d_base)/usr/share/doc/$(p_base)/$$i \
+	    $(d_base)/usr/share/doc/$(p_base)/.$$i; \
+	done
+	dh_fixperms -p$(p_base)
+	dh_gencontrol -p$(p_base) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_base)
+	dh_md5sums -p$(p_base)
+	dh_builddeb -p$(p_base)
+	touch $@
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-objcxx.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-objcxx.mk
@@ -0,0 +1,62 @@
+ifneq (,$(filter yes, $(biarch) $(biarch32)))
+  arch_binaries  := $(arch_binaries) objcxx-multi
+endif
+arch_binaries := $(arch_binaries) objcxx
+
+p_objcx		= gobjc++$(pkg_ver)
+d_objcx		= debian/$(p_objcx)
+
+p_objcx_m	= gobjc++$(pkg_ver)-multilib
+d_objcx_m	= debian/$(p_objcx_m)
+
+dirs_objcx = \
+	$(docdir)/$(p_base)/Obj-C++ \
+	$(gcc_lexec_dir)
+
+files_objcx = \
+	$(gcc_lexec_dir)/cc1objplus
+
+$(binary_stamp)-objcxx: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_objcx)
+	dh_installdirs -p$(p_objcx) $(dirs_objcx)
+	DH_COMPAT=2 dh_movefiles -p$(p_objcx) $(files_objcx)
+
+	debian/dh_doclink -p$(p_objcx) $(p_base)
+	cp -p $(srcdir)/gcc/objcp/ChangeLog \
+		$(d_objcx)/$(docdir)/$(p_base)/Obj-C++/changelog
+
+	debian/dh_rmemptydirs -p$(p_objcx)
+
+	dh_strip -p$(p_objcx)
+	dh_compress -p$(p_objcx)
+
+	dh_fixperms -p$(p_objcx)
+	dh_shlibdeps -p$(p_objcx)
+	dh_gencontrol -p$(p_objcx) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_objcx)
+	dh_md5sums -p$(p_objcx)
+	dh_builddeb -p$(p_objcx)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+$(binary_stamp)-objcxx-multi: $(install_stamp)
+	dh_testdir
+	dh_testroot
+
+	rm -rf $(d_objcx_m)
+
+	debian/dh_doclink -p$(p_objcx_m) $(p_base)
+	debian/dh_rmemptydirs -p$(p_objcx_m)
+	dh_strip -p$(p_objcx_m)
+	dh_compress -p$(p_objcx_m)
+
+	dh_fixperms -p$(p_objcx_m)
+	dh_shlibdeps -p$(p_objcx_m)
+	dh_gencontrol -p$(p_objcx_m) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_objcx_m)
+	dh_md5sums -p$(p_objcx_m)
+	dh_builddeb -p$(p_objcx_m)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-cxx-cross.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-cxx-cross.mk
@@ -0,0 +1,42 @@
+arch_binaries  := $(arch_binaries) cxx
+
+dirs_cxx = \
+	$(docdir) \
+	$(PF)/bin \
+	$(gcc_lib_dir) \
+	$(PF)/share/man/man1
+files_cxx = \
+	$(PF)/bin/$(DEB_TARGET_GNU_TYPE)-g++$(pkg_ver) \
+	$(PF)/share/man/man1/$(DEB_TARGET_GNU_TYPE)-g++$(pkg_ver).1 \
+	$(gcc_lib_dir)/cc1plus
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-cxx: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_cxx)
+	dh_installdirs -p$(p_cxx) $(dirs_cxx)
+	DH_COMPAT=2 dh_movefiles -p$(p_cxx) $(files_cxx)
+# g++ man page is a .so link
+	rm -f $(d_cxx)/$(PF)/share/man/man1/$(DEB_TARGET_GNU_TYPE)-g++$(pkg_ver).1
+	ln -sf $(DEB_TARGET_GNU_TYPE)-gcc$(pkg_ver).1.gz \
+		$(d_cxx)/$(PF)/share/man/man1/$(DEB_TARGET_GNU_TYPE)-g++$(pkg_ver).1.gz
+
+	debian/dh_doclink -p$(p_cxx) $(p_base)
+	debian/dh_rmemptydirs -p$(p_cxx)
+
+	dh_strip -p$(p_cxx)
+	dh_compress -p$(p_cxx)
+	dh_fixperms -p$(p_cxx)
+	dh_shlibdeps -p$(p_cxx)
+	dh_gencontrol -p$(p_cxx) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_cxx)
+	sed 's/cross-/$(TP)/g;s/-ver/$(pkg_ver)/g;s/gcc/g++/g' < debian/gcc-cross.postinst > debian/$(p_cxx)/DEBIAN/postinst
+	sed 's/cross-/$(TP)/g;s/-ver/$(pkg_ver)/g;s/gcc/g++/g' < debian/gcc-cross.prerm > debian/$(p_cxx)/DEBIAN/prerm
+	chmod 755 debian/$(p_cxx)/DEBIAN/{postinst,prerm}
+	dh_md5sums -p$(p_cxx)
+	dh_builddeb -p$(p_cxx)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-proto.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-proto.mk
@@ -0,0 +1,43 @@
+arch_binaries  := $(arch_binaries) proto
+
+p_proto	= protoize
+d_proto	= debian/$(p_proto)
+
+dirs_proto = \
+	$(docdir) \
+	$(PF)/share/man/man1 \
+	$(PF)/bin
+files_proto = \
+	$(PF)/bin/{protoize,unprotoize} \
+	$(PF)/share/man/man1/{protoize,unprotoize}.1
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-proto: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_proto)
+	dh_installdirs -p$(p_proto) $(dirs_proto)
+
+ifeq ($(versioned_packages),yes)
+	: # rename versioned files back to unversioned ones.
+	for i in protoize unprotoize; do \
+	  mv $(d)/$(PF)/bin/$$i$(pkg_ver) $(d)/$(PF)/bin/$$i; \
+	done
+endif
+	$(IR) debian/protoize.1 $(d)/$(PF)/share/man/man1/
+	ln -sf protoize.1 $(d)/$(PF)/share/man/man1/unprotoize.1
+	DH_COMPAT=2 dh_movefiles -p$(p_proto) $(files_proto)
+
+	debian/dh_doclink -p$(p_proto) $(p_base)
+	dh_strip -p$(p_proto)
+	dh_compress -p$(p_proto)
+	dh_fixperms -p$(p_proto)
+	dh_shlibdeps -p$(p_proto)
+	dh_gencontrol -p$(p_proto) -- -v$(DEB_EVERSION) $(common_substvars)
+	dh_installdeb -p$(p_proto)
+	dh_md5sums -p$(p_proto)
+	dh_builddeb -p$(p_proto)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-hppa64.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-hppa64.mk
@@ -0,0 +1,29 @@
+arch_binaries  := $(arch_binaries) hppa64
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-hppa64: $(install_hppa64_stamp)
+	dh_testdir
+	dh_testroot
+
+#	dh_installdirs -p$(p_hppa64)
+
+	: # provide as and ld links
+	dh_link -p $(p_hppa64) \
+		/usr/bin/hppa64-linux-gnu-as \
+		/$(PF)/lib/gcc/hppa64-linux-gnu/$(GCC_VERSION)/as \
+		/usr/bin/hppa64-linux-gnu-ld \
+		/$(PF)/lib/gcc/hppa64-linux-gnu/$(GCC_VERSION)/ld
+
+	debian/dh_doclink -p$(p_hppa64) $(p_base)
+	debian/dh_rmemptydirs -p$(p_hppa64)
+
+	dh_strip -p$(p_hppa64) -X.o -Xlibgcc.a -Xlibgcov.a
+	dh_compress -p$(p_hppa64)
+	dh_fixperms -p$(p_hppa64)
+	dh_shlibdeps -p$(p_hppa64)
+	dh_gencontrol -p$(p_hppa64) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_hppa64)
+	dh_md5sums -p$(p_hppa64)
+	dh_builddeb -p$(p_hppa64)
+
+	touch $@
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-cross.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-cross.mk
@@ -0,0 +1,57 @@
+arch_binaries  := $(arch_binaries) gcc-cross
+
+dirs_gcc = \
+	$(docdir)/$(p_base)/gcc \
+	$(PF)/bin \
+	$(gcc_lib_dir)/include \
+	$(PF)/share/man/man1
+
+files_gcc = \
+	$(PF)/bin/{$(DEB_TARGET_GNU_TPE)-gcc,$(DEB_TARGET_GNU_TYPE)-cpp}$(pkg_ver) \
+	$(PF)/share/man/man1/{$(DEB_TARGET_GNU_TYPE)-gcc}$(pkg_ver).1 \
+	$(gcc_lib_dir) \
+
+
+files_gcc += \
+	$(shell test -e $(d)/$(gcc_lib_dir)/SYSCALLS.c.X \
+		&& echo $(gcc_lib_dir)/SYSCALLS.c.X)
+
+usr_doc_files = debian/README.Bugs \
+	$(shell test -f $(srcdir)/FAQ && echo $(srcdir)/FAQ)
+ifeq ($(with_check),yes)
+  usr_doc_files += test-summary
+endif
+ifeq ($(DEB_HOST_ARCH),sparc)
+  usr_doc_files += debian/README.sparc
+endif
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-gcc-cross: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	rm -rf $(d_gcc)
+	dh_installdirs -p$(p_gcc) $(dirs_gcc)
+	$(IS) debian/c89 $(d)/$(PF)/bin/
+	$(IR) debian/c89.1 $(d)/$(PF)/share/man/man1/
+
+	rm -f $(d)/$(PF)/$(libdir)/libgcc_s.so
+	ln -sf /$(libdir)/libgcc_s.so.$(GCC_SONAME) $(d)/$(gcc_lib_dir)/libgcc_s.so
+
+	DH_COMPAT=2 dh_movefiles -p$(p_gcc) $(files_gcc)
+
+#	dh_installdebconf
+	debian/dh_doclink -p$(p_gcc) $(p_base)
+	cp -p $(usr_doc_files) $(d_gcc)/$(docdir)/$(p_base)/.
+	cp -p debian/NEWS.gcc $(d_gcc)/$(docdir)/$(p_base)/NEWS
+	dh_undocumented -p$(p_gcc) gccbug$(pkg_ver).1
+	debian/dh_rmemptydirs -p$(p_gcc)
+	dh_strip -p$(p_gcc)
+	dh_compress -p$(p_gcc)
+	dh_fixperms -p$(p_gcc)
+	dh_shlibdeps -p$(p_gcc)
+	dh_gencontrol -p$(p_gcc) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_gcc)
+	dh_md5sums -p$(p_gcc)
+	dh_builddeb -p$(p_gcc)
+	touch $@
+
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-objc-cross.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-objc-cross.mk
@@ -0,0 +1,60 @@
+arch_binaries := $(arch_binaries) objc
+
+p_objc	= gobjc$(pkg_ver)$(cross_bin_arch)
+d_objc	= debian/$(p_objc)
+
+dirs_objc = \
+	$(docdir) \
+	$(gcc_lib_dir)
+
+files_objc = \
+	$(gcc_lib_dir)/cc1obj \
+	$(gcc_lib_dir)/include/objc \
+	$(gcc_lib_dir)/{libobjc*.a,libobjc*.la}
+
+$(binary_stamp)-objc: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	mv $(d)/$(PF)/$(DEB_TARGET_GNU_TYPE)/$(libdir)/libobjc*.{a,la} $(d)/$(gcc_lib_dir)/
+
+	rm -rf $(d_objc)
+	dh_installdirs -p$(p_objc) $(dirs_objc)
+	DH_COMPAT=2 dh_movefiles -p$(p_objc) $(files_objc)
+
+ifeq ($(with_lib64objc),yes)
+	mkdir -p $(d_objc)/$(gcc_lib_dir)/$(biarchsubdir)
+	mv $(d)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib64/libobjc*.{a,la} $(d_objc)/$(gcc_lib_dir)/$(biarchsubdir)/
+	dh_link -p$(p_objc) \
+	  /$(PF)/$(DEB_TARGET_GNU_TYPE)/lib64/libobjc.so.$(OBJC_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libobjc.so
+endif
+ifeq ($(with_lib32objc),yes)
+	mkdir -p $(d_objc)/$(gcc_lib_dir)/$(biarchsubdir)
+	mv $(d)/$(DEB_TARGET_GNU_TYPE)/$(lib32)/libobjc*.{a,la} $(d_objc)/$(gcc_lib_dir)/$(biarchsubdir)/
+	dh_link -p$(p_objc) \
+	  /$(lib32)/$(DEB_TARGET_GNU_TYPE)/libobjc.so.$(OBJC_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libobjc.so
+endif
+
+	dh_link -p$(p_objc) \
+	  /$(PF)/$(DEB_TARGET_GNU_TYPE)/$(libdir)/libobjc.so.$(OBJC_SONAME) /$(gcc_lib_dir)/libobjc.so
+ifeq ($(with_objc_gc),yes)
+	dh_link -p$(p_objc) \
+	  /$(PF)/$(DEB_TARGET_GNU_TYPE)/$(libdir)/libobjc_gc.so.$(OBJC_SONAME) \
+	  /$(gcc_lib_dir)/libobjc_gc.so
+endif
+
+	debian/dh_doclink -p$(p_objc) $(p_base)
+	debian/dh_rmemptydirs -p$(p_objc)
+
+	dh_strip -p$(p_objc)
+	dh_compress -p$(p_objc)
+
+	dh_fixperms -p$(p_objc)
+	dh_shlibdeps -p$(p_objc)
+	dh_gencontrol -p$(p_objc) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_objc)
+	dh_md5sums -p$(p_objc)
+	dh_builddeb -p$(p_objc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-libobjc-cross.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-libobjc-cross.mk
@@ -0,0 +1,117 @@
+ifeq ($(with_objcdev),yes)
+  arch_binaries := $(arch_binaries) libobjc
+endif
+ifeq ($(with_lib64objc),yes)
+  arch_binaries  := $(arch_binaries) lib64objc
+endif
+ifeq ($(with_lib32objc),yes)
+  arch_binaries	:= $(arch_binaries) lib32objc
+endif
+
+p_lobjc		= libobjc$(OBJC_SONAME)$(cross_lib_arch)
+p_l32objc	= lib32objc$(OBJC_SONAME)$(cross_lib_arch)
+p_l64objc	= lib64objc$(OBJC_SONAME)$(cross_lib_arch)
+
+d_lobjc		= debian/$(p_lobjc)
+d_l32objc	= debian/$(p_l32objc)
+d_l64objc	= debian/$(p_l64objc)
+
+dirs_lobjc = \
+	$(docdir) \
+	$(PF)/$(DEB_TARGET_GNU_TYPE)/$(libdir)
+files_lobjc = \
+	$(PF)/$(DEB_TARGET_GNU_TYPE)/$(libdir)/libobjc.so.*
+ifeq ($(with_objc_gc),yes)
+  files_lobjc += \
+	$(PF)/$(DEB_TARGET_GNU_TYPE)/$(libdir)/libobjc_gc.so.*
+endif
+
+
+$(binary_stamp)-libobjc: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_lobjc)
+	dh_installdirs -p$(p_lobjc) $(dirs_lobjc)
+#	mv $(d)/$(gcc_lib_dir)/libobjc.so.* $(d)/$(PF)/$(libdir)/.
+#ifeq ($(with_objc_gc),yes)
+#	mv $(d)/$(gcc_lib_dir)/libobjc_gc.so.* $(d)/$(PF)/$(libdir)/.
+#endif
+	DH_COMPAT=2 dh_movefiles -p$(p_lobjc) $(files_lobjc)
+
+	dh_installdocs -p$(p_lobjc)
+	echo "See /$(docdir)/$(p_base) for more information" \
+		> $(d_lobjc)/$(docdir)/$(p_lobjc)/README.Debian
+	dh_installchangelogs -p$(p_lobjc)
+
+	debian/dh_rmemptydirs -p$(p_lobjc)
+
+	PATH=/usr/share/dpkg-cross:$$PATH dh_strip -p$(p_lobjc)
+	dh_compress -p$(p_lobjc)
+
+	dh_fixperms -p$(p_lobjc)
+	dh_makeshlibs -p$(p_lobjc) -V '$(p_lobjc) (>= $(DEB_SOEVERSION))' -n
+	sed s/$(cross_lib_arch)//g < debian/$(p_lobjc)/DEBIAN/shlibs > debian/$(p_lobjc)/DEBIAN/shlibs.fixed
+	mv debian/$(p_lobjc)/DEBIAN/shlibs.fixed debian/$(p_lobjc)/DEBIAN/shlibs
+	ARCH=$(DEB_TARGET_ARCH) MAKEFLAGS="CC=something" dh_shlibdeps -p$(p_lobjc)
+	sed 's/\(lib[^ ]*\) /\1$(cross_lib_arch) /g' < debian/$(p_lobjc).substvars > debian/$(p_lobjc).substvars.new
+	mv debian/$(p_lobjc).substvars.new debian/$(p_lobjc).substvars
+	dh_gencontrol -p$(p_lobjc) -- -v$(DEB_EVERSION) $(common_substvars)
+	dh_installdeb -p$(p_lobjc)
+	dh_md5sums -p$(p_lobjc)
+	dh_builddeb -p$(p_lobjc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib64objc: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_l64objc)
+	dh_installdirs -p$(p_l64objc) \
+		$(PF)/lib64
+	DH_COMPAT=2 dh_movefiles -p$(p_l64objc) \
+		$(PF)/lib64/libobjc.so.*
+
+	debian/dh_doclink -p$(p_l64objc) $(p_base)
+
+	dh_strip -p$(p_l64objc)
+	dh_compress -p$(p_l64objc)
+	dh_fixperms -p$(p_l64objc)
+	dh_makeshlibs -p$(p_l64objc) -V '$(p_l64objc) (>= $(DEB_SOVERSION))'
+#	dh_shlibdeps -p$(p_l64objc)
+	dh_gencontrol -p$(p_l64objc) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_l64objc)
+	dh_md5sums -p$(p_l64objc)
+	dh_builddeb -p$(p_l64objc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib32objc: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_l32objc)
+	dh_installdirs -p$(p_l32objc) \
+		$(lib32)
+	DH_COMPAT=2 dh_movefiles -p$(p_l32objc) \
+		$(lib32)/libobjc.so.*
+
+	debian/dh_doclink -p$(p_l32objc) $(p_base)
+
+	dh_strip -p$(p_l32objc)
+	dh_compress -p$(p_l32objc)
+	dh_fixperms -p$(p_l32objc)
+	dh_makeshlibs -p$(p_l32objc) -V '$(p_l32objc) (>= $(DEB_SOVERSION))'
+#	dh_shlibdeps -p$(p_l32objc)
+	dh_gencontrol -p$(p_l32objc) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_l32objc)
+	dh_md5sums -p$(p_l32objc)
+	dh_builddeb -p$(p_l32objc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-libffi.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-libffi.mk
@@ -0,0 +1,142 @@
+arch_binaries  := $(arch_binaries) libffi
+ifeq ($(with_lib64ffi),yes)
+  arch_binaries  := $(arch_binaries) lib64ffi
+endif
+ifeq ($(with_lib32ffi),yes)
+  arch_binaries	:= $(arch_binaries) lib32ffi
+endif
+
+p_ffi	= libffi$(FFI_SONAME)
+p_l32ffi= lib32ffi$(FFI_SONAME)
+p_l64ffi= lib64ffi$(FFI_SONAME)
+p_ffid	= libffi$(FFI_SONAME)-dev
+
+d_ffi	= debian/$(p_ffi)
+d_l32ffi= debian/$(p_l32ffi)
+d_l64ffi= debian/$(p_l64ffi)
+d_ffid	= debian/$(p_ffid)
+
+dirs_ffi = \
+	$(docdir)/$(p_ffi) \
+	$(PF)/$(libdir)
+files_ffi = \
+	$(PF)/$(libdir)/libffi.so.*
+
+dirs_ffid = \
+	$(docdir) \
+	$(PF)/include \
+	$(gcc_lib_dir)/include
+files_ffid = \
+	$(gcc_lib_dir)/include/libffi \
+	$(PF)/include/{ffi.h,ffitarget.h} \
+	$(PF)/$(libdir)/libffi.{a,so,la}
+
+ifeq ($(with_lib32ffi),yes)
+	dirs_ffid  += $(lib32)
+	files_ffid += $(lib32)/libffi.{a,so,la}
+endif
+ifeq ($(with_lib64ffi),yes)
+	dirs_ffid  += $(PF)/lib64
+	files_ffid += $(PF)/lib64/libffi.{a,so,la}
+endif
+
+$(binary_stamp)-libffi: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_ffi) $(d_ffid)
+	dh_installdirs -p$(p_ffi) $(dirs_ffi)
+	dh_installdirs -p$(p_ffid) $(dirs_ffid)
+
+	mv $(d)/$(gcc_lib_dir)/include/libffi/ffitarget.h $(d)/$(PF)/include/.
+
+	DH_COMPAT=2 dh_movefiles -p$(p_ffi) $(files_ffi)
+	DH_COMPAT=2 dh_movefiles -p$(p_ffid) $(files_ffid)
+
+	cp -p $(buildlibdir)/libffi/.libs/libffi_convenience.a \
+		$(d_ffid)/$(PF)/lib/libffi_pic.a
+
+ifeq ($(with_lib64ffi),yes)
+	cp -p $(buildlibdir)/64/libffi/.libs/libffi_convenience.a \
+		$(d_ffid)/$(PF)/$(lib64)/libffi_pic.a
+endif
+ifeq ($(with_lib32ffi),yes)
+	cp -p $(buildlibdir)/32/libffi/.libs/libffi_convenience.a \
+		$(d_ffid)/$(lib32)/libffi_pic.a
+endif
+
+	dh_installdocs -p$(p_ffi) $(srcdir)/libffi/README
+	dh_installchangelogs -p$(p_ffi) $(srcdir)/libffi/ChangeLog
+	cp -p $(srcdir)/libffi/LICENSE $(d_ffi)/$(docdir)/$(p_ffi)/copyright
+	cp -p $(srcdir)/libffi/ChangeLog.libgcj \
+		$(d_ffi)/$(docdir)/$(p_ffi)/changelog.libgcj
+	debian/dh_doclink -p$(p_ffid) $(p_ffi)
+
+	debian/dh_rmemptydirs -p$(p_ffi)
+	debian/dh_rmemptydirs -p$(p_ffid)
+
+	dh_strip -p$(p_ffi) -p$(p_ffid)
+	dh_compress -p$(p_ffi) -p$(p_ffid)
+	dh_fixperms -p$(p_ffi) -p$(p_ffid)
+	dh_makeshlibs -p$(p_ffi) -V '$(p_ffi) (>= $(DEB_FFI_SOVERSION))'
+	dh_shlibdeps -p$(p_ffi) -p$(p_ffid)
+	dh_gencontrol -p$(p_ffi) -p$(p_ffid) \
+		-- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_ffi) -p$(p_ffid)
+	dh_md5sums -p$(p_ffi) -p$(p_ffid)
+	dh_builddeb -p$(p_ffi) -p$(p_ffid)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib64ffi: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_l64ffi)
+	dh_installdirs -p$(p_l64ffi) \
+		$(PF)/lib64
+	DH_COMPAT=2 dh_movefiles -p$(p_l64ffi) \
+		$(PF)/lib64/libffi.so.*
+
+	debian/dh_doclink -p$(p_l64ffi) $(p_base)
+
+	dh_strip -p$(p_l64ffi)
+	dh_compress -p$(p_l64ffi)
+	dh_fixperms -p$(p_l64ffi)
+	dh_makeshlibs -p$(p_l64ffi) -V '$(p_l64ffi) (>= $(DEB_SOVERSION))'
+#	dh_shlibdeps -p$(p_l64ffi)
+	dh_gencontrol -p$(p_l64ffi) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_l64ffi)
+	dh_md5sums -p$(p_l64ffi)
+	dh_builddeb -p$(p_l64ffi)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib32ffi: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_l32ffi)
+	dh_installdirs -p$(p_l32ffi) \
+		$(lib32)
+	DH_COMPAT=2 dh_movefiles -p$(p_l32ffi) \
+		$(lib32)/libffi.so.*
+
+	debian/dh_doclink -p$(p_l32ffi) $(p_base)
+
+	dh_strip -p$(p_l32ffi)
+	dh_compress -p$(p_l32ffi)
+	dh_fixperms -p$(p_l32ffi)
+	dh_makeshlibs -p$(p_l32ffi) -V '$(p_l32ffi) (>= $(DEB_SOVERSION))'
+#	dh_shlibdeps -p$(p_l32ffi)
+	dh_gencontrol -p$(p_l32ffi) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_l32ffi)
+	dh_md5sums -p$(p_l32ffi)
+	dh_builddeb -p$(p_l32ffi)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-libssp.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-libssp.mk
@@ -0,0 +1,121 @@
+arch_binaries  := $(arch_binaries) libssp
+ifeq ($(with_lib64ssp),yes)
+  arch_binaries  := $(arch_binaries) lib64ssp
+endif
+ifeq ($(with_lib32ssp),yes)
+  arch_binaries	:= $(arch_binaries) lib32ssp
+endif
+
+p_ssp	= libssp$(SSP_SONAME)
+p_ssp32	= lib32ssp$(SSP_SONAME)
+p_ssp64	= lib64ssp$(SSP_SONAME)
+p_sspd	= libssp$(SSP_SONAME)-dev
+
+d_ssp	= debian/$(p_ssp)
+d_ssp32	= debian/$(p_ssp32)
+d_ssp64	= debian/$(p_ssp64)
+d_sspd	= debian/$(p_sspd)
+
+dirs_ssp = \
+	$(docdir)/$(p_base) \
+	$(PF)/$(libdir)
+files_ssp = \
+	$(PF)/$(libdir)/libssp.so.*
+
+dirs_sspd = \
+	$(docdir) \
+	$(PF)/include \
+	$(PF)/$(libdir)
+files_sspd = \
+	$(gcc_lib_dir)/include/ssp \
+	$(PF)/$(libdir)/libssp.{a,so,la} \
+	$(PF)/$(libdir)/libssp_nonshared.{a,la}
+
+ifeq ($(with_lib32ssp),yes)
+	dirs_sspd  += $(lib32)
+	files_sspd += $(lib32)/libssp.{a,la,so}
+	files_sspd += $(lib32)/libssp_nonshared.{a,la}
+endif
+ifeq ($(with_lib64ssp),yes)
+	dirs_sspd  += $(PF)/lib64
+	files_sspd += $(PF)/lib64/libssp.{a,la,so}
+	files_sspd += $(PF)/lib64/libssp_nonshared.{a,la}
+endif
+
+$(binary_stamp)-libssp: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_ssp)
+	dh_installdirs -p$(p_ssp)
+
+	DH_COMPAT=2 dh_movefiles -p$(p_ssp) $(files_ssp)
+	debian/dh_doclink -p$(p_ssp) $(p_base)
+
+	debian/dh_rmemptydirs -p$(p_ssp)
+
+	dh_strip -p$(p_ssp)
+	dh_compress -p$(p_ssp)
+	dh_fixperms -p$(p_ssp)
+	dh_makeshlibs -p$(p_ssp) -V '$(p_ssp) (>= $(DEB_SOVERSION))'
+	dh_shlibdeps -p$(p_ssp)
+	dh_gencontrol -p$(p_ssp) \
+		-- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_ssp)
+	dh_md5sums -p$(p_ssp)
+	dh_builddeb -p$(p_ssp)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib64ssp: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_ssp64)
+	dh_installdirs -p$(p_ssp64) \
+		$(PF)/lib64
+	DH_COMPAT=2 dh_movefiles -p$(p_ssp64) \
+		$(PF)/lib64/libssp.so.*
+
+	debian/dh_doclink -p$(p_ssp64) $(p_base)
+
+	dh_strip -p$(p_ssp64)
+	dh_compress -p$(p_ssp64)
+	dh_fixperms -p$(p_ssp64)
+	dh_makeshlibs -p$(p_ssp64) -V '$(p_ssp64) (>= $(DEB_SOVERSION))'
+#	dh_shlibdeps -p$(p_ssp64)
+	dh_gencontrol -p$(p_ssp64) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_ssp64)
+	dh_md5sums -p$(p_ssp64)
+	dh_builddeb -p$(p_ssp64)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib32ssp: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_ssp32)
+	dh_installdirs -p$(p_ssp32) \
+		$(lib32)
+	DH_COMPAT=2 dh_movefiles -p$(p_ssp32) \
+		$(lib32)/libssp.so.*
+
+	debian/dh_doclink -p$(p_ssp32) $(p_base)
+
+	dh_strip -p$(p_ssp32)
+	dh_compress -p$(p_ssp32)
+	dh_fixperms -p$(p_ssp32)
+	dh_makeshlibs -p$(p_ssp32) -V '$(p_ssp32) (>= $(DEB_SOVERSION))'
+#	dh_shlibdeps -p$(p_ssp32)
+	dh_gencontrol -p$(p_ssp32) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_ssp32)
+	dh_md5sums -p$(p_ssp32)
+	dh_builddeb -p$(p_ssp32)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-fortran.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-fortran.mk
@@ -0,0 +1,247 @@
+ifeq ($(with_libfortran),yes)
+  arch_binaries  := $(arch_binaries) libfortran
+endif
+ifeq ($(with_lib64fortran),yes)
+  arch_binaries  := $(arch_binaries) lib64fortran
+endif
+ifeq ($(with_lib32fortran),yes)
+  arch_binaries	:= $(arch_binaries) lib32fortran
+endif
+
+ifeq ($(with_fdev),yes)
+  ifneq (,$(filter yes, $(biarch) $(biarch32)))
+    arch_binaries  := $(arch_binaries) fdev-multi
+  endif
+  arch_binaries  := $(arch_binaries) fdev
+  ifneq ($(GFDL_INVARIANT_FREE),yes)
+    indep_binaries := $(indep_binaries) fortran-doc
+  endif
+endif
+
+p_g95	= gfortran$(pkg_ver)
+p_g95_m	= gfortran$(pkg_ver)-multilib
+p_g95d	= gfortran$(pkg_ver)-doc
+p_flib	= libgfortran$(FORTRAN_SONAME)
+p_f32lib= lib32gfortran$(FORTRAN_SONAME)
+p_f64lib= lib64gfortran$(FORTRAN_SONAME)
+
+d_g95	= debian/$(p_g95)
+d_g95_m	= debian/$(p_g95_m)
+d_g95d	= debian/$(p_g95d)
+d_flib	= debian/$(p_flib)
+d_f32lib= debian/$(p_f32lib)
+d_f64lib= debian/$(p_f64lib)
+
+dirs_g95 = \
+	$(docdir)/$(p_base)/fortran \
+	$(PF)/bin \
+	$(gcc_lexec_dir) \
+	$(gcc_lib_dir)/include \
+	$(PF)/include \
+	$(PF)/share/man/man1
+files_g95 = \
+	$(PF)/bin/gfortran$(pkg_ver) \
+	$(gcc_lexec_dir)/f951 
+
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+  files_g95 += \
+	$(PF)/share/man/man1/gfortran$(pkg_ver).1
+endif
+
+dirs_flib = \
+	$(docdir)/$(p_base)/fortran \
+	$(PF)/$(libdir) \
+
+files_flib = \
+	$(PF)/$(libdir)/libgfortran.so.*
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-libfortran: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_flib)
+	dh_installdirs -p$(p_flib) $(dirs_flib)
+	DH_COMPAT=2 dh_movefiles -p$(p_flib) $(files_flib)
+	debian/dh_doclink -p$(p_flib) $(p_base)
+
+	dh_strip -p$(p_flib)
+	dh_compress -p$(p_flib)
+	dh_fixperms -p$(p_flib)
+	dh_makeshlibs -p$(p_flib) -V '$(p_flib) (>= $(DEB_SOVERSION))'
+	dh_shlibdeps -p$(p_flib)
+	dh_gencontrol -p$(p_flib) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_flib)
+	dh_md5sums -p$(p_flib)
+	dh_builddeb -p$(p_flib)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib64fortran: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_f64lib)
+	dh_installdirs -p$(p_f64lib) \
+		$(PF)/lib64
+	DH_COMPAT=2 dh_movefiles -p$(p_f64lib) \
+		$(PF)/lib64/libgfortran.so.*
+
+	debian/dh_doclink -p$(p_f64lib) $(p_base)
+
+	dh_strip -p$(p_f64lib)
+	dh_compress -p$(p_f64lib)
+	dh_fixperms -p$(p_f64lib)
+	dh_makeshlibs -p$(p_f64lib) -V '$(p_f64lib) (>= $(DEB_SOVERSION))'
+#	dh_shlibdeps -p$(p_f64lib)
+	dh_gencontrol -p$(p_f64lib) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_f64lib)
+	dh_md5sums -p$(p_f64lib)
+	dh_builddeb -p$(p_f64lib)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib32fortran: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_f32lib)
+	dh_installdirs -p$(p_f32lib) \
+		$(lib32)
+	DH_COMPAT=2 dh_movefiles -p$(p_f32lib) \
+		$(lib32)/libgfortran.so.*
+
+	debian/dh_doclink -p$(p_f32lib) $(p_base)
+
+	dh_strip -p$(p_f32lib)
+	dh_compress -p$(p_f32lib)
+	dh_fixperms -p$(p_f32lib)
+	dh_makeshlibs -p$(p_f32lib) -V '$(p_f32lib) (>= $(DEB_SOVERSION))'
+#	dh_shlibdeps -p$(p_f32lib)
+	dh_gencontrol -p$(p_f32lib) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_f32lib)
+	dh_md5sums -p$(p_f32lib)
+	dh_builddeb -p$(p_f32lib)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-fdev: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_g95)
+	dh_installdirs -p$(p_g95) $(dirs_g95)
+
+	rm -f $(d)/$(gcc_lib_dir)/libgfortranbegin.la
+	rm -f $(d)/$(gcc_lib_dir)/$(biarchsubdir)/libgfortranbegin.la
+
+	DH_COMPAT=2 dh_movefiles -p$(p_g95) $(files_g95)
+
+	rm -f $(d)/$(PF)/lib/libgfortran*.{la,so}
+	mv $(d)/$(PF)/lib/libgfortran*.a $(d_g95)/$(gcc_lib_dir)/
+	dh_link -p$(p_g95) \
+	  /$(PF)/$(libdir)/libgfortran.so.$(FORTRAN_SONAME) \
+	  /$(gcc_lib_dir)/libgfortran.so
+
+	ln -sf gfortran$(pkg_ver) \
+	    $(d_g95)/$(PF)/bin/$(DEB_TARGET_GNU_TYPE)-gfortran$(pkg_ver)
+	ln -sf gfortran$(pkg_ver) \
+	    $(d_g95)/$(PF)/bin/$(TARGET_ALIAS)-gfortran$(pkg_ver)
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+	ln -sf gfortran$(pkg_ver).1 \
+	    $(d_g95)/$(PF)/share/man/man1/$(DEB_TARGET_GNU_TYPE)-gfortran$(pkg_ver).1
+	ln -sf gfortran$(pkg_ver).1 \
+	    $(d_g95)/$(PF)/share/man/man1/$(TARGET_ALIAS)-gfortran$(pkg_ver).1
+endif
+
+	debian/dh_doclink -p$(p_g95) $(p_base)
+
+	cp -p $(srcdir)/gcc/fortran/ChangeLog \
+		$(d_g95)/$(docdir)/$(p_base)/fortran/changelog
+	debian/dh_rmemptydirs -p$(p_g95)
+
+	dh_strip -p$(p_g95)
+	dh_compress -p$(p_g95)
+	dh_fixperms -p$(p_g95)
+	dh_shlibdeps -p$(p_g95)
+	dh_gencontrol -p$(p_g95) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_g95)
+	dh_md5sums -p$(p_g95)
+	dh_builddeb -p$(p_g95)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-fdev-multi: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_g95_m)
+	dh_installdirs -p$(p_g95_m) \
+		$(docdir) \
+		$(gcc_lib_dir)/$(biarchsubdir)
+
+ifeq ($(biarch),yes)
+	rm -f $(d)/$(PF)/lib64/libgfortran*.{la,so}
+	mkdir -p $(d_g95_m)/$(gcc_lib_dir)/$(biarchsubdir)
+	mv $(d)/$(PF)/lib64/libgfortran*.a $(d_g95_m)/$(gcc_lib_dir)/$(biarchsubdir)/
+	dh_link -p$(p_g95_m) \
+	  /$(PF)/lib64/libgfortran.so.$(FORTRAN_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libgfortran.so
+endif
+ifeq ($(biarch32),yes)
+	rm -f $(d)/$(lib32)/libgfortran*.{la,so}
+	mkdir -p $(d_g95_m)/$(gcc_lib_dir)/$(biarchsubdir)
+	mv $(d)/$(lib32)/libgfortran*.a $(d_g95_m)/$(gcc_lib_dir)/$(biarchsubdir)/
+	dh_link -p$(p_g95_m) \
+	  /$(lib32)/libgfortran.so.$(FORTRAN_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libgfortran.so
+endif
+
+	debian/dh_doclink -p$(p_g95_m) $(p_base)
+	debian/dh_rmemptydirs -p$(p_g95_m)
+	dh_strip -p$(p_g95_m)
+	dh_compress -p$(p_g95_m)
+	dh_fixperms -p$(p_g95_m)
+	dh_shlibdeps -p$(p_g95_m)
+	dh_gencontrol -p$(p_g95_m) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_g95_m)
+	dh_md5sums -p$(p_g95_m)
+	dh_builddeb -p$(p_g95_m)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-fortran-doc: $(build_html_stamp) $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_g95d)
+	dh_installdirs -p$(p_g95d) \
+		$(docdir)/$(p_base)/fortran \
+		$(PF)/share/info
+	DH_COMPAT=2 dh_movefiles -p$(p_g95d) \
+		$(PF)/share/info/gfortran*
+
+	debian/dh_doclink -p$(p_g95d) $(p_base)
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+	dh_installdocs -p$(p_g95d)
+	rm -f $(d_g95d)/$(docdir)/$(p_base)/copyright
+	cp -p html/gfortran.html $(d_g95d)/$(docdir)/$(p_base)/fortran/
+endif
+
+	dh_compress -p$(p_g95d)
+	dh_fixperms -p$(p_g95d)
+	dh_installdeb -p$(p_g95d)
+	dh_gencontrol -p$(p_g95d) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_md5sums -p$(p_g95d)
+	dh_builddeb -p$(p_g95d)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-java.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-java.mk
@@ -0,0 +1,575 @@
+ifeq ($(with_separate_libgcj),yes)
+  ifeq ($(PKGSOURCE),gcj-$(BASE_VERSION))
+    arch_binaries  := $(arch_binaries) jbase
+  endif
+else
+  arch_binaries  := $(arch_binaries) jbase
+endif
+
+ifeq ($(with_libgcj),yes)
+  ifeq ($(with_java),yes)
+    arch_binaries  := $(arch_binaries) java gcjapplet
+    indep_binaries  := $(indep_binaries) libgcjjar
+  endif
+
+  ifeq ($(with_javadev),yes)
+    arch_binaries  := $(arch_binaries) libgcjdev libgcjdbg
+    indep_binaries := $(indep_binaries) libgcjsrc
+    ifeq ($(with_libgcj_doc),yes)
+      indep_binaries := $(indep_binaries) libgcjdoc
+    endif
+  endif
+endif
+
+ifeq ($(with_gcj),yes)
+    arch_binaries  := $(arch_binaries) gcj
+endif
+
+p_jbase	= gcj$(pkg_ver)-base
+p_gcj	= gcj$(pkg_ver)
+p_gij	= gij$(pkg_ver)
+p_jlib	= libgcj$(PKG_LIBGCJ_EXT)
+p_jdbg	= libgcj$(PKG_GCJ_EXT)-dbg
+p_jar	= libgcj$(PKG_GCJ_EXT)-jar
+p_jlibx	= libgcj$(PKG_LIBGCJ_EXT)-awt
+p_jdev	= libgcj$(PKG_GCJ_EXT)-dev
+p_jsrc	= libgcj$(PKG_GCJ_EXT)-src
+p_view	= gappletviewer$(pkg_ver)
+p_plug	= gcjwebplugin$(pkg_ver)
+p_jdoc	= libgcj-doc
+
+d_jbase	= debian/$(p_jbase)
+d_gcj	= debian/$(p_gcj)
+d_gij	= debian/$(p_gij)
+d_jlib	= debian/$(p_jlib)
+d_jdbg	= debian/$(p_jdbg)
+d_jar	= debian/$(p_jar)
+d_jlibx	= debian/$(p_jlibx)
+d_jdev	= debian/$(p_jdev)
+d_jsrc	= debian/$(p_jsrc)
+d_jdoc	= debian/$(p_jdoc)
+d_view	= debian/$(p_view)
+d_plug	= debian/$(p_plug)
+
+gcj_vlibdir	= $(PF)/$(libdir)/gcj-$(BASE_VERSION)-$(GCJ_SONAME)
+
+dirs_gcj = \
+	$(docdir)/$(p_jbase) \
+	$(PF)/bin \
+	$(PF)/share/man/man1 \
+	$(PF)/share/info \
+	$(gcc_lexec_dir)
+files_gcj = \
+	$(PF)/bin/{gcj,gjar,gjarsigner,gcjh,gjavah,gnative2ascii,grmic,gtnameserv,jv-convert,jcf-dump}$(pkg_ver) \
+	$(PF)/share/man/man1/{gjar,gjarsigner,gcjh,gjavah,gnative2ascii,grmic,gtnameserv}$(pkg_ver).1 \
+	$(gcc_lexec_dir)/{ecj1,jc1,jvgenmain}
+
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+  files_gcj += \
+	$(PF)/share/info/gcj* \
+	$(PF)/share/man/man1/{gcj,jv-convert,jcf-dump}$(pkg_ver).1
+endif
+
+dirs_gij = \
+	$(docdir)/$(p_jbase) \
+	$(PF)/bin \
+	$(PF)/share/man/man1 \
+	var/lib/gcj$(pkg_ver)
+
+files_gij = \
+	$(PF)/bin/{gij,gcj-dbtool,gorbd,grmid,grmiregistry,gkeytool,gserialver}$(pkg_ver) \
+	$(PF)/share/man/man1/{gorbd,grmid,grmiregistry,gkeytool,gserialver}$(pkg_ver).1
+
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+  files_gij += \
+	$(PF)/share/man/man1/{gij,gcj-dbtool}$(pkg_ver).1
+endif
+
+dirs_jlib = \
+	$(docdir)/$(p_jbase) \
+	$(gcj_vlibdir) \
+	$(PF)/$(libdir)
+
+files_jlib = \
+	$(PF)/$(libdir)/libgij.so.* \
+	$(PF)/$(libdir)/libgcj-tools.so.* \
+	$(PF)/$(libdir)/libgcj.so.* \
+	$(gcj_vlibdir)/libjvm.so \
+
+#	$(gcj_vlibdir)/libgconfpeer.so
+
+ifeq ($(with_java_alsa),yes)
+  files_jlib += \
+	$(gcj_vlibdir)/libgjsmalsa.so
+endif
+
+dirs_jar = \
+	$(PF)/share/java
+
+dirs_jlibx = \
+	$(PF)/$(libdir) \
+	$(gcj_vlibdir) \
+	$(PF)/share/java
+
+files_jlibx = \
+	$(gcj_vlibdir)/libjawt.so \
+	$(gcj_vlibdir)/libgtkpeer.so
+
+dirs_jdev = \
+	$(docdir)/$(p_jbase)/examples \
+	$(PF)/{include,lib} \
+	$(gcc_lib_dir)/include/gcj
+
+files_jdev = \
+	$(cxx_inc_dir)/{org,gcj,java,javax} \
+	$(cxx_inc_dir)/gnu/{awt,classpath,gcj,java,javax} \
+	$(gcc_lib_dir)/include/{jni.h,jni_md.h,jvmpi.h} \
+	$(gcc_lib_dir)/include/{jawt.h,jawt_md.h} \
+	$(gcc_lib_dir)/include/gcj/libgcj-config.h \
+	$(PF)/$(libdir)/libgij.so \
+	$(PF)/$(libdir)/libgcj.{so,spec} \
+	$(PF)/$(libdir)/libgcj-tools.so \
+	$(PF)/$(libdir)/pkgconfig/libgcj-$(BASE_VERSION).pc
+
+ifeq ($(with_static_java),yes)
+  files_jdev += \
+	$(PF)/$(libdir)/libgij.a \
+	$(PF)/$(libdir)/libgcj.a \
+	$(PF)/$(libdir)/libgcj-tools.a
+endif
+
+ifeq ($(with_standalone_gcj),yes)
+
+  dirs_gcj += \
+	$(gcc_lib_dir)/include \
+	$(PF)/share/man/man1
+
+  files_gcj += \
+	$(PF)/bin/{cpp,gcc,gcov}$(pkg_ver) \
+	$(gcc_lexec_dir)/cc1 \
+	$(gcc_lexec_dir)/collect2 \
+	$(gcc_lib_dir)/{libgcc*,libgcov.a,*.o} \
+	$(gcc_lib_dir)/include/README \
+	$(gcc_lib_dir)/include/{float,iso646,limits,std*,syslimits,unwind,varargs}.h \
+	$(shell for d in asm bits gnu linux; do \
+		  test -e $(d)/$(gcc_lib_dir)/include/$$d \
+		    && echo $(gcc_lib_dir)/include/$$d; \
+		done) \
+	$(shell test -e $(d)/$(gcc_lib_dir)/SYSCALLS.c.X \
+		&& echo $(gcc_lib_dir)/SYSCALLS.c.X) \
+	$(shell for h in {,e,p,x}mmintrin.h mm3dnow.h mm_malloc.h; do \
+		  test -e $(d)/$(gcc_lib_dir)/include/$$h \
+		    && echo $(gcc_lib_dir)/include/$$h; \
+		done) \
+
+  ifneq ($(GFDL_INVARIANT_FREE),yes)
+    files_gcj += \
+	$(PF)/share/man/man1/{cpp,gcc,gcov}$(pkg_ver).1
+  endif
+
+  ifeq ($(biarch),yes)
+    files_gcj += $(gcc_lib_dir)/$(biarchsubdir)/{libgcc*,libgcov.a,*.o}
+  endif
+  ifeq ($(biarch32),yes)
+    files_gcj += $(gcc_lib_dir)/$(biarchsubdir)/{libgcc*,*.o}
+  endif
+
+  ifeq ($(DEB_HOST_ARCH),ia64)
+    files_gcj += $(gcc_lib_dir)/include/ia64intrin.h
+  endif
+
+  ifeq ($(DEB_HOST_ARCH),m68k)
+    files_gcj += $(gcc_lib_dir)/include/math-68881.h
+  endif
+
+  ifeq ($(DEB_TARGET_ARCH),$(findstring $(DEB_TARGET_ARCH),powerpc ppc64))
+    files_gcj += $(gcc_lib_dir)/include/{altivec.h,ppc-asm.h,spe.h}
+  endif
+
+endif
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-jbase: $(install_dependencies)
+	dh_testdir
+	dh_testroot
+	rm -rf $(d_jbase)
+	dh_installdirs -p$(p_jbase)
+	dh_installdocs -p$(p_jbase)
+	dh_installchangelogs -p$(p_jbase)
+	dh_compress -p$(p_jbase)
+	dh_fixperms -p$(p_jbase)
+	dh_gencontrol -p$(p_jbase) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_jbase)
+	dh_md5sums -p$(p_jbase)
+	dh_builddeb -p$(p_jbase)
+	touch $@
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-libgcjjar: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	dh_installdirs -p$(p_jar) $(dirs_jar)
+	mv $(d)/$(PF)/share/java/libgcj-$(BASE_VERSION).jar \
+		$(d_jar)/$(PF)/share/java/
+	mv $(d)/$(PF)/share/java/libgcj-tools-$(BASE_VERSION).jar \
+		$(d_jar)/$(PF)/share/java/
+
+	debian/dh_doclink -p$(p_jar) $(p_jbase)
+	debian/dh_rmemptydirs -p$(p_jar)
+	dh_compress -p$(p_jar)
+	dh_fixperms -p$(p_jar)
+	dh_gencontrol -p$(p_jar) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_jar)
+	dh_md5sums -p$(p_jar)
+	dh_builddeb -p$(p_jar)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-libgcjsrc: $(install_stamp)
+	dh_testdir
+	dh_testroot
+
+	$(MAKE) -C $(buildlibdir)/libjava \
+		DESTDIR=$(PWD)/$(d) install-src.zip
+	mkdir -p $(d_jsrc)/$(PF)/share/java
+	mv $(d)/$(PF)/share/java/src-$(BASE_VERSION).zip \
+	   $(d_jsrc)/$(PF)/share/java/libgcj-src-$(BASE_VERSION).zip
+
+	: #  add files for the classpath examples
+	cd $(srcdir)/libjava/classpath/examples && \
+	  find ! -type d ! -name 'Makefile.??' ! -name '*.java' \
+	  | $(builddir)/fastjar/fastjar -uvfM@ \
+		$(PWD)/$(d_jsrc)/$(PF)/share/java/libgcj-src-$(BASE_VERSION).zip
+
+	debian/dh_doclink -p$(p_jsrc) $(p_jbase)
+	debian/dh_rmemptydirs -p$(p_jsrc)
+	dh_compress -p$(p_jsrc)
+	dh_fixperms -p$(p_jsrc)
+	dh_gencontrol -p$(p_jsrc) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_jsrc)
+	dh_md5sums -p$(p_jsrc)
+	dh_builddeb -p$(p_jsrc)
+
+	touch $@
+
+# ----------------------------------------------------------------------
+libgcj_version = $(shell $(builddir)/gcc/xgcc --version \
+			 | sed -n '/GCC/s/.*(GCC) *//p')
+libgcj_title = LibGCJ Classpath
+libgcjhbox_href = http://gcc.gnu.org/java
+libgcjhbox = <span class='logo'><a href='$(libgcjhbox_href)' target='_top'>$(title)</a> ($(libgcj_version))
+
+$(build_javadoc_stamp): $(build_stamp)
+	mkdir -p $(builddir)/java-src
+	cd $(builddir)/java-src && $(builddir)/fastjar/fastjar -xf \
+		$(buildlibdir)/libjava/src.zip
+
+	mkdir -p $(builddir)/html
+	gjdoc \
+	  -use \
+	  -sourcepath "$(builddir)/java-src" \
+	  -encoding UTF-8 \
+	  -breakiterator \
+	  -licensetext \
+	  -linksource \
+	  -splitindex \
+	  -d $(builddir)/html \
+	  -doctitle "$(title) $(libgcj_version)" \
+	  -windowtitle "$(title) $(libgcj_version) Documentation" \
+	  -header "$(classpathbox)" \
+	  -footer "$(classpathbox)" \
+	  -subpackages gnu:java:javax:org
+
+	$(MAKE) -C $(buildlibdir)/libjava/classpath/examples
+
+	touch $@
+
+
+$(binary_stamp)-libgcjdoc: $(install_stamp) #$(build_javadoc_stamp)
+	dh_testdir
+	dh_testroot
+
+	$(MAKE) -C $(buildlibdir)/libjava/classpath/examples \
+	    GLIBJ_CLASSPATH="$(buildlibdir)/libjava/libgcj-$(BASE_VERSION).jar:$(buildlibdir)/libjava/libgcj-tools-$(BASE_VERSION).jar" \
+	    DESTDIR=$(PWD)/$(d_jdoc) \
+	    pkgdatadir=/usr/share/doc/$(p_jbase) \
+		install
+
+	dh_installdocs -p$(p_jdoc)
+	dh_installchangelogs -p$(p_jdoc)
+	mkdir -p $(d_jdoc)/usr/share/doc/$(p_jbase)
+#	cp -al $(builddir)/html $(d_jdoc)/usr/share/doc/$(p_jbase)/
+#	ln -sf ../$(p_jbase)/html $(d_jdoc)/usr/share/doc/$(p_jdoc)/html
+	dh_compress -p$(p_jdoc) -X.java -X.c
+	dh_fixperms -p$(p_jdoc)
+	dh_gencontrol -p$(p_jdoc) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_jdoc)
+	dh_md5sums -p$(p_jdoc)
+	dh_builddeb -p$(p_jdoc)
+
+	touch $@
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-java: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	if [ -d $(d)/$(PF)/$(libdir)/gcj-$(GCC_VERSION) ]; then \
+	  ls -l $(d)/$(PF)/$(libdir)/gcj-$(GCC_VERSION); \
+	  mv $(d)/$(PF)/$(libdir)/gcj-$(GCC_VERSION)/* $(d)/$(gcj_vlibdir)/; \
+	fi
+
+	dh_installdirs -p$(p_gij)   $(dirs_gij)
+	dh_installdirs -p$(p_jlib)  $(dirs_jlib)
+	dh_installdirs -p$(p_jlibx) $(dirs_jlibx)
+
+	DH_COMPAT=2 dh_movefiles -p$(p_gij)   $(files_gij)
+	DH_COMPAT=2 dh_movefiles -p$(p_jlib)  $(files_jlib)
+	DH_COMPAT=2 dh_movefiles -p$(p_jlibx) $(files_jlibx)
+
+ifeq ($(DEB_HOST_ARCH),hppa)
+	mv $(d_gij)/$(PF)/bin/gij$(pkg_ver) \
+		$(d_gij)/$(PF)/bin/gij$(pkg_ver).bin
+	install -m755 debian/gij-hppa $(d_gij)/$(PF)/bin/gij$(pkg_ver)
+endif
+
+	ln -s ../libgcj.so.$(GCJ_SONAME) \
+		$(d_jlib)/$(gcj_vlibdir)/libgcj_bc.so.1
+
+	cp -p $(srcdir)/libjava/{NEWS,README,THANKS} \
+		$(d_gij)/usr/share/doc/$(p_jbase)/
+
+	debian/dh_doclink -p$(p_gij)   $(p_jbase)
+	debian/dh_doclink -p$(p_jlib)  $(p_jbase)
+	debian/dh_doclink -p$(p_jlibx) $(p_jbase)
+
+ifeq ($(with_separate_libgcj),yes)
+  ifeq ($(PKGSOURCE),gcj-$(BASE_VERSION))
+    ifeq ($(with_check),yes)
+	cp -p test-summary $(d_gij)/usr/share/doc/$(p_jbase)/test-summary
+    endif
+  endif
+endif
+	debian/dh_rmemptydirs -p$(p_gij)
+	debian/dh_rmemptydirs -p$(p_jlib)
+	debian/dh_rmemptydirs -p$(p_jlibx)
+
+	mkdir -p $(d_gij)/var/lib/gcj$(pkg_ver)
+
+	dh_makeshlibs -p$(p_jlib) -V '$(p_jlib) (>= $(DEB_GCJ_SOVERSION))'
+	echo "libgcj_bc 1 libgcj-bc (>= 4.1.2-1)" >> debian/$(p_jlib)/DEBIAN/shlibs
+	cat debian/$(p_jlib)/DEBIAN/shlibs >> debian/shlibs.local
+
+	dh_makeshlibs -p$(p_jlibx) -V '$(p_jlibx) (>= $(DEB_GCJ_SOVERSION))'
+
+	-cd $(d_jlibx)/$(PF)/lib/gcj$(pkg_ver) \
+	  && ldd libjawt.so libgtkpeer.so
+	DH_COMPAT=5 dh_strip \
+		-p$(p_gij) -p$(p_jlib) -p$(p_jlibx) --dbg-package=$(p_jdbg)
+	-cd $(d_jlibx)/$(PF)/lib/gcj$(pkg_ver) \
+	  && ldd libjawt.so libgtkpeer.so
+
+	dh_compress -p$(p_gij) -p$(p_jlib) -p$(p_jlibx)
+	dh_fixperms -p$(p_gij) -p$(p_jlib) -p$(p_jlibx)
+# the libstdc++ binary packages aren't built yet ...
+	echo 'libstdc++ $(CXX_SONAME) libstdc++$(CXX_SONAME) (>= $(DEB_STDCXX_SOVERSION))' \
+	    >> debian/shlibs.local
+	dh_shlibdeps \
+		-L$(p_jlib) \
+		-l$(d_lib)/$(PF)/$(libdir):$(d_jlib)/$(PF)/$(libdir) \
+		-p$(p_gij) -p$(p_jlib) -p$(p_jlibx)
+	sed -e 's/$(p_jlib)[^,]*//' -e 's/, *,/,/' debian/$(p_jlib).substvars \
+		>> debian/$(p_jlib).substvars.tmp \
+	    && mv -f debian/$(p_jlib).substvars.tmp debian/$(p_jlib).substvars
+	dh_gencontrol \
+		-p$(p_gij) -p$(p_jlib) -p$(p_jlibx) \
+		-- -v$(DEB_VERSION) $(common_substvars)
+
+	dh_installdeb -p$(p_gij) -p$(p_jlib) -p$(p_jlibx)
+	dh_md5sums -p$(p_gij) -p$(p_jlib) -p$(p_jlibx)
+	dh_builddeb -p$(p_gij) -p$(p_jlib) -p$(p_jlibx)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-gcj: $(build_html_stamp) $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_gcj)
+	dh_installdirs -p$(p_gcj)  $(dirs_gcj)
+
+	mkdir -p $(d_gcj)/usr/share/lintian/overrides
+	cp -p debian/$(p_gcj).overrides \
+		$(d_gcj)/usr/share/lintian/overrides/$(p_gcj)
+	cp -p $(srcdir)/gcc/java/ChangeLog \
+		$(d_gcj)/usr/share/doc/$(p_jbase)/changelog.gcj
+	cp -p $(srcdir)/libjava/ChangeLog \
+		$(d_gcj)/usr/share/doc/$(p_jbase)/changelog.libjava
+
+ifeq ($(with_standalone_gcj),yes)
+	rm -f $(d)/$(PF)/$(libdir)/libgcc_s.so
+	ln -sf /$(libdir)/libgcc_s.so.$(GCC_SONAME) $(d)/$(gcc_lib_dir)/libgcc_s.so
+endif
+	DH_COMPAT=2 dh_movefiles -p$(p_gcj)  $(files_gcj)
+
+	ln -sf gcj$(pkg_ver) \
+	    $(d_gcj)/$(PF)/bin/$(TARGET_ALIAS)-gcj$(pkg_ver)
+
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+	ln -sf gcj$(pkg_ver).1 \
+	    $(d_gcj)/$(PF)/share/man/man1/$(TARGET_ALIAS)-gcj$(pkg_ver).1
+	cp -p html/gcj.html $(d_gcj)/$(docdir)/$(p_jbase)/
+endif
+	debian/dh_doclink -p$(p_gcj) $(p_jbase)
+
+	cp -p debian/FAQ.gcj $(d_gcj)/$(docdir)/$(p_jbase)/
+
+	cp -p debian/gcj-wrapper$(pkg_ver) $(d_gcj)/$(PF)/bin/
+	chmod 755 $(d_gcj)/$(PF)/bin/gcj-wrapper$(pkg_ver)
+	cp -p debian/gcj-wrapper$(pkg_ver).1 $(d_gcj)/$(PF)/share/man/man1/
+
+	debian/dh_rmemptydirs -p$(p_gcj)
+
+	dh_strip -p$(p_gcj)
+	dh_compress -p$(p_gcj) -X.java
+	dh_fixperms -p$(p_gcj)
+	: # FIXME: remove it temporarily, insane dpkg-shlibdeps
+	rm -f $(d_jlib)/$(gcj_vlibdir)/libgcj_bc.so.1
+	dh_shlibdeps -p$(p_gcj) -l$(d_jlib)/$(PF)/lib -L$(p_jlib)
+	ln -s ../libgcj.so.$(GCJ_SONAME) \
+		$(d_jlib)/$(gcj_vlibdir)/libgcj_bc.so.1
+	dh_gencontrol -p$(p_gcj) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_gcj)
+	dh_md5sums -p$(p_gcj)
+	dh_builddeb -p$(p_gcj)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-libgcjdev: $(build_html_stamp) $(install_stamp) $(binary_stamp)-java
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	dh_installdirs -p$(p_jdev) $(dirs_jdev)
+
+	DH_COMPAT=2 dh_movefiles -p$(p_jdev) $(files_jdev)
+
+	for i in libgij libgcj libgcj-tools; do \
+	  dh_link -p$(p_jdev) /$(PF)/$(libdir)/$$i.so.$(GCJ_SONAME) \
+	    $(gcc_lib_dir)/$$i.so; \
+	  rm -f $(d_jdev)/$(PF)/$(libdir)/$$i.{la,so}; \
+	done
+ifeq ($(with_static_java),yes)
+	for i in libgij libgcj libgcj-tools; do \
+	  mv $(d_jdev)/$(PF)/$(libdir)/$$i.a $(d_jdev)/$(gcc_lib_dir)/; \
+	done
+endif
+
+	ln -sf libgcj-$(BASE_VERSION).pc \
+		$(d_jdev)/$(PF)/$(libdir)/pkgconfig/libgcj$(PKG_GCJ_EXT).pc
+
+	mv $(d_jdev)/$(PF)/$(libdir)/libgcj.spec $(d_jdev)/$(gcc_lib_dir)/
+
+	install -m 755 $(d)/$(PF)/lib/libgcj_bc.so.1 \
+		$(d_jdev)/$(gcc_lib_dir)/libgcj_bc.so
+
+	debian/dh_doclink -p$(p_jdev) $(p_jbase)
+
+	debian/dh_rmemptydirs -p$(p_jdev)
+
+	mkdir -p $(d_jdev)/usr/share/lintian/overrides
+	cp -p debian/$(p_jdev).overrides \
+		$(d_jdev)/usr/share/lintian/overrides/$(p_jdev)
+
+	DH_COMPAT=5 dh_strip -p$(p_jdev) --dbg-package=$(p_jdbg)
+	dh_compress -p$(p_jdev) -X.java
+	dh_fixperms -p$(p_jdev)
+	dh_shlibdeps \
+		-l$(d_lib)/$(PF)/$(libdir):$(d_jlib)/$(PF)/$(libdir) \
+		-p$(p_jdev)
+	dh_gencontrol -p$(p_jdev) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_jdev)
+	dh_md5sums -p$(p_jdev)
+	dh_builddeb -p$(p_jdev)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-libgcjdbg: $(install_stamp) $(binary_stamp)-java $(binary_stamp)-libgcjdev $(binary_stamp)-gcjapplet
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	debian/dh_doclink -p$(p_jdbg) $(p_jbase)
+
+	for i in libgij libgcj libgcj-tools; do \
+	  if [ -f $(d_jdbg)/usr/lib/debug/usr/lib/$$i.so.$(GCJ_SONAME).0.0 ]; then \
+	    ln -sf $$i.so.$(GCJ_SONAME).0.0 \
+	      $(d_jdbg)/usr/lib/debug/usr/lib/$$i.so.$(GCJ_SONAME); \
+	  fi; \
+	done
+
+	dh_compress -p$(p_jdbg)
+	dh_fixperms -p$(p_jdbg)
+	dh_gencontrol -p$(p_jdbg) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_jdbg)
+	dh_md5sums -p$(p_jdbg)
+	dh_builddeb -p$(p_jdbg)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-gcjapplet: $(install_stamp) $(binary_stamp)-java
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	dh_installdirs -p$(p_view) \
+		$(PF)/bin \
+		$(PF)/share/man/man1
+	DH_COMPAT=2 dh_movefiles -p$(p_view) \
+		$(PF)/bin/gappletviewer$(pkg_ver) \
+		$(PF)/share/man/man1/gappletviewer$(pkg_ver).1
+
+ifeq ($(with_pkg_plugin),yes)
+	dh_installdirs -p$(p_plug) \
+		$(gcj_vlibdir) \
+		$(foreach d, $(browser_plugin_dirs), usr/lib/$(d)/plugins)
+	DH_COMPAT=2 dh_movefiles -p$(p_plug) \
+		$(gcj_vlibdir)/libgcjwebplugin.so
+else
+	DH_COMPAT=2 dh_movefiles -p$(p_view) \
+		$(gcj_vlibdir)/libgcjwebplugin.so
+endif
+	rm -f $(d)/$(gcj_vlibdir)/libgcjwebplugin.*a
+
+	debian/dh_doclink -p$(p_view) $(p_jbase)
+
+	DH_COMPAT=5 dh_strip -p$(p_view) --dbg-package=$(p_jdbg)
+	dh_compress -p$(p_view)
+	dh_fixperms -p$(p_view)
+	dh_gencontrol -p$(p_view) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_view)
+	dh_md5sums -p$(p_view)
+	dh_builddeb -p$(p_view)
+
+ifeq ($(with_pkg_plugin),yes)
+	debian/dh_doclink -p$(p_plug) $(p_jbase)
+
+	DH_COMPAT=5 dh_strip -p$(p_plug) --dbg-package=$(p_jdbg)
+	dh_compress -p$(p_plug)
+	dh_fixperms -p$(p_plug)
+	dh_gencontrol -p$(p_plug) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_plug)
+	dh_md5sums -p$(p_plug)
+	dh_builddeb -p$(p_plug)
+endif
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-cpp-cross.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-cpp-cross.mk
@@ -0,0 +1,40 @@
+arch_binaries  := $(arch_binaries) cpp
+
+dirs_cpp = \
+	$(docdir) \
+	$(PF)/share/man/man1 \
+	$(PF)/bin \
+	$(gcc_lexec_dir)
+
+files_cpp = \
+	$(PF)/bin/$(DEB_TARGET_GNU_TYPE)-cpp$(pkg_ver) \
+	$(PF)/share/man/man1/$(DEB_TARGET_GNU_TYPE)-cpp$(pkg_ver).1 \
+	$(gcc_lexec_dir)/cc1
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-cpp: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_cpp)
+	dh_installdirs -p$(p_cpp) $(dirs_cpp)
+	DH_COMPAT=2 dh_movefiles -p$(p_cpp) $(files_cpp)
+
+	debian/dh_doclink -p$(p_cpp) $(p_base)
+	debian/dh_rmemptydirs -p$(p_cpp)
+
+	dh_strip -p$(p_cpp)
+	dh_compress -p$(p_cpp)
+	dh_fixperms -p$(p_cpp)
+	dh_shlibdeps -p$(p_cpp)
+	dh_gencontrol -p$(p_cpp) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_cpp)
+	sed 's/cross-/$(TP)/g;s/-ver/$(pkg_ver)/g;s/gcc/cpp/g' < debian/gcc-cross.postinst > debian/$(p_cpp)/DEBIAN/postinst
+	sed 's/cross-/$(TP)/g;s/-ver/$(pkg_ver)/g;s/gcc/cpp/g' < debian/gcc-cross.prerm > debian/$(p_cpp)/DEBIAN/prerm
+	chmod 755 debian/$(p_cpp)/DEBIAN/{postinst,prerm}
+	dh_md5sums -p$(p_cpp)
+	dh_builddeb -p$(p_cpp)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-libgcc-cross.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-libgcc-cross.mk
@@ -0,0 +1,158 @@
+ifeq ($(with_libgcc),yes)
+  arch_binaries	:= $(arch_binaries) libgcc
+endif
+ifeq ($(with_lib64gcc),yes)
+  arch_binaries	:= $(arch_binaries) lib64gcc
+endif
+ifeq ($(biarch32),yes)
+  arch_binaries	:= $(arch_binaries) lib32gcc
+endif
+
+p_lgcc		= libgcc$(GCC_SONAME)$(cross_lib_arch)
+d_lgcc		= debian/$(p_lgcc)
+
+p_l64gcc	= lib32gcc$(GCC_SONAME)$(cross_lib_arch)
+d_l64gcc	= debian/$(p_l32gcc)
+
+p_l64gcc	= lib64gcc$(GCC_SONAME)$(cross_lib_arch)
+d_l64gcc	= debian/$(p_l64gcc)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-libgcc: $(install_dependencies)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_lgcc)
+	dh_installdirs -p$(p_lgcc) \
+		$(docdir)/$(p_lgcc) \
+		$(PF)/$(DEB_TARGET_GNU_TYPE)/lib
+
+ifeq ($(with_shared_libgcc),yes)
+	mv $(d)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib/libgcc_s.so.$(GCC_SONAME) $(d_lgcc)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib/.
+endif
+
+	dh_installdocs -p$(p_lgcc)
+	dh_installchangelogs -p$(p_lgcc)
+
+	debian/dh_rmemptydirs -p$(p_lgcc)
+	PATH=/usr/share/dpkg-cross:$$PATH dh_strip -p$(p_lgcc)
+	dh_compress -p$(p_lgcc)
+	dh_fixperms -p$(p_lgcc)
+ifeq ($(with_shared_libgcc),yes)
+	dh_makeshlibs -p$(p_lgcc) -V '$(p_lgcc) (>= $(DEB_LIBGCC_SOVERSION))' -n
+	sed s/$(cross_lib_arch)//g < debian/$(p_lgcc)/DEBIAN/shlibs > debian/$(p_lgcc)/DEBIAN/shlibs.fixed
+	mv debian/$(p_lgcc)/DEBIAN/shlibs.fixed debian/$(p_lgcc)/DEBIAN/shlibs
+	cat debian/$(p_lgcc)/DEBIAN/shlibs >> debian/shlibs.local
+endif
+	ARCH=$(DEB_TARGET_ARCH) MAKEFLAGS="CC=something" dh_shlibdeps -p$(p_lgcc)
+	sed 's/\(lib[^ ]*\) /\1$(cross_lib_arch) /g' < debian/$(p_lgcc).substvars > debian/$(p_lgcc).substvars.new
+	mv debian/$(p_lgcc).substvars.new debian/$(p_lgcc).substvars
+	dh_gencontrol -p$(p_lgcc) \
+		-- -v$(DEB_LIBGCC_VERSION) $(common_substvars)
+	b=libgcc; v=$(GCC_SONAME); \
+	for ext in preinst postinst prerm postrm; do \
+	  if [ -f debian/$$b$$t.$$ext ]; then \
+	    cp -pf debian/$$b$$t.$$ext debian/$$b$$v$$t.$$ext; \
+	  fi; \
+	done
+	dh_installdeb -p$(p_lgcc)
+	dh_md5sums -p$(p_lgcc)
+	dh_builddeb -p$(p_lgcc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib64gcc: $(install_dependencies)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_l64gcc)
+	dh_installdirs -p$(p_l64gcc) \
+		$(docdir)/$(p_l64gcc) \
+		$(PF)/$(DEB_TARGET_GNU_TYPE)/lib64
+
+ifeq ($(with_shared_libgcc),yes)
+	mv $(d)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib64/libgcc_s.so.$(GCC_SONAME) $(d_l64gcc)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib64/.
+endif
+
+	dh_installdocs -p$(p_l64gcc)
+	dh_installchangelogs -p$(p_l64gcc)
+
+	debian/dh_rmemptydirs -p$(p_l64gcc)
+	PATH=/usr/share/dpkg-cross:$$PATH dh_strip -p$(p_l64gcc)
+	dh_compress -p$(p_l64gcc)
+	dh_fixperms -p$(p_l64gcc)
+ifeq ($(with_shared_libgcc),yes)
+	dh_makeshlibs -p$(p_l64gcc) \
+		-V '$(p_l64gcc) (>= $(DEB_LIBGCC_SOVERSION))' -n
+	sed s/$(cross_lib_arch)//g < debian/$(p_l64gcc)/DEBIAN/shlibs > debian/$(p_l64gcc)/DEBIAN/shlibs.fixed
+	mv debian/$(p_l64gcc)/DEBIAN/shlibs.fixed debian/$(p_l64gcc)/DEBIAN/shlibs
+	cat debian/$(p_l64gcc)/DEBIAN/shlibs >> debian/shlibs.local
+endif
+	ARCH=$(DEB_TARGET_ARCH) MAKEFLAGS="CC=something" dh_shlibdeps -p$(p_l64gcc)
+	sed 's/\(lib[^ ]*\) /\1$(cross_lib_arch) /g' < debian/$(p_l64gcc).substvars > debian/$(p_l64gcc).substvars.new
+	mv debian/$(p_l64gcc).substvars.new debian/$(p_l64gcc).substvars
+	dh_gencontrol -p$(p_l64gcc) \
+		-- -v$(DEB_VERSION) $(common_substvars)
+	b=libgcc; v=$(GCC_SONAME); \
+	for ext in preinst postinst prerm postrm; do \
+	  if [ -f debian/$$b$$t.$$ext ]; then \
+	    cp -pf debian/$$b$$t.$$ext debian/$$b$$v$$t.$$ext; \
+	  fi; \
+	done
+	dh_installdeb -p$(p_l64gcc)
+	dh_md5sums -p$(p_l64gcc)
+	dh_builddeb -p$(p_l64gcc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+
+$(binary_stamp)-lib32gcc: $(install_dependencies)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_l32gcc)
+	dh_installdirs -p$(p_l32gcc) \
+		$(docdir)/$(p_l32gcc) \
+		$(PF)/$(DEB_TARGET_GNU_TYPE)/lib32
+
+ifeq ($(with_shared_libgcc),yes)
+	mv $(d)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib32/libgcc_s.so.$(GCC_SONAME) $(d_l32gcc)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib32/.
+endif
+
+	dh_installdocs -p$(p_l32gcc)
+	dh_installchangelogs -p$(p_l32gcc)
+
+	debian/dh_rmemptydirs -p$(p_l32gcc)
+	PATH=/usr/share/dpkg-cross:$$PATH dh_strip -p$(p_l32gcc)
+	dh_compress -p$(p_l32gcc)
+	dh_fixperms -p$(p_l32gcc)
+ifeq ($(with_shared_libgcc),yes)
+	dh_makeshlibs -p$(p_l32gcc) \
+		-V '$(p_l32gcc) (>= $(DEB_LIBGCC_SOVERSION))' -n
+	sed s/$(cross_lib_arch)//g < debian/$(p_l32gcc)/DEBIAN/shlibs > debian/$(p_l32gcc)/DEBIAN/shlibs.fixed
+	mv debian/$(p_l32gcc)/DEBIAN/shlibs.fixed debian/$(p_l32gcc)/DEBIAN/shlibs
+	cat debian/$(p_l32gcc)/DEBIAN/shlibs >> debian/shlibs.local
+endif
+	ARCH=$(DEB_TARGET_ARCH) MAKEFLAGS="CC=something" dh_shlibdeps -p$(p_l32gcc)
+	sed 's/\(lib[^ ]*\) /\1$(cross_lib_arch) /g' < debian/$(p_l32gcc).substvars > debian/$(p_l32gcc).substvars.new
+	mv debian/$(p_l32gcc).substvars.new debian/$(p_l32gcc).substvars
+	dh_gencontrol -p$(p_l32gcc) \
+		-- -v$(DEB_VERSION) $(common_substvars)
+	b=libgcc; v=$(GCC_SONAME); \
+	for ext in preinst postinst prerm postrm; do \
+	  if [ -f debian/$$b$$t.$$ext ]; then \
+	    cp -pf debian/$$b$$t.$$ext debian/$$b$$v$$t.$$ext; \
+	  fi; \
+	done
+	dh_installdeb -p$(p_l32gcc)
+	dh_md5sums -p$(p_l32gcc)
+	dh_builddeb -p$(p_l32gcc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-gcc-cross.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-gcc-cross.mk
@@ -0,0 +1,109 @@
+arch_binaries  := $(arch_binaries) gcc
+
+# gcc must be moved after g77 and g++
+# not all files $(PF)/include/*.h are part of gcc,
+# but it becomes difficult to name all these files ...
+
+dirs_gcc = \
+	$(PF)/bin \
+	$(gcc_lexec_dir) \
+	$(gcc_lib_dir)/include \
+	$(PF)/share/man/man1 $(libdir)
+
+files_gcc = \
+	$(PF)/bin/$(DEB_TARGET_GNU_TYPE)-gcc$(pkg_ver) \
+	$(PF)/share/man/man1/$(DEB_TARGET_GNU_TYPE)-gcc$(pkg_ver).1 \
+	$(gcc_lexec_dir)/collect2 \
+	$(gcc_lib_dir)/{libgcc*,*.o} \
+	$(gcc_lib_dir)/include/README \
+	$(gcc_lib_dir)/include/{float,iso646,limits,std*,syslimits,unwind,varargs}.h \
+	$(shell for d in asm bits gnu linux; do \
+		  test -e $(d)/$(gcc_lib_dir)/include/$$d \
+		    && echo $(gcc_lib_dir)/include/$$d; \
+		done) \
+	$(shell test -e $(d)/$(gcc_lib_dir)/SYSCALLS.c.X \
+	       && echo $(gcc_lib_dir)/SYSCALLS.c.X) \
+	$(shell for h in {,e,p,x}mmintrin.h mm3dnow.h mm_malloc.h; do \
+	         test -e $(d)/$(gcc_lib_dir)/include/$$h \
+	           && echo $(gcc_lib_dir)/include/$$h; \
+	       done) \
+
+
+ifeq ($(biarch),yes)
+    files_gcc += $(gcc_lib_dir)/$(biarchsubdir)/{libgcc*,*.o}
+endif
+ifeq ($(biarch32),yes)
+    files_gcc += $(gcc_lib_dir)/$(biarchsubdir)/{libgcc*,*.o}
+endif
+
+ifeq ($(DEB_TARGET_ARCH),ia64)
+    files_gcc += $(gcc_lib_dir)/include/ia64intrin.h
+endif
+
+ifeq ($(DEB_TARGET_ARCH),m68k)
+    files_gcc += $(gcc_lib_dir)/include/math-68881.h
+endif
+
+ifeq ($(DEB_TARGET_ARCH),$(findstring $(DEB_TARGET_ARCH),powerpc ppc64))
+    files_gcc += $(gcc_lib_dir)/include/{altivec.h,ppc-asm.h}
+endif
+
+usr_doc_files = debian/README.Bugs \
+	$(shell test -f $(srcdir)/FAQ && echo $(srcdir)/FAQ)
+ifeq ($(with_check),yes)
+  usr_doc_files += test-summary
+endif
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-gcc: $(install_dependencies)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_gcc)
+	dh_installdirs -p$(p_gcc) $(dirs_gcc)
+
+	rm -f $(d)/$(PF)/$(libdir)/libgcc_s.so
+	ln -sf /$(PF)/$(DEB_TARGET_GNU_TYPE)/$(libdir)/libgcc_s.so.$(GCC_SONAME) $(d)/$(gcc_lib_dir)/libgcc_s.so
+ifeq ($(biarch),yes)
+	rm -f $(d)/$(PF)/$(lib64)/libgcc_s.so
+	dh_link -p$(p_gcc) \
+	  /$(PF)/$(DEB_TARGET_GNU_TYPE)/$(lib64)/libgcc_s.so.$(GCC_SONAME) /$(gcc_lib_dir)/libgcc_s_64.so \
+	  /$(PF)/$(DEB_TARGET_GNU_TYPE)/$(lib64)/libgcc_s.so.$(GCC_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libgcc_s.so
+endif
+ifeq ($(biarch32),yes)
+	mkdir -p $(d_gcc)/$(gcc_lib_dir)
+	mv $(d)/$(gcc_lib_dir)/$(biarchsubdir) $(d_gcc)/$(gcc_lib_dir)/
+	dh_link -p$(p_gcc) \
+	  /$(PF)/$(DEB_TARGET_GNU_TYPE)/lib32/libgcc_s.so.$(GCC_SONAME)  /$(gcc_lib_dir)/libgcc_s_32.so \
+	  /$(PF)/$(DEB_TARGET_GNU_TYPE)/lib32/libgcc_s.so.$(GCC_SONAME)  /$(gcc_lib_dir)/$(biarchsubdir)/libgcc_s_32.so \
+	  /$(PF)/$(DEB_TARGET_GNU_TYPE)/lib32/libgcc_s.so.$(GCC_SONAME)  /$(gcc_lib_dir)/$(biarchsubdir)/libgcc_s.so
+endif
+
+	DH_COMPAT=2 dh_movefiles -p$(p_gcc) $(files_gcc)
+
+#	dh_installdebconf
+	debian/dh_doclink -p$(p_gcc) $(p_base)
+	debian/dh_rmemptydirs -p$(p_gcc)
+	PATH=/usr/share/dpkg-cross:$$PATH dh_strip -p$(p_gcc)
+	dh_compress -p$(p_gcc)
+	dh_fixperms -p$(p_gcc)
+	dh_shlibdeps -p$(p_gcc)
+	dh_gencontrol -p$(p_gcc) -- -v$(DEB_VERSION) $(common_substvars)
+	sed 's/cross-/$(TP)/g;s/-ver/$(pkg_ver)/g' < debian/gcc-cross.postinst > debian/$(p_gcc)/DEBIAN/postinst
+	sed 's/cross-/$(TP)/g;s/-ver/$(pkg_ver)/g' < debian/gcc-cross.prerm > debian/$(p_gcc)/DEBIAN/prerm
+	chmod 755 debian/$(p_gcc)/DEBIAN/{postinst,prerm}
+	dh_installdeb -p$(p_gcc)
+	dh_md5sums -p$(p_gcc)
+	dh_builddeb -p$(p_gcc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+	: # remove empty directories, when all components are in place
+	for d in `find $(d) -depth -type d -empty 2> /dev/null`; do \
+	    while rmdir $$d 2> /dev/null; do d=`dirname $$d`; done; \
+	done
+
+	@echo "Listing installed files not included in any package:"
+	-find $(d) ! -type d
+
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-fixincl.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-fixincl.mk
@@ -0,0 +1,47 @@
+arch_binaries  := $(arch_binaries) fixincl
+
+p_fix	= fixincludes
+d_fix	= debian/$(p_fix)
+
+dirs_fix = \
+	$(docdir)/$(p_base)/fixincludes \
+	$(PF)/share/man/man1 \
+	$(PF)/bin \
+	$(gcc_lexec_dir) \
+	$(gcc_lib_dir)
+files_fix = \
+	$(gcc_lexec_dir)/install-tools \
+	$(gcc_lib_dir)/install-tools
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-fixincl: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_fix)
+	dh_installdirs -p$(p_fix) $(dirs_fix)
+	DH_COMPAT=2 dh_movefiles -p$(p_fix) $(files_fix)
+
+#	$(IP) $(builddir)/gcc/fixinc/fixincl $(d_fix)/$(PF)/lib/fixincludes/
+#	sed -e "s,^FIXINCL=\(.*\),FIXINCL=/$(PF)/lib/fixincludes/fixincl," \
+#	    $(builddir)/gcc/fixinc.sh \
+#		> $(d_fix)/$(PF)/lib/fixincludes/fixinc.sh
+#	chmod 755 $(d_fix)/$(PF)/lib/fixincludes/fixinc.sh
+	$(IR) $(srcdir)/fixincludes/README \
+	    $(d_fix)/$(docdir)/$(p_base)/fixincludes
+	sed -e 's,@LIBEXECDIR@,$(gcc_lexec_dir),g' debian/fixincludes.in \
+	    > $(d_fix)/$(PF)/bin/fixincludes
+	chmod 755 $(d_fix)/$(PF)/bin/fixincludes
+
+	debian/dh_doclink -p$(p_fix) $(p_base)
+	dh_strip -p$(p_fix)
+	dh_compress -p$(p_fix)
+	dh_fixperms -p$(p_fix)
+	dh_shlibdeps -p$(p_fix)
+	dh_gencontrol -p$(p_fix) -- -v$(DEB_EVERSION) $(common_substvars)
+	dh_installdeb -p$(p_fix)
+	dh_md5sums -p$(p_fix)
+	dh_builddeb -p$(p_fix)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-ada.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-ada.mk
@@ -0,0 +1,315 @@
+arch_binaries := $(arch_binaries) gnatbase ada
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+  indep_binaries := $(indep_binaries) ada-doc
+endif
+
+ifeq ($(with_libgnat),yes)
+  arch_binaries := $(arch_binaries) libgnat
+endif
+
+p_gbase	= gnat-$(GNAT_VERSION)-base
+p_gnat	= gnat-$(GNAT_VERSION)
+p_lgnat	= libgnat-$(GNAT_VERSION)
+p_lgnat_dbg = $(p_lgnat)-dbg
+p_lgnatvsn = libgnatvsn$(GNAT_VERSION)
+p_lgnatvsn_dev = $(p_lgnatvsn)-dev
+p_lgnatvsn_dbg = $(p_lgnatvsn)-dbg
+p_lgnatprj = libgnatprj$(GNAT_VERSION)
+p_lgnatprj_dev = $(p_lgnatprj)-dev
+p_lgnatprj_dbg = $(p_lgnatprj)-dbg
+p_gnatd	= $(p_gnat)-doc
+
+d_gbase	= debian/$(p_gbase)
+d_gnat	= debian/$(p_gnat)
+d_lgnat	= debian/$(p_lgnat)
+d_lgnatvsn = debian/$(p_lgnatvsn)
+d_lgnatprj = debian/$(p_lgnatprj)
+d_gnatd	= debian/$(p_gnatd)
+
+GNAT_TOOLS = gnat gnatbind gnatbl gnatchop gnatclean gnatfind gnatkr gnatlink \
+		gnatls gnatmake gnatname gnatprep gnatxref \
+		gprmake
+
+dirs_gnat = \
+	$(docdir)/$(p_base) \
+	$(PF)/bin \
+	$(PF)/share/man/man1 \
+	$(gcc_lib_dir) \
+	$(gcc_lexec_dir)
+
+files_gnat = \
+	$(gcc_lexec_dir)/gnat1 \
+	$(gcc_lib_dir)/{adalib,adainclude} \
+	$(foreach i,$(GNAT_TOOLS),$(PF)/bin/$(i))
+
+#	$(foreach i,$(GNAT_TOOLS),$(PF)/bin/$(i)-$(GNAT_VERSION))
+
+dirs_lgnat = \
+	$(docdir) \
+	$(PF)/lib
+files_lgnat = \
+	$(PF)/$(libdir)/lib{gnat,gnarl}-$(GNAT_SONAME).so.1
+
+$(binary_stamp)-gnatbase: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	dh_installdocs -p$(p_gbase) debian/README.gnat
+	dh_installchangelogs -p$(p_gbase) src/gcc/ada/ChangeLog
+	dh_compress -p$(p_gbase)
+	dh_fixperms -p$(p_gbase)
+	dh_gencontrol -p$(p_gbase) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_gbase)
+	dh_md5sums -p$(p_gbase)
+	dh_builddeb -p$(p_gbase)
+	touch $@
+
+
+$(binary_stamp)-libgnat: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	: # libgnat
+	rm -rf $(d_lgnat)
+	dh_installdirs -p$(p_lgnat) $(dirs_lgnat)
+
+	for lib in lib{gnat,gnarl}; do \
+	  vlib=$$lib-$(GNAT_SONAME); \
+	  mv $(d)/$(gcc_lib_dir)/adalib/$$vlib.so.1 $(d)/$(PF)/$(libdir)/. ; \
+	  rm -f $(d)/$(gcc_lib_dir)/adalib/$$lib.so.1; \
+	done
+	dh_movefiles -p$(p_lgnat) $(files_lgnat)
+
+	debian/dh_doclink -p$(p_lgnat) $(p_gbase)
+
+	debian/dh_rmemptydirs -p$(p_lgnat)
+
+	dh_strip -p$(p_lgnat) --dbg-package=$(p_lgnat_dbg)
+	dh_compress -p$(p_lgnat)
+	dh_fixperms -p$(p_lgnat)
+	b=libgnat; \
+	v=$(GNAT_VERSION); \
+	for ext in preinst postinst prerm postrm; do \
+	  for t in '' -dev -dbg; do \
+	    if [ -f debian/$$b$$t.$$ext ]; then \
+	      cp -pf debian/$$b$$t.$$ext debian/$$b$$v$$t.$$ext; \
+	    fi; \
+	  done; \
+	done
+	dh_makeshlibs -p$(p_lgnat) -V '$(p_lgnat) (>= $(DEB_VERSION))'
+	cat debian/$(p_lgnat)/DEBIAN/shlibs >> debian/shlibs.local
+
+	mkdir -p $(d_lgnat)/usr/share/lintian/overrides
+	cp -p debian/$(p_lgnat).overrides \
+		$(d_lgnat)/usr/share/lintian/overrides/$(p_lgnat)
+
+	dh_shlibdeps -p$(p_lgnat)
+	dh_gencontrol -p$(p_lgnat) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_lgnat)
+	dh_md5sums -p$(p_lgnat)
+	dh_builddeb -p$(p_lgnat)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+
+$(binary_stamp)-libgnatdbg: $(binary_stamp)-libgnat
+	debian/dh_doclink -p$(p_lgnat_dbg) $(p_gbase)
+	dh_compress -p$(p_lgnat_dbg)
+	dh_fixperms -p$(p_lgnat_dbg)
+	dh_gencontrol -p$(p_lgnat_dbg) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_lgnat_dbg)
+	dh_md5sums -p$(p_lgnat_dbg)
+	dh_builddeb -p$(p_lgnat_dbg)
+	touch $@
+
+$(binary_stamp)-libgnatvsn: $(binary_stamp)-libgnat
+	: # libgnatvsn-dev
+	dh_movefiles -p$(p_lgnatvsn_dev) usr/lib/ada/adalib/gnatvsn
+	dh_movefiles -p$(p_lgnatvsn_dev) usr/share/ada/adainclude/gnatvsn
+	dh_install -p$(p_lgnatvsn_dev) \
+	   debian/gnatvsn.gpr usr/share/ada/adainclude
+	dh_movefiles -p$(p_lgnatvsn_dev) usr/lib/libgnatvsn.a
+	dh_link -p$(p_lgnatvsn_dev) \
+	   usr/lib/libgnatvsn.so.$(GNAT_VERSION) \
+	   usr/lib/libgnatvsn.so
+	dh_strip -p$(p_lgnatvsn_dev) -X.a --keep-debug
+	dh_fixperms -p$(p_lgnatvsn_dev)
+	debian/dh_doclink -p$(p_lgnatvsn_dev) $(p_gbase)
+	dh_gencontrol -p$(p_lgnatvsn_dev) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_md5sums -p$(p_lgnatvsn_dev)
+	dh_builddeb -p$(p_lgnatvsn_dev)
+
+	: # libgnatvsn
+	dh_movefiles -p$(p_lgnatvsn) usr/lib/libgnatvsn.so.$(GNAT_VERSION)
+	debian/dh_doclink -p$(p_lgnatvsn) $(p_gbase)
+	dh_strip -p$(p_lgnatvsn) --dbg-package=$(p_lgnatvsn_dbg)
+	dh_makeshlibs -p$(p_lgnatvsn) -V '$(p_lgnatvsn) (>= $(DEB_VERSION))'
+	cat debian/$(p_lgnatvsn)/DEBIAN/shlibs >> debian/shlibs.local
+	dh_shlibdeps -p$(p_lgnatvsn) -L$(p_lgnat)
+	dh_gencontrol -p$(p_lgnatvsn) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_lgnatvsn)
+	dh_md5sums -p$(p_lgnatvsn)
+	dh_builddeb -p$(p_lgnatvsn)
+
+	touch $@
+
+$(binary_stamp)-libgnatvsndbg: $(binary_stamp)-libgnatvsn
+	debian/dh_doclink -p$(p_lgnatvsn_dbg) $(p_gbase)
+	dh_compress -p$(p_lgnatvsn_dbg)
+	dh_fixperms -p$(p_lgnatvsn_dbg)
+	dh_gencontrol -p$(p_lgnatvsn_dbg) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_lgnatvsn_dbg)
+	dh_md5sums -p$(p_lgnatvsn_dbg)
+	dh_builddeb -p$(p_lgnatvsn_dbg)
+	touch $@
+
+$(binary_stamp)-libgnatprj: $(binary_stamp)-libgnat $(binary_stamp)-libgnatvsn
+	: # libgnatprj-dev
+	dh_movefiles -p$(p_lgnatprj_dev) usr/lib/ada/adalib/gnatprj
+	dh_movefiles -p$(p_lgnatprj_dev) usr/share/ada/adainclude/gnatprj
+	dh_install -p$(p_lgnatprj_dev) \
+	   debian/gnatprj.gpr usr/share/ada/adainclude
+	dh_movefiles -p$(p_lgnatprj_dev) usr/lib/libgnatprj.a
+	dh_link -p$(p_lgnatprj_dev) \
+	   usr/lib/libgnatprj.so.$(GNAT_VERSION) \
+	   usr/lib/libgnatprj.so
+	dh_strip -p$(p_lgnatprj_dev) -X.a --keep-debug
+	dh_fixperms -p$(p_lgnatprj_dev)
+	debian/dh_doclink -p$(p_lgnatprj_dev) $(p_gbase)
+	dh_gencontrol -p$(p_lgnatprj_dev) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_md5sums -p$(p_lgnatprj_dev)
+	dh_builddeb -p$(p_lgnatprj_dev)
+	: # libgnatprj
+	dh_movefiles -p$(p_lgnatprj) usr/lib/libgnatprj.so.$(GNAT_VERSION)
+	debian/dh_doclink -p$(p_lgnatprj) $(p_gbase)
+	dh_strip -p$(p_lgnatprj) --dbg-package=$(p_lgnatprj_dbg)
+	dh_makeshlibs -p$(p_lgnatprj) -V '$(p_lgnatprj) (>= $(DEB_VERSION))'
+	cat debian/$(p_lgnatprj)/DEBIAN/shlibs >> debian/shlibs.local
+	dh_shlibdeps -p$(p_lgnatprj) -L$(p_lgnat) -L$(p_lgnatvsn)
+	dh_gencontrol -p$(p_lgnatprj) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_lgnatprj)
+	dh_md5sums -p$(p_lgnatprj)
+	dh_builddeb -p$(p_lgnatprj)
+
+	touch $@
+
+$(binary_stamp)-libgnatprjdbg: $(binary_stamp)-libgnatprj
+	debian/dh_doclink -p$(p_lgnatprj_dbg) $(p_gbase)
+	dh_compress -p$(p_lgnatprj_dbg)
+	dh_fixperms -p$(p_lgnatprj_dbg)
+	dh_gencontrol -p$(p_lgnatprj_dbg) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_lgnatprj_dbg)
+	dh_md5sums -p$(p_lgnatprj_dbg)
+	dh_builddeb -p$(p_lgnatprj_dbg)
+	touch $@
+
+ifeq ($(with_libgnat),yes)
+$(binary_stamp)-ada: $(install_stamp) $(binary_stamp)-libgnat $(binary_stamp)-libgnatdbg
+$(binary_stamp)-ada: $(binary_stamp)-libgnatvsn $(binary_stamp)-libgnatvsndbg
+$(binary_stamp)-ada: $(binary_stamp)-libgnatprj $(binary_stamp)-libgnatprjdbg
+else
+$(binary_stamp)-ada: $(install_stamp)
+endif
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+	: # gnat
+	rm -rf $(d_gnat)
+	dh_installdirs -p$(p_gnat) $(dirs_gnat)
+	dh_movefiles -p$(p_gnat) $(files_gnat)
+
+ifeq (0,1)
+ifeq ($(PKGSOURCE),gnat-$(BASE_VERSION))
+	mkdir -p $(d_gnat)/$(libexecdir)/gcc/$(TARGET_ALIAS)/$(BASE_VERSION)
+	ln -sf ../$(GCC_VERSION)/gnat1 \
+	  $(d_gnat)/$(libexecdir)/gcc/$(TARGET_ALIAS)/$(BASE_VERSION)/gnat1
+	mkdir -p $(d_gnat)/$(PF)/$(libdir)/gcc/$(TARGET_ALIAS)/$(BASE_VERSION)
+	ln -sf ../$(GCC_VERSION)/adalib \
+	  $(d_gnat)/$(PF)/$(libdir)/gcc/$(TARGET_ALIAS)/$(BASE_VERSION)/adalib
+	ln -sf ../$(GCC_VERSION)/adainclude \
+	  $(d_gnat)/$(PF)/$(libdir)/gcc/$(TARGET_ALIAS)/$(BASE_VERSION)/adainclude
+endif
+endif
+
+ifeq ($(with_libgnat),yes)
+	for lib in lib{gnat,gnarl}; do \
+	  vlib=$$lib-$(GNAT_SONAME); \
+	  dh_link -p$(p_gnat) \
+	    /$(PF)/$(libdir)/$$vlib.so.1 /$(PF)/$(libdir)/$$vlib.so \
+	    /$(PF)/$(libdir)/$$vlib.so.1 /$(PF)/$(libdir)/$$lib.so; \
+	done
+endif
+	debian/dh_doclink -p$(p_gnat) $(p_gbase)
+
+ifeq ($(PKGSOURCE),gnat-$(BASE_VERSION))
+  ifeq ($(with_check),yes)
+	dh_link -p$(p_gnat) \
+		usr/share/doc/$(p_base)/Ada/changelog.gz \
+		usr/share/doc/$(p_gbase)/changelog.gz
+  endif
+endif
+
+	for i in $(GNAT_TOOLS); do \
+	  case "$$i" in \
+	    gnat) cp -p debian/gnat.1 $(d_gnat)/$(PF)/share/man/man1/ ;; \
+	    *) ln -sf gnat.1 $(d_gnat)/$(PF)/share/man/man1/$$i.1; \
+	  esac; \
+	done
+
+	debian/dh_rmemptydirs -p$(p_gnat)
+
+	dh_strip -p$(p_gnat)
+	dh_compress -p$(p_gnat)
+	dh_fixperms -p$(p_gnat)
+	find $(d_gnat) -name '*.ali' | xargs chmod 444
+	dh_shlibdeps -p$(p_gnat)
+	dh_gencontrol -p$(p_gnat) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_gnat)
+	dh_md5sums -p$(p_gnat)
+	dh_builddeb -p$(p_gnat)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+
+ada_info_dir = $(d_gnatd)/$(PF)/share/info
+
+$(binary_stamp)-ada-doc: $(build_html_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_gnatd)
+	dh_installdirs -p$(p_gnatd) \
+		$(docdir)/$(p_base)/Ada \
+		$(PF)/share/info
+
+	cd $(ada_info_dir) && \
+	    makeinfo -I $(srcdir)/gcc/doc/include -I $(srcdir)/gcc/ada \
+		-I $(builddir)/gcc \
+		-o gnat_ugn_unw-$(GNAT_VERSION).info \
+		$(builddir)/gcc/doc/gnat_ugn_unw.texi
+	cd $(ada_info_dir) && \
+	    makeinfo -I $(srcdir)/gcc/doc/include -I $(srcdir)/gcc/ada \
+		-I $(builddir)/gcc \
+		-o gnat_rm-$(GNAT_VERSION).info \
+		$(srcdir)/gcc/ada/gnat_rm.texi
+	cd $(ada_info_dir) && \
+	    makeinfo -I $(srcdir)/gcc/doc/include -I $(srcdir)/gcc/ada \
+		-I $(builddir)/gcc \
+		-o gnat-style-$(GNAT_VERSION).info \
+		$(srcdir)/gcc/ada/gnat-style.texi
+
+	debian/dh_doclink -p$(p_gnatd) $(p_gbase)
+	dh_installdocs -p$(p_gnatd)
+	rm -f $(d_gnatd)/$(docdir)/$(p_base)/copyright
+	cp -p html/gnat_ugn_unw.html html/gnat_rm.html html/gnat-style.html \
+		$(d_gnatd)/$(docdir)/$(p_base)/Ada/
+
+	dh_compress -p$(p_gnatd)
+	dh_fixperms -p$(p_gnatd)
+	dh_installdeb -p$(p_gnatd)
+	dh_gencontrol -p$(p_gnatd) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_md5sums -p$(p_gnatd)
+	dh_builddeb -p$(p_gnatd)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-source.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-source.mk
@@ -0,0 +1,32 @@
+indep_binaries := $(indep_binaries) gcc-source
+
+p_source = gcc$(pkg_ver)-source
+d_source= debian/$(p_source)
+
+$(binary_stamp)-gcc-source:
+	dh_testdir
+	dh_testroot
+
+	dh_install -p$(p_source) $(gcc_tarball) usr/src/gcc$(pkg_ver)
+	dh_install -p$(p_source) $(gcj_tarball) usr/src/gcc$(pkg_ver)
+	dh_install -p$(p_source) debian/patches usr/src/gcc$(pkg_ver)
+	chmod 755 debian/$(p_source)/usr/src/gcc$(pkg_ver)/patches/*
+	rm -rf debian/$(p_source)/usr/src/gcc$(pkg_ver)/patches/.svn
+	dh_install -p$(p_source) \
+	    debian/rules.source \
+		usr/src/gcc$(pkg_ver)
+	dh_install -p$(p_source) \
+	    debian/rules.defs debian/rules.patch debian/rules.unpack \
+	    debian/dummy.texi debian/gcc-dummy.texi debian/multiarch.inc \
+	    debian/porting.* \
+		usr/src/gcc$(pkg_ver)/debian
+
+	debian/dh_doclink -p$(p_source) $(p_base)
+
+	dh_fixperms -p$(p_source)
+	dh_gencontrol -p$(p_source) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_source)
+	dh_md5sums -p$(p_source)
+	dh_builddeb -p$(p_source)
+
+	touch $@
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-gcc.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-gcc.mk
@@ -0,0 +1,290 @@
+ifneq (,$(filter yes, $(biarch) $(biarch32)))
+  arch_binaries  := $(arch_binaries) gcc-multi
+endif
+arch_binaries  := $(arch_binaries) gcc
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+  indep_binaries := $(indep_binaries) gcc-doc
+endif
+ifeq ($(with_nls),yes)
+  indep_binaries := $(indep_binaries) gcc-locales
+endif
+
+# gcc must be moved after g77 and g++
+# not all files $(PF)/include/*.h are part of gcc,
+# but it becomes difficult to name all these files ...
+
+dirs_gcc = \
+	$(docdir)/$(p_base)/{gcc,libssp} \
+	$(PF)/bin \
+	$(gcc_lexec_dir) \
+	$(gcc_lib_dir)/include \
+	$(PF)/share/man/man1 $(libdir)
+
+files_gcc = \
+	$(PF)/bin/{gcc,gcov,gccbug}$(pkg_ver) \
+	$(PF)/share/man/man1/gccbug$(pkg_ver).1 \
+	$(gcc_lexec_dir)/collect2 \
+	$(gcc_lib_dir)/{libgcc*,libgcov.a,*.o} \
+	$(gcc_lib_dir)/include/README \
+	$(gcc_lib_dir)/include/{float,iso646,limits,std*,syslimits,unwind,varargs}.h \
+	$(shell for d in asm bits gnu linux; do \
+		  test -e $(d)/$(gcc_lib_dir)/include/$$d \
+		    && echo $(gcc_lib_dir)/include/$$d; \
+		done) \
+	$(shell test -e $(d)/$(gcc_lib_dir)/SYSCALLS.c.X \
+		&& echo $(gcc_lib_dir)/SYSCALLS.c.X) \
+	$(shell for h in {,e,p,x}mmintrin.h mm3dnow.h mm_malloc.h; do \
+		  test -e $(d)/$(gcc_lib_dir)/include/$$h \
+		    && echo $(gcc_lib_dir)/include/$$h; \
+		done)
+
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+    files_gcc += \
+	$(PF)/share/man/man1/{gcc,gcov}$(pkg_ver).1
+endif
+
+ifeq ($(with_libssp),yes)
+    files_gcc += $(gcc_lib_dir)/include/ssp
+endif
+
+ifeq ($(DEB_HOST_ARCH),ia64)
+    files_gcc += $(gcc_lib_dir)/include/ia64intrin.h
+endif
+
+ifeq ($(DEB_HOST_ARCH),m68k)
+    files_gcc += $(gcc_lib_dir)/include/math-68881.h
+endif
+
+ifeq ($(DEB_TARGET_ARCH),$(findstring $(DEB_TARGET_ARCH),powerpc ppc64))
+    files_gcc += $(gcc_lib_dir)/include/{altivec.h,ppc-asm.h,spe.h}
+endif
+
+usr_doc_files = debian/README.Bugs \
+	$(shell test -f $(srcdir)/FAQ && echo $(srcdir)/FAQ)
+ifeq ($(with_check),yes)
+  usr_doc_files += test-summary
+endif
+
+p_loc	= gcc$(pkg_ver)-locales
+d_loc	= debian/$(p_loc)
+
+p_gcc_m	= gcc$(pkg_ver)-multilib
+d_gcc_m	= debian/$(p_gcc_m)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-gcc: $(install_dependencies)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_gcc)
+	dh_installdirs -p$(p_gcc) $(dirs_gcc)
+
+	rm -f $(d)/$(PF)/$(libdir)/libgcc_s.so
+	ln -sf /$(libdir)/libgcc_s.so.$(GCC_SONAME) $(d)/$(gcc_lib_dir)/libgcc_s.so
+
+ifeq ($(with_libssp),yes)
+	mv $(d)/$(PF)/lib/libssp*.a $(d_gcc)/$(gcc_lib_dir)/
+	rm -f $(d)/$(PF)/lib/libssp*.{la,so}
+	dh_link -p$(p_gcc) \
+	  /$(PF)/lib/libssp.so.$(SSP_SONAME) /$(gcc_lib_dir)/libssp.so
+	cp -p $(srcdir)/libssp/ChangeLog \
+		$(d_gcc)/$(docdir)/$(p_base)/libssp/changelog
+endif
+	cp -p debian/gccbug.1 $(d)/$(PF)/share/man/man1/gccbug$(pkg_ver).1
+
+	DH_COMPAT=2 dh_movefiles -p$(p_gcc) $(files_gcc)
+
+	ln -sf gcc$(pkg_ver) \
+	    $(d_gcc)/$(PF)/bin/$(DEB_TARGET_GNU_TYPE)-gcc$(pkg_ver)
+	ln -sf gcc$(pkg_ver) \
+	    $(d_gcc)/$(PF)/bin/$(TARGET_ALIAS)-gcc$(pkg_ver)
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+	ln -sf gcc$(pkg_ver).1 \
+	    $(d_gcc)/$(PF)/share/man/man1/$(DEB_TARGET_GNU_TYPE)-gcc$(pkg_ver).1
+	ln -sf gcc$(pkg_ver).1 \
+	    $(d_gcc)/$(PF)/share/man/man1/$(TARGET_ALIAS)-gcc$(pkg_ver).1
+endif
+
+#	dh_installdebconf
+	debian/dh_doclink -p$(p_gcc) $(p_base)
+	cp -p $(usr_doc_files) $(d_gcc)/$(docdir)/$(p_base)/.
+	if [ -f testsuite-comparision ]; then \
+	  cp -p testsuite-comparision $(d_gcc)/$(docdir)/$(p_base)/. ; \
+	fi
+	cp -p debian/README.ssp $(d_gcc)/$(docdir)/$(p_base)/
+	cp -p debian/NEWS.gcc $(d_gcc)/$(docdir)/$(p_base)/NEWS
+	cp -p debian/NEWS.html $(d_gcc)/$(docdir)/$(p_base)/NEWS.html
+	cp -p $(srcdir)/gcc/ChangeLog \
+		$(d_gcc)/$(docdir)/$(p_base)/gcc/changelog
+	if [ -f $(builddir)/gcc/.bad_compare ]; then \
+	  ( \
+	    echo "The comparision of the stage2 and stage3 object files shows differences."; \
+	    echo "The Debian package was modified to ignore these differences."; \
+	    echo ""; \
+	    echo "The following files differ:"; \
+	    echo ""; \
+	    cat $(builddir)/gcc/.bad_compare; \
+	  ) > $(d_gcc)/$(docdir)/$(p_base)/BOOTSTRAP_COMPARISION_FAILURE; \
+	else \
+	  true; \
+	fi
+	debian/dh_rmemptydirs -p$(p_gcc)
+	dh_strip -p$(p_gcc)
+	dh_compress -p$(p_gcc) -X README.Bugs
+	dh_fixperms -p$(p_gcc)
+	dh_shlibdeps -p$(p_gcc)
+	dh_gencontrol -p$(p_gcc) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_gcc)
+	dh_md5sums -p$(p_gcc)
+	dh_builddeb -p$(p_gcc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+	: # remove empty directories, when all components are in place
+	for d in `find $(d) -depth -type d -empty 2> /dev/null`; do \
+	    while rmdir $$d 2> /dev/null; do d=`dirname $$d`; done; \
+	done
+
+	@echo "Listing installed files not included in any package:"
+	-find $(d) ! -type d
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-gcc-multi: $(install_dependencies)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_gcc_m)
+	dh_installdirs -p$(p_gcc_m) \
+		$(docdir) \
+		$(gcc_lib_dir)/$(biarchsubdir) \
+
+ifeq ($(biarch),yes)
+	DH_COMPAT=2 dh_movefiles -p$(p_gcc_m) \
+		$(gcc_lib_dir)/$(biarchsubdir)/{libgcc*,libgcov.a,*.o}
+	rm -f $(d)/$(PF)/$(lib64)/libgcc_s.so
+	dh_link -p$(p_gcc_m) \
+	  /$(lib64)/libgcc_s.so.$(GCC_SONAME) /$(gcc_lib_dir)/libgcc_s_64.so \
+	  /$(lib64)/libgcc_s.so.$(GCC_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libgcc_s.so
+  ifeq ($(with_lib64gmath),yes)
+	rm -f $(d)/$(PF)/$(lib64)/libgcc-math.{la,so}
+	dh_link -p$(p_gcc_m) \
+	  /$(PF)/$(lib64)/libgcc-math.so.$(GCC_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libgcc-math.so
+	mv $(d)/$(PF)/$(lib64)/libgcc-math.a $(d)/$(gcc_lib_dir)/$(biarchsubdir)/
+  endif
+endif
+ifeq ($(biarch32),yes)
+	DH_COMPAT=2 dh_movefiles -p$(p_gcc_m) \
+		$(gcc_lib_dir)/$(biarchsubdir)/{libgcc*,libgcov.a,*.o}
+	rm -f $(d)/$(lib32)/libgcc_s.so
+	dh_link -p$(p_gcc_m) \
+	  /$(lib32)/libgcc_s.so.$(GCC_SONAME)  /$(gcc_lib_dir)/libgcc_s_32.so \
+	  /$(lib32)/libgcc_s.so.$(GCC_SONAME)  /$(gcc_lib_dir)/$(biarchsubdir)/libgcc_s.so
+  ifeq ($(with_lib32gmath),yes)
+	rm -f $(d)/$(lib32)/libgcc-math.{la,so}
+	dh_link -p$(p_gcc_m) \
+	  /$(lib32)/libgcc-math.so.$(GCC_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libgcc-math.so
+	mv $(d)/$(lib32)/libgcc-math.a $(d)/$(gcc_lib_dir)/$(biarchsubdir)/
+  endif
+endif
+
+ifeq ($(with_libssp),yes)
+  ifeq ($(biarch),yes)
+	mv $(d)/$(PF)/$(lib64)/libssp*.a $(d_gcc_m)/$(gcc_lib_dir)/$(biarchsubdir)/
+	rm -f $(d)/$(PF)/$(lib64)/$(biarchsubdir)/libssp*.{la,so}
+	dh_link -p$(p_gcc_m) \
+	  /$(PF)/$(lib64)/libssp.so.$(SSP_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libssp.so
+  endif
+  ifeq ($(biarch32),yes)
+	mv $(d)/$(lib32)/libssp*.a $(d_gcc_m)/$(gcc_lib_dir)/$(biarchsubdir)/
+	rm -f $(d)/$(lib32)/$(biarchsubdir)/libssp*.{la,so}
+	dh_link -p$(p_gcc_m) \
+	  /$(lib32)/libssp.so.$(SSP_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libssp.so
+  endif
+endif
+
+ifeq ($(with_common_gcclibdir),yes)
+	: # compat symlinks (only needed for the 4.1.2 -> 4.1.3 transition)
+  ifeq ($(biarch),yes)
+	mkdir -p $(d_gcc_m)/$(old_lib_dir)/$(biarchsubdir)
+	for i in $(d_gcc_m)/$(gcc_lib_dir)/$(biarchsubdir)/*; do \
+	  b=$(biarchsubdir)/$$(basename $$i); \
+	  ln -sf ../../$(BASE_VERSION)/$$b $(d_gcc_m)/$(old_lib_dir)/$$b; \
+	done
+  endif
+  ifeq ($(biarch32),yes)
+	mkdir -p $(d_gcc_m)/$(old_lib_dir)/$(biarchsubdir)
+	for i in $(d_gcc_m)/$(gcc_lib_dir)/$(biarchsubdir)/*; do \
+	  b=$(biarchsubdir)/$$(basename $$i); \
+	  ln -sf ../../$(BASE_VERSION)/$$b $(d_gcc_m)/$(old_lib_dir)/$$b; \
+	done
+  endif
+endif
+
+	debian/dh_doclink -p$(p_gcc_m) $(p_base)
+	debian/dh_rmemptydirs -p$(p_gcc_m)
+
+	dh_strip -p$(p_gcc_m)
+	dh_compress -p$(p_gcc_m)
+	dh_shlibdeps -p$(p_gcc_m)
+	dh_fixperms -p$(p_gcc_m)
+	dh_installdeb -p$(p_gcc_m)
+	dh_gencontrol -p$(p_gcc_m) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_md5sums -p$(p_gcc_m)
+	dh_builddeb -p$(p_gcc_m)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-gcc-locales: $(install_dependencies)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_loc)
+	dh_installdirs -p$(p_loc) \
+		$(docdir)
+	DH_COMPAT=2 dh_movefiles -p$(p_loc) \
+		$(PF)/share/locale/*/*/cpplib*.* \
+		$(PF)/share/locale/*/*/gcc*.*
+
+	debian/dh_doclink -p$(p_loc) $(p_base)
+	debian/dh_rmemptydirs -p$(p_loc)
+
+	dh_compress -p$(p_loc)
+	dh_fixperms -p$(p_loc)
+	dh_installdeb -p$(p_loc)
+	dh_gencontrol -p$(p_loc) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_md5sums -p$(p_loc)
+	dh_builddeb -p$(p_loc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-gcc-doc: $(build_html_stamp) $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_doc)
+	dh_installdirs -p$(p_doc) \
+		$(docdir)/$(p_base) \
+		$(PF)/share/info
+	DH_COMPAT=2 dh_movefiles -p$(p_doc) \
+		$(PF)/share/info/gcc*
+	rm -f $(d_doc)/$(PF)/share/info/gccinst*
+
+	debian/dh_doclink -p$(p_doc) $(p_base)
+	dh_installdocs -p$(p_doc) html/gcc.html html/gccint.html
+	rm -f $(d_doc)/$(docdir)/$(p_base)/copyright
+	debian/dh_rmemptydirs -p$(p_doc)
+
+	dh_compress -p$(p_doc)
+	dh_fixperms -p$(p_doc)
+	dh_installdeb -p$(p_doc)
+	dh_gencontrol -p$(p_doc) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_md5sums -p$(p_doc)
+	dh_builddeb -p$(p_doc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-snapshot.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-snapshot.mk
@@ -0,0 +1,87 @@
+arch_binaries  := $(arch_binaries) snapshot
+
+p_snap	= gcc-snapshot
+d_snap	= debian/$(p_snap)
+
+dirs_snap = \
+	$(docdir)/$(p_snap) \
+	usr/lib
+files_snap =
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-snapshot: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_snap)
+	dh_installdirs -p$(p_snap) $(dirs_snap)
+
+	-find $(d) -name '*.gch' -type d | xargs rm -rf
+
+	: # dh_movefiles -p$(p_snap) $(files_snap)
+	rm -f $(d_snap)/$(PF)
+	mv $(d)/$(PF) $(d_snap)/usr/lib/
+
+	rm -rf $(d_snap)/$(PF)/lib/nof
+
+ifeq ($(DEB_TARGET_ARCH),hppa)
+	rm -f $(install_hppa64_stamp)
+
+	: # provide as and ld links
+	dh_link -p $(p_snap) \
+		/usr/bin/hppa64-linux-gnu-as \
+		/$(PF)/lib/gcc/hppa64-linux-gnu/$(GCC_VERSION)/as \
+		/usr/bin/hppa64-linux-gnu-ld \
+		/$(PF)/lib/gcc/hppa64-linux-gnu/$(GCC_VERSION)/ld
+
+	DH_COMPAT=2 dh_movefiles -p$(p_snap) --sourcedir=$(d_hppa64) \
+		$(PF)/libexec \
+		$(PF)/lib \
+		$(PF)/bin/hppa64-linux-gnu-{cpp,gcc}
+endif
+
+ifeq ($(with_check),yes)
+	dh_installdocs -p$(p_snap) test-summary
+  ifeq ($(with_pascal),yes)
+	cp -p gpc-test-summary $(d_snap)/$(docdir)/$(p_snap)/
+  endif
+else
+	dh_installdocs -p$(p_snap)
+endif
+	if [ -f $(buildlibdir)/libstdc++-v3/testsuite/current_symbols.txt ]; \
+	then \
+	  cp -p $(buildlibdir)/libstdc++-v3/testsuite/current_symbols.txt \
+	    $(d_snap)/$(docdir)/$(p_snap)/libstdc++6_symbols.txt; \
+	fi
+	cp -p debian/README.snapshot \
+		$(d_snap)/$(docdir)/$(p_snap)/README.Debian
+	dh_installchangelogs -p$(p_snap)
+ifeq ($(DEB_TARGET_ARCH),hppa)
+	dh_strip -p$(p_snap) -Xdebug -X.o -X.a
+else
+	dh_strip -p$(p_snap) -Xdebug
+endif
+	dh_compress -p$(p_snap)
+	-find $(d_snap) -type d ! -perm 755 -exec chmod 755 {} \;
+	dh_fixperms -p$(p_snap)
+ifeq ($(biarch),yes)
+	mv $(d_snap)/$(PF)/lib64 .
+endif
+ifeq ($(biarch32),yes)
+	mv $(d_snap)/$(PF)/lib32 .
+endif
+	dh_shlibdeps -p$(p_snap) \
+		-l$(d_snap)/$(PF)/lib:$(d_snap)/$(gcc_lib_dir)
+ifeq ($(biarch),yes)
+	mv lib64 $(d_snap)/$(PF)/
+endif
+ifeq ($(biarch32),yes)
+	mv lib32 $(d_snap)/$(PF)/
+endif
+	dh_gencontrol -p$(p_snap) -- $(common_substvars)
+	dh_installdeb -p$(p_snap)
+	dh_md5sums -p$(p_snap)
+	dh_builddeb -p$(p_snap)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-objc.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-objc.mk
@@ -0,0 +1,97 @@
+ifneq (,$(filter yes, $(biarch) $(biarch32)))
+  arch_binaries  := $(arch_binaries) objc-multi
+endif
+arch_binaries := $(arch_binaries) objc
+
+p_objc	= gobjc$(pkg_ver)
+d_objc	= debian/$(p_objc)
+
+p_objc_m= gobjc$(pkg_ver)-multilib
+d_objc_m= debian/$(p_objc_m)
+
+dirs_objc = \
+	$(docdir)/$(p_base)/ObjC \
+	$(gcc_lexec_dir) \
+	$(gcc_lib_dir)/include
+
+files_objc = \
+	$(gcc_lexec_dir)/cc1obj \
+	$(gcc_lib_dir)/include/objc \
+	$(gcc_lib_dir)/libobjc*.a
+
+$(binary_stamp)-objc: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	mv $(d)/$(PF)/$(libdir)/libobjc*a $(d)/$(gcc_lib_dir)/
+	rm -f $(d)/$(PF)/$(libdir)/libobjc*.la
+
+	rm -rf $(d_objc)
+	dh_installdirs -p$(p_objc) $(dirs_objc)
+	DH_COMPAT=2 dh_movefiles -p$(p_objc) $(files_objc)
+
+	dh_link -p$(p_objc) \
+	  /$(PF)/$(libdir)/libobjc.so.$(OBJC_SONAME) /$(gcc_lib_dir)/libobjc.so
+ifeq ($(with_objc_gc),yes)
+	dh_link -p$(p_objc) \
+	  /$(PF)/$(libdir)/libobjc_gc.so.$(OBJC_SONAME) \
+	  /$(gcc_lib_dir)/libobjc_gc.so
+endif
+
+	debian/dh_doclink -p$(p_objc) $(p_base)
+	cp -p $(srcdir)/libobjc/{README*,THREADS*} \
+		$(d_objc)/$(docdir)/$(p_base)/ObjC/.
+
+	debian/dh_rmemptydirs -p$(p_objc)
+
+	dh_strip -p$(p_objc)
+	dh_compress -p$(p_objc)
+
+	dh_fixperms -p$(p_objc)
+	dh_shlibdeps -p$(p_objc)
+	dh_gencontrol -p$(p_objc) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_objc)
+	dh_md5sums -p$(p_objc)
+	dh_builddeb -p$(p_objc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+$(binary_stamp)-objc-multi: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_objc_m)
+	dh_installdirs -p$(p_objc_m) \
+		$(docdir) \
+		$(gcc_lib_dir)/$(biarchsubdir)
+
+ifeq ($(biarch),yes)
+	rm -f $(d)/$(PF)/lib64/libobjc*.{la,so}
+	mkdir -p $(d_objc_m)/$(gcc_lib_dir)/$(biarchsubdir)
+	mv $(d)/$(PF)/lib64/libobjc*.a $(d_objc_m)/$(gcc_lib_dir)/$(biarchsubdir)/
+	dh_link -p$(p_objc_m) \
+	  /$(PF)/lib64/libobjc.so.$(OBJC_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libobjc.so
+endif
+ifeq ($(biarch32),yes)
+	rm -f $(d)/$(lib32)/libobjc*.{la,so}
+	mkdir -p $(d_objc_m)/$(gcc_lib_dir)/$(biarchsubdir)
+	mv $(d)/$(lib32)/libobjc*.a $(d_objc_m)/$(gcc_lib_dir)/$(biarchsubdir)/
+	dh_link -p$(p_objc_m) \
+	  /$(lib32)/libobjc.so.$(OBJC_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libobjc.so
+endif
+
+	debian/dh_doclink -p$(p_objc_m) $(p_base)
+
+	dh_strip -p$(p_objc_m)
+	dh_compress -p$(p_objc_m)
+
+	dh_fixperms -p$(p_objc_m)
+	dh_shlibdeps -p$(p_objc_m)
+	dh_gencontrol -p$(p_objc_m) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_objc_m)
+	dh_md5sums -p$(p_objc_m)
+	dh_builddeb -p$(p_objc_m)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-softfloat.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-softfloat.mk
@@ -0,0 +1,33 @@
+arch_binaries  := $(arch_binaries) softfloat
+
+p_softfloat  = gcc$(pkg_ver)-soft-float
+d_softfloat  = debian/$(p_softfloat)
+
+dirs_softfloat = \
+	$(PF)/$(libdir)/soft-float \
+	$(gcc_lib_dir)/soft-float
+
+files_softfloat = \
+	$(PF)/$(libdir)/soft-float \
+	$(gcc_lib_dir)/soft-float
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-softfloat: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_softfloat)
+	dh_installdirs -p$(p_softfloat) $(dirs_softfloat)
+	DH_COMPAT=2 dh_movefiles -p$(p_softfloat) $(files_softfloat)
+	debian/dh_doclink -p$(p_softfloat) $(p_base)
+	dh_strip -p$(p_softfloat) -Xlibgcj.a
+	dh_compress -p$(p_softfloat)
+	dh_fixperms -p$(p_softfloat)
+	dh_shlibdeps -p$(p_softfloat)
+	dh_gencontrol -p$(p_softfloat) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_softfloat)
+	dh_md5sums -p$(p_softfloat)
+	dh_builddeb -p$(p_softfloat)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-nof-cross.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-nof-cross.mk
@@ -0,0 +1,46 @@
+arch_binaries  := $(arch_binaries) nof
+
+p_nof  = gcc$(pkg_arch)-nof
+d_nof  = debian/$(p_nof)
+
+dirs_nof = \
+	$(docdir) \
+	$(PF)/$(DEB_TARGET_GNU_TYPE)/lib/nof
+ifeq ($(with_cdev),yes)
+  dirs_nof += \
+	$(gcc_lib_dir)/nof
+endif
+
+ifeq ($(with_cdev),yes)
+  files_nof = \
+	$(PF)/$(DEB_TARGET_GNU_TYPE)/lib/libgcc_s_nof.so.$(GCC_SONAME) \
+	$(gcc_lib_dir)/libgcc_s_nof.so \
+	$(PF)/$(DEB_TARGET_GNU_TYPE)/lib/nof \
+	$(gcc_lib_dir)/nof
+else
+  files_nof = \
+	lib/libgcc_s_nof.so.$(GCC_SONAME)
+endif
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-nof: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	ln -sf /$(PF)/$(DEB_TARGET_GNU_TYPE)/lib/libgcc_s_nof.so.$(GCC_SONAME) \
+		$(d)/$(gcc_lib_dir)/libgcc_s_nof.so
+
+	rm -rf $(d_nof)
+	dh_installdirs -p$(p_nof) $(dirs_nof)
+	DH_COMPAT=2 dh_movefiles -p$(p_nof) $(files_nof)
+	debian/dh_doclink -p$(p_nof) $(p_base)
+	dh_strip -p$(p_nof)
+	dh_compress -p$(p_nof)
+	dh_fixperms -p$(p_nof)
+	dh_gencontrol -p$(p_nof) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_nof)
+	dh_md5sums -p$(p_nof)
+	dh_builddeb -p$(p_nof)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-fastjar.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-fastjar.mk
@@ -0,0 +1,55 @@
+arch_binaries  := $(arch_binaries) fastjar
+
+p_fjar	= fastjar
+d_fjar	= debian/$(p_fjar)
+
+dirs_fjar = \
+	$(docdir)/$(p_fjar) \
+	$(PF)/bin \
+	$(PF)/share/man/man1 \
+	$(PF)/share/info
+
+files_fjar = \
+	$(PF)/bin/{fastjar,grepjar}* \
+	$(PF)/share/man/man1/{fastjar,grepjar}*.1 \
+	$(PF)/share/info/fastjar.info
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-fastjar: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_fjar)
+	dh_installdirs -p$(p_fjar)  $(dirs_fjar)
+
+#ifeq ($(versioned_packages),yes)
+#	: # rename versioned files back to unversioned ones.
+#	for i in fastjar grepjar; do \
+#	  mv $(d)/$(PF)/bin/$$i$(pkg_ver) $(d)/$(PF)/bin/$$i; \
+#	  mv $(d)/$(PF)/share/man/man1/$$i$(pkg_ver).1 \
+#		$(d)/$(PF)/share/man/man1/$$i.1; \
+#	done
+#endif
+	for i in fastjar grepjar; do \
+	  ln -s $$i$(pkg_ver) $(d)/$(PF)/bin/$$i; \
+	  ln -s $$i$(pkg_ver).1 $(d)/$(PF)/share/man/man1/$$i.1; \
+	done
+
+	DH_COMPAT=2 dh_movefiles -p$(p_fjar)  $(files_fjar)
+
+	dh_installdocs -p$(p_fjar) $(srcdir)/fastjar/{CHANGES,NEWS,README}
+	dh_installchangelogs -p$(p_fjar) $(srcdir)/fastjar/ChangeLog
+
+	debian/dh_rmemptydirs -p$(p_fjar)
+
+	dh_strip -p$(p_fjar)
+	dh_compress -p$(p_fjar)
+	dh_fixperms -p$(p_fjar)
+	dh_shlibdeps -p$(p_fjar)
+	dh_gencontrol -p$(p_fjar) -- -v$(DEB_EVERSION) $(common_substvars)
+	dh_installdeb -p$(p_fjar)
+	dh_md5sums -p$(p_fjar)
+	dh_builddeb -p$(p_fjar)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-libstdcxx-cross.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-libstdcxx-cross.mk
@@ -0,0 +1,333 @@
+ifeq ($(with_libcxx),yes)
+  arch_binaries  := $(arch_binaries) libstdcxx
+endif
+ifeq ($(with_lib64cxx),yes)
+  arch_binaries  := $(arch_binaries) lib64stdcxx
+endif
+ifeq ($(biarch32),yes)
+  arch_binaries	:= $(arch_binaries) lib32stdcxx
+endif
+
+ifeq ($(with_cxxdev),yes)
+  arch_binaries  := $(arch_binaries) libstdcxx-dev
+endif
+
+# see #483906
+ifeq ($(biarch),yes)
+  AUX_DEB_TARGET_GNU_TYPE := $(DEB_TARGET_GNU_TYPE)
+  ifeq ($(DEB_TARGET_GNU_TYPE),powerpc-linux-gnu)
+    AUX_DEB_TARGET_GNU_TYPE := powerpc64-linux-gnu
+  endif
+endif
+
+libstdc_ext = -$(BASE_VERSION)
+
+p_lib	= libstdc++$(CXX_SONAME)$(cross_lib_arch)
+p_lib64	= lib64stdc++$(CXX_SONAME)$(cross_lib_arch)
+p_lib32	= lib32stdc++$(CXX_SONAME)$(cross_lib_arch)
+p_dev	= libstdc++$(CXX_SONAME)$(libstdc_ext)-dev$(cross_lib_arch)
+p_pic	= libstdc++$(CXX_SONAME)$(libstdc_ext)-pic$(cross_lib_arch)
+p_dbg	= libstdc++$(CXX_SONAME)$(libstdc_ext)-dbg$(cross_lib_arch)
+p_dbg64	= lib64stdc++$(CXX_SONAME)$(libstdc_ext)-dbg$(cross_lib_arch)
+p_dbg32	= lib32stdc++$(CXX_SONAME)$(libstdc_ext)-dbg$(cross_lib_arch)
+
+d_lib	= debian/$(p_lib)
+d_lib64	= debian/$(p_lib64)
+d_lib32	= debian/$(p_lib32)
+d_dev	= debian/$(p_dev)
+d_pic	= debian/$(p_pic)
+d_dbg	= debian/$(p_dbg)
+d_dbg64	= debian/$(p_dbg64)
+d_dbg32	= debian/$(p_dbg32)
+
+dirs_lib = \
+	$(docdir) \
+	$(PF)/$(DEB_TARGET_GNU_TYPE)/lib
+
+dirs_lib64 = \
+	$(docdir) \
+	$(PF)/$(DEB_TARGET_GNU_TYPE)/lib64
+
+files_lib = \
+	$(PF)/$(DEB_TARGET_GNU_TYPE)/lib/libstdc++.so.*
+
+files_lib64 = \
+	$(PF)/$(DEB_TARGET_GNU_TYPE)/lib64/libstdc++.so.*
+
+dirs_dev = \
+	$(docdir) \
+	$(PF)/$(DEB_TARGET_GNU_TYPE)/lib \
+	$(gcc_lib_dir)/include \
+	$(cxx_inc_dir)
+
+files_dev = \
+	$(cxx_inc_dir)/ \
+	$(gcc_lib_dir)/libstdc++.{a,so} \
+	$(gcc_lib_dir)/libsupc++.a
+# Not yet...
+#	$(PF)/$(libdir)/lib{supc,stdc}++.la
+
+dirs_dbg = \
+	$(docdir) \
+	$(PF)/$(DEB_TARGET_GNU_TYPE)/lib/debug \
+	$(gcc_lib_dir)
+files_dbg = \
+	$(PF)/$(DEB_TARGET_GNU_TYPE)/lib/debug/libstdc++.*
+
+dirs_pic = \
+	$(docdir) \
+	$(gcc_lib_dir)
+files_pic = \
+	$(gcc_lib_dir)/libstdc++_pic.a
+
+ifeq ($(biarch),yes)
+    dirs_dev += $(gcc_lib_dir)/$(biarchsubdir)/
+    files_dev += $(gcc_lib_dir)/$(biarchsubdir)/libstdc++.{a,so} \
+        $(gcc_lib_dir)/$(biarchsubdir)/libsupc++.a
+    dirs_pic += $(gcc_lib_dir)
+    files_pic += $(gcc_lib_dir)/$(biarchsubdir)/libstdc++_pic.a
+endif
+ifeq ($(biarch32),yes)
+    dirs_dev += $(gcc_lib_dir)/$(biarchsubdir)/
+    files_dev += $(gcc_lib_dir)/$(biarchsubdir)/libstdc++.{a,so} \
+        $(gcc_lib_dir)/$(biarchsubdir)/libsupc++.a
+    dirs_pic += $(gcc_lib_dir)
+    files_pic += $(gcc_lib_dir)/$(biarchsubdir)/libstdc++_pic.a
+endif
+
+# ----------------------------------------------------------------------
+
+$(binary_stamp)-libstdcxx: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_lib)
+	dh_installdirs -p$(p_lib) $(dirs_lib)
+	DH_COMPAT=2 dh_movefiles -p$(p_lib) $(files_lib)
+
+	dh_installdocs -p$(p_lib)
+	echo "See /$(docdir)/$(p_base) for more information" \
+		> $(d_lib)/$(docdir)/$(p_lib)/README.Debian
+
+	dh_installchangelogs -p$(p_lib)
+	debian/dh_rmemptydirs -p$(p_lib)
+
+	mkdir -p $(d_dbg)
+	PATH=/usr/share/dpkg-cross:$$PATH dh_strip -p$(p_lib) --keep-debug
+	# The above line puts debugging information into some strange location
+	# that is hardcoded into dh_strip. Move it from there.
+	mkdir -p $(d_lib)/usr/$(DEB_TARGET_GNU_TYPE)/lib/debug
+	mv $(d_lib)/usr/lib/debug/usr/$(DEB_TARGET_GNU_TYPE)/lib/* $(d_lib)/usr/$(DEB_TARGET_GNU_TYPE)/lib/debug/
+	rm -rf $(d_lib)/usr/lib
+	# End workaround
+	find $(d_dbg)
+	tar -C $(d_lib) -c -f - usr/$(DEB_TARGET_GNU_TYPE)/lib/debug | tar -v -C $(d_dbg) -x -f -
+	rm -rf $(d_lib)/usr/$(DEB_TARGET_GNU_TYPE)/lib/debug
+
+	dh_compress -p$(p_lib)
+	dh_fixperms -p$(p_lib)
+	dh_makeshlibs -p$(p_lib) -V '$(p_lib) (>= $(DEB_STDCXX_SOVERSION))' -n
+	sed s/$(cross_lib_arch)//g < debian/$(p_lib)/DEBIAN/shlibs > debian/$(p_lib)/DEBIAN/shlibs.fixed
+	mv debian/$(p_lib)/DEBIAN/shlibs.fixed debian/$(p_lib)/DEBIAN/shlibs
+	ARCH=$(DEB_TARGET_ARCH) MAKEFLAGS="CC=something" dh_shlibdeps -p$(p_lib)
+	sed 's/\(lib[^ ]*\) /\1$(cross_lib_arch) /g' < debian/$(p_lib).substvars > debian/$(p_lib).substvars.new
+	mv debian/$(p_lib).substvars.new debian/$(p_lib).substvars
+	dh_gencontrol -p$(p_lib) -- -v$(DEB_VERSION) $(common_substvars)
+
+	dh_installdeb -p$(p_lib)
+	dh_md5sums -p$(p_lib)
+	dh_builddeb -p$(p_lib)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+
+$(binary_stamp)-lib64stdcxx: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_lib64)
+	dh_installdirs -p$(p_lib64) $(dirs_lib64)
+	DH_COMPAT=2 dh_movefiles -p$(p_lib64) $(files_lib64)
+
+	dh_installdirs -p$(p_dbg64) \
+		$(PF)/$(DEB_TARGET_GNU_TYPE)/lib64
+	mv $(d)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib64/debug $(d_dbg64)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib64/.
+
+	mkdir -p $(d_dbg64)
+	PATH=/usr/share/dpkg-cross:$$PATH dh_strip -p$(p_lib64) --keep-debug
+	# The above line puts debugging information into some strange location
+	# that is hardcoded into dh_strip. Move it from there.
+	mkdir -p $(d_lib64)/usr/$(DEB_TARGET_GNU_TYPE)/lib64/debug
+	mv $(d_lib64)/usr/lib/debug/usr/$(DEB_TARGET_GNU_TYPE)/lib64/* $(d_lib64)/usr/$(DEB_TARGET_GNU_TYPE)/lib64/debug/
+	rm -rf $(d_lib64)/usr/lib64
+	# End workaround
+	find $(d_lib64)
+	tar -C $(d_lib64) -c -f - usr/$(DEB_TARGET_GNU_TYPE)/lib64/debug | tar -v -C $(d_dbg64) -x -f -
+	rm -rf $(d_lib64)/usr/$(DEB_TARGET_GNU_TYPE)/lib64/debug
+
+	dh_installdocs -p$(p_lib64)
+	echo "See /$(docdir)/$(p_base) for more information" \
+		> $(d_lib64)/$(docdir)/$(p_lib64)/README.Debian
+	dh_installchangelogs -p$(p_lib64)
+	debian/dh_doclink -p$(p_dbg64) $(p_lib64)
+
+	debian/dh_rmemptydirs -p$(p_lib64)
+	dh_compress -p$(p_lib64)
+	dh_fixperms -p$(p_lib64)
+	dh_makeshlibs -p$(p_lib64) -V '$(p_lib64) (>= $(DEB_STDCXX_SOVERSION))' -n
+	sed s/$(cross_lib_arch)//g < debian/$(p_lib64)/DEBIAN/shlibs > debian/$(p_lib64)/DEBIAN/shlibs.fixed
+	mv debian/$(p_lib64)/DEBIAN/shlibs.fixed debian/$(p_lib64)/DEBIAN/shlibs
+	ARCH=$(DEB_TARGET_ARCH) MAKEFLAGS="CC=something" dh_shlibdeps -p$(p_lib64)
+	sed 's/\(lib[^ ]*\) /\1$(cross_lib_arch) /g' < debian/$(p_lib64).substvars > debian/$(p_lib64).substvars.new
+	mv debian/$(p_lib64).substvars.new debian/$(p_lib64).substvars
+	dh_gencontrol -p$(p_lib64) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_gencontrol -p$(p_dbg64) -- -v$(DEB_VERSION) $(common_substvars)
+
+	dh_installdeb -p$(p_lib64)
+	dh_md5sums -p$(p_lib64)
+	dh_builddeb -p$(p_lib64)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+
+$(binary_stamp)-lib32stdcxx: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_lib32)
+	dh_installdirs -p$(p_lib32) $(dirs_lib32)
+	DH_COMPAT=2 dh_movefiles -p$(p_lib32) $(files_lib32)
+
+	dh_installdirs -p$(p_dbg32) \
+		$(PF)/$(DEB_TARGET_GNU_TYPE)/lib32
+	mv $(d)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib32/debug $(d_dbg32)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib32/.
+
+	mkdir -p $(d_dbg32)
+	PATH=/usr/share/dpkg-cross:$$PATH dh_strip -p$(p_lib32) --keep-debug
+	# The above line puts debugging information into some strange location
+	# that is hardcoded into dh_strip. Move it from there.
+	mkdir -p $(d_lib32)/usr/$(DEB_TARGET_GNU_TYPE)/lib32/debug
+	mv $(d_lib32)/usr/lib/debug/usr/$(DEB_TARGET_GNU_TYPE)/lib32/* $(d_lib32)/usr/$(DEB_TARGET_GNU_TYPE)/lib32/debug/
+	rm -rf $(d_lib32)/usr/lib32
+	# End workaround
+	find $(d_lib32)
+	tar -C $(d_lib32) -c -f - usr/$(DEB_TARGET_GNU_TYPE)/lib/debug | tar -v -C $(d_dbg32) -x -f -
+	rm -rf $(d_lib32)/usr/$(DEB_TARGET_GNU_TYPE)/lib/debug
+
+	dh_installdocs -p$(p_lib32)
+	echo "See /$(docdir)/$(p_base) for more information" \
+		> $(d_lib32)/$(docdir)/$(p_lib32)/README.Debian
+	dh_installchangelogs -p$(p_lib32)
+	debian/dh_doclink -p$(p_dbg32) $(p_lib32)
+
+	debian/dh_rmemptydirs -p$(p_lib32)
+	dh_compress -p$(p_lib32)
+	dh_fixperms -p$(p_lib32)
+
+	sed s/$(cross_lib_arch)//g < debian/$(p_lib32)/DEBIAN/shlibs > debian/$(p_lib32)/DEBIAN/shlibs.fixed
+	mv debian/$(p_lib32)/DEBIAN/shlibs.fixed debian/$(p_lib32)/DEBIAN/shlibs
+	ARCH=$(DEB_TARGET_ARCH) MAKEFLAGS="CC=something" dh_shlibdeps -p$(p_lib32)
+	sed 's/\(lib[^ ]*\) /\1$(cross_lib_arch) /g' < debian/$(p_lib32).substvars > debian/$(p_lib32).substvars.new
+	mv debian/$(p_lib32).substvars.new debian/$(p_lib32).substvars
+	dh_gencontrol -p$(p_lib32) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_gencontrol -p$(p_dbg32) -- -v$(DEB_VERSION) $(common_substvars)
+
+	dh_installdeb -p$(p_lib32)
+	dh_md5sums -p$(p_lib32)
+	dh_builddeb -p$(p_lib32)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+libcxxdev_deps = $(install_stamp)
+ifeq ($(with_libcxx),yes)
+  libcxxdev_deps += $(binary_stamp)-libstdcxx
+endif
+$(binary_stamp)-libstdcxx-dev: $(libcxxdev_deps) \
+    $(binary_stamp)-libstdcxx
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_dev) $(d_pic)
+	dh_installdirs -p$(p_dev) $(dirs_dev)
+	dh_installdirs -p$(p_pic) $(dirs_pic)
+	dh_installdirs -p$(p_dbg) $(dirs_dbg)
+
+	: # - correct libstdc++-v3 file locations
+	mv $(d)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib/libsupc++.a $(d)/$(gcc_lib_dir)/
+	mv $(d)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib/libstdc++.{a,so} $(d)/$(gcc_lib_dir)/
+	ln -sf ../../../../$(DEB_TARGET_GNU_TYPE)/lib/libstdc++.so.$(CXX_SONAME) $(d)/$(gcc_lib_dir)/libstdc++.so
+	mv $(d)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib/libstdc++_pic.a \
+		$(d)/$(gcc_lib_dir)/
+
+	rm -f $(d)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib/debug/libstdc++_pic.a
+	rm -f $(d)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib64/debug/libstdc++_pic.a
+
+	: # remove precompiled headers
+	-find $(d) -type d -name '*.gch' | xargs rm -rf
+
+ifeq ($(biarch),yes)
+	mv $(d)/$(PF)/$(AUX_DEB_TARGET_GNU_TYPE)/lib64/lib*c++*.a $(d)/$(gcc_lib_dir)/$(biarchsubdir)/.
+	ln -sf ../../../../../lib64/libstdc++.so.$(CXX_SONAME) \
+		$(d)/$(gcc_lib_dir)/$(biarchsubdir)/libstdc++.so
+endif
+ifeq ($(biarch32),yes)
+	mv $(d)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib32/lib*c++*.a $(d)/$(gcc_lib_dir)/$(biarchsubdir)/.
+	ln -sf ../../../../../lib64/libstdc++.so.$(CXX_SONAME) \
+		$(d)/$(gcc_lib_dir)/$(biarchsubdir)/libstdc++.so
+endif
+
+	for i in $(d)/$(PF)/include/c++/$(GCC_VERSION)/*-linux; do \
+	  if [ -d $$i ]; then mv $$i $$i-gnu; fi; \
+	done
+
+	DH_COMPAT=2 dh_movefiles -p$(p_dev) $(files_dev)
+	DH_COMPAT=2 dh_movefiles -p$(p_pic) $(files_pic)
+	DH_COMPAT=2 dh_movefiles -p$(p_dbg) $(files_dbg)
+
+	dh_link -p$(p_dev) \
+		/$(PF)/$(DEB_TARGET_GNU_TYPE)/$(libdir)/libstdc++.so.$(CXX_SONAME) \
+		/$(gcc_lib_dir)/libstdc++.so \
+		/$(cxx_inc_dir) /$(PF)/$(DEB_TARGET_GNU_TYPE)/include/c++/$(BASE_VERSION)
+
+ifeq ($(biarch),yes)
+	dh_link -p$(p_dev) \
+		/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib64/libstdc++.so.$(CXX_SONAME) \
+		/$(gcc_lib_dir)/$(biarchsubdir)/libstdc++.so
+endif
+ifeq ($(biarch32),yes)
+	dh_link -p$(p_dev) \
+		/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib32/libstdc++.so.$(CXX_SONAME) \
+		/$(gcc_lib_dir)/$(biarchsubdir)/libstdc++.so
+endif
+
+	debian/dh_doclink -p$(p_dev) $(p_lib)
+	debian/dh_doclink -p$(p_pic) $(p_lib)
+	debian/dh_doclink -p$(p_dbg) $(p_lib)
+	cp -p $(srcdir)/libstdc++-v3/config/linker-map.gnu \
+		$(d_pic)/$(gcc_lib_dir)/libstdc++_pic.map
+
+ifeq ($(with_cxxdev),yes)
+	debian/dh_rmemptydirs -p$(p_dev)
+	debian/dh_rmemptydirs -p$(p_pic)
+	debian/dh_rmemptydirs -p$(p_dbg)
+endif
+
+	PATH=/usr/share/dpkg-cross:$$PATH dh_strip -p$(p_dev) --dbg-package=$(p_lib)
+	PATH=/usr/share/dpkg-cross:$$PATH dh_strip -p$(p_pic)
+	dh_compress -p$(p_dev) -p$(p_pic) -p$(p_dbg) -X.txt
+	dh_fixperms -p$(p_dev) -p$(p_pic) -p$(p_dbg)
+	dh_gencontrol -p$(p_dev) -p$(p_pic) -p$(p_dbg) \
+		-- -v$(DEB_VERSION) $(common_substvars)
+
+	dh_installdeb -p$(p_dev) -p$(p_pic) -p$(p_dbg)
+	dh_md5sums -p$(p_dev) -p$(p_pic) -p$(p_dbg)
+	dh_builddeb -p$(p_dev) -p$(p_pic) -p$(p_dbg)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-d.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-d.mk
@@ -0,0 +1,112 @@
+arch_binaries := $(arch_binaries) gdc
+
+ifeq ($(with_libphobos),yes)
+  arch_binaries += libphobos
+endif
+
+p_gdc		= gdc$(pkg_ver)
+d_gdc		= debian/$(p_gdc)
+
+# no shared lib for now
+p_libphobos	= libphobos$(libphobos_version)$(pkg_ver)-dev
+d_libphobos	= debian/$(p_libphobos)
+
+gdc_include_dir := $(PF)/include/d$(libphobos_version)
+
+dirs_gdc = \
+	$(PF)/bin \
+	$(PF)/share/man/man1 \
+	$(gdc_include_dir)/$(BASE_VERSION) \
+	$(gcc_lib_dir)
+
+files_gdc = \
+	$(PF)/bin/gdc$(pkg_ver) \
+	$(PF)/bin/gdmd$(pkg_ver) \
+	$(PF)/share/man/man1/gdc$(pkg_ver).1 \
+	$(PF)/share/man/man1/gdmd$(pkg_ver).1 \
+	$(gcc_lib_dir)/cc1d
+
+
+dirs_libphobos = \
+	$(PF)/lib \
+	$(gdc_include_dir)/$(BASE_VERSION) \
+	$(gcc_lib_dir)
+
+files_libphobos = \
+	$(PF)/lib/libgphobos$(libphobos_version).a \
+	$(gdc_include_dir)/$(BASE_VERSION)
+
+
+# include path
+links_gdc = \
+	/$(gdc_include_dir)/$(BASE_VERSION) \
+		/$(gdc_include_dir)/$(GCC_VERSION)
+
+
+$(binary_stamp)-gdc: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_gdc)
+	dh_installdirs -p$(p_gdc) $(dirs_gdc)
+
+	dh_installdocs -p$(p_gdc) \
+		src/gcc/d/{README,GDC.html,History}
+	dh_installchangelogs -p$(p_gdc) src/gcc/d/ChangeLog
+
+	DH_COMPAT=2 dh_movefiles -p$(p_gdc) -X/zlib/ $(files_gdc)
+
+	# Always needed by gdc.
+	cp $(srcdir)/gcc/d/phobos$(libphobos_version)/object.d \
+		$(d_gdc)/$(gdc_include_dir)/$(BASE_VERSION)/
+
+	dh_link -p$(p_gdc) $(links_gdc)
+
+	dh_strip -p$(p_gdc)
+	dh_compress -p$(p_gdc)
+	dh_fixperms -p$(p_gdc)
+	dh_shlibdeps -p$(p_gdc)
+	dh_gencontrol -p$(p_gdc) --  -v$(DEB_GDC_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_gdc)
+	dh_md5sums -p$(p_gdc)
+	dh_builddeb -p$(p_gdc)
+
+	find $(d_gdc) -type d -empty -delete
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+$(binary_stamp)-libphobos: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_libphobos)
+	dh_installdirs -p$(p_libphobos) $(dirs_libphobos)
+
+	DH_COMPAT=2 dh_movefiles -p$(p_libphobos) -X/zlib/ $(files_libphobos)
+
+        # better to have it there, avoid conflicts
+	mv $(d_libphobos)/$(PF)/lib/libgphobos$(libphobos_version).a \
+		$(d_libphobos)/$(gcc_lib_dir)
+
+	# included in gdc package
+	rm -f $(d_libphobos)/$(gdc_include_dir)/$(BASE_VERSION)/object.d
+
+	# no need to have it twice
+	dh_link -p$(p_libphobos) \
+		/$(PF)/share/doc/$(p_gdc) /$(PF)/share/doc/$(p_libphobos)
+
+	dh_strip -p$(p_libphobos)
+	dh_compress -p$(p_libphobos)
+	dh_fixperms -p$(p_libphobos)
+	dh_shlibdeps -p$(p_libphobos)
+	dh_gencontrol -p$(p_libphobos) --  -v$(DEB_GDC_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_libphobos)
+	dh_md5sums -p$(p_libphobos)
+	dh_builddeb -p$(p_libphobos)
+
+	find $(d_libphobos) -type d -empty -delete
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/rules.d/binary-nof.mk
+++ gdc-4.1-0.25-20080616-4.1.2/debian/rules.d/binary-nof.mk
@@ -0,0 +1,56 @@
+arch_binaries  := $(arch_binaries) nof
+
+p_nof  = gcc$(pkg_ver)-nof
+d_nof  = debian/$(p_nof)
+
+dirs_nof = \
+	$(docdir) \
+	$(PF)/$(libdir)/nof
+ifeq ($(with_cdev),yes)
+  dirs_nof += \
+	$(gcc_lib_dir)/nof
+endif
+
+ifeq ($(with_cdev),yes)
+  files_nof = \
+	$(libdir)/libgcc_s_nof.so.$(GCC_SONAME) \
+	$(gcc_lib_dir)/libgcc_s_nof.so \
+	$(PF)/$(libdir)/nof \
+	$(gcc_lib_dir)/nof
+else
+  files_nof = \
+	$(libdir)/libgcc_s_nof.so.$(GCC_SONAME)
+endif
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-nof: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	mv $(d)/$(PF)/$(libdir)/libgcc_s_nof.so.$(GCC_SONAME) $(d)/$(libdir)/.
+	rm -f $(d)/$(PF)/$(libdir)/libgcc_s_nof.so
+	ln -sf /$(libdir)/libgcc_s_nof.so.$(GCC_SONAME) \
+		$(d)/$(gcc_lib_dir)/libgcc_s_nof.so
+
+	rm -rf $(d_nof)
+	dh_installdirs -p$(p_nof) $(dirs_nof)
+	DH_COMPAT=2 dh_movefiles -p$(p_nof) $(files_nof)
+	debian/dh_doclink -p$(p_nof) $(p_base)
+	dh_strip -p$(p_nof)
+	dh_compress -p$(p_nof)
+	dh_fixperms -p$(p_nof)
+	dh_shlibdeps -p$(p_nof)
+
+	dh_makeshlibs -p$(p_nof)
+	: # Only keep the shlibs file for the libgcc_s_nof library
+	fgrep libgcc_s_nof debian/$(p_nof)/DEBIAN/shlibs \
+		> debian/$(p_nof)/DEBIAN/shlibs.tmp
+	mv -f debian/$(p_nof)/DEBIAN/shlibs.tmp debian/$(p_nof)/DEBIAN/shlibs
+
+	dh_gencontrol -p$(p_nof) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_nof)
+	dh_md5sums -p$(p_nof)
+	dh_builddeb -p$(p_nof)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/patches/cpu-default-generic.dpatch
+++ gdc-4.1-0.25-20080616-4.1.2/debian/patches/cpu-default-generic.dpatch
@@ -0,0 +1,37 @@
+#! /bin/sh -e
+ 
+# DP: set default 32bit ix86 architecture to i486
+ 
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+
+--- gcc/config/i386/i386.c~	2006-07-18 18:45:12.107903088 +0200
++++ gcc/config/i386/i386.c	2006-07-18 18:53:05.980863448 +0200
+@@ -1569,7 +1569,7 @@
+ 	     "-mtune=generic instead as appropriate.");
+ 
+   if (!ix86_arch_string)
+-    ix86_arch_string = TARGET_64BIT ? "x86-64" : "i386";
++    ix86_arch_string = TARGET_64BIT ? "x86-64" : "i486";
+   if (!strcmp (ix86_arch_string, "generic"))
+     error ("generic CPU can be used only for -mtune= switch");
+   if (!strncmp (ix86_arch_string, "generic", 7))
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/patches/gcc-r109242.dpatch
+++ gdc-4.1-0.25-20080616-4.1.2/debian/patches/gcc-r109242.dpatch
@@ -0,0 +1,713 @@
+#! /bin/sh -e
+
+# DP: Backport r109242 from the trunk
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+2006-01-19  Jan Hubicka  <jh@suse.cz>
+
+	* i386.c (*_cost): Add COSTS_N_INSNS.
+	(ix86_rtx_costs): Do not use COSTS_N_INSNS.
+
+Index: gcc/config/i386/i386.c
+===================================================================
+--- gcc/config/i386/i386.c	(revision 108997)
++++ gcc/config/i386/i386.c	(revision 109242)
+@@ -65,15 +65,23 @@
+ /* Processor costs (relative to an add) */
+ static const
+ struct processor_costs size_cost = {	/* costs for tunning for size */
+-  2,					/* cost of an add instruction */
+-  3,					/* cost of a lea instruction */
+-  2,					/* variable shift costs */
+-  3,					/* constant shift costs */
+-  {3, 3, 3, 3, 5},			/* cost of starting a multiply */
++  COSTS_N_INSNS (2),			/* cost of an add instruction */
++  COSTS_N_INSNS (3),			/* cost of a lea instruction */
++  COSTS_N_INSNS (2),			/* variable shift costs */
++  COSTS_N_INSNS (3),			/* constant shift costs */
++  {COSTS_N_INSNS (3),			/* cost of starting multiply for QI */
++   COSTS_N_INSNS (3),			/*                               HI */
++   COSTS_N_INSNS (3),			/*                               SI */
++   COSTS_N_INSNS (3),			/*                               DI */
++   COSTS_N_INSNS (5)},			/*                               other */
+   0,					/* cost of multiply per each bit set */
+-  {3, 3, 3, 3, 5},			/* cost of a divide/mod */
+-  3,					/* cost of movsx */
+-  3,					/* cost of movzx */
++  {COSTS_N_INSNS (3),			/* cost of a divide/mod for QI */
++   COSTS_N_INSNS (3),			/*                          HI */
++   COSTS_N_INSNS (3),			/*                          SI */
++   COSTS_N_INSNS (3),			/*                          DI */
++   COSTS_N_INSNS (5)},			/*                          other */
++  COSTS_N_INSNS (3),			/* cost of movsx */
++  COSTS_N_INSNS (3),			/* cost of movzx */
+   0,					/* "large" insn */
+   2,					/* MOVE_RATIO */
+   2,					/* cost for loading QImode using movzbl */
+@@ -99,26 +107,34 @@
+   0,					/* size of prefetch block */
+   0,					/* number of parallel prefetches */
+   1,					/* Branch cost */
+-  2,					/* cost of FADD and FSUB insns.  */
+-  2,					/* cost of FMUL instruction.  */
+-  2,					/* cost of FDIV instruction.  */
+-  2,					/* cost of FABS instruction.  */
+-  2,					/* cost of FCHS instruction.  */
+-  2,					/* cost of FSQRT instruction.  */
++  COSTS_N_INSNS (2),			/* cost of FADD and FSUB insns.  */
++  COSTS_N_INSNS (2),			/* cost of FMUL instruction.  */
++  COSTS_N_INSNS (2),			/* cost of FDIV instruction.  */
++  COSTS_N_INSNS (2),			/* cost of FABS instruction.  */
++  COSTS_N_INSNS (2),			/* cost of FCHS instruction.  */
++  COSTS_N_INSNS (2),			/* cost of FSQRT instruction.  */
+ };
+ 
+ /* Processor costs (relative to an add) */
+ static const
+ struct processor_costs i386_cost = {	/* 386 specific costs */
+-  1,					/* cost of an add instruction */
+-  1,					/* cost of a lea instruction */
+-  3,					/* variable shift costs */
+-  2,					/* constant shift costs */
+-  {6, 6, 6, 6, 6},			/* cost of starting a multiply */
+-  1,					/* cost of multiply per each bit set */
+-  {23, 23, 23, 23, 23},			/* cost of a divide/mod */
+-  3,					/* cost of movsx */
+-  2,					/* cost of movzx */
++  COSTS_N_INSNS (1),			/* cost of an add instruction */
++  COSTS_N_INSNS (1),			/* cost of a lea instruction */
++  COSTS_N_INSNS (3),			/* variable shift costs */
++  COSTS_N_INSNS (2),			/* constant shift costs */
++  {COSTS_N_INSNS (6),			/* cost of starting multiply for QI */
++   COSTS_N_INSNS (6),			/*                               HI */
++   COSTS_N_INSNS (6),			/*                               SI */
++   COSTS_N_INSNS (6),			/*                               DI */
++   COSTS_N_INSNS (6)},			/*                               other */
++  COSTS_N_INSNS (1),			/* cost of multiply per each bit set */
++  {COSTS_N_INSNS (23),			/* cost of a divide/mod for QI */
++   COSTS_N_INSNS (23),			/*                          HI */
++   COSTS_N_INSNS (23),			/*                          SI */
++   COSTS_N_INSNS (23),			/*                          DI */
++   COSTS_N_INSNS (23)},			/*                          other */
++  COSTS_N_INSNS (3),			/* cost of movsx */
++  COSTS_N_INSNS (2),			/* cost of movzx */
+   15,					/* "large" insn */
+   3,					/* MOVE_RATIO */
+   4,					/* cost for loading QImode using movzbl */
+@@ -144,25 +160,33 @@
+   0,					/* size of prefetch block */
+   0,					/* number of parallel prefetches */
+   1,					/* Branch cost */
+-  23,					/* cost of FADD and FSUB insns.  */
+-  27,					/* cost of FMUL instruction.  */
+-  88,					/* cost of FDIV instruction.  */
+-  22,					/* cost of FABS instruction.  */
+-  24,					/* cost of FCHS instruction.  */
+-  122,					/* cost of FSQRT instruction.  */
++  COSTS_N_INSNS (23),			/* cost of FADD and FSUB insns.  */
++  COSTS_N_INSNS (27),			/* cost of FMUL instruction.  */
++  COSTS_N_INSNS (88),			/* cost of FDIV instruction.  */
++  COSTS_N_INSNS (22),			/* cost of FABS instruction.  */
++  COSTS_N_INSNS (24),			/* cost of FCHS instruction.  */
++  COSTS_N_INSNS (122),			/* cost of FSQRT instruction.  */
+ };
+ 
+ static const
+ struct processor_costs i486_cost = {	/* 486 specific costs */
+-  1,					/* cost of an add instruction */
+-  1,					/* cost of a lea instruction */
+-  3,					/* variable shift costs */
+-  2,					/* constant shift costs */
+-  {12, 12, 12, 12, 12},			/* cost of starting a multiply */
++  COSTS_N_INSNS (1),			/* cost of an add instruction */
++  COSTS_N_INSNS (1),			/* cost of a lea instruction */
++  COSTS_N_INSNS (3),			/* variable shift costs */
++  COSTS_N_INSNS (2),			/* constant shift costs */
++  {COSTS_N_INSNS (12),			/* cost of starting multiply for QI */
++   COSTS_N_INSNS (12),			/*                               HI */
++   COSTS_N_INSNS (12),			/*                               SI */
++   COSTS_N_INSNS (12),			/*                               DI */
++   COSTS_N_INSNS (12)},			/*                               other */
+   1,					/* cost of multiply per each bit set */
+-  {40, 40, 40, 40, 40},			/* cost of a divide/mod */
+-  3,					/* cost of movsx */
+-  2,					/* cost of movzx */
++  {COSTS_N_INSNS (40),			/* cost of a divide/mod for QI */
++   COSTS_N_INSNS (40),			/*                          HI */
++   COSTS_N_INSNS (40),			/*                          SI */
++   COSTS_N_INSNS (40),			/*                          DI */
++   COSTS_N_INSNS (40)},			/*                          other */
++  COSTS_N_INSNS (3),			/* cost of movsx */
++  COSTS_N_INSNS (2),			/* cost of movzx */
+   15,					/* "large" insn */
+   3,					/* MOVE_RATIO */
+   4,					/* cost for loading QImode using movzbl */
+@@ -188,25 +212,33 @@
+   0,					/* size of prefetch block */
+   0,					/* number of parallel prefetches */
+   1,					/* Branch cost */
+-  8,					/* cost of FADD and FSUB insns.  */
+-  16,					/* cost of FMUL instruction.  */
+-  73,					/* cost of FDIV instruction.  */
+-  3,					/* cost of FABS instruction.  */
+-  3,					/* cost of FCHS instruction.  */
+-  83,					/* cost of FSQRT instruction.  */
++  COSTS_N_INSNS (8),			/* cost of FADD and FSUB insns.  */
++  COSTS_N_INSNS (16),			/* cost of FMUL instruction.  */
++  COSTS_N_INSNS (73),			/* cost of FDIV instruction.  */
++  COSTS_N_INSNS (3),			/* cost of FABS instruction.  */
++  COSTS_N_INSNS (3),			/* cost of FCHS instruction.  */
++  COSTS_N_INSNS (83),			/* cost of FSQRT instruction.  */
+ };
+ 
+ static const
+ struct processor_costs pentium_cost = {
+-  1,					/* cost of an add instruction */
+-  1,					/* cost of a lea instruction */
+-  4,					/* variable shift costs */
+-  1,					/* constant shift costs */
+-  {11, 11, 11, 11, 11},			/* cost of starting a multiply */
++  COSTS_N_INSNS (1),			/* cost of an add instruction */
++  COSTS_N_INSNS (1),			/* cost of a lea instruction */
++  COSTS_N_INSNS (4),			/* variable shift costs */
++  COSTS_N_INSNS (1),			/* constant shift costs */
++  {COSTS_N_INSNS (11),			/* cost of starting multiply for QI */
++   COSTS_N_INSNS (11),			/*                               HI */
++   COSTS_N_INSNS (11),			/*                               SI */
++   COSTS_N_INSNS (11),			/*                               DI */
++   COSTS_N_INSNS (11)},			/*                               other */
+   0,					/* cost of multiply per each bit set */
+-  {25, 25, 25, 25, 25},			/* cost of a divide/mod */
+-  3,					/* cost of movsx */
+-  2,					/* cost of movzx */
++  {COSTS_N_INSNS (25),			/* cost of a divide/mod for QI */
++   COSTS_N_INSNS (25),			/*                          HI */
++   COSTS_N_INSNS (25),			/*                          SI */
++   COSTS_N_INSNS (25),			/*                          DI */
++   COSTS_N_INSNS (25)},			/*                          other */
++  COSTS_N_INSNS (3),			/* cost of movsx */
++  COSTS_N_INSNS (2),			/* cost of movzx */
+   8,					/* "large" insn */
+   6,					/* MOVE_RATIO */
+   6,					/* cost for loading QImode using movzbl */
+@@ -232,25 +264,33 @@
+   0,					/* size of prefetch block */
+   0,					/* number of parallel prefetches */
+   2,					/* Branch cost */
+-  3,					/* cost of FADD and FSUB insns.  */
+-  3,					/* cost of FMUL instruction.  */
+-  39,					/* cost of FDIV instruction.  */
+-  1,					/* cost of FABS instruction.  */
+-  1,					/* cost of FCHS instruction.  */
+-  70,					/* cost of FSQRT instruction.  */
++  COSTS_N_INSNS (3),			/* cost of FADD and FSUB insns.  */
++  COSTS_N_INSNS (3),			/* cost of FMUL instruction.  */
++  COSTS_N_INSNS (39),			/* cost of FDIV instruction.  */
++  COSTS_N_INSNS (1),			/* cost of FABS instruction.  */
++  COSTS_N_INSNS (1),			/* cost of FCHS instruction.  */
++  COSTS_N_INSNS (70),			/* cost of FSQRT instruction.  */
+ };
+ 
+ static const
+ struct processor_costs pentiumpro_cost = {
+-  1,					/* cost of an add instruction */
+-  1,					/* cost of a lea instruction */
+-  1,					/* variable shift costs */
+-  1,					/* constant shift costs */
+-  {4, 4, 4, 4, 4},			/* cost of starting a multiply */
++  COSTS_N_INSNS (1),			/* cost of an add instruction */
++  COSTS_N_INSNS (1),			/* cost of a lea instruction */
++  COSTS_N_INSNS (1),			/* variable shift costs */
++  COSTS_N_INSNS (1),			/* constant shift costs */
++  {COSTS_N_INSNS (4),			/* cost of starting multiply for QI */
++   COSTS_N_INSNS (4),			/*                               HI */
++   COSTS_N_INSNS (4),			/*                               SI */
++   COSTS_N_INSNS (4),			/*                               DI */
++   COSTS_N_INSNS (4)},			/*                               other */
+   0,					/* cost of multiply per each bit set */
+-  {17, 17, 17, 17, 17},			/* cost of a divide/mod */
+-  1,					/* cost of movsx */
+-  1,					/* cost of movzx */
++  {COSTS_N_INSNS (17),			/* cost of a divide/mod for QI */
++   COSTS_N_INSNS (17),			/*                          HI */
++   COSTS_N_INSNS (17),			/*                          SI */
++   COSTS_N_INSNS (17),			/*                          DI */
++   COSTS_N_INSNS (17)},			/*                          other */
++  COSTS_N_INSNS (1),			/* cost of movsx */
++  COSTS_N_INSNS (1),			/* cost of movzx */
+   8,					/* "large" insn */
+   6,					/* MOVE_RATIO */
+   2,					/* cost for loading QImode using movzbl */
+@@ -276,25 +316,33 @@
+   32,					/* size of prefetch block */
+   6,					/* number of parallel prefetches */
+   2,					/* Branch cost */
+-  3,					/* cost of FADD and FSUB insns.  */
+-  5,					/* cost of FMUL instruction.  */
+-  56,					/* cost of FDIV instruction.  */
+-  2,					/* cost of FABS instruction.  */
+-  2,					/* cost of FCHS instruction.  */
+-  56,					/* cost of FSQRT instruction.  */
++  COSTS_N_INSNS (3),			/* cost of FADD and FSUB insns.  */
++  COSTS_N_INSNS (5),			/* cost of FMUL instruction.  */
++  COSTS_N_INSNS (56),			/* cost of FDIV instruction.  */
++  COSTS_N_INSNS (2),			/* cost of FABS instruction.  */
++  COSTS_N_INSNS (2),			/* cost of FCHS instruction.  */
++  COSTS_N_INSNS (56),			/* cost of FSQRT instruction.  */
+ };
+ 
+ static const
+ struct processor_costs k6_cost = {
+-  1,					/* cost of an add instruction */
+-  2,					/* cost of a lea instruction */
+-  1,					/* variable shift costs */
+-  1,					/* constant shift costs */
+-  {3, 3, 3, 3, 3},			/* cost of starting a multiply */
++  COSTS_N_INSNS (1),			/* cost of an add instruction */
++  COSTS_N_INSNS (2),			/* cost of a lea instruction */
++  COSTS_N_INSNS (1),			/* variable shift costs */
++  COSTS_N_INSNS (1),			/* constant shift costs */
++  {COSTS_N_INSNS (3),			/* cost of starting multiply for QI */
++   COSTS_N_INSNS (3),			/*                               HI */
++   COSTS_N_INSNS (3),			/*                               SI */
++   COSTS_N_INSNS (3),			/*                               DI */
++   COSTS_N_INSNS (3)},			/*                               other */
+   0,					/* cost of multiply per each bit set */
+-  {18, 18, 18, 18, 18},			/* cost of a divide/mod */
+-  2,					/* cost of movsx */
+-  2,					/* cost of movzx */
++  {COSTS_N_INSNS (18),			/* cost of a divide/mod for QI */
++   COSTS_N_INSNS (18),			/*                          HI */
++   COSTS_N_INSNS (18),			/*                          SI */
++   COSTS_N_INSNS (18),			/*                          DI */
++   COSTS_N_INSNS (18)},			/*                          other */
++  COSTS_N_INSNS (2),			/* cost of movsx */
++  COSTS_N_INSNS (2),			/* cost of movzx */
+   8,					/* "large" insn */
+   4,					/* MOVE_RATIO */
+   3,					/* cost for loading QImode using movzbl */
+@@ -320,25 +368,33 @@
+   32,					/* size of prefetch block */
+   1,					/* number of parallel prefetches */
+   1,					/* Branch cost */
+-  2,					/* cost of FADD and FSUB insns.  */
+-  2,					/* cost of FMUL instruction.  */
+-  56,					/* cost of FDIV instruction.  */
+-  2,					/* cost of FABS instruction.  */
+-  2,					/* cost of FCHS instruction.  */
+-  56,					/* cost of FSQRT instruction.  */
++  COSTS_N_INSNS (2),			/* cost of FADD and FSUB insns.  */
++  COSTS_N_INSNS (2),			/* cost of FMUL instruction.  */
++  COSTS_N_INSNS (56),			/* cost of FDIV instruction.  */
++  COSTS_N_INSNS (2),			/* cost of FABS instruction.  */
++  COSTS_N_INSNS (2),			/* cost of FCHS instruction.  */
++  COSTS_N_INSNS (56),			/* cost of FSQRT instruction.  */
+ };
+ 
+ static const
+ struct processor_costs athlon_cost = {
+-  1,					/* cost of an add instruction */
+-  2,					/* cost of a lea instruction */
+-  1,					/* variable shift costs */
+-  1,					/* constant shift costs */
+-  {5, 5, 5, 5, 5},			/* cost of starting a multiply */
++  COSTS_N_INSNS (1),			/* cost of an add instruction */
++  COSTS_N_INSNS (2),			/* cost of a lea instruction */
++  COSTS_N_INSNS (1),			/* variable shift costs */
++  COSTS_N_INSNS (1),			/* constant shift costs */
++  {COSTS_N_INSNS (5),			/* cost of starting multiply for QI */
++   COSTS_N_INSNS (5),			/*                               HI */
++   COSTS_N_INSNS (5),			/*                               SI */
++   COSTS_N_INSNS (5),			/*                               DI */
++   COSTS_N_INSNS (5)},			/*                               other */
+   0,					/* cost of multiply per each bit set */
+-  {18, 26, 42, 74, 74},			/* cost of a divide/mod */
+-  1,					/* cost of movsx */
+-  1,					/* cost of movzx */
++  {COSTS_N_INSNS (18),			/* cost of a divide/mod for QI */
++   COSTS_N_INSNS (26),			/*                          HI */
++   COSTS_N_INSNS (42),			/*                          SI */
++   COSTS_N_INSNS (74),			/*                          DI */
++   COSTS_N_INSNS (74)},			/*                          other */
++  COSTS_N_INSNS (1),			/* cost of movsx */
++  COSTS_N_INSNS (1),			/* cost of movzx */
+   8,					/* "large" insn */
+   9,					/* MOVE_RATIO */
+   4,					/* cost for loading QImode using movzbl */
+@@ -364,25 +420,33 @@
+   64,					/* size of prefetch block */
+   6,					/* number of parallel prefetches */
+   5,					/* Branch cost */
+-  4,					/* cost of FADD and FSUB insns.  */
+-  4,					/* cost of FMUL instruction.  */
+-  24,					/* cost of FDIV instruction.  */
+-  2,					/* cost of FABS instruction.  */
+-  2,					/* cost of FCHS instruction.  */
+-  35,					/* cost of FSQRT instruction.  */
++  COSTS_N_INSNS (4),			/* cost of FADD and FSUB insns.  */
++  COSTS_N_INSNS (4),			/* cost of FMUL instruction.  */
++  COSTS_N_INSNS (24),			/* cost of FDIV instruction.  */
++  COSTS_N_INSNS (2),			/* cost of FABS instruction.  */
++  COSTS_N_INSNS (2),			/* cost of FCHS instruction.  */
++  COSTS_N_INSNS (35),			/* cost of FSQRT instruction.  */
+ };
+ 
+ static const
+ struct processor_costs k8_cost = {
+-  1,					/* cost of an add instruction */
+-  2,					/* cost of a lea instruction */
+-  1,					/* variable shift costs */
+-  1,					/* constant shift costs */
+-  {3, 4, 3, 4, 5},			/* cost of starting a multiply */
++  COSTS_N_INSNS (1),			/* cost of an add instruction */
++  COSTS_N_INSNS (2),			/* cost of a lea instruction */
++  COSTS_N_INSNS (1),			/* variable shift costs */
++  COSTS_N_INSNS (1),			/* constant shift costs */
++  {COSTS_N_INSNS (3),			/* cost of starting multiply for QI */
++   COSTS_N_INSNS (4),			/*                               HI */
++   COSTS_N_INSNS (3),			/*                               SI */
++   COSTS_N_INSNS (4),			/*                               DI */
++   COSTS_N_INSNS (5)},			/*                               other */
+   0,					/* cost of multiply per each bit set */
+-  {18, 26, 42, 74, 74},			/* cost of a divide/mod */
+-  1,					/* cost of movsx */
+-  1,					/* cost of movzx */
++  {COSTS_N_INSNS (18),			/* cost of a divide/mod for QI */
++   COSTS_N_INSNS (26),			/*                          HI */
++   COSTS_N_INSNS (42),			/*                          SI */
++   COSTS_N_INSNS (74),			/*                          DI */
++   COSTS_N_INSNS (74)},			/*                          other */
++  COSTS_N_INSNS (1),			/* cost of movsx */
++  COSTS_N_INSNS (1),			/* cost of movzx */
+   8,					/* "large" insn */
+   9,					/* MOVE_RATIO */
+   4,					/* cost for loading QImode using movzbl */
+@@ -408,25 +472,33 @@
+   64,					/* size of prefetch block */
+   6,					/* number of parallel prefetches */
+   5,					/* Branch cost */
+-  4,					/* cost of FADD and FSUB insns.  */
+-  4,					/* cost of FMUL instruction.  */
+-  19,					/* cost of FDIV instruction.  */
+-  2,					/* cost of FABS instruction.  */
+-  2,					/* cost of FCHS instruction.  */
+-  35,					/* cost of FSQRT instruction.  */
++  COSTS_N_INSNS (4),			/* cost of FADD and FSUB insns.  */
++  COSTS_N_INSNS (4),			/* cost of FMUL instruction.  */
++  COSTS_N_INSNS (19),			/* cost of FDIV instruction.  */
++  COSTS_N_INSNS (2),			/* cost of FABS instruction.  */
++  COSTS_N_INSNS (2),			/* cost of FCHS instruction.  */
++  COSTS_N_INSNS (35),			/* cost of FSQRT instruction.  */
+ };
+ 
+ static const
+ struct processor_costs pentium4_cost = {
+-  1,					/* cost of an add instruction */
+-  3,					/* cost of a lea instruction */
+-  4,					/* variable shift costs */
+-  4,					/* constant shift costs */
+-  {15, 15, 15, 15, 15},			/* cost of starting a multiply */
++  COSTS_N_INSNS (1),			/* cost of an add instruction */
++  COSTS_N_INSNS (3),			/* cost of a lea instruction */
++  COSTS_N_INSNS (4),			/* variable shift costs */
++  COSTS_N_INSNS (4),			/* constant shift costs */
++  {COSTS_N_INSNS (15),			/* cost of starting multiply for QI */
++   COSTS_N_INSNS (15),			/*                               HI */
++   COSTS_N_INSNS (15),			/*                               SI */
++   COSTS_N_INSNS (15),			/*                               DI */
++   COSTS_N_INSNS (15)},			/*                               other */
+   0,					/* cost of multiply per each bit set */
+-  {56, 56, 56, 56, 56},			/* cost of a divide/mod */
+-  1,					/* cost of movsx */
+-  1,					/* cost of movzx */
++  {COSTS_N_INSNS (56),			/* cost of a divide/mod for QI */
++   COSTS_N_INSNS (56),			/*                          HI */
++   COSTS_N_INSNS (56),			/*                          SI */
++   COSTS_N_INSNS (56),			/*                          DI */
++   COSTS_N_INSNS (56)},			/*                          other */
++  COSTS_N_INSNS (1),			/* cost of movsx */
++  COSTS_N_INSNS (1),			/* cost of movzx */
+   16,					/* "large" insn */
+   6,					/* MOVE_RATIO */
+   2,					/* cost for loading QImode using movzbl */
+@@ -452,25 +524,33 @@
+   64,					/* size of prefetch block */
+   6,					/* number of parallel prefetches */
+   2,					/* Branch cost */
+-  5,					/* cost of FADD and FSUB insns.  */
+-  7,					/* cost of FMUL instruction.  */
+-  43,					/* cost of FDIV instruction.  */
+-  2,					/* cost of FABS instruction.  */
+-  2,					/* cost of FCHS instruction.  */
+-  43,					/* cost of FSQRT instruction.  */
++  COSTS_N_INSNS (5),			/* cost of FADD and FSUB insns.  */
++  COSTS_N_INSNS (7),			/* cost of FMUL instruction.  */
++  COSTS_N_INSNS (43),			/* cost of FDIV instruction.  */
++  COSTS_N_INSNS (2),			/* cost of FABS instruction.  */
++  COSTS_N_INSNS (2),			/* cost of FCHS instruction.  */
++  COSTS_N_INSNS (43),			/* cost of FSQRT instruction.  */
+ };
+ 
+ static const
+ struct processor_costs nocona_cost = {
+-  1,					/* cost of an add instruction */
+-  1,					/* cost of a lea instruction */
+-  1,					/* variable shift costs */
+-  1,					/* constant shift costs */
+-  {10, 10, 10, 10, 10},			/* cost of starting a multiply */
++  COSTS_N_INSNS (1),			/* cost of an add instruction */
++  COSTS_N_INSNS (1),			/* cost of a lea instruction */
++  COSTS_N_INSNS (1),			/* variable shift costs */
++  COSTS_N_INSNS (1),			/* constant shift costs */
++  {COSTS_N_INSNS (10),			/* cost of starting multiply for QI */
++   COSTS_N_INSNS (10),			/*                               HI */
++   COSTS_N_INSNS (10),			/*                               SI */
++   COSTS_N_INSNS (10),			/*                               DI */
++   COSTS_N_INSNS (10)},			/*                               other */
+   0,					/* cost of multiply per each bit set */
+-  {66, 66, 66, 66, 66},			/* cost of a divide/mod */
+-  1,					/* cost of movsx */
+-  1,					/* cost of movzx */
++  {COSTS_N_INSNS (66),			/* cost of a divide/mod for QI */
++   COSTS_N_INSNS (66),			/*                          HI */
++   COSTS_N_INSNS (66),			/*                          SI */
++   COSTS_N_INSNS (66),			/*                          DI */
++   COSTS_N_INSNS (66)},			/*                          other */
++  COSTS_N_INSNS (1),			/* cost of movsx */
++  COSTS_N_INSNS (1),			/* cost of movzx */
+   16,					/* "large" insn */
+   17,					/* MOVE_RATIO */
+   4,					/* cost for loading QImode using movzbl */
+@@ -496,12 +576,12 @@
+   128,					/* size of prefetch block */
+   8,					/* number of parallel prefetches */
+   1,					/* Branch cost */
+-  6,					/* cost of FADD and FSUB insns.  */
+-  8,					/* cost of FMUL instruction.  */
+-  40,					/* cost of FDIV instruction.  */
+-  3,					/* cost of FABS instruction.  */
+-  3,					/* cost of FCHS instruction.  */
+-  44,					/* cost of FSQRT instruction.  */
++  COSTS_N_INSNS (6),			/* cost of FADD and FSUB insns.  */
++  COSTS_N_INSNS (8),			/* cost of FMUL instruction.  */
++  COSTS_N_INSNS (40),			/* cost of FDIV instruction.  */
++  COSTS_N_INSNS (3),			/* cost of FABS instruction.  */
++  COSTS_N_INSNS (3),			/* cost of FCHS instruction.  */
++  COSTS_N_INSNS (44),			/* cost of FSQRT instruction.  */
+ };
+ 
+ const struct processor_costs *ix86_cost = &pentium_cost;
+@@ -16320,13 +16400,13 @@
+ 	  && GET_MODE (XEXP (x, 0)) == SImode)
+ 	*total = 1;
+       else if (TARGET_ZERO_EXTEND_WITH_AND)
+-	*total = COSTS_N_INSNS (ix86_cost->add);
++	*total = ix86_cost->add;
+       else
+-	*total = COSTS_N_INSNS (ix86_cost->movzx);
++	*total = ix86_cost->movzx;
+       return false;
+ 
+     case SIGN_EXTEND:
+-      *total = COSTS_N_INSNS (ix86_cost->movsx);
++      *total = ix86_cost->movsx;
+       return false;
+ 
+     case ASHIFT:
+@@ -16336,13 +16416,14 @@
+ 	  HOST_WIDE_INT value = INTVAL (XEXP (x, 1));
+ 	  if (value == 1)
+ 	    {
+-	      *total = COSTS_N_INSNS (ix86_cost->add);
++	      *total = ix86_cost->add;
+ 	      return false;
+ 	    }
+ 	  if ((value == 2 || value == 3)
++	      && !TARGET_DECOMPOSE_LEA
+ 	      && ix86_cost->lea <= ix86_cost->shift_const)
+ 	    {
+-	      *total = COSTS_N_INSNS (ix86_cost->lea);
++	      *total = ix86_cost->lea;
+ 	      return false;
+ 	    }
+ 	}
+@@ -16357,31 +16438,31 @@
+ 	  if (GET_CODE (XEXP (x, 1)) == CONST_INT)
+ 	    {
+ 	      if (INTVAL (XEXP (x, 1)) > 32)
+-		*total = COSTS_N_INSNS(ix86_cost->shift_const + 2);
++		*total = ix86_cost->shift_const + COSTS_N_INSNS (2);
+ 	      else
+-		*total = COSTS_N_INSNS(ix86_cost->shift_const * 2);
++		*total = ix86_cost->shift_const * 2;
+ 	    }
+ 	  else
+ 	    {
+ 	      if (GET_CODE (XEXP (x, 1)) == AND)
+-		*total = COSTS_N_INSNS(ix86_cost->shift_var * 2);
++		*total = ix86_cost->shift_var * 2;
+ 	      else
+-		*total = COSTS_N_INSNS(ix86_cost->shift_var * 6 + 2);
++		*total = ix86_cost->shift_var * 6 + COSTS_N_INSNS (2);
+ 	    }
+ 	}
+       else
+ 	{
+ 	  if (GET_CODE (XEXP (x, 1)) == CONST_INT)
+-	    *total = COSTS_N_INSNS (ix86_cost->shift_const);
++	    *total = ix86_cost->shift_const;
+ 	  else
+-	    *total = COSTS_N_INSNS (ix86_cost->shift_var);
++	    *total = ix86_cost->shift_var;
+ 	}
+       return false;
+ 
+     case MULT:
+       if (FLOAT_MODE_P (mode))
+ 	{
+-	  *total = COSTS_N_INSNS (ix86_cost->fmul);
++	  *total = ix86_cost->fmul;
+ 	  return false;
+ 	}
+       else
+@@ -16422,9 +16503,9 @@
+ 	        op0 = XEXP (op0, 0), mode = GET_MODE (op0);
+ 	    }
+ 
+-  	  *total = COSTS_N_INSNS (ix86_cost->mult_init[MODE_INDEX (mode)]
+-			          + nbits * ix86_cost->mult_bit)
+-	           + rtx_cost (op0, outer_code) + rtx_cost (op1, outer_code);
++  	  *total = (ix86_cost->mult_init[MODE_INDEX (mode)]
++		    + nbits * ix86_cost->mult_bit
++	            + rtx_cost (op0, outer_code) + rtx_cost (op1, outer_code));
+ 
+           return true;
+ 	}
+@@ -16434,14 +16515,14 @@
+     case MOD:
+     case UMOD:
+       if (FLOAT_MODE_P (mode))
+-	*total = COSTS_N_INSNS (ix86_cost->fdiv);
++	*total = ix86_cost->fdiv;
+       else
+-	*total = COSTS_N_INSNS (ix86_cost->divide[MODE_INDEX (mode)]);
++	*total = ix86_cost->divide[MODE_INDEX (mode)];
+       return false;
+ 
+     case PLUS:
+       if (FLOAT_MODE_P (mode))
+-	*total = COSTS_N_INSNS (ix86_cost->fadd);
++	*total = ix86_cost->fadd;
+       else if (GET_MODE_CLASS (mode) == MODE_INT
+ 	       && GET_MODE_BITSIZE (mode) <= GET_MODE_BITSIZE (Pmode))
+ 	{
+@@ -16453,7 +16534,7 @@
+ 	      HOST_WIDE_INT val = INTVAL (XEXP (XEXP (XEXP (x, 0), 0), 1));
+ 	      if (val == 2 || val == 4 || val == 8)
+ 		{
+-		  *total = COSTS_N_INSNS (ix86_cost->lea);
++		  *total = ix86_cost->lea;
+ 		  *total += rtx_cost (XEXP (XEXP (x, 0), 1), outer_code);
+ 		  *total += rtx_cost (XEXP (XEXP (XEXP (x, 0), 0), 0),
+ 				      outer_code);
+@@ -16467,7 +16548,7 @@
+ 	      HOST_WIDE_INT val = INTVAL (XEXP (XEXP (x, 0), 1));
+ 	      if (val == 2 || val == 4 || val == 8)
+ 		{
+-		  *total = COSTS_N_INSNS (ix86_cost->lea);
++		  *total = ix86_cost->lea;
+ 		  *total += rtx_cost (XEXP (XEXP (x, 0), 0), outer_code);
+ 		  *total += rtx_cost (XEXP (x, 1), outer_code);
+ 		  return true;
+@@ -16475,7 +16556,7 @@
+ 	    }
+ 	  else if (GET_CODE (XEXP (x, 0)) == PLUS)
+ 	    {
+-	      *total = COSTS_N_INSNS (ix86_cost->lea);
++	      *total = ix86_cost->lea;
+ 	      *total += rtx_cost (XEXP (XEXP (x, 0), 0), outer_code);
+ 	      *total += rtx_cost (XEXP (XEXP (x, 0), 1), outer_code);
+ 	      *total += rtx_cost (XEXP (x, 1), outer_code);
+@@ -16487,7 +16568,7 @@
+     case MINUS:
+       if (FLOAT_MODE_P (mode))
+ 	{
+-	  *total = COSTS_N_INSNS (ix86_cost->fadd);
++	  *total = ix86_cost->fadd;
+ 	  return false;
+ 	}
+       /* FALLTHRU */
+@@ -16497,7 +16578,7 @@
+     case XOR:
+       if (!TARGET_64BIT && mode == DImode)
+ 	{
+-	  *total = (COSTS_N_INSNS (ix86_cost->add) * 2
++	  *total = (ix86_cost->add * 2
+ 		    + (rtx_cost (XEXP (x, 0), outer_code)
+ 		       << (GET_MODE (XEXP (x, 0)) != DImode))
+ 		    + (rtx_cost (XEXP (x, 1), outer_code)
+@@ -16509,16 +16590,16 @@
+     case NEG:
+       if (FLOAT_MODE_P (mode))
+ 	{
+-	  *total = COSTS_N_INSNS (ix86_cost->fchs);
++	  *total = ix86_cost->fchs;
+ 	  return false;
+ 	}
+       /* FALLTHRU */
+ 
+     case NOT:
+       if (!TARGET_64BIT && mode == DImode)
+-	*total = COSTS_N_INSNS (ix86_cost->add * 2);
++	*total = ix86_cost->add * 2;
+       else
+-	*total = COSTS_N_INSNS (ix86_cost->add);
++	*total = ix86_cost->add;
+       return false;
+ 
+     case COMPARE:
+@@ -16529,7 +16610,7 @@
+ 	{
+ 	  /* This kind of construct is implemented using test[bwl].
+ 	     Treat it as if we had an AND.  */
+-	  *total = (COSTS_N_INSNS (ix86_cost->add)
++	  *total = (ix86_cost->add
+ 		    + rtx_cost (XEXP (XEXP (x, 0), 0), outer_code)
+ 		    + rtx_cost (const1_rtx, outer_code));
+ 	  return true;
+@@ -16545,12 +16626,12 @@
+ 
+     case ABS:
+       if (FLOAT_MODE_P (mode))
+-	*total = COSTS_N_INSNS (ix86_cost->fabs);
++	*total = ix86_cost->fabs;
+       return false;
+ 
+     case SQRT:
+       if (FLOAT_MODE_P (mode))
+-	*total = COSTS_N_INSNS (ix86_cost->fsqrt);
++	*total = ix86_cost->fsqrt;
+       return false;
+ 
+     case UNSPEC:
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/patches/arm-pr30486.dpatch
+++ gdc-4.1-0.25-20080616-4.1.2/debian/patches/arm-pr30486.dpatch
@@ -0,0 +1,44 @@
+#! /bin/sh -e
+
+# DP: Fix 30486 on ARM
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+Index: trunk/gcc/fortran/trans-types.c
+===================================================================
+--- trunk/gcc/fortran/trans-types.c	(revision 170435)
++++ trunk/gcc/fortran/trans-types.c	(working copy)
+@@ -1800,6 +1800,13 @@ gfc_type_for_size (unsigned bits, int un
+ 	  if (type && bits == TYPE_PRECISION (type))
+ 	    return type;
+ 	}
++
++      /* Handle TImode as a special case because it is used by some backends
++         (eg. ARM) even though it is not available for normal use.  */
++#if HOST_BITS_PER_WIDE_INT >= 64
++      if (bits == TYPE_PRECISION (intTI_type_node))
++	return intTI_type_node;
++#endif
+     }
+   else
+     {
+
--- gdc-4.1-0.25-20080616-4.1.2.orig/debian/patches/sparc-niagara2.dpatch
+++ gdc-4.1-0.25-20080616-4.1.2/debian/patches/sparc-niagara2.dpatch
@@ -0,0 +1,440 @@
+#! /bin/sh -e
+
+# DP: Add niagara2 optimization support
+
+if [ $# -eq 3 ] && [ "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+	patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        cd ${dir}libcpp && autoconf
+	;;
+    -unpatch)
+	patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        cd ${dir}libcpp && autoconf
+	;;
+    *)
+	echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+	exit 1;;
+esac
+
+exit 0
+
+--- gcc/config.gcc.~1~	2007-09-26 18:09:21.000000000 -0700
++++ gcc/config.gcc	2007-09-26 18:09:47.000000000 -0700
+@@ -2800,7 +2800,7 @@ case "${target}" in
+ 			"" | sparc | sparcv9 | sparc64 | sparc86x \
+ 			| v7 | cypress | v8 | supersparc | sparclite | f930 \
+ 			| f934 | hypersparc | sparclite86x | sparclet | tsc701 \
+-			| v9 | ultrasparc | ultrasparc3 | niagara)
++			| v9 | ultrasparc | ultrasparc3 | niagara | niagara2)
+ 				# OK
+ 				;;
+ 			*)
+--- gcc/config/sparc/linux64.h.~1~	2007-09-26 18:09:21.000000000 -0700
++++ gcc/config/sparc/linux64.h	2007-09-26 18:09:47.000000000 -0700
+@@ -49,7 +49,8 @@ Boston, MA 02110-1301, USA.  */
+ #if TARGET_CPU_DEFAULT == TARGET_CPU_v9 \
+     || TARGET_CPU_DEFAULT == TARGET_CPU_ultrasparc \
+     || TARGET_CPU_DEFAULT == TARGET_CPU_ultrasparc3 \
+-    || TARGET_CPU_DEFAULT == TARGET_CPU_niagara
++    || TARGET_CPU_DEFAULT == TARGET_CPU_niagara \
++    || TARGET_CPU_DEFAULT == TARGET_CPU_niagara2
+ /* A 64 bit v9 compiler with stack-bias,
+    in a Medium/Low code model environment.  */
+ 
+--- gcc/config/sparc/niagara2.md.~1~	2007-09-26 18:09:30.000000000 -0700
++++ gcc/config/sparc/niagara2.md	2007-09-26 18:09:47.000000000 -0700
+@@ -0,0 +1,91 @@
++;; Scheduling description for Niagara-2.
++;;   Copyright (C) 2007 Free Software Foundation, Inc.
++;;
++;; This file is part of GCC.
++;;
++;; GCC is free software; you can redistribute it and/or modify
++;; it under the terms of the GNU General Public License as published by
++;; the Free Software Foundation; either version 2, or (at your option)
++;; any later version.
++;;
++;; GCC is distributed in the hope that it will be useful,
++;; but WITHOUT ANY WARRANTY; without even the implied warranty of
++;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++;; GNU General Public License for more details.
++;;
++;; You should have received a copy of the GNU General Public License
++;; along with GCC; see the file COPYING.  If not, write to
++;; the Free Software Foundation, 51 Franklin Street, Fifth Floor,
++;; Boston, MA 02110-1301, USA.
++
++;; Niagara-2 is a single-issue processor.
++
++(define_automaton "niagara2_0")
++
++(define_cpu_unit "niag2_pipe" "niagara2_0")
++
++(define_insn_reservation "niag2_25cycle" 25
++  (and (eq_attr "cpu" "niagara2")
++    (eq_attr "type" "flushw"))
++  "niag2_pipe*25")
++
++(define_insn_reservation "niag2_5cycle" 5
++  (and (eq_attr "cpu" "niagara2")
++    (eq_attr "type" "multi,flushw,iflush,trap"))
++  "niag2_pipe*5")
++
++(define_insn_reservation "niag2_6cycle" 4
++  (and (eq_attr "cpu" "niagara2")
++    (eq_attr "type" "savew"))
++  "niag2_pipe*4")
++
++/* Most basic operations are single-cycle. */
++(define_insn_reservation "niag2_ialu" 1
++ (and (eq_attr "cpu" "niagara2")
++   (eq_attr "type" "ialu,shift,compare,cmove"))
++ "niag2_pipe")
++
++(define_insn_reservation "niag2_imul" 5
++ (and (eq_attr "cpu" "niagara2")
++   (eq_attr "type" "imul"))
++ "niag2_pipe*5")
++
++(define_insn_reservation "niag2_idiv" 31
++ (and (eq_attr "cpu" "niagara2")
++   (eq_attr "type" "idiv"))
++ "niag2_pipe*31")
++
++(define_insn_reservation "niag2_branch" 5
++  (and (eq_attr "cpu" "niagara2")
++    (eq_attr "type" "call,sibcall,call_no_delay_slot,uncond_branch,branch"))
++  "niag2_pipe*5")
++
++(define_insn_reservation "niag2_3cycle_load" 3
++  (and (eq_attr "cpu" "niagara2")
++    (eq_attr "type" "load,fpload"))
++  "niag2_pipe*3")
++
++(define_insn_reservation "niag2_1cycle_store" 1
++  (and (eq_attr "cpu" "niagara2")
++    (eq_attr "type" "store,fpstore"))
++  "niag2_pipe")
++
++(define_insn_reservation "niag2_fp" 3
++  (and (eq_attr "cpu" "niagara2")
++    (eq_attr "type" "fpmove,fpcmove,fpcrmove,fpcmp,fpmul"))
++  "niag2_pipe*3")
++
++(define_insn_reservation "niag2_fdivs" 19
++  (and (eq_attr "cpu" "niagara2")
++    (eq_attr "type" "fpdivs"))
++  "niag2_pipe*19")
++
++(define_insn_reservation "niag2_fdivd" 33
++  (and (eq_attr "cpu" "niagara2")
++    (eq_attr "type" "fpdivd"))
++  "niag2_pipe*33")
++
++(define_insn_reservation "niag2_vis" 6
++  (and (eq_attr "cpu" "niagara2")
++    (eq_attr "type" "fga,fgm_pack,fgm_mul,fgm_cmp,fgm_pdist"))
++  "niag2_pipe*6")
+--- gcc/config/sparc/sol2-bi.h.~1~	2007-09-26 18:09:21.000000000 -0700
++++ gcc/config/sparc/sol2-bi.h	2007-09-26 18:09:47.000000000 -0700
+@@ -48,6 +48,15 @@
+ #define ASM_CPU64_DEFAULT_SPEC AS_SPARC64_FLAG "b"
+ #endif
+ 
++#if TARGET_CPU_DEFAULT == TARGET_CPU_niagara2
++#undef CPP_CPU64_DEFAULT_SPEC
++#define CPP_CPU64_DEFAULT_SPEC ""
++#undef ASM_CPU32_DEFAULT_SPEC
++#define ASM_CPU32_DEFAULT_SPEC "-xarch=v8plusb"
++#undef ASM_CPU64_DEFAULT_SPEC
++#define ASM_CPU64_DEFAULT_SPEC AS_SPARC64_FLAG "b"
++#endif
++
+ #if DEFAULT_ARCH32_P
+ #define DEF_ARCH32_SPEC(__str) "%{!m64:" __str "}"
+ #define DEF_ARCH64_SPEC(__str) "%{m64:" __str "}"
+@@ -66,7 +75,7 @@
+ %{mcpu=sparclite|mcpu-f930|mcpu=f934:-D__sparclite__} \
+ %{mcpu=v8:" DEF_ARCH32_SPEC("-D__sparcv8") "} \
+ %{mcpu=supersparc:-D__supersparc__ " DEF_ARCH32_SPEC("-D__sparcv8") "} \
+-%{mcpu=v9|mcpu=ultrasparc|mcpu=ultrasparc3|mcpu=niagara:" DEF_ARCH32_SPEC("-D__sparcv8") "} \
++%{mcpu=v9|mcpu=ultrasparc|mcpu=ultrasparc3|mcpu=niagara|mcpu=niagara2:" DEF_ARCH32_SPEC("-D__sparcv8") "} \
+ %{!mcpu*:%{!mcypress:%{!msparclite:%{!mf930:%{!mf934:%{!mv8:%{!msupersparc:%(cpp_cpu_default)}}}}}}} \
+ "
+ 
+@@ -76,7 +85,8 @@
+ %{mcpu=ultrasparc:" DEF_ARCH32_SPEC("-xarch=v8plusa") DEF_ARCH64_SPEC(AS_SPARC64_FLAG "a") "} \
+ %{mcpu=ultrasparc3:" DEF_ARCH32_SPEC("-xarch=v8plusb") DEF_ARCH64_SPEC(AS_SPARC64_FLAG "b") "} \
+ %{mcpu=niagara:" DEF_ARCH32_SPEC("-xarch=v8plusb") DEF_ARCH64_SPEC(AS_SPARC64_FLAG "b") "} \
+-%{!mcpu=niagara:%{!mcpu=ultrasparc3:%{!mcpu=ultrasparc:%{!mcpu=v9:%{mcpu*:" DEF_ARCH32_SPEC("-xarch=v8") DEF_ARCH64_SPEC(AS_SPARC64_FLAG) "}}}}} \
++%{mcpu=niagara2:" DEF_ARCH32_SPEC("-xarch=v8plusb") DEF_ARCH64_SPEC(AS_SPARC64_FLAG "b") "} \
++%{!mcpu=niagara2:%{!mcpu=niagara:%{!mcpu=ultrasparc3:%{!mcpu=ultrasparc:%{!mcpu=v9:%{mcpu*:" DEF_ARCH32_SPEC("-xarch=v8") DEF_ARCH64_SPEC(AS_SPARC64_FLAG) "}}}}}} \
+ %{!mcpu*:%(asm_cpu_default)} \
+ "
+ 
+--- gcc/config/sparc/sol2.h.~1~	2007-09-26 18:09:21.000000000 -0700
++++ gcc/config/sparc/sol2.h	2007-09-26 18:09:47.000000000 -0700
+@@ -46,12 +46,18 @@ Boston, MA 02110-1301, USA.  */
+ #define ASM_CPU_DEFAULT_SPEC "-xarch=v8plusb"
+ #endif
+ 
++#if TARGET_CPU_DEFAULT == TARGET_CPU_niagara2
++#undef ASM_CPU_DEFAULT_SPEC
++#define ASM_CPU_DEFAULT_SPEC "-xarch=v8plusb"
++#endif
++
+ #undef ASM_CPU_SPEC
+ #define ASM_CPU_SPEC "\
+ %{mcpu=v9:-xarch=v8plus} \
+ %{mcpu=ultrasparc:-xarch=v8plusa} \
+ %{mcpu=ultrasparc3:-xarch=v8plusb} \
+ %{mcpu=niagara:-xarch=v8plusb} \
++%{mcpu=niagara2:-xarch=v8plusb} \
+ %{!mcpu*:%(asm_cpu_default)} \
+ "
+ 
+--- gcc/config/sparc/sparc.c.~1~	2007-09-26 18:09:21.000000000 -0700
++++ gcc/config/sparc/sparc.c	2007-09-26 18:09:47.000000000 -0700
+@@ -220,6 +220,30 @@ struct processor_costs niagara_costs = {
+   0, /* shift penalty */
+ };
+ 
++static const
++struct processor_costs niagara2_costs = {
++  COSTS_N_INSNS (3), /* int load */
++  COSTS_N_INSNS (3), /* int signed load */
++  COSTS_N_INSNS (3), /* int zeroed load */
++  COSTS_N_INSNS (3), /* float load */
++  COSTS_N_INSNS (6), /* fmov, fneg, fabs */
++  COSTS_N_INSNS (6), /* fadd, fsub */
++  COSTS_N_INSNS (6), /* fcmp */
++  COSTS_N_INSNS (6), /* fmov, fmovr */
++  COSTS_N_INSNS (6), /* fmul */
++  COSTS_N_INSNS (19), /* fdivs */
++  COSTS_N_INSNS (33), /* fdivd */
++  COSTS_N_INSNS (19), /* fsqrts */
++  COSTS_N_INSNS (33), /* fsqrtd */
++  COSTS_N_INSNS (5), /* imul */
++  COSTS_N_INSNS (5), /* imulX */
++  0, /* imul bit factor */
++  COSTS_N_INSNS (31), /* idiv, average of 12 - 41 cycle range */
++  COSTS_N_INSNS (31), /* idivX, average of 12 - 41 cycle range */
++  COSTS_N_INSNS (1), /* movcc/movr */
++  0, /* shift penalty */
++};
++
+ const struct processor_costs *sparc_costs = &cypress_costs;
+ 
+ #ifdef HAVE_AS_RELAX_OPTION
+@@ -621,6 +645,7 @@ sparc_override_options (void)
+     { TARGET_CPU_ultrasparc, "ultrasparc" },
+     { TARGET_CPU_ultrasparc3, "ultrasparc3" },
+     { TARGET_CPU_niagara, "niagara" },
++    { TARGET_CPU_niagara2, "niagara2" },
+     { 0, 0 }
+   };
+   const struct cpu_default *def;
+@@ -658,6 +683,7 @@ sparc_override_options (void)
+     { "ultrasparc3", PROCESSOR_ULTRASPARC3, MASK_ISA, MASK_V9|MASK_DEPRECATED_V8_INSNS},
+     /* UltraSPARC T1 */
+     { "niagara", PROCESSOR_NIAGARA, MASK_ISA, MASK_V9|MASK_DEPRECATED_V8_INSNS},
++    { "niagara2", PROCESSOR_NIAGARA, MASK_ISA, MASK_V9},
+     { 0, 0, 0, 0 }
+   };
+   const struct cpu_table *cpu;
+@@ -768,7 +794,8 @@ sparc_override_options (void)
+   if (align_functions == 0
+       && (sparc_cpu == PROCESSOR_ULTRASPARC
+ 	  || sparc_cpu == PROCESSOR_ULTRASPARC3
+-	  || sparc_cpu == PROCESSOR_NIAGARA))
++	  || sparc_cpu == PROCESSOR_NIAGARA
++	  || sparc_cpu == PROCESSOR_NIAGARA2))
+     align_functions = 32;
+ 
+   /* Validate PCC_STRUCT_RETURN.  */
+@@ -820,6 +847,9 @@ sparc_override_options (void)
+     case PROCESSOR_NIAGARA:
+       sparc_costs = &niagara_costs;
+       break;
++    case PROCESSOR_NIAGARA2:
++      sparc_costs = &niagara2_costs;
++      break;
+     };
+ 
+ #ifdef TARGET_DEFAULT_LONG_DOUBLE_128
+@@ -7131,7 +7161,8 @@ sparc_initialize_trampoline (rtx tramp, 
+   emit_insn (gen_flush (validize_mem (gen_rtx_MEM (SImode, tramp))));
+   if (sparc_cpu != PROCESSOR_ULTRASPARC
+       && sparc_cpu != PROCESSOR_ULTRASPARC3
+-      && sparc_cpu != PROCESSOR_NIAGARA)
++      && sparc_cpu != PROCESSOR_NIAGARA
++      && sparc_cpu != PROCESSOR_NIAGARA2)
+     emit_insn (gen_flush (validize_mem (gen_rtx_MEM (SImode,
+ 						     plus_constant (tramp, 8)))));
+ 
+@@ -7174,7 +7205,8 @@ sparc64_initialize_trampoline (rtx tramp
+ 
+   if (sparc_cpu != PROCESSOR_ULTRASPARC
+       && sparc_cpu != PROCESSOR_ULTRASPARC3
+-      && sparc_cpu != PROCESSOR_NIAGARA)
++      && sparc_cpu != PROCESSOR_NIAGARA
++      && sparc_cpu != PROCESSOR_NIAGARA2)
+     emit_insn (gen_flushdi (validize_mem (gen_rtx_MEM (DImode, plus_constant (tramp, 8)))));
+ 
+   /* Call __enable_execute_stack after writing onto the stack to make sure
+@@ -7354,7 +7386,8 @@ sparc_sched_init (FILE *dump ATTRIBUTE_U
+ static int
+ sparc_use