qemu/crypto
Daniel P. Berrange fb37726db7 crypto: move crypto objects out of libqemuutil.la
Future patches will be adding more crypto related APIs which
rely on QOM infrastructure. This creates a problem, because
QOM relies on library constructors to register objects. When
you have a file in a static .a library though which is only
referenced by a constructor the linker is dumb and will drop
that file when linking to the final executable :-( The only
workaround for this is to link the .a library to the executable
using the -Wl,--whole-archive flag, but this creates its own
set of problems because QEMU is relying on lazy linking for
libqemuutil.a. Using --whole-archive majorly increases the
size of final executables as they now contain a bunch of
object code they don't actually use.

The least bad option is to thus not include the crypto objects
in libqemuutil.la, and instead define a crypto-obj-y variable
that is referenced directly by all the executables that need
this code (tools + softmmu, but not qemu-ga). We avoid pulling
entire of crypto-obj-y into the userspace emulators as that
would force them to link to gnutls too, which is not required.

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2015-09-15 14:18:18 +01:00
..
aes.c
cipher-builtin.c crypto: fix built-in AES decrypt function 2015-07-27 12:22:01 +02:00
cipher-gcrypt.c crypto: add a gcrypt cipher implementation 2015-07-08 13:11:01 +02:00
cipher-nettle.c crypto: Fix aes_decrypt_wrapper() 2015-07-20 13:35:45 +02:00
cipher.c crypto: add a nettle cipher implementation 2015-07-08 13:11:01 +02:00
desrfb.c crypto: move built-in D3DES implementation into crypto/ 2015-07-07 12:04:31 +02:00
hash.c
init.c crypto: add a gcrypt cipher implementation 2015-07-08 13:11:01 +02:00
Makefile.objs crypto: move crypto objects out of libqemuutil.la 2015-09-15 14:18:18 +01:00