Функции для подсветки вывода сообщений в терминале
This commit is contained in:
parent
ea38edfdc4
commit
9401cb4c3f
39
MyxCMake/modules/MyxCMakeColoredMessages.cmake
Normal file
39
MyxCMake/modules/MyxCMakeColoredMessages.cmake
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
if(DEFINED ENV{TERM} AND UNIX)
|
||||||
|
string(ASCII 27 Esc)
|
||||||
|
set(MyxCMakeColorReset "${Esc}[m")
|
||||||
|
set(MyxCMakeColorBold "${Esc}[1m")
|
||||||
|
set(MyxCMakeColorRed "${Esc}[31m")
|
||||||
|
set(MyxCMakeColorGreen "${Esc}[32m")
|
||||||
|
set(MyxCMakeColorYellow "${Esc}[33m")
|
||||||
|
set(MyxCMakeColorBlue "${Esc}[34m")
|
||||||
|
set(MyxCMakeColorMagenta "${Esc}[35m")
|
||||||
|
set(MyxCMakeColorCyan "${Esc}[36m")
|
||||||
|
set(MyxCMakeColorWhite "${Esc}[37m")
|
||||||
|
set(MyxCMakeColorBoldRed "${Esc}[1;31m")
|
||||||
|
set(MyxCMakeColorBoldGreen "${Esc}[1;32m")
|
||||||
|
set(MyxCMakeColorBoldYellow "${Esc}[1;33m")
|
||||||
|
set(MyxCMakeColorBoldBlue "${Esc}[1;34m")
|
||||||
|
set(MyxCMakeColorBoldMagenta "${Esc}[1;35m")
|
||||||
|
set(MyxCMakeColorBoldCyan "${Esc}[1;36m")
|
||||||
|
set(MyxCMakeColorBoldWhite "${Esc}[1;37m")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
function(myx_cmake_message_error)
|
||||||
|
message(FATAL_ERROR ${MyxCMakeColorBoldRed}${ARGV}${MyxCMakeColorReset})
|
||||||
|
endfunction()
|
||||||
|
|
||||||
|
function(myx_cmake_message_warning)
|
||||||
|
message(WARNING ${MyxCMakeColorRed}${ARGV}${MyxCMakeColorReset})
|
||||||
|
endfunction()
|
||||||
|
|
||||||
|
function(myx_cmake_message_status)
|
||||||
|
message(STATUS ${MyxCMakeColorMagenta}${ARGV}${MyxCMakeColorReset})
|
||||||
|
endfunction()
|
||||||
|
|
||||||
|
function(myx_cmake_message_notice)
|
||||||
|
message(STATUS ${MyxCMakeColorBold}${ARGV}${MyxCMakeColorReset})
|
||||||
|
endfunction()
|
||||||
|
|
||||||
|
function(myx_cmake_message)
|
||||||
|
message(${MyxCMakeColorReset}${ARGV}${MyxCMakeColorReset})
|
||||||
|
endfunction()
|
@ -1,6 +1,7 @@
|
|||||||
cmake_minimum_required(VERSION 3.3 FATAL_ERROR)
|
cmake_minimum_required(VERSION 3.3 FATAL_ERROR)
|
||||||
|
|
||||||
include(GNUInstallDirs)
|
include(GNUInstallDirs)
|
||||||
|
include(MyxCMakeColoredMessages)
|
||||||
include(MyxCMakeCheckPaths)
|
include(MyxCMakeCheckPaths)
|
||||||
|
|
||||||
link_directories(${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR})
|
link_directories(${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR})
|
||||||
|
@ -8,11 +8,11 @@ macro(CHECK_ENABLE_CXX_FLAG flag)
|
|||||||
unset(CMAKE_REQUIRED_QUIET)
|
unset(CMAKE_REQUIRED_QUIET)
|
||||||
|
|
||||||
if(CHECK_CXX_FLAG)
|
if(CHECK_CXX_FLAG)
|
||||||
message(STATUS "'${flag}': flag is supported.")
|
myx_cmake_message_notice("'${flag}': flag is supported.")
|
||||||
string(CONCAT _MYX_CMAKE_DETECTED_CXX_FLAGS
|
string(CONCAT _MYX_CMAKE_DETECTED_CXX_FLAGS
|
||||||
"${_MYX_CMAKE_DETECTED_CXX_FLAGS} ${flag}")
|
"${_MYX_CMAKE_DETECTED_CXX_FLAGS} ${flag}")
|
||||||
else()
|
else()
|
||||||
message(STATUS "'${flag}': flag is NOT supported.")
|
myx_cmake_message_status("'${flag}': flag is NOT supported.")
|
||||||
endif()
|
endif()
|
||||||
# NOTE: check_cxx_compiler stores variables in the cache.
|
# NOTE: check_cxx_compiler stores variables in the cache.
|
||||||
unset(CHECK_CXX_FLAG CACHE)
|
unset(CHECK_CXX_FLAG CACHE)
|
||||||
|
@ -2,12 +2,12 @@ find_program(DISTCC_EXECUTABLE distcc)
|
|||||||
mark_as_advanced(DISTCC_EXECUTABLE)
|
mark_as_advanced(DISTCC_EXECUTABLE)
|
||||||
if(DISTCC_EXECUTABLE)
|
if(DISTCC_EXECUTABLE)
|
||||||
foreach(lang C CXX)
|
foreach(lang C CXX)
|
||||||
if(NOT DEFINED CMAKE_${lang}_COMPILER_LAUNCHER
|
# cmake-format: off
|
||||||
AND NOT CMAKE_${lang}_COMPILER MATCHES ".*/distcc$")
|
if(NOT DEFINED CMAKE_${lang}_COMPILER_LAUNCHER AND
|
||||||
message(STATUS "MyxCMake: distcc enabled for ${lang}")
|
NOT CMAKE_${lang}_COMPILER MATCHES ".*/distcc$")
|
||||||
set(CMAKE_${lang}_COMPILER_LAUNCHER
|
myx_cmake_message("MyxCMake: distcc enabled for ${lang}")
|
||||||
${DISTCC_EXECUTABLE}
|
set(CMAKE_${lang}_COMPILER_LAUNCHER ${DISTCC_EXECUTABLE} CACHE STRING "")
|
||||||
CACHE STRING "")
|
|
||||||
endif()
|
endif()
|
||||||
|
# cmake-format: on
|
||||||
endforeach()
|
endforeach()
|
||||||
endif()
|
endif()
|
||||||
|
Loading…
Reference in New Issue
Block a user