diff --git a/src/gnutls-1-fixes.patch b/src/gnutls-1-fixes.patch index 957194bc..e12dfc97 100644 --- a/src/gnutls-1-fixes.patch +++ b/src/gnutls-1-fixes.patch @@ -5,7 +5,7 @@ Contains ad hoc patches for cross building. From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Mark Brand Date: Mon, 4 Feb 2013 16:11:12 +0100 -Subject: [PATCH 1/5] add missing private lib to pc file +Subject: [PATCH 1/4] add missing private lib to pc file diff --git a/lib/gnutls.pc.in b/lib/gnutls.pc.in @@ -13,18 +13,18 @@ index 1111111..2222222 100644 --- a/lib/gnutls.pc.in +++ b/lib/gnutls.pc.in @@ -19,6 +19,6 @@ Description: Transport Security Layer implementation for the GNU system - URL: http://www.gnutls.org/ + URL: https://www.gnutls.org/ Version: @VERSION@ Libs: -L${libdir} -lgnutls --Libs.private: @LIBINTL@ @LIBSOCKET@ @LIBNSL@ @LIBPTHREAD@ @LIB_SELECT@ @TSS_LIBS@ @GMP_LIBS@ @LIBUNISTRING@ @LIBIDN2_LIBS@ @LIBATOMIC_LIBS@ -+Libs.private: @LIBINTL@ @LIBSOCKET@ @LIBNSL@ @LIBPTHREAD@ @LIB_SELECT@ @TSS_LIBS@ @GMP_LIBS@ @LIBUNISTRING@ @LIBIDN2_LIBS@ @LIBATOMIC_LIBS@ -lcrypt32 +-Libs.private: @LIBINTL@ @LIBSOCKET@ @INET_PTON_LIB@ @LIBPTHREAD@ @LIB_SELECT@ @TSS_LIBS@ @GMP_LIBS@ @LIBUNISTRING@ @LIBIDN2_LIBS@ @LIBATOMIC_LIBS@ ++Libs.private: @LIBINTL@ @LIBSOCKET@ @INET_PTON_LIB@ @LIBPTHREAD@ @LIB_SELECT@ @TSS_LIBS@ @GMP_LIBS@ @LIBUNISTRING@ @LIBIDN2_LIBS@ @LIBATOMIC_LIBS@ -lcrypt32 @GNUTLS_REQUIRES_PRIVATE@ Cflags: -I${includedir} From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Mark Brand Date: Mon, 24 Nov 2014 08:56:48 +0100 -Subject: [PATCH 2/5] windows build fix: ws2tcpip.h supplies inet_ntop +Subject: [PATCH 2/4] windows build fix: ws2tcpip.h supplies inet_ntop Follow-up to 492c2b937ab66134d0b37499a6f3a747e19bc31a @@ -36,35 +36,36 @@ diff --git a/lib/x509/ip.c b/lib/x509/ip.c index 1111111..2222222 100644 --- a/lib/x509/ip.c +++ b/lib/x509/ip.c -@@ -26,7 +26,11 @@ +@@ -24,7 +24,11 @@ + #include "gnutls_int.h" + #include "ip.h" #include - - #ifdef HAVE_INET_NTOP --# include -+# ifdef _WIN32 -+# include -+# else -+# include -+# endif - #endif +-#include ++#ifdef _WIN32 ++# include ++#else ++# include ++#endif /*- + * _gnutls_mask_to_prefix: From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Mark Brand Date: Sun, 7 May 2017 20:17:13 +0200 -Subject: [PATCH 3/5] let gnutls configure detect libidn2 +Subject: [PATCH 3/4] let gnutls configure detect libidn2 diff --git a/configure.ac b/configure.ac index 1111111..2222222 100644 --- a/configure.ac +++ b/configure.ac -@@ -509,24 +509,19 @@ idna_support=no +@@ -511,26 +511,19 @@ idna_support=no with_libidn2=no if test "$try_libidn2" = yes;then -- AC_SEARCH_LIBS(idn2_lookup_u8, idn2, [ +- save_LIBS=$LIBS +- AC_SEARCH_LIBS(idn2_lookup_u8, idn2, [ - with_libidn2=yes; - idna_support="IDNA 2008 (libidn2)" - AC_DEFINE([HAVE_LIBIDN2], 1, [Define if IDNA 2008 support is enabled.]) @@ -80,8 +81,9 @@ index 1111111..2222222 100644 - with_libidn2=no; - AC_MSG_WARN(*** LIBIDN2 was not found. You will not be able to use IDN2008 support) - ]) +- LIBS=$save_LIBS -else -- with_libidn2=no +- with_libidn2=no + PKG_CHECK_MODULES(LIBIDN2, libidn2, [with_libidn2=yes], [with_libidn2=no]) + if test "$with_libidn2" != "no";then + idna_support="IDNA 2008 (libidn2)" @@ -103,25 +105,25 @@ index 1111111..2222222 100644 --- a/lib/gnutls.pc.in +++ b/lib/gnutls.pc.in @@ -19,6 +19,6 @@ Description: Transport Security Layer implementation for the GNU system - URL: http://www.gnutls.org/ + URL: https://www.gnutls.org/ Version: @VERSION@ Libs: -L${libdir} -lgnutls --Libs.private: @LIBINTL@ @LIBSOCKET@ @LIBNSL@ @LIBPTHREAD@ @LIB_SELECT@ @TSS_LIBS@ @GMP_LIBS@ @LIBUNISTRING@ @LIBIDN2_LIBS@ @LIBATOMIC_LIBS@ -lcrypt32 -+Libs.private: @LIBINTL@ @LIBSOCKET@ @LIBNSL@ @LIBPTHREAD@ @LIB_SELECT@ @TSS_LIBS@ @GMP_LIBS@ @LIBUNISTRING@ @LIBATOMIC_LIBS@ -lcrypt32 +-Libs.private: @LIBINTL@ @LIBSOCKET@ @INET_PTON_LIB@ @LIBPTHREAD@ @LIB_SELECT@ @TSS_LIBS@ @GMP_LIBS@ @LIBUNISTRING@ @LIBIDN2_LIBS@ @LIBATOMIC_LIBS@ -lcrypt32 ++Libs.private: @LIBINTL@ @LIBSOCKET@ @INET_PTON_LIB@ @LIBPTHREAD@ @LIB_SELECT@ @TSS_LIBS@ @GMP_LIBS@ @LIBUNISTRING@ @LIBATOMIC_LIBS@ -lcrypt32 @GNUTLS_REQUIRES_PRIVATE@ Cflags: -I${includedir} From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Mark Brand Date: Thu, 6 Dec 2018 10:36:30 +0100 -Subject: [PATCH 4/5] remove docs from configure.ac: avoid GTK_DOC dependencies +Subject: [PATCH 4/4] remove docs from configure.ac: avoid GTK_DOC dependencies diff --git a/configure.ac b/configure.ac index 1111111..2222222 100644 --- a/configure.ac +++ b/configure.ac -@@ -947,18 +947,6 @@ AC_SUBST([YEAR], $YEAR) +@@ -946,17 +946,6 @@ AC_SUBST([YEAR], $YEAR) AC_CONFIG_FILES([guile/pre-inst-guile], [chmod +x guile/pre-inst-guile]) AC_CONFIG_FILES([ Makefile @@ -129,7 +131,6 @@ index 1111111..2222222 100644 - doc/credentials/Makefile - doc/credentials/srp/Makefile - doc/credentials/x509/Makefile -- doc/cyclo/Makefile - doc/doxygen/Doxyfile - doc/examples/Makefile - doc/latex/Makefile @@ -140,715 +141,3 @@ index 1111111..2222222 100644 extra/Makefile extra/includes/Makefile libdane/Makefile - -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Tim=20R=C3=BChsen?= -Date: Tue, 5 Feb 2019 11:01:20 +0100 -Subject: [PATCH 5/5] Update ax_code_coverage.m4 to latest release of - autoconf-archive - -taken from https://gitlab.com/gnutls/gnutls/merge_requests/905 - -diff --git a/Makefile.am b/Makefile.am -index 1111111..2222222 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -149,7 +149,9 @@ symbol-check: - fi - rm -f symbols.last.tmp symbols.diff.tmp - --@CODE_COVERAGE_RULES@ -+include $(top_srcdir)/aminclude_static.am -+clean-local: code-coverage-clean -+distclean-local: code-coverage-dist-clean - - local-code-coverage-output: code-coverage-capture - cat GnuTLS-$(VERSION)-coverage/index.html|grep headerCovTableEntry|grep '%'|head -1|sed 's/^.*>\([0-9]\+\.[0-9]\+\s*%\)<.*$$/ coverage lines: \1/' || true -diff --git a/configure.ac b/configure.ac -index 1111111..2222222 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -60,6 +60,7 @@ if test "$ac_cv_prog_cc_c99" = "no"; then - fi - - AX_CODE_COVERAGE -+ - AM_MAINTAINER_MODE([enable]) - - AC_ARG_ENABLE(bash-tests, -diff --git a/m4/ax_ac_append_to_file.m4 b/m4/ax_ac_append_to_file.m4 -new file mode 100644 -index 0000000..242b3d5 ---- /dev/null -+++ b/m4/ax_ac_append_to_file.m4 -@@ -0,0 +1,32 @@ -+# =========================================================================== -+# https://www.gnu.org/software/autoconf-archive/ax_ac_append_to_file.html -+# =========================================================================== -+# -+# SYNOPSIS -+# -+# AX_AC_APPEND_TO_FILE([FILE],[DATA]) -+# -+# DESCRIPTION -+# -+# Appends the specified data to the specified Autoconf is run. If you want -+# to append to a file when configure is run use AX_APPEND_TO_FILE instead. -+# -+# LICENSE -+# -+# Copyright (c) 2009 Allan Caffee -+# -+# Copying and distribution of this file, with or without modification, are -+# permitted in any medium without royalty provided the copyright notice -+# and this notice are preserved. This file is offered as-is, without any -+# warranty. -+ -+#serial 10 -+ -+AC_DEFUN([AX_AC_APPEND_TO_FILE],[ -+AC_REQUIRE([AX_FILE_ESCAPES]) -+m4_esyscmd( -+AX_FILE_ESCAPES -+[ -+printf "%s" "$2" >> "$1" -+]) -+]) -diff --git a/m4/ax_ac_print_to_file.m4 b/m4/ax_ac_print_to_file.m4 -new file mode 100644 -index 0000000..642dfc1 ---- /dev/null -+++ b/m4/ax_ac_print_to_file.m4 -@@ -0,0 +1,32 @@ -+# =========================================================================== -+# https://www.gnu.org/software/autoconf-archive/ax_ac_print_to_file.html -+# =========================================================================== -+# -+# SYNOPSIS -+# -+# AX_AC_PRINT_TO_FILE([FILE],[DATA]) -+# -+# DESCRIPTION -+# -+# Writes the specified data to the specified file when Autoconf is run. If -+# you want to print to a file when configure is run use AX_PRINT_TO_FILE -+# instead. -+# -+# LICENSE -+# -+# Copyright (c) 2009 Allan Caffee -+# -+# Copying and distribution of this file, with or without modification, are -+# permitted in any medium without royalty provided the copyright notice -+# and this notice are preserved. This file is offered as-is, without any -+# warranty. -+ -+#serial 10 -+ -+AC_DEFUN([AX_AC_PRINT_TO_FILE],[ -+m4_esyscmd( -+AC_REQUIRE([AX_FILE_ESCAPES]) -+[ -+printf "%s" "$2" > "$1" -+]) -+]) -diff --git a/m4/ax_add_am_macro_static.m4 b/m4/ax_add_am_macro_static.m4 -new file mode 100644 -index 0000000..6442d24 ---- /dev/null -+++ b/m4/ax_add_am_macro_static.m4 -@@ -0,0 +1,28 @@ -+# =========================================================================== -+# https://www.gnu.org/software/autoconf-archive/ax_add_am_macro_static.html -+# =========================================================================== -+# -+# SYNOPSIS -+# -+# AX_ADD_AM_MACRO_STATIC([RULE]) -+# -+# DESCRIPTION -+# -+# Adds the specified rule to $AMINCLUDE. -+# -+# LICENSE -+# -+# Copyright (c) 2009 Tom Howard -+# Copyright (c) 2009 Allan Caffee -+# -+# Copying and distribution of this file, with or without modification, are -+# permitted in any medium without royalty provided the copyright notice -+# and this notice are preserved. This file is offered as-is, without any -+# warranty. -+ -+#serial 8 -+ -+AC_DEFUN([AX_ADD_AM_MACRO_STATIC],[ -+ AC_REQUIRE([AX_AM_MACROS_STATIC]) -+ AX_AC_APPEND_TO_FILE(AMINCLUDE_STATIC,[$1]) -+]) -diff --git a/m4/ax_am_macros_static.m4 b/m4/ax_am_macros_static.m4 -new file mode 100644 -index 0000000..f4cee8c ---- /dev/null -+++ b/m4/ax_am_macros_static.m4 -@@ -0,0 +1,38 @@ -+# =========================================================================== -+# https://www.gnu.org/software/autoconf-archive/ax_am_macros_static.html -+# =========================================================================== -+# -+# SYNOPSIS -+# -+# AX_AM_MACROS_STATIC -+# -+# DESCRIPTION -+# -+# Adds support for macros that create Automake rules. You must manually -+# add the following line -+# -+# include $(top_srcdir)/aminclude_static.am -+# -+# to your Makefile.am files. -+# -+# LICENSE -+# -+# Copyright (c) 2009 Tom Howard -+# Copyright (c) 2009 Allan Caffee -+# -+# Copying and distribution of this file, with or without modification, are -+# permitted in any medium without royalty provided the copyright notice -+# and this notice are preserved. This file is offered as-is, without any -+# warranty. -+ -+#serial 11 -+ -+AC_DEFUN([AMINCLUDE_STATIC],[aminclude_static.am]) -+ -+AC_DEFUN([AX_AM_MACROS_STATIC], -+[ -+AX_AC_PRINT_TO_FILE(AMINCLUDE_STATIC,[ -+# ]AMINCLUDE_STATIC[ generated automatically by Autoconf -+# from AX_AM_MACROS_STATIC on ]m4_esyscmd([LC_ALL=C date])[ -+]) -+]) -diff --git a/m4/ax_check_gnu_make.m4 b/m4/ax_check_gnu_make.m4 -new file mode 100644 -index 0000000..6811043 ---- /dev/null -+++ b/m4/ax_check_gnu_make.m4 -@@ -0,0 +1,95 @@ -+# =========================================================================== -+# https://www.gnu.org/software/autoconf-archive/ax_check_gnu_make.html -+# =========================================================================== -+# -+# SYNOPSIS -+# -+# AX_CHECK_GNU_MAKE([run-if-true],[run-if-false]) -+# -+# DESCRIPTION -+# -+# This macro searches for a GNU version of make. If a match is found: -+# -+# * The makefile variable `ifGNUmake' is set to the empty string, otherwise -+# it is set to "#". This is useful for including a special features in a -+# Makefile, which cannot be handled by other versions of make. -+# * The makefile variable `ifnGNUmake' is set to #, otherwise -+# it is set to the empty string. This is useful for including a special -+# features in a Makefile, which can be handled -+# by other versions of make or to specify else like clause. -+# * The variable `_cv_gnu_make_command` is set to the command to invoke -+# GNU make if it exists, the empty string otherwise. -+# * The variable `ax_cv_gnu_make_command` is set to the command to invoke -+# GNU make by copying `_cv_gnu_make_command`, otherwise it is unset. -+# * If GNU Make is found, its version is extracted from the output of -+# `make --version` as the last field of a record of space-separated -+# columns and saved into the variable `ax_check_gnu_make_version`. -+# * Additionally if GNU Make is found, run shell code run-if-true -+# else run shell code run-if-false. -+# -+# Here is an example of its use: -+# -+# Makefile.in might contain: -+# -+# # A failsafe way of putting a dependency rule into a makefile -+# $(DEPEND): -+# $(CC) -MM $(srcdir)/*.c > $(DEPEND) -+# -+# @ifGNUmake@ ifeq ($(DEPEND),$(wildcard $(DEPEND))) -+# @ifGNUmake@ include $(DEPEND) -+# @ifGNUmake@ else -+# fallback code -+# @ifGNUmake@ endif -+# -+# Then configure.in would normally contain: -+# -+# AX_CHECK_GNU_MAKE() -+# AC_OUTPUT(Makefile) -+# -+# Then perhaps to cause gnu make to override any other make, we could do -+# something like this (note that GNU make always looks for GNUmakefile -+# first): -+# -+# if ! test x$_cv_gnu_make_command = x ; then -+# mv Makefile GNUmakefile -+# echo .DEFAULT: > Makefile ; -+# echo \ $_cv_gnu_make_command \$@ >> Makefile; -+# fi -+# -+# Then, if any (well almost any) other make is called, and GNU make also -+# exists, then the other make wraps the GNU make. -+# -+# LICENSE -+# -+# Copyright (c) 2008 John Darrington -+# Copyright (c) 2015 Enrico M. Crisostomo -+# -+# Copying and distribution of this file, with or without modification, are -+# permitted in any medium without royalty provided the copyright notice -+# and this notice are preserved. This file is offered as-is, without any -+# warranty. -+ -+#serial 11 -+ -+AC_DEFUN([AX_CHECK_GNU_MAKE],dnl -+ [AC_PROG_AWK -+ AC_CACHE_CHECK([for GNU make],[_cv_gnu_make_command],[dnl -+ _cv_gnu_make_command="" ; -+dnl Search all the common names for GNU make -+ for a in "$MAKE" make gmake gnumake ; do -+ if test -z "$a" ; then continue ; fi ; -+ if "$a" --version 2> /dev/null | grep GNU 2>&1 > /dev/null ; then -+ _cv_gnu_make_command=$a ; -+ AX_CHECK_GNU_MAKE_HEADLINE=$("$a" --version 2> /dev/null | grep "GNU Make") -+ ax_check_gnu_make_version=$(echo ${AX_CHECK_GNU_MAKE_HEADLINE} | ${AWK} -F " " '{ print $(NF); }') -+ break ; -+ fi -+ done ;]) -+dnl If there was a GNU version, then set @ifGNUmake@ to the empty string, '#' otherwise -+ AS_VAR_IF([_cv_gnu_make_command], [""], [AS_VAR_SET([ifGNUmake], ["#"])], [AS_VAR_SET([ifGNUmake], [""])]) -+ AS_VAR_IF([_cv_gnu_make_command], [""], [AS_VAR_SET([ifnGNUmake], [""])], [AS_VAR_SET([ifGNUmake], ["#"])]) -+ AS_VAR_IF([_cv_gnu_make_command], [""], [AS_UNSET(ax_cv_gnu_make_command)], [AS_VAR_SET([ax_cv_gnu_make_command], [${_cv_gnu_make_command}])]) -+ AS_VAR_IF([_cv_gnu_make_command], [""],[$2],[$1]) -+ AC_SUBST([ifGNUmake]) -+ AC_SUBST([ifnGNUmake]) -+]) -diff --git a/m4/ax_code_coverage.m4 b/m4/ax_code_coverage.m4 -index 1111111..2222222 100644 ---- a/m4/ax_code_coverage.m4 -+++ b/m4/ax_code_coverage.m4 -@@ -12,11 +12,11 @@ - # CODE_COVERAGE_CXXFLAGS and CODE_COVERAGE_LIBS which should be included - # in the CPPFLAGS, CFLAGS CXXFLAGS and LIBS/LIBADD variables of every - # build target (program or library) which should be built with code --# coverage support. Also defines CODE_COVERAGE_RULES which should be --# substituted in your Makefile; and $enable_code_coverage which can be --# used in subsequent configure output. CODE_COVERAGE_ENABLED is defined --# and substituted, and corresponds to the value of the --# --enable-code-coverage option, which defaults to being disabled. -+# coverage support. Also add rules using AX_ADD_AM_MACRO_STATIC; and -+# $enable_code_coverage which can be used in subsequent configure output. -+# CODE_COVERAGE_ENABLED is defined and substituted, and corresponds to the -+# value of the --enable-code-coverage option, which defaults to being -+# disabled. - # - # Test also for gcov program and create GCOV variable that could be - # substituted. -@@ -32,25 +32,24 @@ - # - # Makefile.am: - # --# @CODE_COVERAGE_RULES@ -+# include $(top_srcdir)/aminclude_static.am -+# - # my_program_LIBS = ... $(CODE_COVERAGE_LIBS) ... - # my_program_CPPFLAGS = ... $(CODE_COVERAGE_CPPFLAGS) ... - # my_program_CFLAGS = ... $(CODE_COVERAGE_CFLAGS) ... - # my_program_CXXFLAGS = ... $(CODE_COVERAGE_CXXFLAGS) ... - # --# This results in a "check-code-coverage" rule being added to any --# Makefile.am which includes "@CODE_COVERAGE_RULES@" (assuming the module --# has been configured with --enable-code-coverage). Running `make --# check-code-coverage` in that directory will run the module's test suite --# (`make check`) and build a code coverage report detailing the code which --# was touched, then print the URI for the report. -+# clean-local: code-coverage-clean -+# distclean-local: code-coverage-dist-clean - # --# In earlier versions of this macro, CODE_COVERAGE_LDFLAGS was defined --# instead of CODE_COVERAGE_LIBS. They are both still defined, but use of --# CODE_COVERAGE_LIBS is preferred for clarity; CODE_COVERAGE_LDFLAGS is --# deprecated. They have the same value. -+# This results in a "check-code-coverage" rule being added to any -+# Makefile.am which do "include $(top_srcdir)/aminclude_static.am" -+# (assuming the module has been configured with --enable-code-coverage). -+# Running `make check-code-coverage` in that directory will run the -+# module's test suite (`make check`) and build a code coverage report -+# detailing the code which was touched, then print the URI for the report. - # --# This code was derived from Makefile.decl in GLib, originally licenced -+# This code was derived from Makefile.decl in GLib, originally licensed - # under LGPLv2.1+. - # - # LICENSE -@@ -60,7 +59,7 @@ - # Copyright (c) 2012 Christian Persch - # Copyright (c) 2012 Paolo Borelli - # Copyright (c) 2012 Dan Winship --# Copyright (c) 2015 Bastien ROUCARIES -+# Copyright (c) 2015,2018 Bastien ROUCARIES - # - # This library is free software; you can redistribute it and/or modify it - # under the terms of the GNU Lesser General Public License as published by -@@ -75,107 +74,22 @@ - # You should have received a copy of the GNU Lesser General Public License - # along with this program. If not, see . - --#serial 25 -- --AC_DEFUN([AX_CODE_COVERAGE],[ -- dnl Check for --enable-code-coverage -- AC_REQUIRE([AC_PROG_SED]) -- -- # allow to override gcov location -- AC_ARG_WITH([gcov], -- [AS_HELP_STRING([--with-gcov[=GCOV]], [use given GCOV for coverage (GCOV=gcov).])], -- [_AX_CODE_COVERAGE_GCOV_PROG_WITH=$with_gcov], -- [_AX_CODE_COVERAGE_GCOV_PROG_WITH=gcov]) -- -- AC_MSG_CHECKING([whether to build with code coverage support]) -- AC_ARG_ENABLE([code-coverage], -- AS_HELP_STRING([--enable-code-coverage], -- [Whether to enable code coverage support]),, -- enable_code_coverage=no) -- -- AM_CONDITIONAL([CODE_COVERAGE_ENABLED], [test x$enable_code_coverage = xyes]) -- AC_SUBST([CODE_COVERAGE_ENABLED], [$enable_code_coverage]) -- AC_MSG_RESULT($enable_code_coverage) -- -- AS_IF([ test "$enable_code_coverage" = "yes" ], [ -- # check for gcov -- AC_CHECK_TOOL([GCOV], -- [$_AX_CODE_COVERAGE_GCOV_PROG_WITH], -- [:]) -- AS_IF([test "X$GCOV" = "X:"], -- [AC_MSG_ERROR([gcov is needed to do coverage])]) -- AC_SUBST([GCOV]) -- -- dnl Check if gcc is being used -- AS_IF([ test "$GCC" = "no" ], [ -- AC_MSG_ERROR([not compiling with gcc, which is required for gcov code coverage]) -- ]) -- -- AC_CHECK_PROG([LCOV], [lcov], [lcov]) -- AC_CHECK_PROG([GENHTML], [genhtml], [genhtml]) -- -- AS_IF([ test -z "$LCOV" ], [ -- AC_MSG_ERROR([To enable code coverage reporting you must have lcov installed]) -- ]) -- -- AS_IF([ test -z "$GENHTML" ], [ -- AC_MSG_ERROR([Could not find genhtml from the lcov package]) -- ]) -- -- dnl Build the code coverage flags -- dnl Define CODE_COVERAGE_LDFLAGS for backwards compatibility -- CODE_COVERAGE_CPPFLAGS="-DNDEBUG" -- CODE_COVERAGE_CFLAGS="-O0 -g -fprofile-arcs -ftest-coverage" -- CODE_COVERAGE_CXXFLAGS="-O0 -g -fprofile-arcs -ftest-coverage" -- CODE_COVERAGE_LIBS="-lgcov" -- CODE_COVERAGE_LDFLAGS="$CODE_COVERAGE_LIBS" -- -- AC_SUBST([CODE_COVERAGE_CPPFLAGS]) -- AC_SUBST([CODE_COVERAGE_CFLAGS]) -- AC_SUBST([CODE_COVERAGE_CXXFLAGS]) -- AC_SUBST([CODE_COVERAGE_LIBS]) -- AC_SUBST([CODE_COVERAGE_LDFLAGS]) -+#serial 32 - -- [CODE_COVERAGE_RULES_CHECK=' -- -$(A''M_V_at)$(MAKE) $(AM_MAKEFLAGS) -k check -- $(A''M_V_at)$(MAKE) $(AM_MAKEFLAGS) code-coverage-capture --'] -- [CODE_COVERAGE_RULES_CAPTURE=' -- $(code_coverage_v_lcov_cap)$(LCOV) $(code_coverage_quiet) $(addprefix --directory ,$(CODE_COVERAGE_DIRECTORY)) --capture --output-file "$(CODE_COVERAGE_OUTPUT_FILE).tmp" --test-name "$(call code_coverage_sanitize,$(PACKAGE_NAME)-$(PACKAGE_VERSION))" --no-checksum --compat-libtool $(CODE_COVERAGE_LCOV_SHOPTS) $(CODE_COVERAGE_LCOV_OPTIONS) -- $(code_coverage_v_lcov_ign)$(LCOV) $(code_coverage_quiet) $(addprefix --directory ,$(CODE_COVERAGE_DIRECTORY)) --remove "$(CODE_COVERAGE_OUTPUT_FILE).tmp" "/tmp/*" $(CODE_COVERAGE_IGNORE_PATTERN) --output-file "$(CODE_COVERAGE_OUTPUT_FILE)" $(CODE_COVERAGE_LCOV_SHOPTS) $(CODE_COVERAGE_LCOV_RMOPTS) -- -@rm -f $(CODE_COVERAGE_OUTPUT_FILE).tmp -- $(code_coverage_v_genhtml)LANG=C $(GENHTML) $(code_coverage_quiet) $(addprefix --prefix ,$(CODE_COVERAGE_DIRECTORY)) --output-directory "$(CODE_COVERAGE_OUTPUT_DIRECTORY)" --title "$(PACKAGE_NAME)-$(PACKAGE_VERSION) Code Coverage" --legend --show-details "$(CODE_COVERAGE_OUTPUT_FILE)" $(CODE_COVERAGE_GENHTML_OPTIONS) -- @echo "file://$(abs_builddir)/$(CODE_COVERAGE_OUTPUT_DIRECTORY)/index.html" --'] -- [CODE_COVERAGE_RULES_CLEAN=' --clean: code-coverage-clean --distclean: code-coverage-clean --code-coverage-clean: -- -$(LCOV) --directory $(top_builddir) -z -- -rm -rf $(CODE_COVERAGE_OUTPUT_FILE) $(CODE_COVERAGE_OUTPUT_FILE).tmp $(CODE_COVERAGE_OUTPUT_DIRECTORY) -- -find . \( -name "*.gcda" -o -name "*.gcno" -o -name "*.gcov" \) -delete --'] -- ], [ -- [CODE_COVERAGE_RULES_CHECK=' -- @echo "Need to reconfigure with --enable-code-coverage" --'] -- CODE_COVERAGE_RULES_CAPTURE="$CODE_COVERAGE_RULES_CHECK" -- CODE_COVERAGE_RULES_CLEAN='' -- ]) -- --[CODE_COVERAGE_RULES=' -+m4_define(_AX_CODE_COVERAGE_RULES,[ -+AX_ADD_AM_MACRO_STATIC([ - # Code coverage - # - # Optional: - # - CODE_COVERAGE_DIRECTORY: Top-level directory for code coverage reporting. - # Multiple directories may be specified, separated by whitespace. --# (Default: $(top_builddir)) -+# (Default: \$(top_builddir)) - # - CODE_COVERAGE_OUTPUT_FILE: Filename and path for the .info file generated - # by lcov for code coverage. (Default: --# $(PACKAGE_NAME)-$(PACKAGE_VERSION)-coverage.info) -+# \$(PACKAGE_NAME)-\$(PACKAGE_VERSION)-coverage.info) - # - CODE_COVERAGE_OUTPUT_DIRECTORY: Directory for generated code coverage - # reports to be created. (Default: --# $(PACKAGE_NAME)-$(PACKAGE_VERSION)-coverage) -+# \$(PACKAGE_NAME)-\$(PACKAGE_VERSION)-coverage) - # - CODE_COVERAGE_BRANCH_COVERAGE: Set to 1 to enforce branch coverage, - # set to 0 to disable it and leave empty to stay with the default. - # (Default: empty) -@@ -198,67 +112,161 @@ code-coverage-clean: - # instance. (Default: $CODE_COVERAGE_GENHTML_OPTIONS_DEFAULT) - # - CODE_COVERAGE_IGNORE_PATTERN: Extra glob pattern of files to ignore - # --# The generated report will be titled using the $(PACKAGE_NAME) and --# $(PACKAGE_VERSION). In order to add the current git hash to the title, -+# The generated report will be titled using the \$(PACKAGE_NAME) and -+# \$(PACKAGE_VERSION). In order to add the current git hash to the title, - # use the git-version-gen script, available online. -- - # Optional variables --CODE_COVERAGE_DIRECTORY ?= $(top_builddir) --CODE_COVERAGE_OUTPUT_FILE ?= $(PACKAGE_NAME)-$(PACKAGE_VERSION)-coverage.info --CODE_COVERAGE_OUTPUT_DIRECTORY ?= $(PACKAGE_NAME)-$(PACKAGE_VERSION)-coverage -+# run only on top dir -+if CODE_COVERAGE_ENABLED -+ ifeq (\$(abs_builddir), \$(abs_top_builddir)) -+CODE_COVERAGE_DIRECTORY ?= \$(top_builddir) -+CODE_COVERAGE_OUTPUT_FILE ?= \$(PACKAGE_NAME)-\$(PACKAGE_VERSION)-coverage.info -+CODE_COVERAGE_OUTPUT_DIRECTORY ?= \$(PACKAGE_NAME)-\$(PACKAGE_VERSION)-coverage -+ - CODE_COVERAGE_BRANCH_COVERAGE ?= --CODE_COVERAGE_LCOV_SHOPTS_DEFAULT ?= $(if $(CODE_COVERAGE_BRANCH_COVERAGE),\ ----rc lcov_branch_coverage=$(CODE_COVERAGE_BRANCH_COVERAGE)) --CODE_COVERAGE_LCOV_SHOPTS ?= $(CODE_COVERAGE_LCOV_SHOPTS_DEFAULT) --CODE_COVERAGE_LCOV_OPTIONS_GCOVPATH ?= --gcov-tool "$(GCOV)" --CODE_COVERAGE_LCOV_OPTIONS_DEFAULT ?= $(CODE_COVERAGE_LCOV_OPTIONS_GCOVPATH) --CODE_COVERAGE_LCOV_OPTIONS ?= $(CODE_COVERAGE_LCOV_OPTIONS_DEFAULT) -+CODE_COVERAGE_LCOV_SHOPTS_DEFAULT ?= \$(if \$(CODE_COVERAGE_BRANCH_COVERAGE),\ -+--rc lcov_branch_coverage=\$(CODE_COVERAGE_BRANCH_COVERAGE)) -+CODE_COVERAGE_LCOV_SHOPTS ?= \$(CODE_COVERAGE_LCOV_SHOPTS_DEFAULT) -+CODE_COVERAGE_LCOV_OPTIONS_GCOVPATH ?= --gcov-tool \"\$(GCOV)\" -+CODE_COVERAGE_LCOV_OPTIONS_DEFAULT ?= \$(CODE_COVERAGE_LCOV_OPTIONS_GCOVPATH) -+CODE_COVERAGE_LCOV_OPTIONS ?= \$(CODE_COVERAGE_LCOV_OPTIONS_DEFAULT) - CODE_COVERAGE_LCOV_RMOPTS_DEFAULT ?= --CODE_COVERAGE_LCOV_RMOPTS ?= $(CODE_COVERAGE_LCOV_RMOPTS_DEFAULT) -+CODE_COVERAGE_LCOV_RMOPTS ?= \$(CODE_COVERAGE_LCOV_RMOPTS_DEFAULT) - CODE_COVERAGE_GENHTML_OPTIONS_DEFAULT ?=\ --$(if $(CODE_COVERAGE_BRANCH_COVERAGE),\ ----rc genhtml_branch_coverage=$(CODE_COVERAGE_BRANCH_COVERAGE)) --CODE_COVERAGE_GENHTML_OPTIONS ?= $(CODE_COVERAGE_GENHTML_OPTIONS_DEFAULT) -+\$(if \$(CODE_COVERAGE_BRANCH_COVERAGE),\ -+--rc genhtml_branch_coverage=\$(CODE_COVERAGE_BRANCH_COVERAGE)) -+CODE_COVERAGE_GENHTML_OPTIONS ?= \$(CODE_COVERAGE_GENHTML_OPTIONS_DEFAULT) - CODE_COVERAGE_IGNORE_PATTERN ?= - --GITIGNOREFILES ?= --GITIGNOREFILES += $(CODE_COVERAGE_OUTPUT_FILE) $(CODE_COVERAGE_OUTPUT_DIRECTORY) -- --code_coverage_v_lcov_cap = $(code_coverage_v_lcov_cap_$(V)) --code_coverage_v_lcov_cap_ = $(code_coverage_v_lcov_cap_$(AM_DEFAULT_VERBOSITY)) --code_coverage_v_lcov_cap_0 = @echo " LCOV --capture"\ -- $(CODE_COVERAGE_OUTPUT_FILE); --code_coverage_v_lcov_ign = $(code_coverage_v_lcov_ign_$(V)) --code_coverage_v_lcov_ign_ = $(code_coverage_v_lcov_ign_$(AM_DEFAULT_VERBOSITY)) --code_coverage_v_lcov_ign_0 = @echo " LCOV --remove /tmp/*"\ -- $(CODE_COVERAGE_IGNORE_PATTERN); --code_coverage_v_genhtml = $(code_coverage_v_genhtml_$(V)) --code_coverage_v_genhtml_ = $(code_coverage_v_genhtml_$(AM_DEFAULT_VERBOSITY)) --code_coverage_v_genhtml_0 = @echo " GEN " $(CODE_COVERAGE_OUTPUT_DIRECTORY); --code_coverage_quiet = $(code_coverage_quiet_$(V)) --code_coverage_quiet_ = $(code_coverage_quiet_$(AM_DEFAULT_VERBOSITY)) -+GITIGNOREFILES = \$(GITIGNOREFILES) \$(CODE_COVERAGE_OUTPUT_FILE) \$(CODE_COVERAGE_OUTPUT_DIRECTORY) -+code_coverage_v_lcov_cap = \$(code_coverage_v_lcov_cap_\$(V)) -+code_coverage_v_lcov_cap_ = \$(code_coverage_v_lcov_cap_\$(AM_DEFAULT_VERBOSITY)) -+code_coverage_v_lcov_cap_0 = @echo \" LCOV --capture\" \$(CODE_COVERAGE_OUTPUT_FILE); -+code_coverage_v_lcov_ign = \$(code_coverage_v_lcov_ign_\$(V)) -+code_coverage_v_lcov_ign_ = \$(code_coverage_v_lcov_ign_\$(AM_DEFAULT_VERBOSITY)) -+code_coverage_v_lcov_ign_0 = @echo \" LCOV --remove /tmp/*\" \$(CODE_COVERAGE_IGNORE_PATTERN); -+code_coverage_v_genhtml = \$(code_coverage_v_genhtml_\$(V)) -+code_coverage_v_genhtml_ = \$(code_coverage_v_genhtml_\$(AM_DEFAULT_VERBOSITY)) -+code_coverage_v_genhtml_0 = @echo \" GEN \" \"\$(CODE_COVERAGE_OUTPUT_DIRECTORY)\"; -+code_coverage_quiet = \$(code_coverage_quiet_\$(V)) -+code_coverage_quiet_ = \$(code_coverage_quiet_\$(AM_DEFAULT_VERBOSITY)) - code_coverage_quiet_0 = --quiet - - # sanitizes the test-name: replaces with underscores: dashes and dots --code_coverage_sanitize = $(subst -,_,$(subst .,_,$(1))) -+code_coverage_sanitize = \$(subst -,_,\$(subst .,_,\$(1))) - - # Use recursive makes in order to ignore errors during check --check-code-coverage:'"$CODE_COVERAGE_RULES_CHECK"' -+check-code-coverage: -+ -\$(AM_V_at)\$(MAKE) \$(AM_MAKEFLAGS) -k check -+ \$(AM_V_at)\$(MAKE) \$(AM_MAKEFLAGS) code-coverage-capture - - # Capture code coverage data --code-coverage-capture: code-coverage-capture-hook'"$CODE_COVERAGE_RULES_CAPTURE"' -+code-coverage-capture: code-coverage-capture-hook -+ \$(code_coverage_v_lcov_cap)\$(LCOV) \$(code_coverage_quiet) \$(addprefix --directory ,\$(CODE_COVERAGE_DIRECTORY)) --capture --output-file \"\$(CODE_COVERAGE_OUTPUT_FILE).tmp\" --test-name \"\$(call code_coverage_sanitize,\$(PACKAGE_NAME)-\$(PACKAGE_VERSION))\" --no-checksum --compat-libtool \$(CODE_COVERAGE_LCOV_SHOPTS) \$(CODE_COVERAGE_LCOV_OPTIONS) -+ \$(code_coverage_v_lcov_ign)\$(LCOV) \$(code_coverage_quiet) \$(addprefix --directory ,\$(CODE_COVERAGE_DIRECTORY)) --remove \"\$(CODE_COVERAGE_OUTPUT_FILE).tmp\" \"/tmp/*\" \$(CODE_COVERAGE_IGNORE_PATTERN) --output-file \"\$(CODE_COVERAGE_OUTPUT_FILE)\" \$(CODE_COVERAGE_LCOV_SHOPTS) \$(CODE_COVERAGE_LCOV_RMOPTS) -+ -@rm -f \"\$(CODE_COVERAGE_OUTPUT_FILE).tmp\" -+ \$(code_coverage_v_genhtml)LANG=C \$(GENHTML) \$(code_coverage_quiet) \$(addprefix --prefix ,\$(CODE_COVERAGE_DIRECTORY)) --output-directory \"\$(CODE_COVERAGE_OUTPUT_DIRECTORY)\" --title \"\$(PACKAGE_NAME)-\$(PACKAGE_VERSION) Code Coverage\" --legend --show-details \"\$(CODE_COVERAGE_OUTPUT_FILE)\" \$(CODE_COVERAGE_GENHTML_OPTIONS) -+ @echo \"file://\$(abs_builddir)/\$(CODE_COVERAGE_OUTPUT_DIRECTORY)/index.html\" -+ -+code-coverage-clean: -+ -\$(LCOV) --directory \$(top_builddir) -z -+ -rm -rf \"\$(CODE_COVERAGE_OUTPUT_FILE)\" \"\$(CODE_COVERAGE_OUTPUT_FILE).tmp\" \"\$(CODE_COVERAGE_OUTPUT_DIRECTORY)\" -+ -find . \\( -name \"*.gcda\" -o -name \"*.gcno\" -o -name \"*.gcov\" \\) -delete -+ -+code-coverage-dist-clean: -+ -+A][M_DISTCHECK_CONFIGURE_FLAGS = \$(A][M_DISTCHECK_CONFIGURE_FLAGS) --disable-code-coverage -+ else # ifneq (\$(abs_builddir), \$(abs_top_builddir)) -+check-code-coverage: - -+code-coverage-capture: code-coverage-capture-hook -+ -+code-coverage-clean: -+ -+code-coverage-dist-clean: -+ endif # ifeq (\$(abs_builddir), \$(abs_top_builddir)) -+else #! CODE_COVERAGE_ENABLED -+# Use recursive makes in order to ignore errors during check -+check-code-coverage: -+ @echo \"Need to reconfigure with --enable-code-coverage\" -+# Capture code coverage data -+code-coverage-capture: code-coverage-capture-hook -+ @echo \"Need to reconfigure with --enable-code-coverage\" -+ -+code-coverage-clean: -+ -+code-coverage-dist-clean: -+ -+endif #CODE_COVERAGE_ENABLED - # Hook rule executed before code-coverage-capture, overridable by the user - code-coverage-capture-hook: - --'"$CODE_COVERAGE_RULES_CLEAN"' -+.PHONY: check-code-coverage code-coverage-capture code-coverage-dist-clean code-coverage-clean code-coverage-capture-hook -+]) -+]) -+ -+AC_DEFUN([_AX_CODE_COVERAGE_ENABLED],[ -+ AX_CHECK_GNU_MAKE([],[AC_MSG_ERROR([not using GNU make that is needed for coverage])]) -+ AC_REQUIRE([AX_ADD_AM_MACRO_STATIC]) -+ # check for gcov -+ AC_CHECK_TOOL([GCOV], -+ [$_AX_CODE_COVERAGE_GCOV_PROG_WITH], -+ [:]) -+ AS_IF([test "X$GCOV" = "X:"], -+ [AC_MSG_ERROR([gcov is needed to do coverage])]) -+ AC_SUBST([GCOV]) -+ -+ dnl Check if gcc is being used -+ AS_IF([ test "$GCC" = "no" ], [ -+ AC_MSG_ERROR([not compiling with gcc, which is required for gcov code coverage]) -+ ]) -+ -+ AC_CHECK_PROG([LCOV], [lcov], [lcov]) -+ AC_CHECK_PROG([GENHTML], [genhtml], [genhtml]) -+ -+ AS_IF([ test x"$LCOV" = x ], [ -+ AC_MSG_ERROR([To enable code coverage reporting you must have lcov installed]) -+ ]) -+ -+ AS_IF([ test x"$GENHTML" = x ], [ -+ AC_MSG_ERROR([Could not find genhtml from the lcov package]) -+ ]) -+ -+ dnl Build the code coverage flags -+ dnl Define CODE_COVERAGE_LDFLAGS for backwards compatibility -+ CODE_COVERAGE_CPPFLAGS="-DNDEBUG" -+ CODE_COVERAGE_CFLAGS="-O0 -g -fprofile-arcs -ftest-coverage" -+ CODE_COVERAGE_CXXFLAGS="-O0 -g -fprofile-arcs -ftest-coverage" -+ CODE_COVERAGE_LIBS="-lgcov" - --A''M_DISTCHECK_CONFIGURE_FLAGS ?= --A''M_DISTCHECK_CONFIGURE_FLAGS += --disable-code-coverage -+ AC_SUBST([CODE_COVERAGE_CPPFLAGS]) -+ AC_SUBST([CODE_COVERAGE_CFLAGS]) -+ AC_SUBST([CODE_COVERAGE_CXXFLAGS]) -+ AC_SUBST([CODE_COVERAGE_LIBS]) -+]) -+ -+AC_DEFUN([AX_CODE_COVERAGE],[ -+ dnl Check for --enable-code-coverage -+ -+ # allow to override gcov location -+ AC_ARG_WITH([gcov], -+ [AS_HELP_STRING([--with-gcov[=GCOV]], [use given GCOV for coverage (GCOV=gcov).])], -+ [_AX_CODE_COVERAGE_GCOV_PROG_WITH=$with_gcov], -+ [_AX_CODE_COVERAGE_GCOV_PROG_WITH=gcov]) -+ -+ AC_MSG_CHECKING([whether to build with code coverage support]) -+ AC_ARG_ENABLE([code-coverage], -+ AS_HELP_STRING([--enable-code-coverage], -+ [Whether to enable code coverage support]),, -+ enable_code_coverage=no) -+ -+ AM_CONDITIONAL([CODE_COVERAGE_ENABLED], [test "x$enable_code_coverage" = xyes]) -+ AC_SUBST([CODE_COVERAGE_ENABLED], [$enable_code_coverage]) -+ AC_MSG_RESULT($enable_code_coverage) - --.PHONY: check-code-coverage code-coverage-capture code-coverage-capture-hook code-coverage-clean --'] -+ AS_IF([ test "x$enable_code_coverage" = xyes ], [ -+ _AX_CODE_COVERAGE_ENABLED -+ ]) - -- AC_SUBST([CODE_COVERAGE_RULES]) -- m4_ifdef([_AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE([CODE_COVERAGE_RULES])]) -+ _AX_CODE_COVERAGE_RULES - ]) -diff --git a/m4/ax_file_escapes.m4 b/m4/ax_file_escapes.m4 -new file mode 100644 -index 0000000..a86fdc3 ---- /dev/null -+++ b/m4/ax_file_escapes.m4 -@@ -0,0 +1,30 @@ -+# =========================================================================== -+# https://www.gnu.org/software/autoconf-archive/ax_file_escapes.html -+# =========================================================================== -+# -+# SYNOPSIS -+# -+# AX_FILE_ESCAPES -+# -+# DESCRIPTION -+# -+# Writes the specified data to the specified file. -+# -+# LICENSE -+# -+# Copyright (c) 2008 Tom Howard -+# -+# Copying and distribution of this file, with or without modification, are -+# permitted in any medium without royalty provided the copyright notice -+# and this notice are preserved. This file is offered as-is, without any -+# warranty. -+ -+#serial 8 -+ -+AC_DEFUN([AX_FILE_ESCAPES],[ -+AX_DOLLAR="\$" -+AX_SRB="\\135" -+AX_SLB="\\133" -+AX_BS="\\\\" -+AX_DQ="\"" -+]) diff --git a/src/gnutls.mk b/src/gnutls.mk index 3c49b7ee..1fc60f92 100644 --- a/src/gnutls.mk +++ b/src/gnutls.mk @@ -3,8 +3,8 @@ PKG := gnutls $(PKG)_WEBSITE := https://www.gnu.org/software/gnutls/ $(PKG)_DESCR := GnuTLS -$(PKG)_VERSION := 3.6.6 -$(PKG)_CHECKSUM := bb9acab8af2ac430edf45faaaa4ed2c51f86e57cb57689be6701aceef4732ca7 +$(PKG)_VERSION := 3.6.8 +$(PKG)_CHECKSUM := aa81944e5635de981171772857e72be231a7e0f559ae0292d2737de475383e83 $(PKG)_SUBDIR := gnutls-$($(PKG)_VERSION) $(PKG)_FILE := gnutls-$($(PKG)_VERSION).tar.xz $(PKG)_URL := https://gnupg.org/ftp/gcrypt/gnutls/v3.6/$($(PKG)_FILE)