[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: sorting through xlibs-dev dependencies?



On Sat, Dec 18, 2004 at 10:39:37PM +0000, Helen Faulkner wrote:
> Hi,
> 
> I hope this isn't a too dumb question!

*peeking forward*: no, it isn't.
 
> xwrits currently depends on xlibs-dev.  Frank suggests that I replace that 
> with only the needed dependencies.
> 
> So, the only thing I thought to do is
>  a) look at every header file that is #included in the xwrits code
>  b) use dlocate or similar to see which packages all those headers are in.
>  c) make xwrits build-depend on those packages.
> 
> But this will take me quite a long time.  I wondered if I am missing 
> something obvious and there is a better way to do it.  Or am I on the right 
> track after all.

Four possibilities come to mind:

a) start out in a clean chroot, and use auto-apt to build your package.
   auto-apt will ask you to install exactly the x build-depends you
   need.  However, auto-apt is a pain to setup in my experience, plus it
   probably isn't necessarily correct (depending on the complexitiy of
   the configure script, it could be just detecting stuff without
   actually needing it, or the other way around, detecting without
   auto-apt noticing that some lib is not available, while it would
   enhance xwrits)
   Advantage is that it will also catch any library that could maybe
   enhance xwrits
b) start out with xlibs-dev installed, make sure you don't run X at the
   moment (or in that chroot, if you're doing this in a chroot), build
   your package, and use find to look for file that were accessed during
   the build (atime changed). You can run this list through apt-file or
   though all /var/lib/dpkg/info/*.list
   An easier alternative that's nearly the same is using dpkg-depcheck,
   it's slower in execution time, but easier and possibly more correct
   (as it catches stats too, although I doubt it would make a
   difference)
c) simply build the package, look at the generated shlibdeps, and deduct
   the -dev packages needed. Test that if you build your package only
   with those X lib packages installed, the same shlibs will result (I
   followed this strategy with one of my packages, and this way missed
   one library, because I didn't check carefully enough. So I ended up
   unintentionally disabling a feature in my program...
d) Tell Frank to not be so annoying, since the advantage (a bit less
   build-deps needed during build time, but no differences in the
   resulting .debs) does not outweight the possible issues you're
   introducing now or in the future by making a mistake here, nor the
   excessive amount of time it takes doing this right... ;-)


Thanks for maintaining this package btw, it's exactly as annoying as it
should be
--Jeroen

-- 
Jeroen van Wolffelaar
Jeroen@wolffelaar.nl (also for Jabber & MSN; ICQ: 33944357)
http://Jeroen.A-Eskwadraat.nl



Reply to: