all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: "Óscar Fuentes" <ofv@wanadoo.es>
To: emacs-devel@gnu.org
Subject: Re: GnuTLS for W32
Date: Wed, 04 Jan 2012 15:14:28 +0100	[thread overview]
Message-ID: <87fwfvsgfv.fsf@wanadoo.es> (raw)
In-Reply-To: E1RiRLg-0001lF-NX@fencepost.gnu.org

Eli Zaretskii <eliz@gnu.org> writes:

>> From: "Stephen J. Turnbull" <stephen@xemacs.org>
>> Cc: ofv@wanadoo.es,
>>     emacs-devel@gnu.org
>> Date: Wed, 04 Jan 2012 20:21:07 +0900
>> 
>> Eli Zaretskii writes:
>> 
>>  > For this reason, I think we should give Emacs users an option to put
>>  > the downloaded DLL in some directory that is not Emacs-specific, so
>>  > that other programs could use it.
>> 
>> Well, as you know I'm not a Windows person, but my understanding is
>> that one reason that DLL hell is called "DLL hell"
>
> An aside: the "DLL hell"s flames are much lower now than they used to
> be, see
>
>    http://en.wikipedia.org/wiki/Side-by-side_assembly

That requires an installer that follows MS guidelines. It's not as easy
as unzipping a file on a directory.

On the topic of how hard is to load a dll from an arbitrary location,
that is what I found on the Emacs sources:

/* The argument LIBRARIES is an alist that associates a symbol
   LIBRARY_ID, identifying an external DLL library known to Emacs, to
   a list of filenames under which the library is usually found.  In
   most cases, the argument passed as LIBRARIES is the variable
   `dynamic-library-alist', which is initialized to a list of common
   library names.  If the function loads the library successfully, it
   returns the handle of the DLL, and records the filename in the
   property :loaded-from of LIBRARY_ID; it returns NULL if the library
   could not be found, or when it was already loaded (because the
   handle is not recorded anywhere, and so is lost after use).  It
   would be trivial to save the handle too in :loaded-from, but
   currently there's no use case for it.  */
HMODULE
w32_delayed_load (Lisp_Object libraries, Lisp_Object library_id)
{
  HMODULE library_dll = NULL;

  CHECK_SYMBOL (library_id);

  if (CONSP (libraries) && NILP (Fassq (library_id, Vlibrary_cache)))
    {
      Lisp_Object found = Qnil;
      Lisp_Object dlls = Fassq (library_id, libraries);

      if (CONSP (dlls))
        for (dlls = XCDR (dlls); CONSP (dlls); dlls = XCDR (dlls))
          {
            CHECK_STRING_CAR (dlls);
            if ((library_dll = LoadLibrary (SDATA (XCAR (dlls)))))
              {
                found = XCAR (dlls);
                break;
              }
          }

      Fput (library_id, QCloaded_from, found);
    }

  return library_dll;
}


I think that Emacs is right now capable of loading a dll from an
arbitrary place. Just set dynamic-library-alist as it contains ('gnutls
. "/path/to/gnutls/gnutls.dll") (or whatever are the right names). In
any case, creating a new function that loads a .dll by name seems quite
straightforward, once we have seem how w32_delayed_load is implemented.

> FWIW, I didn't have a single problem for years on my XP boxes.  YMMV,
> of course.

On the last 5 years I the only occurrences of the dll hell I had were
related to Free software which uses naive installers. Cygwin, MSYS and
GnuWin32 does not get along very well, and even updating some of their
component may create havoc due to incompatibilities of the new dlls with
some of the old tools. The safe method is to update the whole lot.

Installing a dll intended to be used by Emacs on a shared place is
asking for trouble.

[snip]




  reply	other threads:[~2012-01-04 14:14 UTC|newest]

Thread overview: 243+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CAJU7zaKH0NTE7ko6u24gXy9WupsNw+CAvhMdVudzxpXvsY2vig@mail.gmail.com>
2011-12-31 13:46 ` gnutls for win32 Ted Zlatanov
2012-01-01 11:10   ` Nikos Mavrogiannopoulos
2012-01-01 11:50     ` Eli Zaretskii
2012-01-01 14:13       ` Ted Zlatanov
2012-01-01 16:10         ` Eli Zaretskii
2012-01-01 16:38           ` Ted Zlatanov
2012-01-01 17:05             ` Eli Zaretskii
2012-01-01 21:17               ` Ted Zlatanov
2012-01-01 21:28                 ` Juanma Barranquero
2012-01-01 21:40                 ` Eli Zaretskii
2012-01-01 23:54                   ` GnuTLS for W32 (was: gnutls for win32) Ted Zlatanov
2012-01-02  0:49                     ` Juanma Barranquero
2012-01-02  1:33                       ` GnuTLS for W32 Óscar Fuentes
2012-01-02  1:44                         ` Juanma Barranquero
2012-01-02  2:35                           ` Óscar Fuentes
2012-01-02  2:57                             ` Juanma Barranquero
2012-01-02  3:18                               ` Óscar Fuentes
2012-01-02  4:02                                 ` Juanma Barranquero
2012-01-02 16:16                                   ` Ted Zlatanov
2012-01-02 17:31                                     ` Juanma Barranquero
2012-01-02 17:39                                     ` Eli Zaretskii
2012-01-02 18:51                                       ` Lars Ingebrigtsen
2012-01-02 22:35                                       ` Ted Zlatanov
2012-01-03  0:48                                         ` Óscar Fuentes
2012-01-03  6:37                                           ` Eli Zaretskii
2012-01-03 14:07                                             ` Óscar Fuentes
2012-01-03 17:21                                               ` Eli Zaretskii
2012-01-03 17:48                                                 ` Óscar Fuentes
2012-01-03 18:14                                                   ` Eli Zaretskii
2012-01-03 18:34                                                     ` Óscar Fuentes
2012-01-03 19:38                                                       ` Eli Zaretskii
2012-01-03 19:48                                                         ` Óscar Fuentes
2012-01-03 20:09                                                           ` Eli Zaretskii
2012-01-03 20:25                                                             ` Óscar Fuentes
2012-01-04  6:48                                                             ` Chong Yidong
2012-01-04  8:15                                                               ` Eli Zaretskii
2012-01-04  3:45                                                           ` Stephen J. Turnbull
2012-01-04  5:21                                                             ` Eli Zaretskii
2012-01-04  7:03                                                               ` Stephen J. Turnbull
2012-01-04  8:21                                                                 ` Eli Zaretskii
2012-01-04 11:21                                                                   ` Stephen J. Turnbull
2012-01-04 11:33                                                                     ` Lars Magne Ingebrigtsen
2012-01-04 11:57                                                                       ` Lennart Borgman
2012-01-04 12:06                                                                         ` Lars Magne Ingebrigtsen
2012-01-04 12:37                                                                           ` David Engster
2012-01-04 18:42                                                                             ` Lennart Borgman
2012-01-04 18:19                                                                       ` Eli Zaretskii
2012-01-04 13:57                                                                     ` Eli Zaretskii
2012-01-04 14:14                                                                       ` Óscar Fuentes [this message]
2012-01-04 15:05                                                                         ` Juanma Barranquero
2012-01-04 15:42                                                                           ` Óscar Fuentes
2012-01-04 16:29                                                                             ` Ted Zlatanov
2012-01-04 17:00                                                                               ` Juanma Barranquero
2012-01-04 18:48                                                                                 ` Ted Zlatanov
2012-01-05  5:40                                                                                   ` joakim
2012-01-05 15:52                                                                                     ` Óscar Fuentes
2012-01-04 19:21                                                                               ` Óscar Fuentes
2012-01-04 19:45                                                                                 ` Juanma Barranquero
2012-01-04 23:00                                                                                   ` Óscar Fuentes
2012-01-05  0:18                                                                                     ` Juanma Barranquero
2012-01-05  2:00                                                                                       ` Óscar Fuentes
2012-01-05  2:36                                                                                         ` Juanma Barranquero
2012-01-05  6:45                                                                                         ` Eli Zaretskii
2012-01-05  6:41                                                                                     ` Eli Zaretskii
2012-01-05  7:04                                                                                       ` Daniel Colascione
2012-01-05 11:58                                                                                         ` Eli Zaretskii
2012-01-04 20:37                                                                                 ` Ted Zlatanov
2012-01-04 20:41                                                                                   ` Lars Magne Ingebrigtsen
2012-01-04 22:12                                                                                     ` Ted Zlatanov
2012-01-04 22:47                                                                                       ` chad
2012-01-04 23:16                                                                                         ` Ted Zlatanov
2012-01-05  5:36                                                                                           ` Eli Zaretskii
2012-01-05 13:50                                                                                             ` Ted Zlatanov
2012-01-05 14:14                                                                                               ` Eli Zaretskii
2012-01-05 14:50                                                                                               ` Juanma Barranquero
2012-01-05 16:19                                                                                                 ` chad
2012-01-05 20:30                                                                                                   ` Juanma Barranquero
2012-01-05 23:14                                                                                                     ` chad
2012-01-05 23:32                                                                                                       ` Juanma Barranquero
2012-01-05 23:58                                                                                                         ` Richard Riley
2012-01-06  0:05                                                                                                           ` Juanma Barranquero
2012-01-06  7:11                                                                                                           ` Eli Zaretskii
2012-01-06  0:09                                                                                                         ` Juanma Barranquero
2012-01-06  1:05                                                                                                           ` chad
2012-01-06  1:13                                                                                                             ` Juanma Barranquero
2012-01-06  1:24                                                                                                               ` Óscar Fuentes
2012-01-06  1:48                                                                                                                 ` Juanma Barranquero
2012-01-06  2:37                                                                                                                   ` Óscar Fuentes
2012-01-06  3:08                                                                                                                     ` Juanma Barranquero
2012-01-06  3:56                                                                                                                       ` Óscar Fuentes
2012-01-06  4:11                                                                                                                         ` Juanma Barranquero
2012-01-06  5:49                                                                                                                           ` chad
2012-01-06  7:12                                                                                                                             ` Eli Zaretskii
2012-01-06 12:35                                                                                                                               ` Juanma Barranquero
2012-01-07  2:34                                                                                                                                 ` Stephen J. Turnbull
2012-01-06 13:39                                                                                                                             ` Juanma Barranquero
2012-01-07  2:31                                                                                                                         ` Stephen J. Turnbull
2012-01-07  3:37                                                                                                                           ` Óscar Fuentes
2012-01-07  9:30                                                                                                                           ` Juanma Barranquero
2012-01-07 13:37                                                                                                                             ` Ted Zlatanov
2012-01-07 15:10                                                                                                                               ` Juanma Barranquero
2012-01-07  1:36                                                                                                     ` Stephen J. Turnbull
2012-01-07  1:46                                                                                                       ` Juanma Barranquero
2012-01-07  5:07                                                                                                         ` Stephen J. Turnbull
2012-01-07  1:23                                                                                                 ` Stephen J. Turnbull
2012-01-05 15:08                                                                                               ` joakim
2012-01-05 15:37                                                                                               ` Lars Ingebrigtsen
2012-01-05 17:52                                                                                                 ` Ted Zlatanov
2012-01-05 18:29                                                                                                   ` Lars Ingebrigtsen
2012-01-05 20:06                                                                                                     ` Ted Zlatanov
2012-01-06  3:15                                                                                                       ` Lars Magne Ingebrigtsen
2012-01-06  3:37                                                                                                         ` chad
2012-01-05 20:38                                                                                                     ` Juanma Barranquero
2012-01-05 20:36                                                                                                   ` Juanma Barranquero
2012-01-05 20:39                                                                                                     ` Richard Riley
2012-01-05 22:45                                                                                                       ` Juanma Barranquero
2012-01-05 22:35                                                                                                     ` Ted Zlatanov
2012-01-05 22:43                                                                                                       ` Juanma Barranquero
2012-01-05 23:28                                                                                                         ` Ted Zlatanov
2012-01-05 23:38                                                                                                           ` Juanma Barranquero
2012-01-05 23:55                                                                                                             ` Richard Riley
2012-01-05 23:59                                                                                                               ` Juanma Barranquero
2012-01-06  7:10                                                                                                               ` Eli Zaretskii
2012-01-07  2:03                                                                                                               ` Stephen J. Turnbull
2012-01-07  5:40                                                                                                                 ` Richard Riley
2012-01-07 13:35                                                                                                                   ` Ted Zlatanov
2012-01-07 14:51                                                                                                                     ` Richard Riley
2012-01-07 15:12                                                                                                                       ` Juanma Barranquero
2012-01-08 15:33                                                                                                                         ` Ted Zlatanov
2012-01-09  1:04                                                                                                                           ` Stefan Monnier
2012-01-09 14:26                                                                                                                             ` Ted Zlatanov
2012-01-09 14:26                                                                                                                           ` NaCl support for Emacs (was: GnuTLS for W32) Ted Zlatanov
2012-01-09 15:30                                                                                                                             ` NaCl support for Emacs Stefan Monnier
2012-01-09 16:43                                                                                                                               ` Carsten Mattner
2012-01-09 16:59                                                                                                                                 ` Ted Zlatanov
2012-01-09 17:48                                                                                                                                   ` Carsten Mattner
2012-01-09 18:17                                                                                                                                     ` Ted Zlatanov
2012-01-09 18:21                                                                                                                                       ` Carsten Mattner
2012-01-10  1:45                                                                                                                                         ` Ted Zlatanov
2012-01-09 16:53                                                                                                                               ` Ted Zlatanov
2012-01-09 22:23                                                                                                                                 ` Stefan Monnier
2012-01-10  1:06                                                                                                                                   ` Ted Zlatanov
2012-01-10  1:30                                                                                                                                     ` Stefan Monnier
2012-01-10  1:43                                                                                                                                       ` Ted Zlatanov
2012-01-10  1:54                                                                                                                                         ` Richard Riley
2012-01-10  2:34                                                                                                                                           ` libnettle for Emacs (was: NaCl support for Emacs) Ted Zlatanov
2012-01-10  2:43                                                                                                                                             ` libnettle for Emacs Richard Riley
2012-01-10  3:01                                                                                                                                         ` NaCl support " Daniel Colascione
2012-01-10 11:45                                                                                                                                           ` Ted Zlatanov
2012-01-10 12:51                                                                                                                                             ` Ted Zlatanov
2012-01-10  3:21                                                                                                                                         ` Stefan Monnier
2012-01-10 11:54                                                                                                                                           ` Ted Zlatanov
2012-01-10 12:51                                                                                                                                             ` Carsten Mattner
2012-01-10 13:49                                                                                                                                               ` Ted Zlatanov
2012-01-10 16:01                                                                                                                                                 ` Carsten Mattner
2012-01-10 20:01                                                                                                                                                 ` Stefan Monnier
2012-01-09 20:48                                                                                                                               ` joakim
2012-01-09 17:09                                                                                                                             ` NaCl support for Emacs (was: GnuTLS for W32) Eli Zaretskii
2012-01-09 17:26                                                                                                                               ` NaCl support for Emacs Ted Zlatanov
2012-01-09 17:29                                                                                                                               ` NaCl support for Emacs (was: GnuTLS for W32) Eli Zaretskii
2012-01-10  0:57                                                                                                                               ` NaCl support for Emacs Lars Magne Ingebrigtsen
2012-01-10 10:01                                                                                                                             ` NaCl support for Emacs (was: GnuTLS for W32) Eli Zaretskii
2012-01-10 10:46                                                                                                                               ` Carsten Mattner
2012-01-11  5:09                                                                                                                                 ` Stephen J. Turnbull
2012-01-11 10:42                                                                                                                                   ` Carsten Mattner
2012-01-11 12:26                                                                                                                                     ` Stephen J. Turnbull
2012-01-11 12:49                                                                                                                                       ` NaCl support for Emacs Harald Hanche-Olsen
2012-01-11 12:59                                                                                                                                         ` Carsten Mattner
2012-01-11 15:47                                                                                                                                         ` Stephen J. Turnbull
2012-01-11 15:58                                                                                                                                           ` Carsten Mattner
2012-01-11 16:33                                                                                                                                             ` Stephen J. Turnbull
2012-01-11 14:07                                                                                                                                     ` Stefan Monnier
2012-01-11 14:23                                                                                                                                       ` Carsten Mattner
2012-01-11 16:04                                                                                                                                       ` Stephen J. Turnbull
2012-01-11 19:40                                                                                                                                   ` NaCl support for Emacs (was: GnuTLS for W32) Richard Stallman
2012-01-08  7:40                                                                                                                   ` GnuTLS for W32 Stephen J. Turnbull
2012-01-08  8:34                                                                                                                     ` Eli Zaretskii
2012-01-06  0:43                                                                                                             ` Ted Zlatanov
2012-01-06  0:59                                                                                                               ` Juanma Barranquero
2012-01-06 14:08                                                                                                                 ` Ted Zlatanov
2012-01-06 14:35                                                                                                                   ` Juanma Barranquero
2012-01-06 15:26                                                                                                                     ` Ted Zlatanov
2012-01-06 15:47                                                                                                                       ` Juanma Barranquero
2012-01-06 16:50                                                                                                                         ` Ted Zlatanov
2012-01-07 10:24                                                                                                                           ` Chong Yidong
2012-01-07 13:14                                                                                                                             ` Juanma Barranquero
2012-01-07 13:28                                                                                                                             ` Ted Zlatanov
2012-01-07 21:03                                                                                                                     ` Reiner Steib
2012-01-05  5:24                                                                                       ` Eli Zaretskii
2012-01-04 21:23                                                                                 ` Eli Zaretskii
2012-01-04 22:34                                                                                   ` Óscar Fuentes
2012-01-05  6:34                                                                                     ` Eli Zaretskii
2012-01-05 15:17                                                                                       ` Óscar Fuentes
2012-01-05 18:11                                                                                         ` Eli Zaretskii
2012-01-04 18:10                                                                             ` Eli Zaretskii
2012-01-04 19:42                                                                               ` Óscar Fuentes
2012-01-04 21:31                                                                                 ` Eli Zaretskii
2012-01-04 15:15                                                                         ` Juanma Barranquero
2012-01-04 18:09                                                                         ` Eli Zaretskii
2012-01-04 19:39                                                                           ` Óscar Fuentes
2012-01-04 21:30                                                                             ` Eli Zaretskii
2012-01-04 23:18                                                                               ` Óscar Fuentes
2012-01-05  6:44                                                                                 ` Eli Zaretskii
2012-01-03  7:14                                         ` Eli Zaretskii
2012-01-03 13:06                                           ` Ted Zlatanov
2012-01-03 13:37                                             ` Juanma Barranquero
2012-01-03 14:02                                             ` Eli Zaretskii
2012-01-03 15:00                                               ` Ted Zlatanov
2012-01-03 15:05                                                 ` Juanma Barranquero
2012-01-03 17:29                                                 ` Eli Zaretskii
2012-01-03 18:10                                                   ` Óscar Fuentes
2012-01-03  7:48                                         ` Eli Zaretskii
2012-01-03 13:09                                           ` Ted Zlatanov
2012-01-03 17:06                                             ` Eli Zaretskii
2012-01-04 11:02                                               ` Ted Zlatanov
2012-01-04 12:26                                                 ` joakim
2012-01-04 14:22                                                 ` Óscar Fuentes
2012-01-04 18:03                                                   ` Eli Zaretskii
2012-01-03 14:14                                       ` Jason Rumney
2012-01-02 17:54                                     ` Eli Zaretskii
2012-01-02  8:48                             ` Eli Zaretskii
2012-01-02 10:42                               ` Andreas Schwab
2012-01-02 11:20                                 ` Eli Zaretskii
2012-01-02 12:26                               ` Lars Magne Ingebrigtsen
2012-01-02 12:41                                 ` Eli Zaretskii
2012-01-02 14:03                                   ` Andreas Schwab
2012-01-02 17:34                                     ` Eli Zaretskii
2012-01-02  8:47                     ` GnuTLS for W32 (was: gnutls for win32) Eli Zaretskii
2012-01-02  9:47                       ` GnuTLS for W32 Jason Rumney
2012-01-03 19:51                       ` Lars Magne Ingebrigtsen
2012-01-01 22:32       ` gnutls for lose32 Richard Stallman
2012-01-02  6:55         ` Paul Eggert
2012-01-02 10:46           ` Carsten Mattner
2012-01-02 11:51             ` Juanma Barranquero
2012-01-02 13:09               ` Carsten Mattner
2012-01-02 13:15                 ` Juanma Barranquero
2012-01-02 13:28                 ` Juanma Barranquero
2012-01-02 19:05                   ` Drew Adams
2012-01-02 16:17                 ` Ted Zlatanov
2012-01-02 22:52                 ` Richard Stallman
2012-01-02 19:05               ` Drew Adams
2012-01-02 12:17             ` Paul Eggert
2012-01-02 13:06               ` Carsten Mattner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87fwfvsgfv.fsf@wanadoo.es \
    --to=ofv@wanadoo.es \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.