Start modernizing cmake code
This commit is contained in:
parent
f9007f7f19
commit
0c1db35f35
4 changed files with 36 additions and 29 deletions
|
@ -5,7 +5,7 @@ set (CPACK_PACKAGE_VERSION_MAJOR "15")
|
|||
set (CPACK_PACKAGE_VERSION_MINOR "0")
|
||||
set (CPACK_PACKAGE_VERSION_PATCH "0")
|
||||
if (DEFINED GIT_COMMIT)
|
||||
set (CPACK_PACKAGE_VERSION_PATCH "GIT-${GIT_COMMIT}")
|
||||
set (CPACK_PACKAGE_VERSION_PATCH "GIT-${GIT_COMMIT}")
|
||||
endif (DEFINED GIT_COMMIT)
|
||||
set (CPACK_PACKAGE_VENDOR "Nano Currency")
|
||||
|
||||
|
@ -32,33 +32,41 @@ if(WIN32)
|
|||
endif()
|
||||
endif()
|
||||
|
||||
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
|
||||
|
||||
if (WIN32)
|
||||
set (PLATFORM_COMPILE_FLAGS "-DBOOST_SPIRIT_THREADSAFE -D_WIN32_WINNT=0x0600 -DWINVER=0x0600 -DWIN32_LEAN_AND_MEAN -DMINIUPNP_STATICLIB")
|
||||
add_definitions(-D_WIN32_WINNT=0x0600
|
||||
-DWINVER=0x0600
|
||||
-DWIN32_LEAN_AND_MEAN
|
||||
-DMINIUPNP_STATICLIB)
|
||||
set (BLAKE2_IMPLEMENTATION "blake2/blake2b.c")
|
||||
else (WIN32)
|
||||
set (PLATFORM_COMPILE_FLAGS "-DBOOST_SPIRIT_THREADSAFE -Werror=switch -fPIC")
|
||||
add_compile_options(-Werror=switch)
|
||||
if (RAIBLOCKS_ASAN)
|
||||
set (PLATFORM_COMPILE_FLAGS "${PLATFORM_COMPILE_FLAGS} -fsanitize=address,undefined -DED25519_NO_INLINE_ASM")
|
||||
add_compile_options(-fsanitize=address,undefined)
|
||||
add_definitions(-DED25519_NO_INLINE_ASM)
|
||||
elseif (RAIBLOCKS_ASAN_INT)
|
||||
set (PLATFORM_COMPILE_FLAGS "${PLATFORM_COMPILE_FLAGS} -fsanitize=address,undefined,integer -DED25519_NO_INLINE_ASM")
|
||||
add_compile_options(-fsanitize=address,undefined,integer)
|
||||
add_definitions(-DED25519_NO_INLINE_ASM)
|
||||
elseif (RAIBLOCKS_TSAN)
|
||||
set (PLATFORM_COMPILE_FLAGS "${PLATFORM_COMPILE_FLAGS} -fsanitize=thread -DED25519_NO_INLINE_ASM")
|
||||
add_compile_options(-fsanitize=thread)
|
||||
add_definitions(-DED25519_NO_INLINE_ASM)
|
||||
endif()
|
||||
|
||||
IF (CMAKE_SYSTEM_PROCESSOR MATCHES "^(i.86|x86(_64)?)$")
|
||||
if (RAIBLOCKS_SIMD_OPTIMIZATIONS)
|
||||
set (PLATFORM_COMPILE_FLAGS "${PLATFORM_COMPILE_FLAGS} -msse4")
|
||||
add_compile_options(-msse4)
|
||||
elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64")
|
||||
set (PLATFORM_COMPILE_FLAGS "${PLATFORM_COMPILE_FLAGS} -msse2")
|
||||
add_compile_options(-msse2)
|
||||
endif()
|
||||
|
||||
set (BLAKE2_IMPLEMENTATION "blake2/blake2b.c")
|
||||
if (ENABLE_AVX2)
|
||||
set (PLATFORM_COMPILE_FLAGS "${PLATFORM_COMPILE_FLAGS} -mavx2 -mbmi -mbmi2")
|
||||
add_compile_options(-mavx2 -mbmi -mbmi2)
|
||||
if (PERMUTE_WITH_GATHER)
|
||||
set (PLATFORM_COMPILE_FLAGS "${PLATFORM_COMPILE_FLAGS} -DPERMUTE_WITH_GATHER")
|
||||
add_definitions(-DPERMUTE_WITH_GATHER)
|
||||
elseif (PERMUTE_WITH_SHUFFLES)
|
||||
set (PLATFORM_COMPILE_FLAGS "${PLATFORM_COMPILE_FLAGS} -DPERMUTE_WITH_SHUFFLES")
|
||||
add_definitions(-DPERMUTE_WITH_SHUFFLES)
|
||||
endif()
|
||||
endif()
|
||||
else()
|
||||
|
@ -66,16 +74,16 @@ else (WIN32)
|
|||
endif()
|
||||
endif (WIN32)
|
||||
|
||||
if (WIN32)
|
||||
set (PLATFORM_C_FLAGS "/std=c11")
|
||||
else (WIN32)
|
||||
set (PLATFORM_C_FLAGS "-std=c11")
|
||||
endif (WIN32)
|
||||
set(CMAKE_C_STANDARD 11)
|
||||
set(CMAKE_C_STANDARD_REQUIRED ON)
|
||||
set(CMAKE_C_EXTENSIONS OFF)
|
||||
|
||||
set(CMAKE_CXX_STANDARD 14)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
set(CMAKE_CXX_EXTENSIONS OFF)
|
||||
|
||||
if (WIN32)
|
||||
set (PLATFORM_CXX_FLAGS "/bigobj")
|
||||
else (WIN32)
|
||||
set (PLATFORM_CXX_FLAGS "-std=c++14")
|
||||
add_definitions(/bigobj)
|
||||
endif (WIN32)
|
||||
|
||||
if (APPLE)
|
||||
|
@ -192,7 +200,6 @@ if (CRYPTOPP_CUSTOM OR NOT RAIBLOCKS_SIMD_OPTIMIZATIONS)
|
|||
cryptopp/sha.cpp
|
||||
cryptopp/simple.cpp
|
||||
cryptopp/winpipes.cpp)
|
||||
set_target_properties (cryptopp PROPERTIES COMPILE_FLAGS "${PLATFORM_CXX_FLAGS} ${PLATFORM_COMPILE_FLAGS}")
|
||||
else ()
|
||||
set (CRYPTOPP_LIBRARY cryptopp-static)
|
||||
add_subdirectory (cryptopp)
|
||||
|
@ -259,7 +266,7 @@ if (RAIBLOCKS_TEST)
|
|||
add_executable (slow_test
|
||||
rai/slow_test/node.cpp)
|
||||
|
||||
set_target_properties (core_test slow_test PROPERTIES COMPILE_FLAGS "${PLATFORM_CXX_FLAGS} ${PLATFORM_COMPILE_FLAGS} -DQT_NO_KEYWORDS -DACTIVE_NETWORK=${ACTIVE_NETWORK} -DRAIBLOCKS_VERSION_MAJOR=${CPACK_PACKAGE_VERSION_MAJOR} -DRAIBLOCKS_VERSION_MINOR=${CPACK_PACKAGE_VERSION_MINOR} -DBOOST_ASIO_HAS_STD_ARRAY=1")
|
||||
set_target_properties (core_test slow_test PROPERTIES COMPILE_FLAGS "-DQT_NO_KEYWORDS -DACTIVE_NETWORK=${ACTIVE_NETWORK} -DRAIBLOCKS_VERSION_MAJOR=${CPACK_PACKAGE_VERSION_MAJOR} -DRAIBLOCKS_VERSION_MINOR=${CPACK_PACKAGE_VERSION_MINOR} -DBOOST_ASIO_HAS_STD_ARRAY=1")
|
||||
# TODO: Do globally
|
||||
set_target_properties (core_test slow_test PROPERTIES LINK_FLAGS "${PLATFORM_LINK_FLAGS}")
|
||||
endif (RAIBLOCKS_TEST)
|
||||
|
@ -310,7 +317,7 @@ if (RAIBLOCKS_GUI)
|
|||
# TODO: Do globally
|
||||
set_target_properties (nano_wallet qt_test PROPERTIES LINK_FLAGS "${PLATFORM_LINK_FLAGS}")
|
||||
|
||||
set_target_properties (qt_test qt nano_wallet qt_system PROPERTIES COMPILE_FLAGS "${PLATFORM_CXX_FLAGS} ${PLATFORM_COMPILE_FLAGS} -DQT_NO_KEYWORDS -DACTIVE_NETWORK=${ACTIVE_NETWORK} -DRAIBLOCKS_VERSION_MAJOR=${CPACK_PACKAGE_VERSION_MAJOR} -DRAIBLOCKS_VERSION_MINOR=${CPACK_PACKAGE_VERSION_MINOR} -DBOOST_ASIO_HAS_STD_ARRAY=1")
|
||||
set_target_properties (qt_test qt nano_wallet qt_system PROPERTIES COMPILE_FLAGS "-DQT_NO_KEYWORDS -DACTIVE_NETWORK=${ACTIVE_NETWORK} -DRAIBLOCKS_VERSION_MAJOR=${CPACK_PACKAGE_VERSION_MAJOR} -DRAIBLOCKS_VERSION_MINOR=${CPACK_PACKAGE_VERSION_MINOR} -DBOOST_ASIO_HAS_STD_ARRAY=1")
|
||||
# TODO: Do globally
|
||||
set_target_properties (qt qt_system PROPERTIES LINK_FLAGS "${PLATFORM_LINK_FLAGS}")
|
||||
|
||||
|
@ -367,9 +374,8 @@ endif (RAIBLOCKS_GUI)
|
|||
|
||||
add_subdirectory(rai/rai_node)
|
||||
|
||||
set_target_properties (argon2 PROPERTIES COMPILE_FLAGS "${PLATFORM_C_FLAGS} ${PLATFORM_COMPILE_FLAGS}")
|
||||
set_target_properties (blake2 PROPERTIES COMPILE_FLAGS "${PLATFORM_C_FLAGS} ${PLATFORM_COMPILE_FLAGS} -D__SSE2__")
|
||||
set_target_properties (node rai_lib rai_lib_static PROPERTIES COMPILE_FLAGS "${PLATFORM_CXX_FLAGS} ${PLATFORM_COMPILE_FLAGS} -DQT_NO_KEYWORDS -DACTIVE_NETWORK=${ACTIVE_NETWORK} -DRAIBLOCKS_VERSION_MAJOR=${CPACK_PACKAGE_VERSION_MAJOR} -DRAIBLOCKS_VERSION_MINOR=${CPACK_PACKAGE_VERSION_MINOR} -DBOOST_ASIO_HAS_STD_ARRAY=1")
|
||||
target_compile_definitions(blake2 PRIVATE -D__SSE2__)
|
||||
set_target_properties (node rai_lib rai_lib_static PROPERTIES COMPILE_FLAGS "-DQT_NO_KEYWORDS -DACTIVE_NETWORK=${ACTIVE_NETWORK} -DRAIBLOCKS_VERSION_MAJOR=${CPACK_PACKAGE_VERSION_MAJOR} -DRAIBLOCKS_VERSION_MINOR=${CPACK_PACKAGE_VERSION_MINOR} -DBOOST_ASIO_HAS_STD_ARRAY=1")
|
||||
# TODO: Do globally
|
||||
set_target_properties (node PROPERTIES LINK_FLAGS "${PLATFORM_LINK_FLAGS}")
|
||||
|
||||
|
|
|
@ -5,4 +5,6 @@ add_library (ed25519
|
|||
ed25519.h
|
||||
ed25519.c)
|
||||
|
||||
set_target_properties (ed25519 PROPERTIES COMPILE_FLAGS "${PLATFORM_C_FLAGS} ${PLATFORM_COMPILE_FLAGS} -DED25519_CUSTOMHASH -DED25519_CUSTOMRNG")
|
||||
target_compile_definitions(ed25519 PUBLIC
|
||||
-DED25519_CUSTOMHASH
|
||||
-DED25519_CUSTOMRNG)
|
||||
|
|
|
@ -13,6 +13,6 @@ target_link_libraries (rai_node
|
|||
set_target_properties (rai_node
|
||||
PROPERTIES
|
||||
COMPILE_FLAGS
|
||||
"${PLATFORM_CXX_FLAGS} ${PLATFORM_COMPILE_FLAGS} -DQT_NO_KEYWORDS -DACTIVE_NETWORK=${ACTIVE_NETWORK} -DRAIBLOCKS_VERSION_MAJOR=${CPACK_PACKAGE_VERSION_MAJOR} -DRAIBLOCKS_VERSION_MINOR=${CPACK_PACKAGE_VERSION_MINOR} -DBOOST_ASIO_HAS_STD_ARRAY=1")
|
||||
"-DQT_NO_KEYWORDS -DACTIVE_NETWORK=${ACTIVE_NETWORK} -DRAIBLOCKS_VERSION_MAJOR=${CPACK_PACKAGE_VERSION_MAJOR} -DRAIBLOCKS_VERSION_MINOR=${CPACK_PACKAGE_VERSION_MINOR} -DBOOST_ASIO_HAS_STD_ARRAY=1")
|
||||
# TODO: Do globally
|
||||
set_target_properties (rai_node PROPERTIES LINK_FLAGS "${PLATFORM_LINK_FLAGS}")
|
||||
|
|
|
@ -36,9 +36,8 @@ add_library (secure
|
|||
|
||||
target_link_libraries(secure Boost::boost)
|
||||
|
||||
# TODO: Do globally
|
||||
set_target_properties (secure
|
||||
PROPERTIES
|
||||
COMPILE_FLAGS "${PLATFORM_CXX_FLAGS} ${PLATFORM_COMPILE_FLAGS} -DQT_NO_KEYWORDS -DACTIVE_NETWORK=${ACTIVE_NETWORK} -DRAIBLOCKS_VERSION_MAJOR=${CPACK_PACKAGE_VERSION_MAJOR} -DRAIBLOCKS_VERSION_MINOR=${CPACK_PACKAGE_VERSION_MINOR} -DBOOST_ASIO_HAS_STD_ARRAY=1")
|
||||
COMPILE_FLAGS "-DQT_NO_KEYWORDS -DACTIVE_NETWORK=${ACTIVE_NETWORK} -DRAIBLOCKS_VERSION_MAJOR=${CPACK_PACKAGE_VERSION_MAJOR} -DRAIBLOCKS_VERSION_MINOR=${CPACK_PACKAGE_VERSION_MINOR} -DBOOST_ASIO_HAS_STD_ARRAY=1")
|
||||
# TODO: Do globally
|
||||
set_target_properties (secure PROPERTIES LINK_FLAGS "${PLATFORM_LINK_FLAGS}")
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue