[prev in list] [next in list] [prev in thread] [next in thread] 

List:       debian-devel
Subject:    Re: Not depending on shlibs because of plugins?
From:       Christoph Berg <myon () debian ! org>
Date:       2007-03-13 13:28:45
Message-ID: 20070313132845.GC5152 () df7cb ! de
[Download RAW message or body]

Re: Russ Allbery 2007-01-06 <873b6o3m0y.fsf@windlord.stanford.edu>
> This is what I'd do.  Yes, it's a bunch of extra packages, but it clearly
> expresses the actual dependency structure, rather than an approximation of
> it, and that's usually a good thing in the long run.

As a very late follow up, here's what the rules file would have looked
like, paired with ${db-*:Depends} fields in control:

[...]
binary binary-arch: install
	dh_installchangelogs -a ChangeLog
	dh_installdocs -a
	dh_movefiles -a
	# compute shlib deps for libyada
	dh_shlibdeps -a
	# move plugins in place and compute deps for them
	mv debian/tmp/usr/lib/libyada_*.so* debian/libyada4/usr/lib
	dpkg-shlibdeps -T"debian/libyada4.substvars" -pdb-postgres -edebian/libyada4/usr/lib/libyada_pgsql.so.4
	dpkg-shlibdeps -T"debian/libyada4.substvars" -pdb-mysql -edebian/libyada4/usr/lib/libyada_mysql.so.4
	dpkg-shlibdeps -T"debian/libyada4.substvars" -pdb-sqlite -edebian/libyada4/usr/lib/libyada_sqlite3.so.4
	# remove the libc dependency (already covered by dh_shlibdeps)
	perl -i -pe 's/libc\d \(>= [0-9.-]+\), // if /^db-/' debian/libyada4.substvars
	# make sure there's only one dep per plugin (otherwise A | B | C won't work)
	if egrep '^db-.*,' debian/libyada4.substvars ; then exit 1 ; fi
	dh_strip -a
	dh_compress -a
	dh_fixperms -a
	dh_makeshlibs -a
	dh_installdeb -a
	dh_gencontrol -a
	dh_md5sums -a
	dh_builddeb -a
[...]

I went the other way though, there's now separate packages for the sql
backend wrappers. (Which promptly triggered a "circular dependency
hell" bug report - #414691.)

Christoph
-- 
cb@df7cb.de | http://www.df7cb.de/

["signature.asc" (application/pgp-signature)]
-- 
To UNSUBSCRIBE, email to debian-devel-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic