On Mon, Dec 09, 2002 at 11:26:14AM +1100, Timshel Knoll <[EMAIL PROTECTED]> was heard to say: > 2. Make parted dlopen() libreiserfs-0.3.so.0 rather than libreiserfs.so. > This will solve the problem, but is not ideal solution since a minor > version upgrade or SONAME change of libreiserfs will break parted's > reiserfs support (note that parted does its own internal checking of > libreiserfs versions to make sure it is compatible, and gracefully > fails if it can't resolve all required symbols on dlopen()).
Could you explain in more detail why this is a bad thing? SONAME changes mean binary compatibility is broken -- even if you can resolve all symbols, I don't think blindly trying to call stuff in the library is a good idea. I especially don't want a program with questionable linkage to be mucking with my filesystems. > Also, the parted source code needs to be manually edited on every > minor or SONAME change of library. Hm, maybe you could run readlink on the development package's .so link at build time...would that work? Daniel > > 3. Include a symlink to the appropriate libreiserfs in the > libparted1.6-0 package "/lib/parted/modules/libreiserfs.so" and > dlopen that instead. This has the added advantage that the symbolic > link could be updated from libparted's postinst, and I could also > modify it from libreiserfs's postinst. However, I'd rather find a > solution that didn't require _any_ mention of parted in libreiserfs, > other than a Suggests:. Or am I just being a puritan here? > > ATM I'm leaning towards 2, or possibly 3. Any comments/queries/further > suggestions? > > Cheers, > > Timshel > > -- > Timshel Knoll <[EMAIL PROTECTED]>, Debian email: <[EMAIL PROTECTED]> > Debian GNU/Linux developer: http://people.debian.org/~timshel/ > GnuPG public key: finger [EMAIL PROTECTED] -- /-------------------- Daniel Burrows <[EMAIL PROTECTED]> -------------------\ | "Inconceivable!" | | -- "The Princess Bride" | \------- (if (not (understand-this)) (go-to http://www.schemers.org)) --------/