Skip to content

Commit

Permalink
Add info about CPU model and endianness.
Browse files Browse the repository at this point in the history
  • Loading branch information
s-trinh committed Jan 26, 2025
1 parent f09f843 commit 96cae06
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 5 deletions.
14 changes: 13 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -1467,7 +1467,7 @@ endif()
# System information
# ----------------------------------------------------------------------------
vp_system_information(NUMBER_OF_LOGICAL_CORES NUMBER_OF_PHYSICAL_CORES TOTAL_PHYSICAL_MEMORY OS_NAME OS_RELEASE
OS_VERSION OS_PLATFORM PROCESSOR_NAME IS_64BIT HAS_FPU CPU_OPTIM)
OS_VERSION OS_PLATFORM PROCESSOR_NAME PROCESSOR_DESCRIPTION IS_64BIT HAS_FPU CPU_OPTIM)

# ----------------------------------------------------------------------------
# Autodetect if we are in a GIT repository
Expand Down Expand Up @@ -1563,9 +1563,21 @@ status(" OS release:" "${OS_RELEASE}")
status(" OS version:" "${OS_VERSION}")
status(" OS platform:" "${OS_PLATFORM}")
status(" CPU name:" "${PROCESSOR_NAME}")
status(" CPU description:" "${PROCESSOR_DESCRIPTION}")
status(" Is the CPU 64-bit?" ${IS_64BIT} THEN "yes" ELSE "no")
status(" Does the CPU have FPU?" ${HAS_FPU} THEN "yes" ELSE "no")
status(" CPU optimization:" ${CPU_OPTIM})
if(NOT ("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 3.20))
# https://cmake.org/cmake/help/latest/variable/CMAKE_LANG_BYTE_ORDER.html
# https://github.com/libevent/libevent/pull/1349/files
if(CMAKE_CXX_BYTE_ORDER STREQUAL "BIG_ENDIAN")
status(" CPU endianness:" "big-endian")
elseif(CMAKE_CXX_BYTE_ORDER STREQUAL "LITTLE_ENDIAN")
status(" CPU endianness:" "little-endian")
else()
status(" CPU endianness:" "unknown")
endif()
endif()

# ========================== C/C++ options ==========================
if(CMAKE_CXX_COMPILER_VERSION)
Expand Down
12 changes: 8 additions & 4 deletions cmake/VISPUtils.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -1955,7 +1955,7 @@ macro(vp_check_cpu_optimization cpu_optim)
set(${cpu_optim} ${__cpu_optim})
endmacro()

macro(vp_system_information NUMBER_OF_LOGICAL_CORES NUMBER_OF_PHYSICAL_CORES TOTAL_PHYSICAL_MEMORY OS_NAME OS_RELEASE OS_VERSION OS_PLATFORM PROCESSOR_NAME IS_64BIT HAS_FPU CPU_OPTIM)
macro(vp_system_information NUMBER_OF_LOGICAL_CORES NUMBER_OF_PHYSICAL_CORES TOTAL_PHYSICAL_MEMORY OS_NAME OS_RELEASE OS_VERSION OS_PLATFORM PROCESSOR_NAME PROCESSOR_DESCRIPTION IS_64BIT HAS_FPU CPU_OPTIM)
set(__NUMBER_OF_LOGICAL_CORES)
set(__NUMBER_OF_PHYSICAL_CORES)
set(__TOTAL_PHYSICAL_MEMORY)
Expand All @@ -1964,12 +1964,13 @@ macro(vp_system_information NUMBER_OF_LOGICAL_CORES NUMBER_OF_PHYSICAL_CORES TOT
set(__OS_VERSION)
set(__OS_PLATFORM)
set(__PROCESSOR_NAME)
set(__PROCESSOR_DESCRIPTION)
set(__IS_64BIT)
set(__HAS_FPU)
set(__CPU_OPTIM)

if(CMAKE_VERSION VERSION_GREATER 3.10)
cmake_host_system_information(RESULT SYS_INFO QUERY NUMBER_OF_LOGICAL_CORES NUMBER_OF_PHYSICAL_CORES TOTAL_PHYSICAL_MEMORY OS_NAME OS_RELEASE OS_VERSION OS_PLATFORM PROCESSOR_NAME IS_64BIT HAS_FPU)
cmake_host_system_information(RESULT SYS_INFO QUERY NUMBER_OF_LOGICAL_CORES NUMBER_OF_PHYSICAL_CORES TOTAL_PHYSICAL_MEMORY OS_NAME OS_RELEASE OS_VERSION OS_PLATFORM PROCESSOR_NAME PROCESSOR_DESCRIPTION IS_64BIT HAS_FPU)
else()
cmake_host_system_information(RESULT SYS_INFO QUERY NUMBER_OF_LOGICAL_CORES NUMBER_OF_PHYSICAL_CORES TOTAL_PHYSICAL_MEMORY)
list(APPEND SYS_INFO "N/A")
Expand All @@ -1980,6 +1981,7 @@ macro(vp_system_information NUMBER_OF_LOGICAL_CORES NUMBER_OF_PHYSICAL_CORES TOT
list(APPEND SYS_INFO "N/A")
list(APPEND SYS_INFO "N/A")
list(APPEND SYS_INFO "N/A")
list(APPEND SYS_INFO "N/A")
endif()

list(GET SYS_INFO 0 __NUMBER_OF_LOGICAL_CORES)
Expand All @@ -1990,8 +1992,9 @@ macro(vp_system_information NUMBER_OF_LOGICAL_CORES NUMBER_OF_PHYSICAL_CORES TOT
list(GET SYS_INFO 5 __OS_VERSION)
list(GET SYS_INFO 6 __OS_PLATFORM)
list(GET SYS_INFO 7 __PROCESSOR_NAME)
list(GET SYS_INFO 8 __IS_64BIT)
list(GET SYS_INFO 9 __HAS_FPU)
list(GET SYS_INFO 8 __PROCESSOR_DESCRIPTION)
list(GET SYS_INFO 9 __IS_64BIT)
list(GET SYS_INFO 10 __HAS_FPU)

vp_check_cpu_optimization(__CPU_OPTIM)
set(${NUMBER_OF_LOGICAL_CORES} ${__NUMBER_OF_LOGICAL_CORES})
Expand All @@ -2002,6 +2005,7 @@ macro(vp_system_information NUMBER_OF_LOGICAL_CORES NUMBER_OF_PHYSICAL_CORES TOT
set(${OS_VERSION} ${__OS_VERSION})
set(${OS_PLATFORM} ${__OS_PLATFORM})
set(${PROCESSOR_NAME} ${__PROCESSOR_NAME})
set(${PROCESSOR_DESCRIPTION} ${__PROCESSOR_DESCRIPTION})
set(${IS_64BIT} ${__IS_64BIT})
set(${HAS_FPU} ${__HAS_FPU})
set(${CPU_OPTIM} ${__CPU_OPTIM})
Expand Down

0 comments on commit 96cae06

Please sign in to comment.