On Thu, 22 Aug 2013 18:10:12 +0200, Alec Leamas wrote: > > Funny! I'm interested in hearing more about these, > > > > | 347 CheckStaticLibs > > | Static libs not in a -static package. Most are haskell packages > > | which have an exception not handled by f-r. There are more, though. > > > > since http://mschwendt.fedorapeople.org/staticbugstat.html is an ongoing > > project. So far, I exclude Haskell and OCaml packages, Tcl/Tk stub libs, > > flex-static, and the fake shared libs in binutils-devel (they are .so > > GNU ld scripts that link with the static libs instead). > > You have certainly better excludes than f-r. The packages failing f-r is > on http://ur1.ca/f5znn Thanks! Here's a guess. Many are on that list, because f-r doesn't implement the static lib packaging guidelines correctly yet. Example, for isomd5sum it tells: - Static libraries in -static subpackage, if present. Note: Archive *.a files found in isomd5sum-devel See: http://fedoraproject.org/wiki/Packaging/Guidelines#StaticLibraries Actually, a subsection of those guidelines applies instead, because the FPC has not made -static subpackages a MUST: https://fedoraproject.org/wiki/Packaging:Guidelines#Packaging_Static_Libraries_2 | | 2. Static libraries only. When a package only provides static | libraries you can place all the static library files in the *-devel | subpackage. When doing this you also must have a virtual Provide for | the *-static package: That's the case: $ rpmls -p isomd5sum-devel-1.0.11-2.fc20.x86_64.rpm -rw-r--r-- /usr/include/libcheckisomd5.h -rw-r--r-- /usr/include/libimplantisomd5.h -rw-r--r-- /usr/lib64/libcheckisomd5.a -rw-r--r-- /usr/lib64/libimplantisomd5.a $ rpm -qp --provides isomd5sum-devel-1.0.11-2.fc20.x86_64.rpm isomd5sum-devel = 1:1.0.11-2.fc20 isomd5sum-devel(x86-64) = 1:1.0.11-2.fc20 isomd5sum-static = 1:1.0.11-2.fc20 ^^^^^^^ (!) $ rpmls -p isomd5sum-1.0.11-2.fc20.x86_64.rpm -rwxr-xr-x /usr/bin/checkisomd5 -rwxr-xr-x /usr/bin/implantisomd5 drwxr-xr-x /usr/share/doc/isomd5sum -rw-r--r-- /usr/share/doc/isomd5sum/COPYING -rw-r--r-- /usr/share/man/man1/checkisomd5.1.gz -rw-r--r-- /usr/share/man/man1/implantisomd5.1.gz Of course, these guidelines bear a risk. One can "BuildRequires: isomd5sum-devel" and unwittingly have a build use the static libs. It would be better, if one had to build-require a separate -static subpackage before this static-only lib could be linked with. Tracking usage of a separate -static package is a lot easier than examininig koji build logs in an attempt at finding out whether a static lib is linked with. -- devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxxx https://admin.fedoraproject.org/mailman/listinfo/devel Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct