unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
blob 99fbf9c6dc1cb0ebc142857f4e3842abb7dbb54c 4062 bytes (raw)
name: packages/patches/clamav-system-tomsfastmath.patch 	 # note: path name is non-authoritative(*)

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
 
From: Tobias Geerinckx-Rice <me@tobias.gr>
Date: Sat, 03 Oct 2020 22:10:20 +0200
Subject: gnu: clamav: Add support for system tomsfastmath.

Adjusted from the original for clamav 0.103.0:

From 756ff89526b5ffaa7a4f49b1bbecf2ecbd6f85f9 Mon Sep 17 00:00:00 2001
From: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
Date: Wed, 11 Mar 2015 20:03:15 +0100
Subject: add support for system tomsfastmath

Patch-Name: add-support-for-system-tomsfastmath.patch
---
 configure.ac                           |    2 ++
 libclamav/Makefile.am                  |   10 ++++++++--
 libclamav/bignum.h                     |    6 +++++-
 libclamav/xdp.c                        |    2 +-
 m4/reorganization/libs/tomsfastmath.m4 |   12 ++++++++++++
 5 files changed, 28 insertions(+), 4 deletions(-)
 create mode 100644 m4/reorganization/libs/tomsfastmath.m4

diff -Naur a/configure.ac b/configure.ac
--- a/configure.ac	1970-01-01 01:00:01.000000000 +0100
+++ b/configure.ac	2020-10-03 22:04:00.535448352 +0200
@@ -94,6 +94,7 @@
 m4_include([m4/reorganization/libs/json.m4])
 m4_include([m4/reorganization/libs/pcre.m4])
 m4_include([m4/reorganization/libs/libmspack.m4])
+m4_include([m4/reorganization/libs/tomsfastmath.m4])
 
 if test "x$use_internal_mspack" = "xno"; then
     mspack_msg="External, $LIBMSPACK_CFLAGS $LIBMSPACK_LIBS"
@@ -361,6 +362,7 @@
 fi
 CL_MSG_STATUS([yara        ],[$enable_yara],[$enable_yara])
 CL_MSG_STATUS([fts         ],[yes],[$lfs_fts_msg])
+CL_MSG_STATUS([tomsfastmath],[yes],[$tomsfastmath_msg])
 
 
 # Yep, downgrading the compiler avoids the bug too:
diff -Naur a/libclamav/bignum.h b/libclamav/bignum.h
--- a/libclamav/bignum.h	1970-01-01 01:00:01.000000000 +0100
+++ b/libclamav/bignum.h	2020-10-03 22:04:00.535448352 +0200
@@ -1,9 +1,13 @@
 #ifndef BIGNUM_H_
 #define BIGNUM_H_
 
+#if HAVE_SYSTEM_TOMSFASTMATH
+#include <tfm.h>
+#else
 #define TFM_CHECK
-
 #include "bignum_fast.h"
+#endif
+
 typedef fp_int mp_int;
 #define mp_cmp fp_cmp
 #define mp_toradix_n(a, b, c, d) fp_toradix_n(a, b, c, d)
diff -Naur a/libclamav/Makefile.am b/libclamav/Makefile.am
--- a/libclamav/Makefile.am	1970-01-01 01:00:01.000000000 +0100
+++ b/libclamav/Makefile.am	2020-10-03 22:06:42.705447754 +0200
@@ -588,8 +588,10 @@
 	yara_clam.h
 endif
 
-libclamav_la_SOURCES += bignum.h\
-	bignum_fast.h\
+libclamav_la_SOURCES += bignum.h
+
+if !SYSTEM_TOMSFASTMATH
+libclamav_la_SOURCES += bignum_fast.h\
 	tomsfastmath/addsub/fp_add.c\
 	tomsfastmath/addsub/fp_add_d.c\
 	tomsfastmath/addsub/fp_addmod.c\
@@ -671,6 +673,10 @@
 	tomsfastmath/sqr/fp_sqr_comba_generic.c\
 	tomsfastmath/sqr/fp_sqr_comba_small_set.c\
 	tomsfastmath/sqr/fp_sqrmod.c
+else
+libclamav_la_CFLAGS += $(TOMSFASTMATH_CFLAGS)
+libclamav_la_LIBADD += $(TOMSFASTMATH_LIBS)
+endif
 
 .PHONY2: version.h.tmp
 version.c: version.h
diff -Naur a/libclamav/xdp.c b/libclamav/xdp.c
--- a/libclamav/xdp.c	1970-01-01 01:00:01.000000000 +0100
+++ b/libclamav/xdp.c	2020-10-03 22:04:00.535448352 +0200
@@ -52,7 +52,7 @@
 #include "scanners.h"
 #include "conv.h"
 #include "xdp.h"
-#include "bignum_fast.h"
+#include "bignum.h"
 #include "filetypes.h"
 
 static char *dump_xdp(cli_ctx *ctx, const char *start, size_t sz);
diff -Naur a/m4/reorganization/libs/tomsfastmath.m4 b/m4/reorganization/libs/tomsfastmath.m4
--- a/m4/reorganization/libs/tomsfastmath.m4	1970-01-01 01:00:00.000000000 +0100
+++ b/m4/reorganization/libs/tomsfastmath.m4	2020-10-03 22:04:00.535448352 +0200
@@ -0,0 +1,12 @@
+dnl Check for system tomsfastmath
+PKG_CHECK_MODULES([TOMSFASTMATH], [tomsfastmath], [have_system_tomsfastmath=yes], [have_system_tomsfastmath=no])
+
+AM_CONDITIONAL([SYSTEM_TOMSFASTMATH], [test "x$have_system_tomsfastmath" = "xyes"])
+
+if test "x$have_system_tomsfastmath" = "xyes"; then
+    AC_DEFINE([HAVE_SYSTEM_TOMSFASTMATH], [1], [link against system-wide tomsfastmath library])
+    tomsfastmath_msg="External, $TOMSFASTMATH_CFLAGS $TOMSFASTMATH_LIBS"
+else
+    AC_DEFINE([HAVE_SYSTEM_TOMSFASTMATH], [0], [don't link against system-wide tomsfastmath library])
+    tomsfastmath_msg="Internal"
+fi

debug log:

solving 99fbf9c6dc1cb0ebc142857f4e3842abb7dbb54c ...
found 99fbf9c6dc1cb0ebc142857f4e3842abb7dbb54c in https://git.savannah.gnu.org/cgit/guix.git

(*) Git path names are given by the tree(s) the blob belongs to.
    Blobs themselves have no identifier aside from the hash of its contents.^

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).