X-Git-Url: https://git.novaco.in/?a=blobdiff_plain;f=CMakeLists.txt;h=5a45b9793e586769e8ec6591621f733ca48de628;hb=557e64604afb73df48dd4ea0465ad75e7f9a67fe;hp=7dfd371cd63b2745d820133dcb0bff7eb99dab0f;hpb=21a80a795f696582624d7dba66faf795f7d11b74;p=novacoin.git diff --git a/CMakeLists.txt b/CMakeLists.txt index 7dfd371..5a45b97 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -51,11 +51,15 @@ set(CMAKE_CXX_FLAGS "/O2 /GR /EHsc") endif() set(Boost_USE_STATIC_LIBS ON) +if(WIN32) set(Boost_USE_STATIC_RUNTIME ON) +endif() find_package(Boost REQUIRED COMPONENTS atomic chrono filesystem program_options system thread) set(OPENSSL_USE_STATIC_LIBS ON) find_package(OpenSSL REQUIRED) +# Disable compiling qrencode executables +option(WITH_TOOLS "Build utility tools" NO) add_subdirectory(src/additional/libqrencode) add_subdirectory(src/additional/IXWebSocket) @@ -227,7 +231,7 @@ if (NOT BDB_FOUND) message(FATAL_ERROR "Unable to find ${BerkeleyDB_LIB_name} library in ${BerkeleyDB_LIBS} directory. Try to specify either library path via BerkeleyDB_LIBS or berkeley db root path via BerkeleyDB_ROOT variable. You can also use BerkeleyDB_LIB_name variable to provide alternative file name search for.") endif() -list(APPEND ALL_DEFINITIONS QT_GUI USE_QRCODE USE_IPV6) +list(APPEND ALL_DEFINITIONS QT_GUI USE_QRCODE USE_IPV6 BOOST_SPIRIT_THREADSAFE) if(USE_LEVELDB) # Disable useless targets @@ -257,17 +261,17 @@ execute_process ( ) list(APPEND ALL_DEFINITIONS HAVE_BUILD_INFO) -add_executable(novacoin-qt ${ALL_SOURCES}) +add_executable(novacoin-qt WIN32 ${ALL_SOURCES}) if (NOT MSVC) -list(APPEND ALL_LIBRARIES ssp) list(APPEND ALL_DEFINITIONS _FORTIFY_SOURCE=2) if (WIN32) -list(APPEND ALL_LIBRARIES mingw32) +list(APPEND ALL_LIBRARIES mingw32 ssp) +set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -static-libgcc -static") endif() endif() -target_include_directories(novacoin-qt PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src ${CMAKE_CURRENT_SOURCE_DIR}/src/qt ${CMAKE_CURRENT_SOURCE_DIR}/src/json ${BerkeleyDB_INC} ${CMAKE_CURRENT_SOURCE_DIR}/src/additional/leveldb/helpers ${CMAKE_CURRENT_SOURCE_DIR}/src/additional/sse2neon ${CMAKE_CURRENT_SOURCE_DIR}/src/additional/libqrencode ${Boost_INCLUDE_DIRS}) +target_include_directories(novacoin-qt PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src ${CMAKE_CURRENT_SOURCE_DIR}/src/qt ${CMAKE_CURRENT_SOURCE_DIR}/src/json ${BerkeleyDB_INC} ${CMAKE_CURRENT_SOURCE_DIR}/src/additional/leveldb/helpers ${CMAKE_CURRENT_SOURCE_DIR}/src/additional/libqrencode ${Boost_INCLUDE_DIRS}) target_link_libraries(novacoin-qt ${ALL_LIBRARIES}) target_compile_features(novacoin-qt PUBLIC cxx_std_17)