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

Bug#261082: glibc: Please add the '-fno-unit-at-a-time' patch from upstream for amd64/gcc-3.4 support



Package: glibc
Severity: wishlist
Tags: patch

To compile glibc on amd64 (and other architectures) with gcc-3.4,
the '-fno-unit-at-a-time' patch from upstream is necessary.

Without this patch, the gcc-3.4 compiler reorders some assembly code and
the resulting pthread libraries will segfault.

The attached patch adds a new patch file 'debian/patches/fno-unit-at-a-time'
and enables that patch by adding it to 'debian/patches/00list'.

This 'fno-unit-at-a-time' patch (which was taken from upstream cvs) adds a 
test for the '-fno-unit-at-a-time' compiler switch to 'configure.in' 
and 'configure', 
puts a corresponding variable definition to 'config.make.in' and 
inserts the '$(fno-unit-at-a-time)' variable in various Makefiles.

Additionally, the attached patch adds

nptl_extra_cflags = -g0 -O3 -fomit-frame-pointer -D__USE_STRING_INLINES

to 'debian/sysdeps/amd64.mk' which uses '-g0' instead of the default '-g1'.
This is also necessary to compile glibc with gcc-3.4.

The attached patch also contains all other amd64 changes (see #246547).

Thank you for your help with the amd64 port.

Regards
Andreas Jochens

diff -urN ../tmp-orig/glibc-2.3.2.ds1/debian/sysdeps/amd64.mk ./debian/sysdeps/amd64.mk
--- ../tmp-orig/glibc-2.3.2.ds1/debian/sysdeps/amd64.mk	1970-01-01 01:00:00.000000000 +0100
+++ ./debian/sysdeps/amd64.mk	2004-07-22 10:21:31.061906360 +0200
@@ -0,0 +1,5 @@
+CC = gcc
+BUILD_CC = gcc
+
+GLIBC_PASSES += nptl
+nptl_extra_cflags = -g0 -O3 -fomit-frame-pointer -D__USE_STRING_INLINES
diff -urN ../tmp-orig/glibc-2.3.2.ds1/debian/patches/fno-unit-at-a-time.dpatch ./debian/patches/fno-unit-at-a-time.dpatch
--- ../tmp-orig/glibc-2.3.2.ds1/debian/patches/fno-unit-at-a-time.dpatch	1970-01-01 01:00:00.000000000 +0100
+++ ./debian/patches/fno-unit-at-a-time.dpatch	2004-07-22 10:49:43.180807987 +0200
@@ -0,0 +1,178 @@
+#! /bin/sh -e
+ 
+# All lines beginning with `# DP:' are a description of the patch.
+# DP: Add -fno-unit-at-a-time test to configure.in and configure.
+# DP: Add fno-unit-at-a-time variable to config.make.in.
+# DP: Add $(fno-unit-at-a-time) switch in various Makefiles.
+# DP: This is necessary for compilation with gcc-3.4.
+# DP: Upstream status: in CVS
+# DP: Upstream author: Andreas Jaeger <aj@suse.de>
+# DP: Upstream date: 2003-11-30
+# DP: Dpatch author: Andreas Jochens <aj@andaco.de>
+
+if [ $# -ne 2 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch) patch -d "$2" -f --no-backup-if-mismatch -p1 < $0;;
+    -unpatch) patch -d "$2" -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.
+
+--- Makefile	2004-07-21 22:17:08.167157000 +0200
++++ glibc-2.3.2/linuxthreads/Makefile	2004-07-21 23:04:39.736064667 +0200
+@@ -101,7 +101,7 @@
+ extra-objs += $(crti-objs) $(crtn-objs)
+ omit-deps += crti crtn
+ 
+-CFLAGS-pt-initfini.s = -g0 -fPIC -fno-inline-functions
++CFLAGS-pt-initfini.s = -g0 -fPIC -fno-inline-functions $(fno-unit-at-a-time)
+ endif
+ 
+ librt-tests = ex10 ex11
+--- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/x86_64/Makefile~	2004-07-21 22:03:55.843191000 +0200
++++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/x86_64/Makefile	2004-07-21 22:05:18.269274082 +0200
+@@ -1,3 +1,3 @@
+ ifeq ($(subdir),linuxthreads)
+-CFLAGS-pt-initfini.s = -g0 -fPIC -fno-inline-functions -fno-asynchronous-unwind-tables
++CFLAGS-pt-initfini.s = -g0 -fPIC -fno-inline-functions -fno-asynchronous-unwind-tables $(fno-unit-at-a-time)
+ endif
+--- Makefile	2003-09-21 07:30:09.000000000 +0200
++++ glibc-2.3.2/nptl/Makefile	2004-07-21 23:38:51.624443351 +0200
+@@ -309,7 +309,7 @@
+ extra-objs += $(crti-objs) $(crtn-objs)
+ omit-deps += crti crtn
+ 
+-CFLAGS-pt-initfini.s = -g0 -fPIC -fno-inline-functions
++CFLAGS-pt-initfini.s = -g0 -fPIC -fno-inline-functions $(fno-unit-at-atime)
+ endif
+ 
+ CFLAGS-flockfile.c = -D_IO_MTSAFE_IO
+--- Makefile	2003-05-09 09:24:22.000000000 +0200
++++ glibc-2.3.2/nptl/sysdeps/unix/sysv/linux/x86_64/Makefile	2004-07-21 23:40:06.419980881 +0200
+@@ -1,3 +1,3 @@
+ ifeq ($(subdir),nptl)
+-CFLAGS-pt-initfini.s = -g0 -fPIC -fno-inline-functions -fno-asynchronous-unwind-tables
++CFLAGS-pt-initfini.s = -g0 -fPIC -fno-inline-functions -fno-asynchronous-unwind-tables $(fno-unit-at-a-time)
+ endif
+--- Makefile	2004-07-22 10:22:11.690023000 +0200
++++ glibc-2.3.2/csu/Makefile	2004-07-22 10:31:28.230050290 +0200
+@@ -104,7 +104,7 @@
+ $(crtstuff:%=$(objpfx)%.o): %.o: %.S $(objpfx)defs.h
+ 	$(compile.S) -g0 $(ASFLAGS-.os) -o $@
+ 
+-CFLAGS-initfini.s = -g0 -fPIC -fno-inline-functions
++CFLAGS-initfini.s = -g0 -fPIC -fno-inline-functions $(fno-unit-at-a-time)
+ 
+ vpath initfini.c $(full_config_sysdirs)
+ 
+--- Makefile	2004-07-22 10:22:13.370696000 +0200
++++ glibc-2.3.2/stdio-common/Makefile	2004-07-22 10:32:55.241172119 +0200
+@@ -87,6 +87,8 @@
+ CFLAGS-psignal.c = -fexceptions
+ CFLAGS-vprintf.c = -fexceptions
+ CFLAGS-cuserid.c = -fexceptions
++CFLAGS-errlist.c = $(fno-unit-at-a-time)
++CFLAGS-siglist.c = $(fno-unit-at-a-time)
+ 
+ tst-sscanf-ENV = LOCPATH=$(common-objpfx)localedata
+ tst-swprintf-ENV = LOCPATH=$(common-objpfx)localedata
+--- glibc-2.3.2/configure.in~	2004-07-22 01:10:27.374476000 +0200
++++ glibc-2.3.2/configure.in	2004-07-22 01:14:23.598761806 +0200
+@@ -1371,6 +1371,23 @@
+ fi
+ AC_SUBST(libc_cv_z_combreloc)
+ 
++AC_CACHE_CHECK(for -fno-unit-at-a-time, libc_cv_fno_unit_at_a_time, [dnl
++cat > conftest.c <<EOF
++int foo;
++EOF
++if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS -S -fno-unit-at-a-time
++			    conftest.c 1>&AS_MESSAGE_LOG_FD])
++then
++  libc_cv_fno_unit_at_a_time=yes
++else
++  libc_cv_fno_unit_at_a_time=no
++fi
++rm -f conftest*])
++if test $libc_cv_fno_unit_at_a_time = yes; then
++  fno_unit_at_a_time=-fno-unit-at-a-time
++fi
++AC_SUBST(fno_unit_at_a_time)
++
+ if test $elf != yes; then
+   AC_CACHE_CHECK(for .init and .fini sections, libc_cv_have_initfini,
+ 		 [AC_TRY_COMPILE(, [asm (".section .init");
+--- glibc-2.3.2/configure~	2004-07-22 01:10:27.373476000 +0200
++++ glibc-2.3.2/configure	2004-07-22 01:17:19.369752123 +0200
+@@ -309,7 +309,7 @@
+ # include <unistd.h>
+ #endif"
+ 
+-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS with_fp with_cvs enable_check_abi oldest_abi subdirs force_install all_warnings build build_cpu build_vendor build_os host host_cpu host_vendor host_os base_machine sysnames INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN_S CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC OBJEXT BUILD_CC cross_compiling CPP CXX CXXFLAGS ac_ct_CXX AR OBJDUMP RANLIB ac_ct_RANLIB MIG AS LD PWD_P MAKE MSGFMT MAKEINFO SED AUTOCONF CCVERSION SYSINCLUDES libc_cv_gcc_static_libgcc BASH libc_cv_have_bash2 KSH libc_cv_have_ksh AWK PERL INSTALL_INFO OLD_DEBIAN_INSTALL_INFO BISON VERSIONING libc_cv_asm_protected_directive libc_cv_initfinit_array libc_cv_z_nodelete libc_cv_z_nodl
 open libc_cv_z_initfirst libc_cv_Bgroup ASFLAGS_config libc_cv_z_combreloc libc_cv_have_initfini libc_cv_cpp_asm_debuginfo no_whole_archive exceptions LIBGD EGREP sizeof_long_double libc_cv_gcc_unwind_find_fde uname_sysname uname_release uname_version old_glibc_headers libc_cv_slibdir libc_cv_localedir libc_cv_sysconfdir libc_cv_rootsbindir libc_cv_forced_unwind use_ldconfig ldd_rewrite_script gnu_ld gnu_as elf xcoff static shared pic_default profile omitfp bounded static_nss nopic_initfini DEFINES linux_doors mach_interface_list VERSION RELEASE LIBOBJS LTLIBOBJS'
++ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS with_fp with_cvs enable_check_abi oldest_abi subdirs force_install all_warnings build build_cpu build_vendor build_os host host_cpu host_vendor host_os base_machine sysnames INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN_S CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC OBJEXT BUILD_CC cross_compiling CPP CXX CXXFLAGS ac_ct_CXX AR OBJDUMP RANLIB ac_ct_RANLIB MIG AS LD PWD_P MAKE MSGFMT MAKEINFO SED AUTOCONF CCVERSION SYSINCLUDES libc_cv_gcc_static_libgcc BASH libc_cv_have_bash2 KSH libc_cv_have_ksh AWK PERL INSTALL_INFO OLD_DEBIAN_INSTALL_INFO BISON VERSIONING libc_cv_asm_protected_directive libc_cv_initfinit_array libc_cv_z_nodelete libc_cv_z_nodl
 open libc_cv_z_initfirst libc_cv_Bgroup ASFLAGS_config libc_cv_z_combreloc fno_unit_at_a_time libc_cv_have_initfini libc_cv_cpp_asm_debuginfo no_whole_archive exceptions LIBGD EGREP sizeof_long_double libc_cv_gcc_unwind_find_fde uname_sysname uname_release uname_version old_glibc_headers libc_cv_slibdir libc_cv_localedir libc_cv_sysconfdir libc_cv_rootsbindir libc_cv_forced_unwind use_ldconfig ldd_rewrite_script gnu_ld gnu_as elf xcoff static shared pic_default profile omitfp bounded static_nss nopic_initfini DEFINES linux_doors mach_interface_list VERSION RELEASE LIBOBJS LTLIBOBJS'
+ ac_subst_files=''
+ 
+ # Initialize some variables set by options.
+@@ -5306,6 +5306,37 @@
+ fi
+ 
+ 
++ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS with_fp with_cvs enable_check_abi oldest_abi bindnow force_install all_warnings build build_cpu build_vendor build_os host host_cpu host_vendor host_os subdirs add_ons base_machine sysnames INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN_S CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC OBJEXT BUILD_CC cross_compiling CPP CXX CXXFLAGS ac_ct_CXX AR OBJDUMP RANLIB ac_ct_RANLIB MIG AS LD PWD_P MAKE MSGFMT MAKEINFO SED AUTOCONF SYSINCLUDES libc_cv_gcc_static_libgcc BASH libc_cv_have_bash2 KSH libc_cv_have_ksh AWK PERL INSTALL_INFO BISON VERSIONING libc_cv_asm_protected_directive libc_cv_initfinit_array libc_cv_cc_with_libunwind libc_cv_z_nodelete libc_c
 v_z_nodlopen libc_cv_z_initfirst libc_cv_z_relro libc_cv_Bgroup libc_cv_libgcc_s_suffix libc_cv_as_needed ASFLAGS_config libc_cv_z_combreloc libc_cv_z_execstack libc_cv_fpie fno_unit_at_a_time libc_cv_have_initfini libc_cv_cpp_asm_debuginfo no_whole_archive exceptions LIBGD EGREP sizeof_long_double libc_cv_gcc_unwind_find_fde uname_sysname uname_release uname_version old_glibc_headers libc_cv_slibdir libc_cv_localedir libc_cv_sysconfdir libc_cv_rootsbindir libc_cv_forced_unwind use_ldconfig ldd_rewrite_script gnu_ld gnu_as elf xcoff static shared pic_default profile omitfp bounded static_nss nopic_initfini DEFINES linux_doors mach_interface_list VERSION RELEASE LIBOBJS LTLIBOBJS'
++ac_subst_files=''
++
++echo "$as_me:$LINENO: checking for -fno-unit-at-a-time" >&5
++echo $ECHO_N "checking for -fno-unit-at-a-time... $ECHO_C" >&6
++if test "${libc_cv_fno_unit_at_a_time+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  cat > conftest.c <<EOF
++int foo;
++EOF
++if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -S -fno-unit-at-a-time
++			    conftest.c 1>&5'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }
++then
++  libc_cv_fno_unit_at_a_time=yes
++else
++  libc_cv_fno_unit_at_a_time=no
++fi
++rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_fno_unit_at_a_time" >&5
++echo "${ECHO_T}$libc_cv_fno_unit_at_a_time" >&6
++if test $libc_cv_fno_unit_at_a_time = yes; then
++  fno_unit_at_a_time=-fno-unit-at-a-time
++fi
++
+ if test $elf != yes; then
+   echo "$as_me:$LINENO: checking for .init and .fini sections" >&5
+ echo $ECHO_N "checking for .init and .fini sections... $ECHO_C" >&6
+@@ -7580,6 +7611,7 @@
+ s,@libc_cv_Bgroup@,$libc_cv_Bgroup,;t t
+ s,@ASFLAGS_config@,$ASFLAGS_config,;t t
+ s,@libc_cv_z_combreloc@,$libc_cv_z_combreloc,;t t
++s,@fno_unit_at_a_time@,$fno_unit_at_a_time,;t t
+ s,@libc_cv_have_initfini@,$libc_cv_have_initfini,;t t
+ s,@libc_cv_cpp_asm_debuginfo@,$libc_cv_cpp_asm_debuginfo,;t t
+ s,@no_whole_archive@,$no_whole_archive,;t t
+--- config.make.in	2004-07-22 02:04:56.000000000 +0200
++++ glibc-2.3.2/config.make.in	2004-07-22 09:14:36.462666782 +0200
+@@ -53,6 +53,7 @@
+ have-cpp-asm-debuginfo = @libc_cv_cpp_asm_debuginfo@
+ enable-check-abi = @enable_check_abi@
+ have-forced-unwind = @libc_cv_forced_unwind@
++fno-unit-at-a-time = @fno_unit_at_a_time@
+ 
+ static-libgcc = @libc_cv_gcc_static_libgcc@
+ 
diff -urN ../tmp-orig/glibc-2.3.2.ds1/debian/rules.d/control.mk ./debian/rules.d/control.mk
--- ../tmp-orig/glibc-2.3.2.ds1/debian/rules.d/control.mk	2004-07-22 10:49:48.630751893 +0200
+++ ./debian/rules.d/control.mk	2004-07-22 10:21:31.060906554 +0200
@@ -1,10 +1,10 @@
 control_deps := $(addprefix debian/control.in/, libc6 libc6.1 libc0.3 libc1 sparc64 s390x opt)
 
-threads_archs := alpha arm i386 m68k mips mipsel powerpc sparc ia64 hppa s390 sh3 sh4 sh3eb sh4eb freebsd-i386
+threads_archs := alpha amd64 arm i386 m68k mips mipsel powerpc sparc ia64 hppa s390 sh3 sh4 sh3eb sh4eb freebsd-i386
 
 debian/control.in/libc6: debian/control.in/libc debian/rules.d/control.mk
 	sed -e 's%@libc@%libc6%g' \
-	    -e 's%@archs@%arm i386 m68k mips mipsel powerpc sparc s390 hppa sh3 sh4 sh3eb sh4eb%g' < $< > $@
+	    -e 's%@archs@%amd64 arm i386 m68k mips mipsel powerpc sparc s390 hppa sh3 sh4 sh3eb sh4eb%g' < $< > $@
 
 debian/control.in/libc6.1: debian/control.in/libc debian/rules.d/control.mk
 	sed -e 's%@libc@%libc6.1%g;s%@archs@%alpha ia64%g' < $< > $@
diff -urN ../tmp-orig/glibc-2.3.2.ds1/debian/control ./debian/control
--- ../tmp-orig/glibc-2.3.2.ds1/debian/control	2004-07-22 10:49:48.637750537 +0200
+++ ./debian/control	2004-07-22 10:21:31.058906942 +0200
@@ -38,7 +38,7 @@
  by default. This created a package that unpacked to an excess of 30 megs.
 
 Package: nscd
-Architecture: alpha arm i386 m68k mips mipsel powerpc sparc ia64 hppa s390 sh3 sh4 sh3eb sh4eb freebsd-i386
+Architecture: alpha amd64 arm i386 m68k mips mipsel powerpc sparc ia64 hppa s390 sh3 sh4 sh3eb sh4eb freebsd-i386
 Section: admin
 Priority: optional
 Depends: libc6 (>= ${Source-Version})
@@ -50,7 +50,7 @@
  slow Services like LDAP, NIS or NIS+
 
 Package: libc6
-Architecture: arm i386 m68k mips mipsel powerpc sparc s390 hppa sh3 sh4 sh3eb sh4eb
+Architecture: amd64 arm i386 m68k mips mipsel powerpc sparc s390 hppa sh3 sh4 sh3eb sh4eb
 Section: base
 Priority: required
 Provides: ${locale:Depends}
@@ -61,7 +61,7 @@
  Timezone data is also included.
 
 Package: libc6-dev
-Architecture: arm i386 m68k mips mipsel powerpc sparc s390 hppa sh3 sh4 sh3eb sh4eb
+Architecture: amd64 arm i386 m68k mips mipsel powerpc sparc s390 hppa sh3 sh4 sh3eb sh4eb
 Section: libdevel
 Priority: standard
 Depends: libc6 (= ${Source-Version})
@@ -71,7 +71,7 @@
  and link programs which use the standard C library.
 
 Package: libc6-dbg
-Architecture: arm i386 m68k mips mipsel powerpc sparc s390 hppa sh3 sh4 sh3eb sh4eb
+Architecture: amd64 arm i386 m68k mips mipsel powerpc sparc s390 hppa sh3 sh4 sh3eb sh4eb
 Section: libdevel
 Priority: extra
 Depends: libc6 (= ${Source-Version})
@@ -84,7 +84,7 @@
  Most people will not need this package.
 
 Package: libc6-prof
-Architecture: arm i386 m68k mips mipsel powerpc sparc s390 hppa sh3 sh4 sh3eb sh4eb
+Architecture: amd64 arm i386 m68k mips mipsel powerpc sparc s390 hppa sh3 sh4 sh3eb sh4eb
 Section: libdevel
 Priority: extra
 Depends: libc6 (= ${Source-Version})
@@ -93,7 +93,7 @@
  with gprof.
 
 Package: libc6-pic
-Architecture: arm i386 m68k mips mipsel powerpc sparc s390 hppa sh3 sh4 sh3eb sh4eb
+Architecture: amd64 arm i386 m68k mips mipsel powerpc sparc s390 hppa sh3 sh4 sh3eb sh4eb
 Section: libdevel
 Priority: optional
 Conflicts: libc-pic
@@ -108,7 +108,7 @@
 
 Package: libc6-udeb
 XC-Package-Type: udeb
-Architecture: arm i386 m68k mips mipsel powerpc sparc s390 hppa sh3 sh4 sh3eb sh4eb
+Architecture: amd64 arm i386 m68k mips mipsel powerpc sparc s390 hppa sh3 sh4 sh3eb sh4eb
 Section: debian-installer
 Priority: extra
 Provides: libc6, libc-udeb, ${locale:Depends}
diff -urN ../tmp-orig/glibc-2.3.2.ds1/debian/control.in/libc6 ./debian/control.in/libc6
--- ../tmp-orig/glibc-2.3.2.ds1/debian/control.in/libc6	2004-07-22 10:49:48.293817184 +0200
+++ ./debian/control.in/libc6	2004-07-22 10:21:31.059906748 +0200
@@ -1,5 +1,5 @@
 Package: libc6
-Architecture: arm i386 m68k mips mipsel powerpc sparc s390 hppa sh3 sh4 sh3eb sh4eb
+Architecture: amd64 arm i386 m68k mips mipsel powerpc sparc s390 hppa sh3 sh4 sh3eb sh4eb
 Section: base
 Priority: required
 Provides: ${locale:Depends}
@@ -10,7 +10,7 @@
  Timezone data is also included.
 
 Package: libc6-dev
-Architecture: arm i386 m68k mips mipsel powerpc sparc s390 hppa sh3 sh4 sh3eb sh4eb
+Architecture: amd64 arm i386 m68k mips mipsel powerpc sparc s390 hppa sh3 sh4 sh3eb sh4eb
 Section: libdevel
 Priority: standard
 Depends: libc6 (= ${Source-Version})
@@ -20,7 +20,7 @@
  and link programs which use the standard C library.
 
 Package: libc6-dbg
-Architecture: arm i386 m68k mips mipsel powerpc sparc s390 hppa sh3 sh4 sh3eb sh4eb
+Architecture: amd64 arm i386 m68k mips mipsel powerpc sparc s390 hppa sh3 sh4 sh3eb sh4eb
 Section: libdevel
 Priority: extra
 Depends: libc6 (= ${Source-Version})
@@ -33,7 +33,7 @@
  Most people will not need this package.
 
 Package: libc6-prof
-Architecture: arm i386 m68k mips mipsel powerpc sparc s390 hppa sh3 sh4 sh3eb sh4eb
+Architecture: amd64 arm i386 m68k mips mipsel powerpc sparc s390 hppa sh3 sh4 sh3eb sh4eb
 Section: libdevel
 Priority: extra
 Depends: libc6 (= ${Source-Version})
@@ -42,7 +42,7 @@
  with gprof.
 
 Package: libc6-pic
-Architecture: arm i386 m68k mips mipsel powerpc sparc s390 hppa sh3 sh4 sh3eb sh4eb
+Architecture: amd64 arm i386 m68k mips mipsel powerpc sparc s390 hppa sh3 sh4 sh3eb sh4eb
 Section: libdevel
 Priority: optional
 Conflicts: libc-pic
@@ -57,7 +57,7 @@
 
 Package: libc6-udeb
 XC-Package-Type: udeb
-Architecture: arm i386 m68k mips mipsel powerpc sparc s390 hppa sh3 sh4 sh3eb sh4eb
+Architecture: amd64 arm i386 m68k mips mipsel powerpc sparc s390 hppa sh3 sh4 sh3eb sh4eb
 Section: debian-installer
 Priority: extra
 Provides: libc6, libc-udeb, ${locale:Depends}
diff -urN ../tmp-orig/glibc-2.3.2.ds1/debian/patches/00list ./debian/patches/00list
--- ../tmp-orig/glibc-2.3.2.ds1/debian/patches/00list	2004-07-22 10:49:48.319812147 +0200
+++ ./debian/patches/00list	2004-07-22 10:21:31.059906748 +0200
@@ -95,3 +95,6 @@
 locale-ro_RO
 s390-backtrace
 glibc232-misc-syslog
+amd64-lib
+fno-unit-at-a-time
+
diff -urN ../tmp-orig/glibc-2.3.2.ds1/debian/patches/amd64-lib.dpatch ./debian/patches/amd64-lib.dpatch
--- ../tmp-orig/glibc-2.3.2.ds1/debian/patches/amd64-lib.dpatch	1970-01-01 01:00:00.000000000 +0100
+++ ./debian/patches/amd64-lib.dpatch	2004-07-22 10:21:31.059906748 +0200
@@ -0,0 +1,41 @@
+#! /bin/sh -e
+ 
+# All lines beginning with `# DP:' are a description of the patch.
+# DP: Description: Use /lib instead of /lib64 for the native amd64 port
+
+if [ $# -ne 2 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch) patch -d "$2" -f --no-backup-if-mismatch -p1 < $0;;
+    -unpatch) patch -d "$2" -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.
+--- glibc-2.3.2/sysdeps/unix/sysv/linux/configure~	2004-06-05 14:03:22.118247000 +0200
++++ glibc-2.3.2/sysdeps/unix/sysv/linux/configure	2004-06-05 11:43:35.667961319 +0200
+@@ -224,7 +224,7 @@
+ /usr | /usr/)
+   # 64-bit libraries on bi-arch platforms go in /lib64 instead of /lib
+   case $machine in
+-  sparc/sparc64 | x86_64 | powerpc/powerpc64 | s390/s390-64 | \
++  sparc/sparc64 | powerpc/powerpc64 | s390/s390-64 | \
+   mips/mips64/n64/* )
+     libc_cv_slibdir="/lib64"
+     if test "$libdir" = '${exec_prefix}/lib'; then
+--- glibc-2.3.2/sysdeps/unix/sysv/linux/configure.in~	2004-07-05 09:52:28.000000000 +0200
++++ glibc-2.3.2/sysdeps/unix/sysv/linux/configure.in	2004-07-05 12:18:07.995664571 +0200
+@@ -157,7 +157,7 @@
+ /usr | /usr/)
+   # 64-bit libraries on bi-arch platforms go in /lib64 instead of /lib
+   case $machine in
+-  sparc/sparc64 | x86_64 | powerpc/powerpc64 | s390/s390-64 | \
++  sparc/sparc64 | powerpc/powerpc64 | s390/s390-64 | \
+   mips/mips64/n64/* )
+     libc_cv_slibdir="/lib64"
+     if test "$libdir" = '${exec_prefix}/lib'; then




Reply to: