--- Begin Message ---
- To: Debian Bug Tracking System <submit@bugs.debian.org>
- Subject: gcc-3.4: Cross built library target libstdc++6 has dependency with duplicated string
- From: Jim Heck <jim.heck@sun.com>
- Date: Fri, 17 Nov 2006 11:31:07 -0500
- Message-id: <20061117163107.10291.7373.reportbug@localhost>
Package: gcc-3.4
Version: 3.4.6-4
Severity: normal
Tags: patch
There is a typo in the generated dependencies of the
libstdc++6-powerpc-cross package. The cross specific string
'powerpc-cross' is duplicated for the libgccl library (e.g.
libgccl-powerpc-cross-powerpc-cross). This causes the package to not
install properly.
I managed to fix the $(binary_stamp)-libstdcxx: target in the
debian/rules.d/.mk file so that the duplicated
'powerpc-cross-powerpc-cross' dependency no longer occurs. It's a
rather brute force fix (I duplicated some sed code used elsewhere in the
file to strip out the cross string 'powerpc-cross' in case it already
exists before it gets put back by the later sed script).
The sed code I added in my patch I applied to all similar libraries
that were setup for cross compiling. It should be safe to apply either
specifically to gcc-3.4, as well as to later gcc versions if desired.
-- System Information:
Debian Release: testing/unstable
APT prefers testing
APT policy: (500, 'testing')
Architecture: i386 (i586)
Shell: /bin/sh linked to /bin/bash
Kernel: Linux 2.6.17-2-486
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
diff -Naur gcc-3.4-3.4.6.orig/debian/rules.d/binary-libgcc-cross.mk gcc-3.4-3.4.6/debian/rules.d/binary-libgcc-cross.mk
--- gcc-3.4-3.4.6.orig/debian/rules.d/binary-libgcc-cross.mk 2006-11-13 10:45:22.000000000 -0500
+++ gcc-3.4-3.4.6/debian/rules.d/binary-libgcc-cross.mk 2006-11-13 10:47:03.000000000 -0500
@@ -53,6 +53,8 @@
mv debian/$(p_lgcc)/DEBIAN/shlibs.fixed debian/$(p_lgcc)/DEBIAN/shlibs
touch debian/$(p_lgcc).substvars
ARCH=$(DEB_TARGET_ARCH) MAKEFLAGS="CC=something" dh_shlibdeps -p$(p_lgcc) -Xlibgcc_s
+ sed s/$(cross_lib_arch)//g < debian/$(p_lgcc).substvars > debian/$(p_lgcc).substvars.fixed
+ mv debian/$(p_lgcc).substvars.fixed debian/$(p_lgcc).substvars
sed 's/\(lib[^ ]*\) /\1$(cross_lib_arch) /g' < debian/$(p_lgcc).substvars > debian/$(p_lgcc).substvars.new
mv debian/$(p_lgcc).substvars.new debian/$(p_lgcc).substvars
else
@@ -61,6 +63,8 @@
mv debian/$(p_lgcc)/DEBIAN/shlibs.fixed debian/$(p_lgcc)/DEBIAN/shlibs
touch debian/$(p_lgcc).substvars
ARCH=$(DEB_TARGET_ARCH) MAKEFLAGS="CC=something" dh_shlibdeps -p$(p_lgcc)
+ sed s/$(cross_lib_arch)//g < debian/$(p_lgcc).substvars > debian/$(p_lgcc).substvars.fixed
+ mv debian/$(p_lgcc).substvars.fixed debian/$(p_lgcc).substvars
sed 's/\(lib[^ ]*\) /\1$(cross_lib_arch) /g' < debian/$(p_lgcc).substvars > debian/$(p_lgcc).substvars.new
mv debian/$(p_lgcc).substvars.new debian/$(p_lgcc).substvars
endif
@@ -113,6 +117,8 @@
cat debian/$(p_l64gcc)/DEBIAN/shlibs >> debian/shlibs.local
endif
ARCH=$(DEB_TARGET_ARCH) MAKEFLAGS="CC=something" dh_shlibdeps -p$(p_l64gcc)
+ sed s/$(cross_lib_arch)//g < debian/$(p_l64gcc).substvars > debian/$(p_l64gcc).substvars.fixed
+ mv debian/$(p_l64gcc).substvars.fixed debian/$(p_l64gcc).substvars
sed 's/\(lib[^ ]*\) /\1$(cross_lib_arch) /g' < debian/$(p_l64gcc).substvars > debian/$(p_l64gcc).substvars.new
mv debian/$(p_l64gcc).substvars.new debian/$(p_l64gcc).substvars
dh_gencontrol -p$(p_l64gcc) \
@@ -160,6 +166,8 @@
cat debian/$(p_l32gcc)/DEBIAN/shlibs >> debian/shlibs.local
endif
ARCH=$(DEB_TARGET_ARCH) MAKEFLAGS="CC=something" dh_shlibdeps -p$(p_l32gcc)
+ sed s/$(cross_lib_arch)//g < debian/$(p_l32gcc).substvars > debian/$(p_l32gcc).substvars.fixed
+ mv debian/$(p_l32gcc).substvars.fixed debian/$(p_l32gcc).substvars
sed 's/\(lib[^ ]*\) /\1$(cross_lib_arch) /g' < debian/$(p_l32gcc).substvars > debian/$(p_l32gcc).substvars.new
mv debian/$(p_l32gcc).substvars.new debian/$(p_l32gcc).substvars
dh_gencontrol -p$(p_l32gcc) \
diff -Naur gcc-3.4-3.4.6.orig/debian/rules.d/binary-libstdcxx-cross.mk gcc-3.4-3.4.6/debian/rules.d/binary-libstdcxx-cross.mk
--- gcc-3.4-3.4.6.orig/debian/rules.d/binary-libstdcxx-cross.mk 2006-11-13 10:45:22.000000000 -0500
+++ gcc-3.4-3.4.6/debian/rules.d/binary-libstdcxx-cross.mk 2006-11-13 10:46:40.000000000 -0500
@@ -101,6 +101,8 @@
sed s/$(cross_lib_arch)//g < debian/$(p_lib)/DEBIAN/shlibs > debian/$(p_lib)/DEBIAN/shlibs.fixed
mv debian/$(p_lib)/DEBIAN/shlibs.fixed debian/$(p_lib)/DEBIAN/shlibs
ARCH=$(DEB_TARGET_ARCH) MAKEFLAGS="CC=something" dh_shlibdeps -p$(p_lib)
+ sed s/$(cross_lib_arch)//g < debian/$(p_lib).substvars > debian/$(p_lib).substvars.fixed
+ mv debian/$(p_lib).substvars.fixed debian/$(p_lib).substvars
sed 's/\(lib[^ ]*\) /\1$(cross_lib_arch) /g' < debian/$(p_lib).substvars > debian/$(p_lib).substvars.new
mv debian/$(p_lib).substvars.new debian/$(p_lib).substvars
dh_gencontrol -p$(p_lib) -- -v$(DEB_VERSION) $(common_substvars)
@@ -136,6 +138,8 @@
sed s/$(cross_lib_arch)//g < debian/$(p_lib64)/DEBIAN/shlibs > debian/$(p_lib64)/DEBIAN/shlibs.fixed
mv debian/$(p_lib64)/DEBIAN/shlibs.fixed debian/$(p_lib64)/DEBIAN/shlibs
ARCH=$(DEB_TARGET_ARCH) MAKEFLAGS="CC=something" dh_shlibdeps -p$(p_lib64)
+ sed s/$(cross_lib_arch)//g < debian/$(p_lib64).substvars > debian/$(p_lib64).substvars.fixed
+ mv debian/$(p_lib64).substvars.fixed debian/$(p_lib64).substvars
sed 's/\(lib[^ ]*\) /\1$(cross_lib_arch) /g' < debian/$(p_lib64).substvars > debian/$(p_lib64).substvars.new
mv debian/$(p_lib64).substvars.new debian/$(p_lib64).substvars
dh_gencontrol -p$(p_lib64) -- -v$(DEB_VERSION) $(common_substvars)
@@ -171,6 +175,8 @@
sed s/$(cross_lib_arch)//g < debian/$(p_lib32)/DEBIAN/shlibs > debian/$(p_lib32)/DEBIAN/shlibs.fixed
mv debian/$(p_lib32)/DEBIAN/shlibs.fixed debian/$(p_lib32)/DEBIAN/shlibs
ARCH=$(DEB_TARGET_ARCH) MAKEFLAGS="CC=something" dh_shlibdeps -p$(p_lib32)
+ sed s/$(cross_lib_arch)//g < debian/$(p_lib32).substvars > debian/$(p_lib32).substvars.fixed
+ mv debian/$(p_lib32).substvars.fixed debian/$(p_lib32).substvars
sed 's/\(lib[^ ]*\) /\1$(cross_lib_arch) /g' < debian/$(p_lib32).substvars > debian/$(p_lib32).substvars.new
mv debian/$(p_lib32).substvars.new debian/$(p_lib32).substvars
dh_gencontrol -p$(p_lib32) -- -v$(DEB_VERSION) $(common_substvars)
--- End Message ---
--- Begin Message ---
Source: gcc-3.4
Source-Version: 3.4.6ds1-5
We believe that the bug you reported is fixed in the latest version of
gcc-3.4, which is due to be installed in the Debian FTP archive:
cpp-3.4_3.4.6-5_i386.deb
to pool/main/g/gcc-3.4/cpp-3.4_3.4.6-5_i386.deb
cpp-3.4_3.4.6-5_powerpc.deb
to pool/main/g/gcc-3.4/cpp-3.4_3.4.6-5_powerpc.deb
g++-3.4_3.4.6-5_i386.deb
to pool/main/g/gcc-3.4/g++-3.4_3.4.6-5_i386.deb
g++-3.4_3.4.6-5_powerpc.deb
to pool/main/g/gcc-3.4/g++-3.4_3.4.6-5_powerpc.deb
g77-3.4_3.4.6-5_i386.deb
to pool/main/g/gcc-3.4/g77-3.4_3.4.6-5_i386.deb
g77-3.4_3.4.6-5_powerpc.deb
to pool/main/g/gcc-3.4/g77-3.4_3.4.6-5_powerpc.deb
gcc-3.4-base_3.4.6-5_i386.deb
to pool/main/g/gcc-3.4/gcc-3.4-base_3.4.6-5_i386.deb
gcc-3.4-base_3.4.6-5_powerpc.deb
to pool/main/g/gcc-3.4/gcc-3.4-base_3.4.6-5_powerpc.deb
gcc-3.4_3.4.6-5_i386.deb
to pool/main/g/gcc-3.4/gcc-3.4_3.4.6-5_i386.deb
gcc-3.4_3.4.6-5_powerpc.deb
to pool/main/g/gcc-3.4/gcc-3.4_3.4.6-5_powerpc.deb
gcc-3.4_3.4.6ds1-5.diff.gz
to pool/main/g/gcc-3.4/gcc-3.4_3.4.6ds1-5.diff.gz
gcc-3.4_3.4.6ds1-5.dsc
to pool/main/g/gcc-3.4/gcc-3.4_3.4.6ds1-5.dsc
gcc-3.4_3.4.6ds1.orig.tar.gz
to pool/main/g/gcc-3.4/gcc-3.4_3.4.6ds1.orig.tar.gz
gpc-2.1-3.4-doc_3.4.6-5_all.deb
to pool/main/g/gcc-3.4/gpc-2.1-3.4-doc_3.4.6-5_all.deb
gpc-2.1-3.4_3.4.6-5_i386.deb
to pool/main/g/gcc-3.4/gpc-2.1-3.4_3.4.6-5_i386.deb
gpc-2.1-3.4_3.4.6-5_powerpc.deb
to pool/main/g/gcc-3.4/gpc-2.1-3.4_3.4.6-5_powerpc.deb
lib64g2c0_3.4.6-5_i386.deb
to pool/main/g/gcc-3.4/lib64g2c0_3.4.6-5_i386.deb
lib64g2c0_3.4.6-5_powerpc.deb
to pool/main/g/gcc-3.4/lib64g2c0_3.4.6-5_powerpc.deb
libg2c0-dev_3.4.6-5_i386.deb
to pool/main/g/gcc-3.4/libg2c0-dev_3.4.6-5_i386.deb
libg2c0-dev_3.4.6-5_powerpc.deb
to pool/main/g/gcc-3.4/libg2c0-dev_3.4.6-5_powerpc.deb
libg2c0_3.4.6-5_i386.deb
to pool/main/g/gcc-3.4/libg2c0_3.4.6-5_i386.deb
libg2c0_3.4.6-5_powerpc.deb
to pool/main/g/gcc-3.4/libg2c0_3.4.6-5_powerpc.deb
libstdc++6-dbg_3.4.6-5_i386.deb
to pool/main/g/gcc-3.4/libstdc++6-dbg_3.4.6-5_i386.deb
libstdc++6-dbg_3.4.6-5_powerpc.deb
to pool/main/g/gcc-3.4/libstdc++6-dbg_3.4.6-5_powerpc.deb
libstdc++6-dev_3.4.6-5_i386.deb
to pool/main/g/gcc-3.4/libstdc++6-dev_3.4.6-5_i386.deb
libstdc++6-dev_3.4.6-5_powerpc.deb
to pool/main/g/gcc-3.4/libstdc++6-dev_3.4.6-5_powerpc.deb
libstdc++6-doc_3.4.6-5_all.deb
to pool/main/g/gcc-3.4/libstdc++6-doc_3.4.6-5_all.deb
libstdc++6-pic_3.4.6-5_i386.deb
to pool/main/g/gcc-3.4/libstdc++6-pic_3.4.6-5_i386.deb
libstdc++6-pic_3.4.6-5_powerpc.deb
to pool/main/g/gcc-3.4/libstdc++6-pic_3.4.6-5_powerpc.deb
A summary of the changes between this version and the previous one is
attached.
Thank you for reporting the bug, which will now be closed. If you
have further comments please address them to 399095@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.
Debian distribution maintenance software
pp.
Matthias Klose <doko@debian.org> (supplier of updated gcc-3.4 package)
(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@debian.org)
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Format: 1.7
Date: Mon, 1 Jan 2007 13:56:09 +0100
Source: gcc-3.4
Binary: gcc-3.4-base cpp-3.4 gcc-3.4-hppa64 gcc-3.4-soft-float gcc-3.4 lib64g2c0 libstdc++6-dev libg2c0-dev libstdc++6-doc lib32g2c0 gpc-2.1-3.4-doc libg2c0 libstdc++6-pic libstdc++6-dbg g++-3.4 gpc-2.1-3.4 g77-3.4
Architecture: all i386 powerpc source
Version: 3.4.6ds1-5
Distribution: unstable
Urgency: low
Maintainer: Debian GCC Maintainers <debian-gcc@lists.debian.org>
Changed-By: Matthias Klose <doko@debian.org>
Description:
cpp-3.4 - The GNU C preprocessor
g++-3.4 - The GNU C++ compiler
g77-3.4 - The GNU Fortran 77 compiler
gcc-3.4 - The GNU C compiler
gcc-3.4-base - The GNU Compiler Collection (base package)
gpc-2.1-3.4 - The GNU Pascal compiler
gpc-2.1-3.4-doc - Documentation for the GNU Pascal compiler (gpc)
lib64g2c0 - Runtime library for GNU Fortran 77 applications (64bit)
libg2c0 - Runtime library for GNU Fortran 77 applications
libg2c0-dev - GNU Fortran 77 library development
libstdc++6-dbg - The GNU Standard C++ Library v3 (debugging files)
libstdc++6-dev - The GNU Standard C++ Library v3 (development files)
libstdc++6-doc - The GNU Standard C++ Library v3 (documentation files)
libstdc++6-pic - The GNU Standard C++ Library v3 (shared library subset kit)
Closes: 399095
Changes:
gcc-3.4 (3.4.6ds1-5) unstable; urgency=low
.
* Build without GFDL licensed docs.
- debian/*.texi, debian/porting.html: Add dummy documentation.
- debian/rules.unpack, debian/rules.patch: Update for non-gfdl build.
* Don't build cpp-3.4-doc, gcc-3.4-doc, g77-3.4-doc packages.
* Fix dependencies of cross library packages (Jim Heck). Closes: #399095.
Files:
017149f8385d1df9628c4534639b677c 2139916 devel optional g77-3.4_3.4.6-5_powerpc.deb
0d7c085a91b096c993afa8fcf68993bd 54640 libs optional lib64g2c0_3.4.6-5_i386.deb
0efb8849198598cbf2706e938f500ce7 51140 libs optional libg2c0_3.4.6-5_i386.deb
14b7883ec169df2b10de39b84b2cad84 1460720 devel optional gcc-3.4_3.4.6-5_powerpc.deb
16132222cc27db1fafe3c4f9c2400dc9 758020 libdevel extra libstdc++6-pic_3.4.6-5_i386.deb
1c46916e9eac46b9923b9aa2a4302b21 8608840 doc optional libstdc++6-doc_3.4.6-5_all.deb
22bfbbe29fd853f71d1b2547c51a7b55 397034 devel optional gcc-3.4_3.4.6ds1-5.diff.gz
262faf45ed18692788612f4a62868913 1734674 interpreters optional cpp-3.4_3.4.6-5_i386.deb
2ecbfa90e7c7f88ff6bab1745f350c91 852418 libdevel extra libstdc++6-pic_3.4.6-5_powerpc.deb
37b48c28fc46d303231442e5e8b897ce 2644008 devel optional gpc-2.1-3.4_3.4.6-5_powerpc.deb
3b888b3e73108265009cee6b1a5bb4d9 142086 libdevel optional libg2c0-dev_3.4.6-5_i386.deb
3dd777eece58b9d5dbd9f1bec161e10e 1409344 devel optional gcc-3.4_3.4.6-5_i386.deb
243a1ef136d9d84203bcfe194fb10a38 2089 devel optional gcc-3.4_3.4.6ds1-5.dsc
411cf092f607c571e1755dea55bc67b8 1886878 devel optional g77-3.4_3.4.6-5_i386.deb
4160d75456e1b24dde1959e418fe3b42 164496 devel optional gcc-3.4-base_3.4.6-5_i386.deb
416502afca515aa275f8bdaac1f6a408 1271446 libdevel optional libstdc++6-dev_3.4.6-5_i386.deb
56995c8846ae60890ef8d91fe4d965ea 902734 doc optional gpc-2.1-3.4-doc_3.4.6-5_all.deb
58c282753f7fa4fdaaa90a72be9d5686 65294 libs optional lib64g2c0_3.4.6-5_powerpc.deb
681636bf551287f75be8c77f11d35462 164464 devel optional gcc-3.4-base_3.4.6-5_powerpc.deb
6b2e8c3df22a82850a285f5004e3765d 1395484 libdevel optional libstdc++6-dev_3.4.6-5_powerpc.deb
6bd663818b582b75181d7fcd4e51dfdb 1984856 interpreters optional cpp-3.4_3.4.6-5_powerpc.deb
793b4d84976b949885a1dffdc7744859 28653392 devel optional gcc-3.4_3.4.6ds1.orig.tar.gz
8383633b069f3e8be845729f5b69ce78 1989322 devel optional g++-3.4_3.4.6-5_i386.deb
956a79d4517b4a7aad582668d8d626cb 9331644 libdevel extra libstdc++6-dbg_3.4.6-5_powerpc.deb
a02c7c9916c2beca0a75a11e9e6ecaa0 54926 libs optional libg2c0_3.4.6-5_powerpc.deb
b402586550fb7d669a39b418edee32c4 8944846 libdevel extra libstdc++6-dbg_3.4.6-5_i386.deb
bce92affb6acd9a6a7e64eba70add202 167326 libdevel optional libg2c0-dev_3.4.6-5_powerpc.deb
d4feabe543aeab1f5514a5cc449f73c1 2250504 devel optional g++-3.4_3.4.6-5_powerpc.deb
f591b60ab97a3908abb463a07b5dfd78 2350924 devel optional gpc-2.1-3.4_3.4.6-5_i386.deb
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.3 (GNU/Linux)
iD8DBQFFnCRDStlRaw+TLJwRAgOPAJsGarkIB7JFGEk6EoeShW7aWjsDwgCeIwoy
e65I9CKUDnDcjPM0woFv9aU=
=VVw2
-----END PGP SIGNATURE-----
--- End Message ---