On 25/12/11 20:06, Florian Pritz wrote: > First off, this patch creates a syntax error.
That is fixed on my working branch - I will resend. > On 25.12.2011 07:52, Allan McRae wrote: >> - Only calculates the version for libraries specifically requested >> and not all libraries. This has the disadvantage of running find >> over the $pkgdir for as many libraries as needed, but is unlikely >> to be an issue due to caching. > > Maybe you could create a search string like the following? This won't > preserve the order, but it will traverse the file system only once and > according to the find manpage it's POSIX compliant. > > find /usr/lib -type f \( -name libx264.so\* -o -name libc.so\* -o -name > libarchive.so\* \) I do not see that being worth the effort of creating the find command. Even for the largest of packages the find will take a fraction of a second with the files being cached. >> - The order of the provides array in the PKGBUILD is kept in the >> package >> - There are more warning messages when things fail and those that >> were there are no longer errors (as I do not think failure of >> libprovides should result in complete packaging failure) > > I think it should because libraries hardly move between packages or > change their names and the packager might not see the message and push a > package with incorrect provides. If the package does not see a warning in the last few lines of the build output, then they need to stop packaging... > It might be a good idea not to abort right away though. You could check > all entries and abort later, but I think you shouldn't create a package > since the packager will have to fix the incorrect entry and > rebuild/repackage anyway. There are two cases where this occurs: 1) the library has no soname information 2) the listed provide is not a shared object If we make these errors and someone wants to add a provide that hits one of these conditions, then there is nothing they can do. This could be especially possible with #1... Allan
