summaryrefslogtreecommitdiff
path: root/src/local.mk
diff options
context:
space:
mode:
authorPádraig Brady <P@draigBrady.com>2013-12-03 03:51:52 +0000
committerPádraig Brady <P@draigBrady.com>2013-12-04 13:18:56 +0000
commitb53b0fd940382497e58a9e912f1262c2084fe534 (patch)
tree7b5fde00794f059d22b685f05794b754a4aa513e /src/local.mk
parent2091f44993c4d0ad16cbe272c247bb452ae74216 (diff)
downloadcoreutils-b53b0fd940382497e58a9e912f1262c2084fe534.tar.xz
md5sum, sha*sum: use libcrypto where available
libcrypto is generally available and has well optimized crypto hash routines particular to various systems. For example, testing sha1sum with openssl-1.0.0j on an i3-2310M, gives a performance boost of about 40%: $ time sha1sum.old --tag ~/test.iso SHA1 (/home/padraig/test.iso) = 3c27f7ed01965fd2b89e22128fd62dc51a3bef30 real 0m4.692s user 0m4.499s sys 0m0.162s $ time sha1sum.new --tag ~/test.iso SHA1 (/home/padraig/test.iso) = 3c27f7ed01965fd2b89e22128fd62dc51a3bef30 real 0m2.685s user 0m2.512s sys 0m0.170s * configure.ac: By default, enable use of libcrypto if available. * src/local.mk: Link with libcrypto. * NEWS: Mention the md5sum and sha*sum improvements.
Diffstat (limited to 'src/local.mk')
-rw-r--r--src/local.mk9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/local.mk b/src/local.mk
index 1315e1103..fe80f41c1 100644
--- a/src/local.mk
+++ b/src/local.mk
@@ -293,6 +293,15 @@ src_stdbuf_LDADD += $(LIBICONV)
src_timeout_LDADD += $(LIBICONV)
src_truncate_LDADD += $(LIBICONV)
+# for libcrypto hash routines
+src_md5sum_LDADD += $(LIB_CRYPTO)
+src_sort_LDADD += $(LIB_CRYPTO)
+src_sha1sum_LDADD += $(LIB_CRYPTO)
+src_sha224sum_LDADD += $(LIB_CRYPTO)
+src_sha256sum_LDADD += $(LIB_CRYPTO)
+src_sha384sum_LDADD += $(LIB_CRYPTO)
+src_sha512sum_LDADD += $(LIB_CRYPTO)
+
# for canon_host
src_pinky_LDADD += $(GETADDRINFO_LIB)
src_who_LDADD += $(GETADDRINFO_LIB)