add support for building libtls

Use './configure --enable-libtls' to build the library and install the
associated manpages. Note that the API and ABI of this library may
change still, though feedback is welcome.

ok deraadt@ jsing@ tedu@
update changelog for libtls
simplify packaging for libtls.

Derive the file list from the Makefile.am template itself (DRY), ensure
manpage is packaged with the final tarball.
simplify building the apps Makefile

Remove extra machinery in favor of a plain-old Makefile.am.
Tighten up what files are copied on build, package a simple openssl.cnf.
simplify packaging for libssl.

Follow libtls and derive the file list from the Makefile.am
template itself.
remove obsolete define
simplify packaging for libcrypto.

Remove a lot of complex shell code. Upstream churn has slowed down, so
it is now easier to maintain this directly as automake files. This is
also needed to start integrating CPU-specific acceleration support.

Since we are deriving the copy list from the Makefile.am files, we can
now get rid of copy_src/copy_crypto.
split long manpage makefile lines.
read all library versions directly from files

This makes building and testing easier because the library Makefile.am
files are use directly rather than as templates. Thanks to Wouter Clarie
for the idea.
sync man links from upstream

I really need write something to automate this.
Enable optimized crypto operations for x86_64

This adds initial support for assembly crypto acceleration on x86_64 for
ELF (Linux, *BSD, Solaris) and Mach-O (OS-X) systems.

The build method is a little different than OpenSSL and OpenBSD.  All
the .s files are generated ahead of time when the tarball is generated,
so there are no complicated makefile rules at configure/build time. This
also means the builds are faster and perl is not required on the build
system.

Thanks to Wouter Clarie for providing the initial cleanup and patch
that this is based on.
disable inline assembly on Windows for now

There are issues building with inline assembly on Windows 64-bit.
update.sh: include gost test suite

Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Update .gitignore

Add gost test suite and camellia cipher dir to .gitignore.

Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
update.sh: call $CP instead of cp to ease rebuilds

In several additional places call $CP instead of just cp to ease and
speed up rebuilds after update.sh execution.

Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
update.sh: add MV-like function preserving file timestamps

Add a do_mv()/$MV wrappers to be called instead of just mv. This
function will preserve the target file if it does not differ from the
source file. This helps to remove unnecessary compilator calls after
calling update.sh w/o source changes.

Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
update.sh: remove linked manpages on uninstall

Add additional code to remove linked manpages on uninstall. Since we do
linking manually, automake will not remove them for us.

Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
tests/Makefile.am.tpl: remove generated files on distclean

Add pidwraptest.txt to DISTCLEANFILES to let it be removed on distclean.

Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
use 'make distcheck' for the release build script
use the new $MV macro to generate assembly files

Avoid spurious rebuilds running update.sh by generating a temp file and
comparing the result to the existing one.