[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#421423: gcc-4.1: FTBFS on GNU/kFreeBSD



Package: gcc-4.1
Version: 4.1.2-4
Severity: important

Please find below an update of the patch for GNU/kFreeBSD, which fixes a
few things:
- fix the kbsd-gnu.dpatch wrt hash-style. Please DON'T APPLY this patch
  if you reenable hash-style=both in the next upload
- fix a small typo in debian/multiarch.inc which make the build fails 
  on kfreebsd-amd64
- fix the detection of stackguard detection in the GNU libc for non
  Linux architectures. It should also work for Hurd if/when the GNU libc
  support stackguard on this architecture (I haven't checked yet).

diff -u gcc-4.1-4.1.2/debian/patches/kbsd-gnu.dpatch gcc-4.1-4.1.2/debian/patches/kbsd-gnu.dpatch
--- gcc-4.1-4.1.2/debian/patches/kbsd-gnu.dpatch
+++ gcc-4.1-4.1.2/debian/patches/kbsd-gnu.dpatch
@@ -79,8 +79,8 @@
 +  { "dynamic_linker64", DYNAMIC_LINKER64 }
 +
  #undef	LINK_SPEC
--#define LINK_SPEC "%{!m32:-m elf_x86_64} %{m32:-m elf_i386} --hash-style=both \
-+#define LINK_SPEC "%{!m32:-m %(link_emulation64)} %{m32:-m %(link_emulation)} --hash-style=both \
+-#define LINK_SPEC "%{!m32:-m elf_x86_64} %{m32:-m elf_i386} \
++#define LINK_SPEC "%{!m32:-m %(link_emulation64)} %{m32:-m %(link_emulation)} \
    %{shared:-shared} \
    %{!shared: \
      %{!static: \
diff -u gcc-4.1-4.1.2/debian/multiarch.inc gcc-4.1-4.1.2/debian/multiarch.inc
--- gcc-4.1-4.1.2/debian/multiarch.inc
+++ gcc-4.1-4.1.2/debian/multiarch.inc
@@ -34,7 +34,7 @@
 #endif
 
 #if defined(__x86_64_kfreebsd_gnu__)
-  { "32",  "i486-kfreebsd_gnu"},
+  { "32",  "i486-kfreebsd-gnu"},
 #endif
 
 
diff -u gcc-4.1-4.1.2/debian/rules.patch gcc-4.1-4.1.2/debian/rules.patch
--- gcc-4.1-4.1.2/debian/rules.patch
+++ gcc-4.1-4.1.2/debian/rules.patch
@@ -120,6 +120,10 @@
   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
--- gcc-4.1-4.1.2.orig/debian/patches/libssp-gnu.dpatch
+++ gcc-4.1-4.1.2/debian/patches/libssp-gnu.dpatch
@@ -0,0 +1,51 @@
+#! /bin/sh -e
+
+# DP: GNU/k*BSD support
+# Author: Aurelien Jarno <aurel32@debian.org>
+# Status: Submitted: http://gcc.gnu.org/ml/gcc-patches/2007-04/msg01962.html
+
+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
+
+# append the patch here and adjust the -p? flag in the patch calls.
+
+--- src/gcc/configure.ac.orig	2007-04-28 14:51:34.000000000 +0200
++++ src/gcc/configure.ac	2007-04-28 14:52:13.000000000 +0200
+@@ -3093,7 +3093,7 @@
+ 
+ # Test for stack protector support in target C library.
+ case "$target" in
+-  *-*-linux*)
++  *-*-*-gnu* | *-*-gnu)
+     AC_CACHE_CHECK(__stack_chk_fail in target GNU C library,
+       gcc_cv_libc_provides_ssp,
+       [gcc_cv_libc_provides_ssp=no
+--- src/gcc/configure.orig	2007-04-28 14:51:38.000000000 +0200
++++ src/gcc/configure	2007-04-28 14:52:02.000000000 +0200
+@@ -16693,7 +16693,7 @@
+ 
+ # Test for stack protector support in target C library.
+ case "$target" in
+-  *-*-linux*)
++  *-*-*-gnu* | *-*-gnu)
+     { echo "$as_me:$LINENO: checking __stack_chk_fail in target GNU C library" >&5
+ echo $ECHO_N "checking __stack_chk_fail in target GNU C library... $ECHO_C" >&6; }
+ if test "${gcc_cv_libc_provides_ssp+set}" = set; then


-- System Information:
Debian Release: 4.0
  APT prefers stable
  APT policy: (500, 'stable')
Architecture: amd64 (x86_64)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.18-3-xen-amd64
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)



Reply to: