From 63161e85dc091cfdabfbeec975cdb4b1056701c9 Mon Sep 17 00:00:00 2001 From: Brent Cook Date: Tue, 21 Jul 2015 12:52:14 -0600 Subject: add initial build for arc4random/getentropy fallbacks --- crypto/CMakeLists.txt | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) (limited to 'crypto') diff --git a/crypto/CMakeLists.txt b/crypto/CMakeLists.txt index 1a058c4..5455a27 100644 --- a/crypto/CMakeLists.txt +++ b/crypto/CMakeLists.txt @@ -567,8 +567,6 @@ endif() if(CMAKE_HOST_WIN32) set(CRYPTO_SRC ${CRYPTO_SRC} compat/posix_win.c) - set(CRYPTO_SRC ${CRYPTO_SRC} compat/arc4random.c) - set(CRYPTO_SRC ${CRYPTO_SRC} compat/getentropy_win.c) endif() if(NOT HAVE_ASPRINTF) @@ -610,7 +608,24 @@ if(NOT HAVE_EXPLICIT_BZERO) endif() endif() -if(NOT HAVE_GETENTROPY) +if(NOT HAVE_ARC4RANDOM_BUF) + set(CRYPTO_SRC ${CRYPTO_SRC} compat/arc4random.c) + + if(NOT HAVE_GETENTROPY) + if(CMAKE_HOST_WIN32) + set(CRYPTO_SRC ${CRYPTO_SRC} compat/getentropy_win.c) + elseif(CMAKE_SYSTEM_NAME MATCHES "AIX") + set(CRYPTO_SRC ${CRYPTO_SRC} compat/getentropy_aix.c) + elseif(CMAKE_SYSTEM_NAME MATCHES "FreeBSD") + set(CRYPTO_SRC ${CRYPTO_SRC} compat/getentropy_freebsd.c) + elseif(CMAKE_SYSTEM_NAME MATCHES "NetBSD") + set(CRYPTO_SRC ${CRYPTO_SRC} compat/getentropy_netbsd.c) + elseif(CMAKE_SYSTEM_NAME MATCHES "Darwin") + set(CRYPTO_SRC ${CRYPTO_SRC} compat/getentropy_darwin.c) + elseif(CMAKE_SYSTEM_NAME MATCHES "SunOS") + set(CRYPTO_SRC ${CRYPTO_SRC} compat/getentropy_solaris.c) + endif() + endif() endif() if(NOT HAVE_TIMINGSAFE_BCMP) -- cgit v1.2.3-55-g6feb