Package: gcc-4.7 Version: 4.7.1-3 Severity: serious Tags: patch Justification: fails to build from source (but built successfully in the past)
The attached patches allow me to build 4.7.1-3 for amd64 on lucid, using the upstream FSF tarball. Some of the below patches fix bit rot, some fix mistaken assumptions about lucid, and I think some of them may be just wrong. Please advise. -- System Information: Debian Release: wheezy/sid APT prefers unstable APT policy: (990, 'unstable'), (1, 'experimental') Architecture: i386 (i686) Kernel: Linux 3.2.0-3-686-pae (SMP w/2 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/bash Versions of packages gcc-4.7 depends on: ii binutils 2.22-7 ii cpp-4.7 4.7.1-3 ii gcc-4.7-base 4.7.1-3 ii libc6 2.13-34 ii libgcc1 1:4.7.1-3 ii libgmp10 2:5.0.5+dfsg-2 ii libgomp1 4.7.1-3 ii libitm1 4.7.1-3 ii libmpc2 0.9-4 ii libmpfr4 3.1.0-5 ii libquadmath0 4.7.1-3 ii zlib1g 1:1.2.7.dfsg-13 Versions of packages gcc-4.7 recommends: ii libc6-dev 2.13-34 Versions of packages gcc-4.7 suggests: ii binutils-gold 2.22-7 pn gcc-4.7-doc <none> pn gcc-4.7-locales <none> pn gcc-4.7-multilib <none> pn libgcc1-dbg <none> pn libgomp1-dbg <none> pn libitm1-dbg <none> ii libmudflap0-4.7-dev 4.7.1-3 pn libmudflap0-dbg <none> pn libquadmath0-dbg <none> -- no debconf information
diff -ru 3/debian/control.m4 gcc-4.7-4.7.1/debian/control.m4 --- 3/debian/control.m4 2012-07-06 17:34:33.624172652 -0700 +++ gcc-4.7-4.7.1/debian/control.m4 2012-06-24 14:55:50.133581721 -0700 @@ -185,8 +185,11 @@ Section: debug Priority: extra Depends: BASEDEP, libgcc1`'LS (= ${gcc:EpochVersion}), ${misc:Depends} -ifdef(`TARGET',`dnl',ifdef(`MULTIARCH', `Multi-Arch: same')) -ifdef(`TARGET',`dnl',`Provides: libgcc1-dbg-armel [armel], libgcc1-dbg-armhf [armhf]') +ifdef(`TARGET',`dnl',`dnl +ifdef(`MULTIARCH',`Multi-Arch: same +')dnl +Provides: libgcc1-dbg-armel [armel], libgcc1-dbg-armhf [armhf] +')dnl Description: GCC support library (debug symbols)`'ifdef(`TARGET)',` (TARGET)', `') Debug symbols for the GCC support library. ifdef(`TARGET', `dnl diff -ru 3/debian/patches/gcc-multilib64-multiarch.diff gcc-4.7-4.7.1/debian/patches/gcc-multilib64-multiarch.diff --- 3/debian/patches/gcc-multilib64-multiarch.diff 2012-07-06 17:34:33.864169777 -0700 +++ gcc-4.7-4.7.1/debian/patches/gcc-multilib64-multiarch.diff 2012-06-24 15:31:43.473981030 -0700 @@ -14,8 +14,8 @@ +++ b/src/gcc/config/rs6000/t-linux64 @@ -33,6 +33,6 @@ MULTILIB_EXTRA_OPTS = fPIC mstrict-align - MULTILIB_EXCEPTIONS = - MULTILIB_EXCLUSIONS = + MULTILIB_EXCEPTIONS = m64/msoft-float + MULTILIB_EXCLUSIONS = m64/!m32/msoft-float -MULTILIB_OSDIRNAMES = ../lib64$(call if_multiarch,:powerpc64-linux-gnu) +MULTILIB_OSDIRNAMES = ../lib$(call if_multiarch,:powerpc64-linux-gnu) MULTILIB_OSDIRNAMES += $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:powerpc-linux-gnu) diff -ru 3/debian/rules.conf gcc-4.7-4.7.1/debian/rules.conf --- 3/debian/rules.conf 2012-07-06 17:34:33.613661244 -0700 +++ gcc-4.7-4.7.1/debian/rules.conf 2012-07-06 17:47:57.183934519 -0700 @@ -264,14 +264,6 @@ LIBUNWIND_DEV_DEP := # nothing endif -ifneq (,$(filter $(distrelease),lenny etch squeeze dapper hardy jaunty karmic lucid maverick natty)) - GMP_BUILD_DEP = libgmp3-dev, - MPFR_BUILD_DEP = libmpfr-dev, -else - GMP_BUILD_DEP = libgmp-dev (>= 2:5.0.1~), - MPFR_BUILD_DEP = libmpfr-dev (>= 3.0.0-9~), -endif - cloog_parma = ifeq ($(trunk_build),yes) PPL_BUILD_DEP = libisl-dev, @@ -287,6 +279,16 @@ # FIXME: currently not dl'opened. #CLOOG_RUNTIME_DEP = libcloog-ppl0 (>= 0.15.9-2~), libppl-c2, libppl7 endif + +GMP_BUILD_DEP = libgmp-dev (>= 2:5.0.1~), +MPFR_BUILD_DEP = libmpfr-dev (>= 3.0.0-9~), +ifneq (,$(filter $(distrelease),lenny etch squeeze dapper hardy jaunty karmic lucid maverick natty)) + ifeq ($(cloog_parma),yes) + GMP_BUILD_DEP = libgmp3-dev, + MPFR_BUILD_DEP = libmpfr-dev, + endif +endif + MPC_BUILD_DEP = libmpc-dev, ELF_BUILD_DEP = libelfg0-dev (>= 0.8.12), diff -ru 3/debian/rules.defs gcc-4.7-4.7.1/debian/rules.defs --- 3/debian/rules.defs 2012-07-06 17:34:33.613661244 -0700 +++ gcc-4.7-4.7.1/debian/rules.defs 2012-06-24 14:55:50.144185903 -0700 @@ -285,9 +285,11 @@ # build using fsf or linaro ifeq ($(distribution),Ubuntu) ifeq (,$(findstring gnat, $(PKGSOURCE))) - ifneq (,$(findstring $(DEB_TARGET_ARCH),armel armhf amd64 i386 powerpc)) - with_linaro_branch = yes - endif + ifneq (,$(findstring $(DEB_TARGET_ARCH),armel armhf amd64 i386 powerpc)) +# UB:linaro patch is borked +# with_linaro_branch = yes +# UB linaro patch is borked + endif endif endif diff -ru 3/debian/rules.patch gcc-4.7-4.7.1/debian/rules.patch --- 3/debian/rules.patch 2012-07-06 17:34:33.633662668 -0700 +++ gcc-4.7-4.7.1/debian/rules.patch 2012-07-06 17:47:57.183934519 -0700 @@ -249,10 +249,10 @@ else debian_patches += gcc-multiarch$(if $(with_linaro_branch),-linaro) endif -ifneq ($(GFDL_INVARIANT_FREE),yes) - debian_patches += gcc-multiarch-doc -endif ifeq ($(with_multiarch_lib),yes) + ifneq ($(GFDL_INVARIANT_FREE),yes) + debian_patches += gcc-multiarch-doc + endif ifneq ($(single_package),yes) debian_patches += libjava-multiarch endif @@ -264,14 +264,12 @@ debian_patches += cross-biarch endif endif -debian_patches += gcc-powerpc-nof +ifeq ($(with_multiarch_lib),yes) + debian_patches += gcc-powerpc-nof +endif debian_patches += gcc-powerpc-undef ifeq ($(biarch32),yes) - ifeq ($(with_multiarch_lib),yes) - debian_patches += gcc-multilib64-multiarch - else - debian_patches += gcc-multilib64 - endif + debian_patches += gcc-multilib64-multiarch endif ifeq (,$(filter $(distrelease),lenny squeeze dapper hardy intrepid jaunty karmic lucid maverick))