commit ea1c18cba367ece0e2de1ac01ddfce28e7c02b53
parent 4bfa35a38ba691d77c0389a2f11ad952f5c7b333
Author: Christophe Coustet <christophe.coustet@meso-star.com>
Date: Tue, 4 Jul 2017 15:14:42 +0200
Fix AES based generator build on Linux.
Can be disabled using a cmake option, default is build it.
Diffstat:
1 file changed, 10 insertions(+), 3 deletions(-)
diff --git a/cmake/CMakeLists.txt b/cmake/CMakeLists.txt
@@ -34,6 +34,7 @@ project(star-sp C CXX)
enable_testing()
set(SSP_SOURCE_DIR ${PROJECT_SOURCE_DIR}/../src)
+option(BUILD_R123_AES "Build the RNG based on AES-NI instructions, as provided by the Random123 library" ON)
option(NO_TEST "Disable the test" OFF)
################################################################################
@@ -55,12 +56,14 @@ if(MSVC)
find_package(Boost 1.58 REQUIRED COMPONENTS random)
add_definitions(-DUSE_BOOST_RANDOM)
include_directories(${RSys_INCLUDE_DIR} ${Boost_INCLUDE_DIRS} ${Random123_INCLUDE_DIR})
- # Random123 AES generator compiles on MSVC
- add_definitions(-DWITH_R123_AES)
else()
include_directories(${RSys_INCLUDE_DIR} ${Random123_INCLUDE_DIR})
endif()
+if(BUILD_R123_AES)
+ add_definitions(-DWITH_R123_AES)
+endif()
+
rcmake_append_runtime_dirs(_runtime_dirs RSys ${Boost_LIBRARY_DIRS})
################################################################################
@@ -107,7 +110,11 @@ if(MSVC)
# disable autolink
set_target_properties(ssp PROPERTIES COMPILE_FLAGS "/DBOOST_ALL_NO_LIB")
elseif(CMAKE_COMPILER_IS_GNUCXX)
- set_target_properties(ssp PROPERTIES COMPILE_FLAGS "-std=c++11")
+ if(BUILD_R123_AES)
+ set_target_properties(ssp PROPERTIES COMPILE_FLAGS "-std=c++11 -maes")
+ else()
+ set_target_properties(ssp PROPERTIES COMPILE_FLAGS "-std=c++11")
+ endif()
endif()
rcmake_setup_devel(ssp StarSP ${VERSION} star/ssp_version.h)