guile-devel
[Top][All Lists]
Advanced

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

Allowing guile to open a lib satisfying a given interface.


From: Rob Browning
Subject: Allowing guile to open a lib satisfying a given interface.
Date: Tue, 04 Dec 2001 11:00:18 -0600
User-agent: Gnus/5.090004 (Oort Gnus v0.04) Emacs/21.1

I'm still haven't heard anything about how the libtool developers feel
about the issue, but since we really need some solution to this
problem, I'm wondering we might be able to implement our own
scm_lt_dlopen(char *name, unsigned int interface) for now as follows.

The current libltdl may or may not allow this, but here's what I was
considering:

  1) require that anyone creating a shared lib that's to be opened by
     guile in support of a guile module install a copy of the
     libfoo.la file as libfoo.la.X.Y.Z using the appropriate version
     numbers X, Y, and Z.

  2) write a function like scm_lt_dlopen("libfoo", 4) that will search
     in the same places that libltdl does for a libfoo.la.X.Y.Z that
     satisfies the interface number (i.e. "4") specified in the call
     to scm_lt_dlopen using the libtool version algorithm.  If such a
     .la file is found, then open it explicitly via
     lt_dlopen("/full/path/to/libfoo.la.X.Y.Z").

The main question is whether or not lt_dlopen really cares about the
actual name of the .la file.  If it doesn't, then we may be OK.

When I get a chance, I'll probably look at the source and perform some
tests, but this seems like it might solve our problems, and if it does
work, then perhaps some variation on this approach might be acceptable
to the libtool maintainers.

Thoughts?

-- 
Rob Browning
rlb @defaultvalue.org, @linuxdevel.com, and @debian.org
Previously @cs.utexas.edu
GPG=1C58 8B2C FB5E 3F64 EA5C  64AE 78FE E5FE F0CB A0AD



reply via email to

[Prev in Thread] Current Thread [Next in Thread]