--- /dev/null
+From 73f6f8ebff678a0847e6b197b574082cc285b528 Mon Sep 17 00:00:00 2001
+From: Thomas Klausner <tk@giga.or.at>
+Date: Sat, 25 Jul 2020 12:03:29 +0200
+Subject: [PATCH] Add FindGnuTLS.cmake from 3.17.3.
+
+Addresses #199
+
+[Retrieved from:
+https://github.com/nih-at/libzip/commit/73f6f8ebff678a0847e6b197b574082cc285b528]
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+---
+ cmake-compat/FindGnuTLS.cmake | 82 +++++++++++++++++++++++++++++++++++
+ 1 file changed, 82 insertions(+)
+ create mode 100644 cmake-compat/FindGnuTLS.cmake
+
+diff --git a/cmake-compat/FindGnuTLS.cmake b/cmake-compat/FindGnuTLS.cmake
+new file mode 100644
+index 00000000..819f0001
+--- /dev/null
++++ b/cmake-compat/FindGnuTLS.cmake
+@@ -0,0 +1,82 @@
++# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
++# file Copyright.txt or https://cmake.org/licensing for details.
++
++#[=======================================================================[.rst:
++FindGnuTLS
++----------
++
++Find the GNU Transport Layer Security library (gnutls)
++
++IMPORTED Targets
++^^^^^^^^^^^^^^^^
++
++This module defines :prop_tgt:`IMPORTED` target ``GnuTLS::GnuTLS``, if
++gnutls has been found.
++
++Result Variables
++^^^^^^^^^^^^^^^^
++
++``GNUTLS_FOUND``
++ System has gnutls
++``GNUTLS_INCLUDE_DIR``
++ The gnutls include directory
++``GNUTLS_LIBRARIES``
++ The libraries needed to use gnutls
++``GNUTLS_DEFINITIONS``
++ Compiler switches required for using gnutls
++``GNUTLS_VERSION``
++ version of gnutls.
++#]=======================================================================]
++
++# Note that this doesn't try to find the gnutls-extra package.
++
++
++if (GNUTLS_INCLUDE_DIR AND GNUTLS_LIBRARY)
++ # in cache already
++ set(gnutls_FIND_QUIETLY TRUE)
++endif ()
++
++if (NOT WIN32)
++ # try using pkg-config to get the directories and then use these values
++ # in the find_path() and find_library() calls
++ # also fills in GNUTLS_DEFINITIONS, although that isn't normally useful
++ find_package(PkgConfig QUIET)
++ PKG_CHECK_MODULES(PC_GNUTLS QUIET gnutls)
++ set(GNUTLS_DEFINITIONS ${PC_GNUTLS_CFLAGS_OTHER})
++ set(GNUTLS_VERSION ${PC_GNUTLS_VERSION})
++ # keep for backward compatibility
++ set(GNUTLS_VERSION_STRING ${PC_GNUTLS_VERSION})
++endif ()
++
++find_path(GNUTLS_INCLUDE_DIR gnutls/gnutls.h
++ HINTS
++ ${PC_GNUTLS_INCLUDEDIR}
++ ${PC_GNUTLS_INCLUDE_DIRS}
++ )
++
++find_library(GNUTLS_LIBRARY NAMES gnutls libgnutls
++ HINTS
++ ${PC_GNUTLS_LIBDIR}
++ ${PC_GNUTLS_LIBRARY_DIRS}
++ )
++
++mark_as_advanced(GNUTLS_INCLUDE_DIR GNUTLS_LIBRARY)
++
++include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake)
++FIND_PACKAGE_HANDLE_STANDARD_ARGS(GnuTLS
++ REQUIRED_VARS GNUTLS_LIBRARY GNUTLS_INCLUDE_DIR
++ VERSION_VAR GNUTLS_VERSION_STRING)
++
++if(GNUTLS_FOUND)
++ set(GNUTLS_LIBRARIES ${GNUTLS_LIBRARY})
++ set(GNUTLS_INCLUDE_DIRS ${GNUTLS_INCLUDE_DIR})
++
++ if(NOT TARGET GnuTLS::GnuTLS)
++ add_library(GnuTLS::GnuTLS UNKNOWN IMPORTED)
++ set_target_properties(GnuTLS::GnuTLS PROPERTIES
++ INTERFACE_INCLUDE_DIRECTORIES "${GNUTLS_INCLUDE_DIRS}"
++ INTERFACE_COMPILE_DEFINITIONS "${GNUTLS_DEFINITIONS}"
++ IMPORTED_LINK_INTERFACE_LANGUAGES "C"
++ IMPORTED_LOCATION "${GNUTLS_LIBRARIES}")
++ endif()
++endif()