Re: checklib
On Wed, 30 May 2007 17:59:15 +0300, Guillem Jover <guillem@debian.org> said:
> On Wed, 2007-05-30 at 02:19:33 -0500, Manoj Srivastava wrote:
>> On Thu, 24 May 2007 20:26:00 +0200, A Mennucc said:
>> > hi what about http://rerun.lefant.net/checklib/ ?
>>
>> > madcoder mentioned in
>> > http://lists.debian.org/debian-devel/2007/01/msg00822.htmlof the
>> > intention of getting the checklib service up again: any progress?
>>
>> Most of the incantations of checklib did so on a per binary object
>> basis -- which is useless in packages like fvwm, that have gazillions
>> of plugins generated from the same CFLAGS in a global makefile. If
>> some binary in a .deb needs it, a library can't be eliminated from
>> build depends, so the lib minimization can't be done.
> I don't think it's completely useless, it is for the purpose of
> reducing Build-Depends, but those plugins/programs are linking against
> stuff they don't actually need, and those libraries are loaded w/o a
> reason. Reducing run-time "bloat" is good as well, I'm willing to fix
> those bugs on my packages and feed the fixes upstream!
You do not understand the problem here; as the last incarnation
I looked at, it was indeed completely useless for things like fvwm --
since it worked on a binary by binary basis, instead of a per package
basis. Since we do build depends on a package by package basis, looking
at dependencies of individual binaries is not good enough.
Say a package as bin-foo, bin-bar, and bin-baz. They build
depend, respectively, on libfoo-dev, libbar-dev, and libbaz-dev,
respectively.
When checklibs was run, it would report
libbar-dev, libbaz-dev, unneeded; looking at foo
libfoo-dev, libbaz-dev, unneeded; looking at bar
libfoo-dev, libbar-dev, unneeded; looking at baz
End result: Uneedded: libfoo-dev, libbar-dev, and libbaz-dev
Since that is patently wrong, the version of checklibs I looked
at produced meaningless output -- for any package that had shared
objects whose compile flags were not identical.
>> Has this been fixed in the latest incantation?
> Please "fix" this by adding an additional mode/view, not replacing the
> current one.
Er, why? I have a working version that works on a package basis,
not on a binary by binary basis, and it was a few lines of simple shell
scripting. Also, if I recall correctly, the original script was in
python. I don't do python.
The original site where I got the old implementation
(http://greek0.net/div/checklib.tar.gz) from is 404's now; the alioth
checklib project has published nothing. First rule of free software:
publish early, publish often.
manoj
--
During the voyage of life, remember to keep an eye out for a fair wind;
batten down during a storm; hail all passing ships; and fly your colors
proudly.
Manoj Srivastava <srivasta@debian.org> <http://www.debian.org/~srivasta/>
1024D/BF24424C print 4966 F272 D093 B493 410B 924B 21BA DABB BF24 424C
Reply to: