diff options
author | Richard Levitte <levitte@openssl.org> | 2016-08-29 16:58:31 +0200 |
---|---|---|
committer | Richard Levitte <richard@levitte.org> | 2016-11-15 15:15:52 +0100 |
commit | 5be6f71858a66060c7dcb46d0c015a55fc0b569d (patch) | |
tree | 68950581423f78889836e4192fecb58bc5da04a6 /engines | |
parent | 20b53c3efedd192c5a4050bfd44d317e5d802d2e (diff) |
Only build the body of e_padlock when there are lower level routines
engines/e_padlock.c assumes that for all x86 and x86_64 platforms, the
lower level routines will be present. However, that's not always
true, for example for solaris-x86-cc, and that leads to build errors.
The better solution is to have configure detect if the lower level
padlock routines are being built, and define the macro PADLOCK_ASM if
they are, and use that macro in our C code.
Reviewed-by: Andy Polyakov <appro@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/1510)
(cherry picked from commit 7b176a549ea374fc9b64c3fa7f0812239528b696)
Diffstat (limited to 'engines')
-rw-r--r-- | engines/e_padlock.c | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/engines/e_padlock.c b/engines/e_padlock.c index 77cebe3de6..b86f165504 100644 --- a/engines/e_padlock.c +++ b/engines/e_padlock.c @@ -41,14 +41,10 @@ */ # undef COMPILE_HW_PADLOCK -# if !defined(I386_ONLY) && !defined(OPENSSL_NO_ASM) -# if defined(__i386__) || defined(__i386) || \ - defined(__x86_64__) || defined(__x86_64) || \ - defined(_M_IX86) || defined(_M_AMD64) || defined(_M_X64) -# define COMPILE_HW_PADLOCK -# ifdef OPENSSL_NO_DYNAMIC_ENGINE +# if !defined(I386_ONLY) && defined(PADLOCK_ASM) +# define COMPILE_HW_PADLOCK +# ifdef OPENSSL_NO_DYNAMIC_ENGINE static ENGINE *ENGINE_padlock(void); -# endif # endif # endif |