Bug#323512: NMU patch
package gcc-2.95
tags 326506 + patch
thanks
Attached is the NMU patch to fix these ftbfs bugs. It builds on sparc,
I'll test the build on i386 before uploading.
--
Blars Blarson blarson@blars.org
http://www.blars.org/blars.html
With Microsoft, failure is not an option. It is a standard feature.
diff -ruN ../orig/gcc-2.95-2.95.4.ds15/debian/README.Debian gcc-2.95-2.95.4.ds15/debian/README.Debian
--- ../orig/gcc-2.95-2.95.4.ds15/debian/README.Debian 2005-10-28 21:48:07.000000000 +0000
+++ gcc-2.95-2.95.4.ds15/debian/README.Debian 2005-10-29 01:06:19.000000000 +0000
@@ -139,3 +139,15 @@
gpc-names:
versioned gpc names
+
+sparc32-rfi:
+ Makes it so sparc32 remains binary compatible with older releases
+
+builtin-apply:
+ On Sparc, message forwarding in the GNUstep framework
+ (gstep-base) relies on this patch. I didn't experience any side
+ effects of this "workaround" on a sparc Solaris platform. However
+ this workaround affects the all compilers of the egcs package.
+
+sparc-gcc4-fix:
+ gcc4 build fix for sparc (invalid lvalue in incrament)
diff -ruN ../orig/gcc-2.95-2.95.4.ds15/debian/changelog gcc-2.95-2.95.4.ds15/debian/changelog
--- ../orig/gcc-2.95-2.95.4.ds15/debian/changelog 2005-10-28 21:48:09.000000000 +0000
+++ gcc-2.95-2.95.4.ds15/debian/changelog 2005-10-29 01:04:41.000000000 +0000
@@ -1,3 +1,13 @@
+gcc-2.95 (2.95.4.ds15-22.1) unstable; urgency=low
+
+ * Non-maintainer upload.
+ * fix ftbfs on sparc (closes: #326506)
+ * fix ftbfs due to new dpkg-dev, patch from Lennert Buytenhek
+ (closes: #323512)
+ * fix ftbfs on arm, patch from Lennert Buytenhek (closes: #336057)
+
+ -- Blars Blarson <blarson@blars.org> Fri, 28 Oct 2005 18:58:39 +0000
+
gcc-2.95 (2.95.4.ds15-22) unstable; urgency=low
* Add build dependency on help2man.
diff -ruN ../orig/gcc-2.95-2.95.4.ds15/debian/control gcc-2.95-2.95.4.ds15/debian/control
--- ../orig/gcc-2.95-2.95.4.ds15/debian/control 2005-10-28 21:48:09.000000000 +0000
+++ gcc-2.95-2.95.4.ds15/debian/control 2005-10-29 01:06:17.000000000 +0000
@@ -9,7 +9,7 @@
Package: gcc-2.95
Architecture: any
Depends: ${shlibs:Depends}, cpp-2.95 (>= 1:2.95.4), cpp-2.95 (<< 1:2.95.5), binutils (>= 2.11.90.0.1-1)
-Conflicts: libc5-dev, egcc (<< 2.91.63-1.1)
+Conflicts: libc5-dev, egcc (<< 2.91.66-1), egcs64 (<< 1:19980921-3)
Replaces: egcc
Provides: c-compiler
Recommends: libc-dev
@@ -26,7 +26,7 @@
Architecture: any
Section: interpreters
Depends: ${shlibs:Depends}
-Replaces: g++ (<< 2.91.63-1.1)
+Replaces: g++ (<< 2.91.66-1)
Description: The GNU C preprocessor
NOTE: This is not a final release, but taken from the CVS gcc-2_95-branch
(dated 2001-10-02).
diff -ruN ../orig/gcc-2.95-2.95.4.ds15/debian/control.native gcc-2.95-2.95.4.ds15/debian/control.native
--- ../orig/gcc-2.95-2.95.4.ds15/debian/control.native 2005-10-28 21:48:07.000000000 +0000
+++ gcc-2.95-2.95.4.ds15/debian/control.native 2005-10-29 01:06:17.000000000 +0000
@@ -9,7 +9,7 @@
Package: gcc-2.95
Architecture: any
Depends: ${shlibs:Depends}, cpp-2.95 (>= 1:2.95.4), cpp-2.95 (<< 1:2.95.5), binutils (>= 2.11.90.0.1-1)
-Conflicts: libc5-dev, egcc (<< 2.91.63-1.1)
+Conflicts: libc5-dev, egcc (<< 2.91.66-1), egcs64 (<< 1:19980921-3)
Replaces: egcc
Provides: c-compiler
Recommends: libc-dev
@@ -26,7 +26,7 @@
Architecture: any
Section: interpreters
Depends: ${shlibs:Depends}
-Replaces: g++ (<< 2.91.63-1.1)
+Replaces: g++ (<< 2.91.66-1)
Description: The GNU C preprocessor
NOTE: This is not a final release, but taken from the CVS gcc-2_95-branch
(dated 2001-10-02).
diff -ruN ../orig/gcc-2.95-2.95.4.ds15/debian/patches/arm-gcc4-fix.dpatch gcc-2.95-2.95.4.ds15/debian/patches/arm-gcc4-fix.dpatch
--- ../orig/gcc-2.95-2.95.4.ds15/debian/patches/arm-gcc4-fix.dpatch 1970-01-01 00:00:00.000000000 +0000
+++ gcc-2.95-2.95.4.ds15/debian/patches/arm-gcc4-fix.dpatch 2005-10-29 00:56:45.000000000 +0000
@@ -0,0 +1,36 @@
+#! /bin/sh -e
+
+# DP: gcc4 build fix for arm (invalid lvalue in assignment)
+
+src=gcc
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+ pdir="-d $3"
+ src=$3/gcc
+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 --fuzz 10 < $0
+ ;;
+ -unpatch)
+ patch $pdir -f --no-backup-if-mismatch -R -p0 --fuzz 10 < $0
+ ;;
+ *)
+ echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+ exit 1
+esac
+exit 0
+
+--- gcc/config/arm/arm.c.orig 2001-01-25 20:39:56.000000000 +0100
++++ gcc/config/arm/arm.c 2005-10-27 18:00:57.000000000 +0200
+@@ -527,7 +527,7 @@
+ if ((TARGET_SOFT_FLOAT || arm_fpu != FP_HARD) && (tune_flags & FL_MODE32) == 0)
+ flag_schedule_insns = flag_schedule_insns_after_reload = 0;
+
+- arm_prog_mode = TARGET_APCS_32 ? PROG_MODE_PROG32 : PROG_MODE_PROG26;
++ arm_prgmode = TARGET_APCS_32 ? PROG_MODE_PROG32 : PROG_MODE_PROG26;
+
+ if (structure_size_string != NULL)
+ {
diff -ruN ../orig/gcc-2.95-2.95.4.ds15/debian/patches/sparc-gcc4-fix.dpatch gcc-2.95-2.95.4.ds15/debian/patches/sparc-gcc4-fix.dpatch
--- ../orig/gcc-2.95-2.95.4.ds15/debian/patches/sparc-gcc4-fix.dpatch 1970-01-01 00:00:00.000000000 +0000
+++ gcc-2.95-2.95.4.ds15/debian/patches/sparc-gcc4-fix.dpatch 2005-10-28 22:02:53.000000000 +0000
@@ -0,0 +1,37 @@
+#!/bin/sh -e
+
+# DP: gcc4 build fix for sparc (invalid lvalue in incrament)
+
+src=gcc
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+ pdir="-d $3"
+ src=$3/gcc
+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 --fuzz 10 < $0
+ ;;
+ -unpatch)
+ patch $pdir -f --no-backup-if-mismatch -R -p0 --fuzz 10 < $0
+ ;;
+ *)
+ echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+ exit 1
+esac
+exit 0
+
+--- include/obstack.h.orig 1998-09-05 12:25:19.000000000 +0000
++++ include/obstack.h 2005-10-28 10:38:29.000000000 +0000
+@@ -417,7 +417,8 @@
+ ({ struct obstack *__o = (OBSTACK); \
+ if (__o->next_free + sizeof (void *) > __o->chunk_limit) \
+ _obstack_newchunk (__o, sizeof (void *)); \
+- *((void **)__o->next_free)++ = ((void *)datum); \
++ *((void **)__o->next_free) = ((void *)datum); \
++ __o->next_free += sizeof (void *); \
+ (void) 0; })
+
+ # define obstack_int_grow(OBSTACK,datum) \
diff -ruN ../orig/gcc-2.95-2.95.4.ds15/debian/rules.conf gcc-2.95-2.95.4.ds15/debian/rules.conf
--- ../orig/gcc-2.95-2.95.4.ds15/debian/rules.conf 2005-10-28 21:48:07.000000000 +0000
+++ gcc-2.95-2.95.4.ds15/debian/rules.conf 2005-10-29 00:51:43.000000000 +0000
@@ -8,7 +8,7 @@
include debian/rules.defs
# FIRST_PRIMARY - first gcc version built as primary compiler
-ifeq ($(DEB_HOST_GNU_TYPE),i386-linux)
+ifeq ($(DEB_HOST_GNU_TYPE),i386-linux-gnu)
FIRST_PRIMARY = 2.91.63-1.1
endif
ifeq ($(DEB_HOST_ARCH),sparc)
@@ -66,7 +66,7 @@
if_config := $(shell cd $(srcdir); \
topsrcdir=$(srcdir); \
- target_os=$(DEB_HOST_GNU_SYSTEM)-gnu; \
+ target_os=$(DEB_HOST_GNU_SYSTEM); \
target=$(DEB_HOST_GNU_TYPE); \
enable_libstdcxx_v3=$(with_libstdcxx_v3); \
. config.if >/dev/null 2>&1; \
@@ -164,7 +164,7 @@
LGP_PKG_SONAME = $(LGPSONAME)
endif
else
- ifeq ($(DEB_HOST_GNU_SYSTEM),linux)
+ ifeq ($(DEB_HOST_GNU_SYSTEM),linux-gnu)
PKG_SONAME = $(SONAME)-glibc$(GLIBC_VER)
LGP_PKG_SONAME = $(LGPSONAME)-glibc$(GLIBC_VER)
else
diff -ruN ../orig/gcc-2.95-2.95.4.ds15/debian/rules.defs gcc-2.95-2.95.4.ds15/debian/rules.defs
--- ../orig/gcc-2.95-2.95.4.ds15/debian/rules.defs 2005-10-28 21:48:07.000000000 +0000
+++ gcc-2.95-2.95.4.ds15/debian/rules.defs 2005-10-29 00:51:43.000000000 +0000
@@ -73,7 +73,7 @@
# build the libg++ library (deprecated)
with_libgpp := no
ifeq ($(with_gplusplus),yes)
- ifeq ($(DEB_HOST_GNU_SYSTEM),linux)
+ ifeq ($(DEB_HOST_GNU_SYSTEM),linux-gnu)
with_libgpp := yes
endif
endif
diff -ruN ../orig/gcc-2.95-2.95.4.ds15/debian/rules.parameters gcc-2.95-2.95.4.ds15/debian/rules.parameters
--- ../orig/gcc-2.95-2.95.4.ds15/debian/rules.parameters 2005-10-28 21:48:07.000000000 +0000
+++ gcc-2.95-2.95.4.ds15/debian/rules.parameters 2005-10-29 01:06:17.000000000 +0000
@@ -1,6 +1,6 @@
# configuration parameters taken from upstream source files
VER := 2.95.4
-DPKGVER := 2.95.4-22
+DPKGVER := 2.95.4-22.1
SONAME := 2.10
LGPSONAME := 2.8.1.3
PKG_SONAME := 2.10-glibc2.2
diff -ruN ../orig/gcc-2.95-2.95.4.ds15/debian/rules.patch gcc-2.95-2.95.4.ds15/debian/rules.patch
--- ../orig/gcc-2.95-2.95.4.ds15/debian/rules.patch 2005-10-28 21:48:09.000000000 +0000
+++ gcc-2.95-2.95.4.ds15/debian/rules.patch 2005-10-29 00:56:45.000000000 +0000
@@ -140,11 +140,11 @@
ifeq ($(DEB_HOST_ARCH),arm)
debian_patches += arm-pic arm-nested-func arm-various arm-exception \
arm-const-double arm-tune arm-output-int libgcc-umodsi3 \
- arm-profile
+ arm-profile arm-gcc4-fix
endif
all_patches += arm-pic arm-nested-func arm-various arm-exception \
arm-const-double arm-tune arm-output-int libgcc-umodsi3 \
- arm-profile
+ arm-profile arm-gcc4-fix
ifeq ($(DEB_HOST_ARCH),m68k)
debian_patches += 68060-build gcc-m68k-pic m68k-md m68k-reload g77-m68k-pic
@@ -164,9 +164,9 @@
#all_patches +=
ifeq ($(DEB_HOST_ARCH),sparc)
- debian_patches += sparc32-rfi builtin-apply #sparc-bi-arch
+ debian_patches += sparc32-rfi builtin-apply sparc-gcc4-fix #sparc-bi-arch
endif
-all_patches += sparc32-rfi builtin-apply #sparc-bi-arch
+all_patches += sparc32-rfi builtin-apply sparc-gcc4-fix #sparc-bi-arch
endif
diff -ruN ../orig/gcc-2.95-2.95.4.ds15/debian/rules2 gcc-2.95-2.95.4.ds15/debian/rules2
--- ../orig/gcc-2.95-2.95.4.ds15/debian/rules2 2005-10-28 21:48:09.000000000 +0000
+++ gcc-2.95-2.95.4.ds15/debian/rules2 2005-10-29 00:51:43.000000000 +0000
@@ -33,7 +33,7 @@
#docdir = usr/doc
cxx_inc_dir = g++-$(LIBSTDCXX_IF)
-ifeq ($(DEB_HOST_GNU_SYSTEM), linux)
+ifeq ($(DEB_HOST_GNU_SYSTEM), linux-gnu)
lib_arlib = libstdc++-$(LIBSTDCXX_IF)$(LIBC_IF)$(CXX_IF)-$(lib_version).a
lib_marlink = libstdc++$(LIBC_IF)$(CXX_IF).a.$(LIBSTDCXX_IF)
lib_shlib = libstdc++-$(LIBSTDCXX_IF)$(LIBC_IF)$(CXX_IF)-$(lib_version).so
@@ -109,7 +109,7 @@
endif
# MULTILIBS is one or more of "gcc g++ stdc++ chill objc g77"
# MULTIDIRS is in the format "32" or "{m68000,m68020,m68040}"
-ifeq ($(DEB_HOST_GNU_TYPE),sparc64-linux)
+ifeq ($(DEB_HOST_GNU_TYPE),sparc64-linux-gnu)
CONFARGS += --with-cpu=ultrasparc
MULTIDIRS := 32
MULTILIBS := gcc
@@ -131,7 +131,7 @@
MULTIDIRS := 64
MULTILIBS := gcc
endif
-ifeq ($(DEB_HOST_GNU_TYPE),alpha-linux)
+ifeq ($(DEB_HOST_GNU_TYPE),alpha-linux-gnu)
MULTIDIRS := ieee
MULTILIBS += g77
endif
@@ -349,7 +349,7 @@
ifeq ($(with_check),yes)
rm -f test-protocol
- ifeq ($(DEB_HOST_GNU_SYSTEM),linux)
+ ifeq ($(DEB_HOST_GNU_SYSTEM),linux-gnu)
-echo "Running testsuite ..."; \
if [ -e /proc/meminfo ]; then \
m=`awk '/^((Mem|Swap)Free|Cached)/{m+=$$2}END{print int(m*.9)}' \
@@ -392,7 +392,7 @@
check:
rm -f test-protocol
-ifeq ($(DEB_HOST_GNU_SYSTEM),linux)
+ifeq ($(DEB_HOST_GNU_SYSTEM),linux-gnu)
-echo "Running testsuite ..."; \
if [ -e /proc/meminfo ]; then \
m=`awk '/^((Mem|Swap)Free|Cached)/{m+=$$2}END{print int(m*.9)}' \
@@ -1397,7 +1397,7 @@
# dh_makeshlibs -a
ifneq ($(SNAPSHOT),yes)
ifeq ($(with_gplusplus),yes)
- ifeq ($(DEB_HOST_GNU_SYSTEM),linux)
+ ifeq ($(DEB_HOST_GNU_SYSTEM),linux-gnu)
ifeq ($(DEB_HOST_ARCH),powerpc)
echo "libstdc++$(LIBC_IF)$(CXX_IF) $(LIBSTDCXX_IF) libstdc++$(PKG_SONAME)$(libstdc_eh_ver) (>= $(lib_pkg_req_version))" \
> debian/$(p_lib).shlibs
@@ -1474,7 +1474,7 @@
ifeq ($(with_gplusplus),yes)
: # dh_shlibdeps ... I hope I got it correct now ...
: # we don't want the dep. on libstdc++, it's hardwired in control
- ifeq ($(DEB_HOST_GNU_SYSTEM), linux)
+ ifeq ($(DEB_HOST_GNU_SYSTEM), linux-gnu)
echo "libstdc++$(LIBC_IF)$(CXX_IF) $(LIBSTDCXX_IF) $(p_lib) (>= $(lib_pkg_req_version))" \
> debian/shlibs.local
else
Reply to: