From 00ce8bb207b16bc3c9908aa998521690cbd1865f Mon Sep 17 00:00:00 2001 From: f4exb Date: Fri, 5 Jul 2019 23:00:12 +0200 Subject: [PATCH] Build: Winodwa: link options to remove console display --- CMakeLists.txt | 4 ++++ cmake/Modules/QtLocator.cmake | 11 +++++++++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index d4dc40294..5a93a845d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -480,6 +480,10 @@ if (BUILD_GUI) sdrgui logging ) + + if (MSVC) + set(CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS} /SUBSYSTEM:WINDOWS /ENTRY:mainCRTStartup") + endif() endif() ############ build sdrangel server ################ diff --git a/cmake/Modules/QtLocator.cmake b/cmake/Modules/QtLocator.cmake index 1403bbbb5..72f759ebe 100644 --- a/cmake/Modules/QtLocator.cmake +++ b/cmake/Modules/QtLocator.cmake @@ -2,7 +2,7 @@ SET(QT_MISSING True) # msvc only; mingw will need different logic IF(MSVC) # look for user-registry pointing to qtcreator - GET_FILENAME_COMPONENT(QT_BIN [HKEY_CURRENT_USER\\Software\\Classes\\Applications\\QtProject.QtCreator.cpp\\shell\\Open\\Command] PATH) + GET_FILENAME_COMPONENT(QT_BIN [HKEY_CURRENT_USER\\Software\\Classes\\Applications\\QtProject.QtCreator.pro\\shell\\Open\\Command] PATH) # get root path so we can search for 5.3, 5.4, 5.5, etc STRING(REPLACE "/Tools" ";" QT_BIN "${QT_BIN}") @@ -22,7 +22,14 @@ IF(MSVC) # - qt uses (e.g.) "msvc2012" # - cmake uses (e.g.) "1800" # - see also https://cmake.org/cmake/help/v3.0/variable/MSVC_VERSION.html - MATH(EXPR QT_MSVC "2000 + (${MSVC_VERSION} - 200) / 100") + # checkcompiler version + if(MSVC_VERSION GREATER 1910 AND MSVC_VERSION LESS 1919) + set(QT_MSVC 2017) + elseif(MSVC_VERSION GREATER 1899 AND MSVC_VERSION LESS 1910) + set(QT_MSVC 2015) + else() + MATH(EXPR QT_MSVC "2000 + (${MSVC_VERSION} - 600) / 100") + endif() # check for 64-bit os # may need to be removed for older compilers as it wasn't always offered