A problem that have been (I believe) ignored for a long time is how to
handle namespace when using gnulib in project that provides static
libraries.  Here is an example of where this causes problems:

http://lists.gnu.org/archive/html/bug-wget/2010-07/msg00010.html
http://thread.gmane.org/gmane.comp.web.wget.general/9539

In this case, GnuTLS uses the read-file module from gnulib, and it ends
up being exported in a static GnuTLS library.  GNU Wget also has a
function called read_file, and things break when linking.

Should `gnulib-tool --import' create AC_DEFINE's to map each global
gnulib function symbol into some application provided namespace?
E.g. `gnulib-tool --import --symbol-prefix _gnutls'?  This would then
create something like this:

AC_DEFINE([read_file], [__gnutls_read_file])

Maintaining the list of global gnulib functions will be a hassle
though.  Could this be automated?

Are there better solutions?

I have some vague memory that this has been discussed before (I may even
have brought it up) but I can't find anything in the gnulib
documentation around this, so I'm guessing it has not been resolved.
But I am hoping that I'm wrong. :-)

/Simon

Reply via email to