mxe/src/libgcrypt-1-fixes.patch

132 lines
4.4 KiB
Diff
Raw Normal View History

This file is part of MXE. See LICENSE.md for licensing information.
Contains ad hoc patches for cross building.
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
2016-04-16 08:26:16 +01:00
From: Tony Theodore <tonyt@logyst.com>
Date: Thu, 4 Dec 2014 15:07:43 +1100
Subject: [PATCH 1/3] fix for mingw cross building
2016-04-16 08:26:16 +01:00
Taken from:
https://aur.archlinux.org/packages/mingw-w64-libgcrypt/
diff --git a/acinclude.m4 b/acinclude.m4
index 1111111..2222222 100644
--- a/acinclude.m4
+++ b/acinclude.m4
@@ -102,7 +102,9 @@ AC_DEFUN([GNUPG_SYS_SYMBOL_UNDERSCORE],
[tmp_do_check="no"
case "${host}" in
2016-04-16 08:26:16 +01:00
i?86-mingw32* | i?86-*-mingw32*)
- ac_cv_sys_symbol_underscore=yes
+ if test "x$ac_cv_sys_symbol_underscore" = x ; then
+ ac_cv_sys_symbol_underscore=yes
+ fi
;;
2016-04-16 08:26:16 +01:00
x86_64-*-mingw32*)
ac_cv_sys_symbol_underscore=no
diff --git a/mpi/generic/mpi-asm-defs.h b/mpi/generic/mpi-asm-defs.h
index 1111111..2222222 100644
--- a/mpi/generic/mpi-asm-defs.h
+++ b/mpi/generic/mpi-asm-defs.h
@@ -4,5 +4,9 @@
#if __GNUC__ >= 3 && defined(__x86_64__) && defined(__ILP32__)
#define BYTES_PER_MPI_LIMB 8
#else
+#ifdef _WIN64
+#define BYTES_PER_MPI_LIMB (SIZEOF_UNSIGNED_LONG_LONG)
+#else
#define BYTES_PER_MPI_LIMB (SIZEOF_UNSIGNED_LONG)
#endif
+#endif
diff --git a/src/libgcrypt.def b/src/libgcrypt.def
index 1111111..2222222 100644
--- a/src/libgcrypt.def
+++ b/src/libgcrypt.def
@@ -1,3 +1,4 @@
+EXPORTS
;; libgcrypt.defs - Exported symbols for W32
;; Copyright (C) 2003, 2007 Free Software Foundation, Inc.
;;
@@ -22,7 +23,6 @@
;; never be changed. Also check libgcrypt.vers and visibility.h.
-EXPORTS
gcry_check_version @1
gcry_control @2
2016-04-16 08:26:16 +01:00
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
2016-04-16 08:26:16 +01:00
From: Saikrishna Arcot <saiarcot895@gmail.com>
Date: Fri, 12 Jun 2015 14:53:55 -0700
Subject: [PATCH 2/3] Don't call git to determine the revision.
2016-04-16 08:26:16 +01:00
diff --git a/configure.ac b/configure.ac
index 1111111..2222222 100644
2016-04-16 08:26:16 +01:00
--- a/configure.ac
+++ b/configure.ac
@@ -38,13 +38,10 @@ m4_define(mym4_version_micro, [6])
2016-04-16 08:26:16 +01:00
# processing is done by autoconf and not during the configure run.
m4_define(mym4_version,
[mym4_version_major.mym4_version_minor.mym4_version_micro])
-m4_define([mym4_revision],
- m4_esyscmd([git rev-parse --short HEAD | tr -d '\n\r']))
+m4_define([mym4_revision], [4091])
m4_define([mym4_revision_dec],
m4_esyscmd_s([echo $((0x$(echo ]mym4_revision[|head -c 4)))]))
-m4_define([mym4_betastring],
- m4_esyscmd_s([git describe --match 'libgcrypt-[0-9].*[0-9]' --long|\
- awk -F- '$3!=0{print"-beta"$3}']))
+m4_define([mym4_betastring], [])
m4_define([mym4_isgit],m4_if(mym4_betastring,[],[no],[yes]))
m4_define([mym4_full_version],[mym4_version[]mym4_betastring])
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
2016-04-16 08:26:16 +01:00
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Sun, 28 Jun 2015 17:17:25 +0200
Subject: [PATCH 3/3] configure.ac: no serial-tests if automake < 1.12
2016-04-16 08:26:16 +01:00
Earlier versions of automake complain if they get a configuration
parameter which they don't understand. The error is:
configure.ac:27: error: option 'serial-tests' not recognized
Use some m4 hackery to work around this.
Fix libgcrypt build under x86_64
See https://www.redhat.com/archives/libguestfs/2013-February/msg00102.html
diff --git a/configure.ac b/configure.ac
index 1111111..2222222 100644
2016-04-16 08:26:16 +01:00
--- a/configure.ac
+++ b/configure.ac
@@ -71,7 +71,24 @@ VERSION=$PACKAGE_VERSION
AC_CONFIG_AUX_DIR([build-aux])
AC_CONFIG_SRCDIR([src/libgcrypt.vers])
-AM_INIT_AUTOMAKE([serial-tests dist-bzip2])
+
+dnl Initialize automake. automake < 1.12 didn't have serial-tests and
+dnl gives an error if it sees this, but for automake >= 1.13
+dnl serial-tests is required so we have to include it. Solution is to
+dnl test for the version of automake (by running an external command)
+dnl and provide it if necessary. Note we have to do this entirely using
+dnl m4 macros since automake queries this macro by running
+dnl 'autoconf --trace ...'.
+m4_define([serial_tests], [
+ m4_esyscmd([automake --version |
+ head -1 |
+ awk '{split ($NF,a,"."); if (a[1] == 1 && a[2] >= 12) { '\
+ 'print "serial-tests" }}'
+ ])
+])
+dnl NB: Do not [quote] this parameter.
+AM_INIT_AUTOMAKE(serial_tests dist-bzip2)
+
AC_CONFIG_HEADER(config.h)
AC_CONFIG_MACRO_DIR([m4])
AC_CONFIG_LIBOBJ_DIR([compat])