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