-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On Tue, 13 Jan 2015 17:54:03 +0100 Vít Ondruch <vondruch@xxxxxxxxxx> wrote: > Dne 13.1.2015 v 17:42 Ralf Corsepius napsal(a): > > On 01/13/2015 12:06 PM, Vít Ondruch wrote: > >> Dne 13.1.2015 v 08:12 Ralf Corsepius napsal(a): > >> > >> So we are even not able to tell how many packages are written in C > >> or C++ in Fedora, since we do not have the BuildRequires speficied > >> correctly. > > Correct. > > > >> Because we have still the false feeling that everything is in > >> C/C++, we regularly doing mass rebuilds and wasting resources (mass > >> rebuild has also different advantages, but the rebuild due to > >> rebased GCC is the major one). > > There are other reasons for mass-rebuilds. Most prominently: Changes > > inside of rpm and rpm-macros. > > > >> 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 > > > > Well, ... any explanation why this figure differs significantly > > There are probably other reasons for the package to be arch dependent. > First which comes to my mind is that somebody forgot to specify > BuildArch: noarch. > > > from this brute force estimate [1]: > > # rpm -q --qf "%{SOURCERPM}\n" \ > > -p rawhide/i386/os/Packages/*/*.i686.rpm 2>/dev/null | sort -u | > > wc -l 7706 > > Otherwise interesting number. I'd say this is top estimate of number > of affected packages, since it probably suffers the same issue as mine > query, i.e. there are the same source packages, with different > versions, hence they are not filtered out as duplicates. your assumption there is not possible. mash the tool that makes the rawhide repo froma koji tag only includes the latest build. so there is only one srpm for each package and never multiples. ie foo-1.1-1.fc22 and foo-1.2-1.fc22 will never exist in the same repo. there will never be multiples of the source rpms and never multiples of the binaries. if a sub package gets dropped we do not keep the old version it just goes away. So I have some numbers rpm -qp --qf "%{arch}\n" rawhide/source/SRPMS/*/*rpm|grep -v noarch |wc - -l 7742 rpm -qp --qf "%{arch}\n" rawhide/source/SRPMS/*/*rpm|grep noarch |wc -l 8488 so right now we have 8488 packages in rawhide that are noarch only and 7742 that are arch specific so in theory just over 50% of builds would get a slight build time speedup with removing gcc gcc-c++. I would like to exclude make because I know a number of noarch only builds use make and regular makefiles. that will take checking out the entire sourcetree unpacking everything and doing analysis of the contents of the prepped tree to determine. Of the 7742 that are arch specific, we do not know how many need to have gcc or gcc-c++ installed in the buildroot for them to compile. though we could likely look at the BuildRequires and make an educated guess. Dennis -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQIcBAEBAgAGBQJUtVadAAoJEH7ltONmPFDR770P/i/7Yih5BSV7RHmkQ3wDRO0V urSr01+Kxbs4HmgBgtstgbgHpHbU6H5zusNJkrcOZdyPeKMnn1bHigVkl0C8Ccq1 pb735ndpiSag64XbkXOCF7AgdKHJtBsU/GGhnsok7KgrqsZq+IhTUzYdKWAcOYdh OiasG6Pg4TUCmz2KxyFCJBGnda67HTGYszkVUXptYpKtZefWIyUMr+Mgmr4hXuLV l//GGAZTBy1E9S7L2WBcp8he/qWoNxhnxPonLYdS98Qa4i//fVjCP5kfEVs7jBNb 3CXl3q0al0K/sdxmxeLwZVicWDfer9gxBwGg1/FFJBrX6v8CTx3n/SEqexnyC4j6 N9u7Rz68mTxLIUhjd0p4gxA13PsJHv2jcPS8zVC32XElov9x+zbStrPv2oBAyi6C y55ZW5ITggvXCm5EEC5EPeRHHKQtPi6AwTtsdmZRWL7dAGskRiJaei/bNktMD+BI xe5JlVpxJcvX+y/rMyLsYr26CPLgmj1Rvv2e3wJjiPduaUUwGLfucqYyvuohYkEX AmIQVmkO43mPwJbzYXrMxo2PVhygUT1iR110xZdRnFw0WtOHuh3JUNu6eEwtG4Hf ZNHAOfMlit2BS/l8M+BMCW6L3ODLGO7nhnrmespliQnCyc2kaEQPweodsmJlnC2C 1Ci+Tgp/4juEojCmGP0P =E+V1 -----END PGP SIGNATURE----- -- devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxxx https://admin.fedoraproject.org/mailman/listinfo/devel Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct