Subject: Re: bug#19346: 25.0.50; url-http-parse-headers: Symbol's function definition is void: gnutls-available-p

From: Eli Zaretskii <[email-masked]>
Date: Thu, 11 Dec 2014 23:03:57 +0200

> From: Ted Zlatanov <[email-masked]>
> Cc: [email-masked],  [email-masked],  [email-masked]
> Date: Thu, 11 Dec 2014 14:48:07 -0500
> 
> >> Your fix uses `fboundp'. Should we make `gnutls-available-p' always
> >> defined to return nil, to simplify this in the future?
> 
> EZ> Yes.  Otherwise, the function doesn't make sense, IMO.
> 
> OK.  Where should we put this

In gnutls.c, of course.

> and how does it get overridden when you load the GnuTLS library?

It doesn't.  It just changes the value it returns.

> As Stefan mentioned we'll need this for dynamic modules as well, so
> a generic solution would be greatly appreciated, if you have
> something in mind.

The generic solution is for the code that links to each module to
provide the function, and for the module to provide the value.

This is all part of the "protocol" between Emacs and the modules,
which includes a header file, an import library, and a bunch of
interfaces each module needs to implement.