Skip to Content.
Sympa Menu

sm-discuss - Re: [SM-Discuss] expat depends

sm-discuss AT lists.ibiblio.org

Subject: Public SourceMage Discussion List

List archive

Chronological Thread  
  • From: neuron <vlmarek AT volny.cz>
  • To: SM Discuss <sm-discuss AT lists.ibiblio.org>
  • Subject: Re: [SM-Discuss] expat depends
  • Date: Wed, 18 Jan 2006 15:12:52 +0100

> > Here are some more with expat depends I am not able to get to yet.
> >
> > libgdiplus
> > mdbtools
> > gd
> > graphviv
> > libwmf
> > imagemagick
>
> graphviz already got the expat depends added, that also fixes
> imagemagick as that only pulls it in through graphviz.
>
> > avifile
> > lesstif
>
> Those two only link to it through fontconfig as far as I can tell and
> weren't broken by the upgrade here.
>
> > There might be a few more but haven't verified them yet

Hmmm, wouldn't be possible to check actual dependencies of the spell
after it is installed ?

Simple way which came to my mind is:

$ objdump -p /usr/bin/blender | grep NEEDED
NEEDED libfreetype.so.6
NEEDED libz.so.1
NEEDED libSDL-1.2.so.0
NEEDED libpthread.so.0
NEEDED libpng.so.3
NEEDED libjpeg.so.62
NEEDED libopenal.so.0
NEEDED libm.so.6
NEEDED libutil.so.1
NEEDED libstdc++.so.6
NEEDED libGL.so.1
NEEDED libGLU.so.1
NEEDED libgcc_s.so.1
NEEDED libc.so.6
NEEDED libdl.so.2
NEEDED libX11.so.6

This should catch all libraries the binary depends on directly. Ldd
shows whole chain.

$ ldd /usr/bin/blender | grep -i esd
libesd.so.0 => /usr/lib/libesd.so.0 (0xb7853000)

blender however does not depend on esd directly, but libopenal does

objdump -p /usr/lib/libopenal.so.0 | grep NEEDED
NEEDED libdl.so.2
NEEDED libm.so.6
NEEDED libpthread.so.0
NEEDED libartsc.so.0
NEEDED libgmodule-2.0.so.0
NEEDED libgthread-2.0.so.0
NEEDED libglib-2.0.so.0
NEEDED libesd.so.0
NEEDED libaudiofile.so.0
NEEDED libasound.so.2
NEEDED libSDL-1.2.so.0
NEEDED libsmpeg-0.4.so.0
NEEDED libc.so.6


It's just a raw idea, I haven't been thinking about it extensively. What
do you think ? It could improve dependency handling.

For example, gaze orphan showed me that sdl_net is not needed anymore.
After dispel of sdl_net, dosbox didn't work anymore. The problem is,
that the dosbox ./configure uses sdl_net if it finds one during
compilation, but there is no way to disable it. So the correct way to do
DEPENDS file should be something like:

if spell_ok sdl_net; then
depends sdl_net
else
optional_depends sdl_net
fi

If we checked all libs and binaries after install, we might have good
chance of having perfect dependencies, no ?

--
neuron

Attachment: pgpKLUkRPzGrd.pgp
Description: PGP signature




Archive powered by MHonArc 2.6.24.

Top of Page