While installing gdb on ~mips I got conflicts with /usr/share/locale/*/LC_MESSAGES/{bfd,opcodes}.mo files preventing to merge gdb. This is instance of bug #69496 probably.
post some real details. all of binutils' mo files are name spaced not only by CTARGET but by PN and version.
From build.log: * Package: sys-devel/gdb-7.2 * Repository: gentoo * Maintainer: toolchain@gentoo.org * USE: elibc_glibc kernel_linux lm2e lm2f mips n32 nls python userland_GNU >>> Unpacking source... >>> Unpacking gdb-7.2.tar.bz2 to /var/tmp/portage/sys-devel/gdb-7.2/work >>> Unpacking gdb-7.2-patches-1.tar.xz to /var/tmp/portage/sys-devel/gdb-7.2/wor k >>> Source unpacked in /var/tmp/portage/sys-devel/gdb-7.2/work >>> Preparing source in /var/tmp/portage/sys-devel/gdb-7.2/work/gdb-7.2 ... * Applying various patches (bugfixes/updates) ... * 05_all_readline-headers.patch ... [ ok ] * 80_all_gdb-6.5-dwarf-stack-overflow.patch ... [ ok ] * Done with patching * Sorry, but gdb does not support the LINGUAS: cs en >>> Source prepared. >>> Configuring source in /var/tmp/portage/sys-devel/gdb-7.2/work/gdb-7.2 ... * econf: updating gdb-7.2/config.guess with /usr/share/gnuconfig/config.guess * econf: updating gdb-7.2/config.sub with /usr/share/gnuconfig/config.sub * econf: updating gdb-7.2/readline/support/config.guess with /usr/share/gnuconf ig/config.guess * econf: updating gdb-7.2/readline/support/config.sub with /usr/share/gnuconfig /config.sub ./configure --prefix=/usr --build=mips64el-unknown-linux-gnu --host=mips64el-unk nown-linux-gnu --target=mips64el-unknown-linux-gnu --mandir=/usr/share/man --inf odir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var /lib --with-pkgversion=Gentoo 7.2 p1 --with-bugurl=http://bugs.gentoo.org/ --dis able-werror --enable-64-bit-bfd --without-expat --enable-nls --with-python=/usr/ bin/python2 [...] make[4]: Leaving directory `/var/tmp/portage/sys-devel/gdb-7.2/work/gdb-7.2/gdb/ gdbserver' make[3]: Leaving directory `/var/tmp/portage/sys-devel/gdb-7.2/work/gdb-7.2/gdb' make[2]: Leaving directory `/var/tmp/portage/sys-devel/gdb-7.2/work/gdb-7.2/gdb' make[1]: Leaving directory `/var/tmp/portage/sys-devel/gdb-7.2/work/gdb-7.2' >>> Completed installing gdb-7.2 into /var/tmp/portage/sys-devel/gdb-7.2/image/ strip: mips64el-unknown-linux-gnu-strip --strip-unneeded -R .comment usr/bin/run usr/bin/gdbtui usr/bin/gdb usr/bin/gdbserver ecompressdir: bzip2 -9 /usr/share/man ecompressdir: bzip2 -9 /usr/share/info * checking 64 files for package collisions * This package will overwrite one or more files that may belong to other * packages (see list below). You can use a command such as `portageq * owners / <filename>` to identify the installed package that owns a * file. If portageq reports that only one package owns a file then do * NOT file a bug report. A bug report is only useful if it identifies at * least two or more packages that are known to install the same file(s). * If a collision occurs and you can not explain where the file came from * then you should simply ignore the collision since there is not enough * information to determine if a real problem exists. Please do NOT file * a bug report at http://bugs.gentoo.org unless you report exactly which * two packages install the same file(s). Once again, please do NOT file * a bug report unless you have completely understood the above message. * * Detected file collision(s): * Detected file collision(s): * * /usr/share/locale/da/LC_MESSAGES/bfd.mo * /usr/share/locale/da/LC_MESSAGES/opcodes.mo * /usr/share/locale/es/LC_MESSAGES/bfd.mo * /usr/share/locale/es/LC_MESSAGES/opcodes.mo * /usr/share/locale/fi/LC_MESSAGES/bfd.mo * /usr/share/locale/fi/LC_MESSAGES/opcodes.mo * /usr/share/locale/fr/LC_MESSAGES/bfd.mo * /usr/share/locale/fr/LC_MESSAGES/opcodes.mo * /usr/share/locale/id/LC_MESSAGES/bfd.mo * /usr/share/locale/id/LC_MESSAGES/opcodes.mo * /usr/share/locale/ja/LC_MESSAGES/bfd.mo * /usr/share/locale/ro/LC_MESSAGES/bfd.mo * /usr/share/locale/ro/LC_MESSAGES/opcodes.mo * /usr/share/locale/ru/LC_MESSAGES/bfd.mo * /usr/share/locale/rw/LC_MESSAGES/bfd.mo * /usr/share/locale/sv/LC_MESSAGES/bfd.mo * /usr/share/locale/sv/LC_MESSAGES/opcodes.mo * /usr/share/locale/tr/LC_MESSAGES/bfd.mo * /usr/share/locale/tr/LC_MESSAGES/opcodes.mo * /usr/share/locale/vi/LC_MESSAGES/bfd.mo * /usr/share/locale/vi/LC_MESSAGES/opcodes.mo * /usr/share/locale/zh_CN/LC_MESSAGES/bfd.mo * /usr/share/locale/zh_CN/LC_MESSAGES/opcodes.mo * /usr/share/locale/de/LC_MESSAGES/opcodes.mo * /usr/share/locale/ga/LC_MESSAGES/opcodes.mo * /usr/share/locale/nl/LC_MESSAGES/opcodes.mo * /usr/share/locale/pt_BR/LC_MESSAGES/opcodes.mo * * Searching all installed packages for file collisions... * * Press Ctrl-C to Stop * * sys-devel/binutils-2.20.1-r1 * /usr/share/locale/da/LC_MESSAGES/bfd.mo * /usr/share/locale/da/LC_MESSAGES/opcodes.mo * /usr/share/locale/es/LC_MESSAGES/bfd.mo * /usr/share/locale/es/LC_MESSAGES/opcodes.mo * /usr/share/locale/fi/LC_MESSAGES/bfd.mo * /usr/share/locale/fi/LC_MESSAGES/opcodes.mo * /usr/share/locale/fr/LC_MESSAGES/bfd.mo * /usr/share/locale/fr/LC_MESSAGES/opcodes.mo * /usr/share/locale/id/LC_MESSAGES/bfd.mo * /usr/share/locale/id/LC_MESSAGES/opcodes.mo * /usr/share/locale/ja/LC_MESSAGES/bfd.mo * /usr/share/locale/ro/LC_MESSAGES/bfd.mo * /usr/share/locale/ro/LC_MESSAGES/opcodes.mo * /usr/share/locale/ru/LC_MESSAGES/bfd.mo * /usr/share/locale/rw/LC_MESSAGES/bfd.mo * /usr/share/locale/sv/LC_MESSAGES/bfd.mo * /usr/share/locale/sv/LC_MESSAGES/opcodes.mo * /usr/share/locale/tr/LC_MESSAGES/bfd.mo * /usr/share/locale/tr/LC_MESSAGES/opcodes.mo * /usr/share/locale/vi/LC_MESSAGES/bfd.mo * * Package 'sys-devel/gdb-7.2' NOT merged due to file collisions. If * necessary, refer to your elog messages for the whole content of the * above message. The sys-devel/binutils-2.20.1-r1 ebuild is from loongson overlay <http://www.gentoo-cn.org/gitweb/?p=loongson.git;a=tree;f=sys-devel/binutils;h=52d9bcdc7e2499d1fb39a77dfde4a22dcb34544a;hb=HEAD>. The only difference between portage are three code patches: # diff -u {/usr/portage,/var/lib/layman/loongson}/sys-devel/binutils/binutils-2.20.1-r1.ebuild --- /usr/portage/sys-devel/binutils/binutils-2.20.1-r1.ebuild 2010-08-30 06:37:04.000000000 +0200 +++ /var/lib/layman/loongson/sys-devel/binutils/binutils-2.20.1-r1.ebuild 2010-10-12 10:20:31.000000000 +0200 @@ -1,9 +1,16 @@ # Copyright 1999-2010 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-devel/binutils/binutils-2.20.1-r1.ebuild,v 1.11 2010/08/30 04:16:59 vapier Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-devel/binutils/binutils-2.20.1-r1.ebuild,v 1.1 2010/05/09 08:32:47 vapier Exp $ PATCHVER="1.1" ELF2FLT_VER="" inherit toolchain-binutils -KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~sparc-fbsd ~x86-fbsd" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd" +src_unpack() { + unpack ${A} + cd "${S}" + epatch ${FILESDIR}/${P}-loongson2f.patch + epatch ${FILESDIR}/pr10858.diff + epatch ${FILESDIR}/${PN}-mips-tls.patch +}
you arent using an in-tree binutils which means not our bug
OMG, if you look inside the patches, they does not mangle packaging anyhow. I cannot use in-portage binutils as they does not support my machine yet. I guess anybody should be able to reproduce this bug regardless his architecture.
if none of the ebuilds in the tree exhibit the problem, then there is no bug in the binutils ebuilds. i dont see how you could possibly expect us to support ebuilds we havent written. also, you're mistaken about patch applying. ebuilds in tree already support epatch_user for people to add their own stuff.
Specifically the src_unpack in your binutils ebuild overrides the eclass one, which does much more than apply patches.
Thanks for explanation. The loongson overlay screewed binutils' src_unpack(). After moving binutils-mips-tls.patch and binutils-2.20.1-loongson2f.patch under /etc/portage/patches (pr10858.diff is covered by different in-portage patch), I get binutil's message catalogs to different directory.
(In reply to comment #7) > Thanks for explanation. The loongson overlay screewed binutils' src_unpack(). Sorry for that, I have fixed it the other day. But now the new version containing the patch is already in tree, we should use that instead.