Re: Broken (glibc) dependencies in f19 update-repository metadata

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

 



On Sat, Jul 06, 2013 at 06:35:24PM +0300, Panu Matilainen wrote:
> Yes, well known. The thing here is that the actual package
> dependencies are just fine, the *repository metadata* is broken on
> these glibc dependencies. Rpm records all the different version
> requirements from symbols, but createrepo "optimizes" this by
> collapsing them to the highest requirement found. And *that* is
> what's broken on f19 updates and updates-testing repositories.

Ah, ok.  Then that optimization is broken.  Symbol version names
are just strings, they can have a hierarchy recorded, but that hierarchy can
have multiple roots:
Version definition section '.gnu.version_d' contains 27 entries:
  Addr: 0x0000003fee4450a8  Offset: 0x0450a8  Link: 4 (.dynstr)
  000000: Rev: 1  Flags: BASE   Index: 1  Cnt: 1  Name: libstdc++.so.6
  0x001c: Rev: 1  Flags: none  Index: 2  Cnt: 1  Name: GLIBCXX_3.4
  0x0038: Rev: 1  Flags: none  Index: 3  Cnt: 2  Name: GLIBCXX_3.4.1
  0x0054: Parent 1: GLIBCXX_3.4
...
  0x0254: Rev: 1  Flags: none  Index: 18  Cnt: 2  Name: GLIBCXX_3.4.16
  0x0270: Parent 1: GLIBCXX_3.4.15
  0x0278: Rev: 1  Flags: none  Index: 19  Cnt: 2  Name: GLIBCXX_3.4.17
  0x0294: Parent 1: GLIBCXX_3.4.16
  0x029c: Rev: 1  Flags: none  Index: 20  Cnt: 1  Name: CXXABI_1.3
  0x02b8: Rev: 1  Flags: none  Index: 21  Cnt: 2  Name: CXXABI_1.3.1
  0x02d4: Parent 1: CXXABI_1.3
  0x02dc: Rev: 1  Flags: none  Index: 22  Cnt: 2  Name: CXXABI_1.3.2
  0x02f8: Parent 1: CXXABI_1.3.1
...
  0x036c: Rev: 1  Flags: none  Index: 26  Cnt: 2  Name: CXXABI_1.3.6
  0x0388: Parent 1: CXXABI_1.3.5
  0x0390: Rev: 1  Flags: none  Index: 27  Cnt: 1  Name: CXXABI_TM_1
Above from libstdc++ has GLIBCXX_3.4 -> GLIBCXX_3.4.1 -> ... GLIBCXX_3.4.15
-> GLIBCXX_3.4.16 -> GLIBCXX_3.4.17 as one chain, another one
CXXABI_1.3 -> CXXABI_1.3.1 -> ... CXXABI_1.3.6 as another one and
CXXABI_TM_1 as its own.  It is true that often in one chain people
use some prefix underscore and numbers (guess say rpmvercmp could do the job
there), but they don't have to, and even if it happens to work
createrepo just needs to do the parsing right.  But it definitely
can't pick just one of the symbol versions in case there are multiple
prefixes.

	Jakub
-- 
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/devel





[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]
  Powered by Linux