Dne 13.1.2015 v 18:20 Vít Ondruch napsal(a):
Dne 13.1.2015 v 18:09 Vít Ondruch napsal(a):
> Dne 13.1.2015 v 17:54 Vít Ondruch napsal(a):
>>>> So lets try to find what is written in C/C++ by some different way. Is
>>>> that true, that every package in C/C++ compiled using gcc depends on
>>>> glibc? Then we can use this query to get the number of packages:
>>>>
>>>> $ repoquery --source --whatrequires 'libc.so.6(GLIBC_2.4)(64bit)'
| sort
>>>> | uniq | wc -l
>>>> 2834
> The additional sed should remove the duplicated versions:
>
> $ repoquery --source --whatrequires 'libc.so.6(GLIBC_2.4)(64bit)' | sort
> -u | sed -r 's/(.*)-.*-.*/\1/' | uniq | wc -l
> 2645
>
And the wildcard in libc makes the difference :) So these seems to be
numbers for Rawhide:
$ repoquery --disablerepo=* --enablerepo=rawhide --source --whatrequires
'libc.so.6*' | sort -u | sed -r 's/(.*)-.*-.*/\1/' | uniq | wc -l
7402
$ dnf repoquery --disablerepo=* --enablerepo=rawhide-source --arch src
'*' | wc -l
16230
I.e. 45.6 % of packages seems to be written in C/C++
And it seems that this is the number of packages written in C++:
$ repoquery --disablerepo=* --enablerepo=rawhide --source --whatrequires
'libstdc++.so.6*' | sort -u | sed -r 's/(.*)-.*-.*/\1/' | uniq | wc -l
2396
I'd like to point out at this place, that this would help also the 5006
packages written in C, since they don't need C++ to build. Only 14.8 %
of packages, which happens to be written in C++, would not benefit from
this change.
Vít