27 lines
654 B
Text
27 lines
654 B
Text
|
if(NOT DEFINED PROCESSOR_COUNT)
|
||
|
# Unknown:
|
||
|
set(PROCESSOR_COUNT 0)
|
||
|
|
||
|
# Linux:
|
||
|
set(cpuinfo_file "/proc/cpuinfo")
|
||
|
if(EXISTS "${cpuinfo_file}")
|
||
|
file(STRINGS "${cpuinfo_file}" procs REGEX "^processor.: [0-9]+$")
|
||
|
list(LENGTH procs PROCESSOR_COUNT)
|
||
|
endif()
|
||
|
|
||
|
# Mac:
|
||
|
if(APPLE)
|
||
|
find_program(cmd_sys_pro "system_profiler")
|
||
|
if(cmd_sys_pro)
|
||
|
execute_process(COMMAND ${cmd_sys_pro} OUTPUT_VARIABLE info)
|
||
|
string(REGEX REPLACE "^.*Total Number Of Cores: ([0-9]+).*$" "\\1"
|
||
|
PROCESSOR_COUNT "${info}")
|
||
|
endif()
|
||
|
endif()
|
||
|
|
||
|
# Windows:
|
||
|
if(WIN32)
|
||
|
set(PROCESSOR_COUNT "$ENV{NUMBER_OF_PROCESSORS}")
|
||
|
endif()
|
||
|
endif()
|