emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] master dc79845: Support GnuTLS v3.4 and later on MS-Window


From: Eli Zaretskii
Subject: [Emacs-diffs] master dc79845: Support GnuTLS v3.4 and later on MS-Windows
Date: Sat, 11 Apr 2015 15:08:11 +0000

branch: master
commit dc79845aac339db1cdcbbfc48d8f1569ed9a5aa2
Author: Chris Zheng <address@hidden>
Commit: Eli Zaretskii <address@hidden>

    Support GnuTLS v3.4 and later on MS-Windows
    
    * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
    * lisp/term/w32-win.el (dynamic-library-alist): Determine which
    GnuTLS DLL to load according to value of libgnutls-version.
    
    Fixes: bug#20294
    
    Copyright-paperwork-exempt: yes
---
 lisp/term/w32-win.el |    6 +++++-
 src/gnutls.c         |   10 ++++++++++
 2 files changed, 15 insertions(+), 1 deletions(-)

diff --git a/lisp/term/w32-win.el b/lisp/term/w32-win.el
index b5e6ff3..b0667e6 100644
--- a/lisp/term/w32-win.el
+++ b/lisp/term/w32-win.el
@@ -214,6 +214,8 @@ See the documentation of `create-fontset-from-fontset-spec' 
for the format.")
 (defvar libgif-version)
 (defvar libjpeg-version)
 
+(defvar libgnutls-version)              ; gnutls.c
+
 ;;; Set default known names for external libraries
 (setq dynamic-library-alist
       (list
@@ -266,7 +268,9 @@ See the documentation of `create-fontset-from-fontset-spec' 
for the format.")
        '(gdk-pixbuf "libgdk_pixbuf-2.0-0.dll")
        '(glib "libglib-2.0-0.dll")
        '(gobject "libgobject-2.0-0.dll")
-       '(gnutls "libgnutls-28.dll" "libgnutls-26.dll")
+       (if (>= libgnutls-version 30400)
+          '(gnutls "libgnutls-30.dll")
+        '(gnutls "libgnutls-28.dll" "libgnutls-26.dll"))
        '(libxml2 "libxml2-2.dll" "libxml2.dll")
        '(zlib "zlib1.dll" "libz-1.dll")))
 
diff --git a/src/gnutls.c b/src/gnutls.c
index 35f0eb4..ddd36a9 100644
--- a/src/gnutls.c
+++ b/src/gnutls.c
@@ -1645,6 +1645,16 @@ DEFUN ("gnutls-available-p", Fgnutls_available_p, 
Sgnutls_available_p, 0, 0, 0,
 void
 syms_of_gnutls (void)
 {
+  DEFSYM (Qlibgnutls_version, "libgnutls-version");
+  Fset (Qlibgnutls_version,
+#ifdef HAVE_GNUTLS
+       make_number (GNUTLS_VERSION_MAJOR * 10000
+                    + GNUTLS_VERSION_MINOR * 100
+                    + GNUTLS_VERSION_PATCH)
+#else
+       make_number (-1)
+#endif
+        );
 #ifdef HAVE_GNUTLS
   gnutls_global_initialized = 0;
 



reply via email to

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