a49402eae7
NEWS for the Nettle 3.5.1 release The Nettle-3.5.1 corrects a packaging mistake in Nettle-3.5. The new directory x86_64/sha_ni were missing in the tar file, breaking x86_64 builds with --enable-fat, and producing worse performance than promised for builds with --enable-x86-sha-ni. Also a few unused in-progress assembly files were accidentally included in the tar file. These problems are corrected in Nettle-3.5.1. There are no other changes, and also the library version numbers are unchanged. NEWS for the Nettle 3.5 release This release adds a couple of new features and optimizations, and deletes or deprecates a few obsolete features. It is *not* binary (ABI) compatible with earlier versions. Except for deprecations listed below, it is intended to be fully source-level (API) compatible with Nettle-3.4.1. The shared library names are libnettle.so.7.0 and libhogweed.so.5.0, with sonames libnettle.so.7 and libhogweed.so.5. Changes in behavior: * Nettle's gcm_crypt will now call the underlying block cipher to process more than one block at a time. This is not a change to the documented behavior, but unfortunately breaks assumptions accidentally made in GnuTLS, up to and including version 3.6.1. New features: * Support for CFB8 (Cipher Feedback Mode, processing a single octet per block cipher operation), contributed by Dmitry Eremin-Solenikov. * Support for CMAC (RFC 4493), contributed by Nikos Mavrogiannopoulos. * Support for XTS mode, contributed by Simo Sorce. Optimizations: * Improved performance of the x86_64 AES implementation using the aesni instructions. Gives a large speedup for operations processing multiple blocks at a time (including CTR mode, GCM mode, and CBC decrypt, but *not* CBC encrypt). * Improved performance for CTR mode, for the common case of 16-byte block size. Pass more data at a time to underlying block cipher, and fill the counter blocks more efficiently. Extension to also handle GCM mode efficiently contributed by Nikos Mavrogiannopoulos. * New x86_64 implementation of sha1 and sha256, for processors supporting the sha_ni instructions. Speedup of 3-5 times on affected processors. * Improved parameters for the precomputation of tables used for ecc signatures. Roughly 10%-15% speedup of the ecdsa sign operation using the secp_256r1, secp_384r1 and secp_521r1 curves, and 25% speedup of ed25519 sign operation, benchmarked on x86_64. Table sizes unchanged, around 16 KB per curve. * In ARM fat builds, automatically select Neon implementation of Chacha, where possible. Contributed by Yuriy M. Kaminskiy. Deleted features: * The header file des-compat.h and everything declared therein has been deleted, as announced earlier. This file provided a subset of the old libdes/ssleay/openssl interface for DES and triple-DES. DES is still supported, via the functions declared in des.h. * Functions using the old struct aes_ctx have been marked as deprecated. Use the fixed key size interface instead, e.g., struct aes256_ctx, introduced in Nettle-3.0. * The header file nettle-stdint.h, and corresponding autoconf tests, have been deleted. Nettle now requires that the compiler/libc provides <stdint.h>. Miscellaneous: * Support for big-endian ARM systems, contributed by Michael Weiser. * The programs aesdata, desdata, twofishdata, shadata and gcmdata are no longer built by default. Makefile improvements contributed by Jay Foad. * The "example" program examples/eratosthenes.c has been deleted. * The contents of hash context structs, and the deprecated aes_ctx struct, have been reorganized, to enable later optimizations. The shared library names are libnettle.so.7.0 and libhogweed.so.5.0.
63 lines
2.1 KiB
Text
63 lines
2.1 KiB
Text
$NetBSD: patch-Makefile.in,v 1.7 2019/07/20 22:01:57 wiz Exp $
|
|
|
|
Use LIBTOOL.
|
|
|
|
--- Makefile.in.orig 2015-04-24 17:22:03.000000000 +0000
|
|
+++ Makefile.in
|
|
@@ -25,7 +25,7 @@ PRE_CPPFLAGS = -I.
|
|
EXTRA_CFLAGS = $(CCPIC)
|
|
|
|
# FIXME: Add configuration of LIBEXT?
|
|
-LIBTARGETS = @IF_STATIC@ libnettle.a @IF_HOGWEED@ libhogweed.a
|
|
+LIBTARGETS = @IF_STATIC@ libnettle.la @IF_HOGWEED@ libhogweed.la
|
|
SHLIBTARGETS = @IF_SHARED@ $(LIBNETTLE_FORLINK) @IF_HOGWEED@ $(LIBHOGWEED_FORLINK)
|
|
|
|
getopt_SOURCES = getopt.c getopt1.c
|
|
@@ -234,20 +234,20 @@ nettle_OBJS = $(nettle_SOURCES:.c=.$(OBJ
|
|
hogweed_OBJS = $(hogweed_SOURCES:.c=.$(OBJEXT)) \
|
|
$(OPT_HOGWEED_OBJS) @IF_MINI_GMP@ mini-gmp.$(OBJEXT)
|
|
|
|
-libnettle.a: $(nettle_OBJS)
|
|
- -rm -f $@
|
|
- $(AR) $(ARFLAGS) $@ $(nettle_OBJS)
|
|
- $(RANLIB) $@
|
|
+libnettle.la: $(nettle_OBJS)
|
|
+ ${LIBTOOL} --mode=link ${CC} ${LDFLAGS} -o libnettle.la \
|
|
+ ${nettle_OBJS:.o=.lo} -rpath ${PREFIX}/lib \
|
|
+ -version-info ${LIBNETTLE_MAJOR}:${LIBNETTLE_MINOR}
|
|
echo nettle > libnettle.stamp
|
|
|
|
-libhogweed.a: $(hogweed_OBJS)
|
|
- -rm -f $@
|
|
- $(AR) $(ARFLAGS) $@ $(hogweed_OBJS)
|
|
- $(RANLIB) $@
|
|
+libhogweed.la: $(hogweed_OBJS)
|
|
+ ${LIBTOOL} --mode=link ${CC} ${LDFLAGS} -o libhogweed.la \
|
|
+ ${hogweed_OBJS:.o=.lo} -rpath ${PREFIX}/lib \
|
|
+ -version-info ${LIBHOGWEED_MAJOR}:${LIBHOGWEED_MINOR}
|
|
echo hogweed > libhogweed.stamp
|
|
|
|
.c.$(OBJEXT):
|
|
- $(COMPILE) -c $< \
|
|
+ ${LIBTOOL} --mode=compile --tag=CC $(COMPILE) $(CCPIC_MAYBE) -c $< \
|
|
&& $(DEP_PROCESS)
|
|
|
|
# Rules building shared libraries.
|
|
@@ -372,7 +372,7 @@ ecc-25519.$(OBJEXT): ecc-25519.h
|
|
|
|
.asm.$(OBJEXT): $(srcdir)/asm.m4 machine.m4 config.m4
|
|
$(M4) $(srcdir)/asm.m4 machine.m4 config.m4 $< >$*.s
|
|
- $(COMPILE) -c $*.s
|
|
+ ${LIBTOOL} --mode=compile $(COMPILE) -c $*.s
|
|
@echo "$@ : $< $(srcdir)/asm.m4 machine.m4 config.m4" >$@.d
|
|
|
|
# Texinfo rules
|
|
@@ -442,7 +442,7 @@ install-here: install-doc install-header
|
|
install-static: $(LIBTARGETS)
|
|
$(MKDIR_P) $(DESTDIR)$(libdir)
|
|
for f in $(LIBTARGETS); do \
|
|
- $(INSTALL_DATA) $$f $(DESTDIR)$(libdir) ; \
|
|
+ ${LIBTOOL} --mode=install ${BSD_INSTALL_LIB} $$f $(DESTDIR)$(libdir) ; \
|
|
done
|
|
|
|
install-dll-nettle:
|