updated amd64 gcc-3.3 packages
I have just built new biarch gcc packages and uploaded them to
https://alioth.debian.org/project/showfiles.php?group_id=1215&release_id=66,
as my personal home page is running out of space. Alioth still appears
to have some problem with file upload and rejected the c++ packages and
the package source.
The diff to the original source package is attached to this mail. It is
now even more similar to the other biarch capable architectures (sparc
and s390). Before this patch is applied to the official package, the glibc
package needs to be changed from libc6-s390x / libc6-sparc64 to a common
lib64c6 naming.
Arnd <><
diff -u gcc-3.3-3.3ds9/debian/rules.defs gcc-3.3-3.3ds9/debian/rules.defs
--- gcc-3.3-3.3ds9/debian/rules.defs
+++ gcc-3.3-3.3ds9/debian/rules.defs
@@ -421,7 +421,7 @@
with_lib64g2c := no
# i386/x86_64 build
-ifeq ($(DEB_TARGET_ARCH),XXXi386-XXX)
+ifeq ($(DEB_TARGET_ARCH),i386)
biarch := yes
with_lib64gcc := yes
with_lib64cxx := yes
diff -u gcc-3.3-3.3ds9/debian/rules.d/binary-libgcc.mk gcc-3.3-3.3ds9/debian/rules.d/binary-libgcc.mk
--- gcc-3.3-3.3ds9/debian/rules.d/binary-libgcc.mk
+++ gcc-3.3-3.3ds9/debian/rules.d/binary-libgcc.mk
@@ -88,15 +88,11 @@
# this does not work ... shlibs.local doesn't distinguish 32/64 bit libs
# cat debian/$(p_l64gcc)/DEBIAN/shlibs >> debian/shlibs.local
endif
-ifeq ($(DEB_TARGET_ARCH),s390)
# 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
- echo 'shlibs:Depends=libc6-s390x (>= 2.3.1-1)' \
+ echo 'shlibs:Depends=lib64c6 (>= 2.3.1-1)' \
> debian/$(p_l64gcc).substvars
-else
- dh_shlibdeps -p$(p_l64gcc)
-endif
dh_gencontrol -p$(p_l64gcc) -u-v$(DEB_VERSION)
b=lib64gcc; v=$(GCC_SONAME); \
for ext in preinst postinst prerm postrm; do \
diff -u gcc-3.3-3.3ds9/debian/rules.d/binary-libstdcxx.mk gcc-3.3-3.3ds9/debian/rules.d/binary-libstdcxx.mk
--- gcc-3.3-3.3ds9/debian/rules.d/binary-libstdcxx.mk
+++ gcc-3.3-3.3ds9/debian/rules.d/binary-libstdcxx.mk
@@ -208,15 +208,11 @@
DH_COMPAT=3 dh_makeshlibs -p$(p_lib64) \
-V '$(p_lib64) (>= $(DEB_STDCXX_SOVERSION))'
# pass explicit dependencies to dh_shlibdeps
-ifeq ($(DEB_TARGET_ARCH),s390)
# 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=libc6-s390x (>= 2.3.1-1), $(p_l64gcc) (>= 1:3.3-1)' \
+ echo 'shlibs:Depends=lib64c6 (>= 2.3.1-1), $(p_l64gcc) (>= 1:3.3-1)' \
> debian/$(p_lib64).substvars
-else
- dh_shlibdeps -p$(p_lib64) -L $(p_l64gcc) -l $(d_l64gcc)/lib
-endif
dh_gencontrol -p$(p_lib64) -u-v$(DEB_VERSION)
b=lib64stdc++; \
diff -u gcc-3.3-3.3ds9/debian/rules.patch gcc-3.3-3.3ds9/debian/rules.patch
--- gcc-3.3-3.3ds9/debian/rules.patch
+++ gcc-3.3-3.3ds9/debian/rules.patch
@@ -75,10 +75,10 @@
debian_patches += m68k-loop m68k-subreg #m68k-const
endif
ifeq ($(DEB_TARGET_ARCH)-$(biarch),i386-yes)
- debian_patches += i386-biarch
+ debian_patches += i386-biarch biarch-config-ml
endif
ifeq ($(DEB_TARGET_ARCH)-$(biarch),s390-yes)
- debian_patches += s390-biarch s390-config-ml
+ debian_patches += s390-biarch biarch-config-ml
endif
ifeq ($(DEB_TARGET_ARCH),powerpc)
debian_patches +=
@@ -86,7 +86,7 @@
ifeq ($(DEB_TARGET_ARCH),sparc)
debian_patches += sparc-default-v8
ifeq ($(biarch),yes)
- debian_patches += sparc64-build sparc-config-ml
+ debian_patches += sparc64-build biarch-config-ml
endif
endif
only in patch2:
unchanged:
--- gcc-3.3-3.3ds9.orig/debian/patches/biarch-config-ml.dpatch
+++ gcc-3.3-3.3ds9/debian/patches/biarch-config-ml.dpatch
@@ -0,0 +1,60 @@
+#! /bin/sh -e
+
+# biarch-config-ml.dpatch by <schizo@debian.org>
+#
+# DP: disable some biarch libraries for sparc64 build
+
+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 -f --no-backup-if-mismatch -p0 < $0;;
+ -unpatch) patch -f --no-backup-if-mismatch -R -p0 < $0;;
+ *)
+ echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+ exit 1;;
+esac
+
+exit 0
+
+--- src/config-ml.in.bak 2002-07-02 12:36:38.000000000 +0000
++++ src/config-ml.in 2003-03-14 21:37:47.000000000 +0000
+@@ -476,15 +476,31 @@
+ done
+ fi
+ ;;
+-sparc*-*-*)
++sparc*-*-* | s390*-*-* | i[3-7]86*-*-*)
+ case " $multidirs " in
+- *" m64 "*)
++ *" 64 "*)
+ # We will not be able to create libraries with -m64 if
+ # we cannot even link a trivial program. It usually
+ # indicates the 64bit libraries are missing.
+ if echo 'main() {}' > conftest.c &&
+ ${CC-gcc} -m64 conftest.c -o conftest; then
+- :
++ echo Enable only libstdc++.
++ old_multidirs="${multidirs}"
++ multidirs=""
++ for x in ${old_multidirs}; do
++ case "$x" in
++ *64* ) case ${ml_realsrcdir} in
++ *"libstdc++-v3" ) multidirs="${multidirs} ${x}" ;;
++ *"libf2c" ) multidirs="${multidirs} ${x}" ;;
++ *"libobjc" ) multidirs="${multidirs} ${x}" ;;
++ *"libiberty" ) multidirs="${multidirs} ${x}" ;;
++ *"zlib" ) multidirs="${multidirs} ${x}" ;;
++ *) : ;;
++ esac
++ ;;
++ *) multidirs="${multidirs} ${x}" ;;
++ esac
++ done
+ else
+ echo Could not link program with -m64, disabling it.
+ old_multidirs="${multidirs}"
reverted:
--- gcc-3.3-3.3ds9/debian/patches/s390-config-ml.dpatch
+++ gcc-3.3-3.3ds9.orig/debian/patches/s390-config-ml.dpatch
@@ -1,76 +0,0 @@
-#! /bin/sh -e
-
-# DP: disable all libraries except libstdc++ for biarch
-
-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
- #cd ${dir}gcc && autoconf
- ;;
- -unpatch)
- patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
- #rm ${dir}gcc/configure
- ;;
- *)
- echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
- exit 1
-esac
-exit 0
-
---- src/config-ml.in.bak 2002-11-12 15:32:40.000000000 +0100
-+++ src/config-ml.in 2002-11-12 15:38:55.000000000 +0100
-@@ -516,6 +516,46 @@
- ;;
- esac
- ;;
-+s390*-*-*)
-+ case " $multidirs " in
-+ *" 64 "*)
-+ # We will not be able to create libraries with -m64 if
-+ # we cannot even link a trivial program. It usually
-+ # indicates the 64bit libraries are missing.
-+ if echo 'main() {}' > conftest.c &&
-+ ${CC-gcc} -m64 conftest.c -o conftest; then
-+ echo Enable only libstdc++.
-+ old_multidirs="${multidirs}"
-+ multidirs=""
-+ for x in ${old_multidirs}; do
-+ case "$x" in
-+ *64* ) case ${ml_realsrcdir} in
-+ *"libstdc++-v3" ) multidirs="${multidirs} ${x}" ;;
-+ *"libf2c" ) multidirs="${multidirs} ${x}" ;;
-+ *"libobjc" ) multidirs="${multidirs} ${x}" ;;
-+ *"libiberty" ) multidirs="${multidirs} ${x}" ;;
-+ *"zlib" ) multidirs="${multidirs} ${x}" ;;
-+ *) : ;;
-+ esac
-+ ;;
-+ *) multidirs="${multidirs} ${x}" ;;
-+ esac
-+ done
-+ else
-+ echo Could not link program with -m64, disabling it.
-+ old_multidirs="${multidirs}"
-+ multidirs=""
-+ for x in ${old_multidirs}; do
-+ case "$x" in
-+ *64* ) : ;;
-+ *) multidirs="${multidirs} ${x}" ;;
-+ esac
-+ done
-+ fi
-+ rm -f conftest.c conftest
-+ ;;
-+ esac
-+ ;;
- esac
-
- # Remove extraneous blanks from multidirs.
reverted:
--- gcc-3.3-3.3ds9/debian/patches/sparc-config-ml.dpatch
+++ gcc-3.3-3.3ds9.orig/debian/patches/sparc-config-ml.dpatch
@@ -1,58 +0,0 @@
-#! /bin/sh -e
-
-# sparc-config-ml.dpatch by <schizo@debian.org>
-#
-# DP: disable some biarch libraries for sparc64 build
-
-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 -f --no-backup-if-mismatch -p0 < $0;;
- -unpatch) patch -f --no-backup-if-mismatch -R -p0 < $0;;
- *)
- echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
- exit 1;;
-esac
-
-exit 0
-
---- src/config-ml.in.bak 2002-07-02 12:36:38.000000000 +0000
-+++ src/config-ml.in 2003-03-14 21:37:47.000000000 +0000
-@@ -478,13 +478,29 @@
- ;;
- sparc*-*-*)
- case " $multidirs " in
-- *" m64 "*)
-+ *" 64 "*)
- # We will not be able to create libraries with -m64 if
- # we cannot even link a trivial program. It usually
- # indicates the 64bit libraries are missing.
- if echo 'main() {}' > conftest.c &&
- ${CC-gcc} -m64 conftest.c -o conftest; then
-- :
-+ echo Enable only libstdc++.
-+ old_multidirs="${multidirs}"
-+ multidirs=""
-+ for x in ${old_multidirs}; do
-+ case "$x" in
-+ *64* ) case ${ml_realsrcdir} in
-+ *"libstdc++-v3" ) multidirs="${multidirs} ${x}" ;;
-+ *"libf2c" ) multidirs="${multidirs} ${x}" ;;
-+ *"libobjc" ) multidirs="${multidirs} ${x}" ;;
-+ *"libiberty" ) multidirs="${multidirs} ${x}" ;;
-+ *"zlib" ) multidirs="${multidirs} ${x}" ;;
-+ *) : ;;
-+ esac
-+ ;;
-+ *) multidirs="${multidirs} ${x}" ;;
-+ esac
-+ done
- else
- echo Could not link program with -m64, disabling it.
- old_multidirs="${multidirs}"
-
Reply to: