ENH: better processor detection on linux
This commit is contained in:
parent
086da498d4
commit
d7b5020a2e
|
@ -25,20 +25,25 @@
|
||||||
# Ultrix ULTRIX
|
# Ultrix ULTRIX
|
||||||
# cygwin CYGWIN_NT-5.1
|
# cygwin CYGWIN_NT-5.1
|
||||||
# MacOSX Darwin
|
# MacOSX Darwin
|
||||||
|
|
||||||
IF(UNIX)
|
IF(UNIX)
|
||||||
FIND_PROGRAM(CMAKE_UNAME uname /bin /usr/bin /usr/local/bin )
|
FIND_PROGRAM(CMAKE_UNAME uname /bin /usr/bin /usr/local/bin )
|
||||||
IF(CMAKE_UNAME)
|
IF(CMAKE_UNAME)
|
||||||
EXEC_PROGRAM(uname ARGS -s OUTPUT_VARIABLE CMAKE_SYSTEM_NAME)
|
EXEC_PROGRAM(uname ARGS -s OUTPUT_VARIABLE CMAKE_SYSTEM_NAME)
|
||||||
EXEC_PROGRAM(uname ARGS -r OUTPUT_VARIABLE CMAKE_SYSTEM_VERSION)
|
EXEC_PROGRAM(uname ARGS -r OUTPUT_VARIABLE CMAKE_SYSTEM_VERSION)
|
||||||
EXEC_PROGRAM(uname ARGS -p OUTPUT_VARIABLE CMAKE_SYSTEM_PROCESSOR
|
IF(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
||||||
RETURN_VALUE val)
|
|
||||||
IF("${val}" GREATER 0)
|
|
||||||
EXEC_PROGRAM(uname ARGS -m OUTPUT_VARIABLE CMAKE_SYSTEM_PROCESSOR
|
EXEC_PROGRAM(uname ARGS -m OUTPUT_VARIABLE CMAKE_SYSTEM_PROCESSOR
|
||||||
RETURN_VALUE val)
|
RETURN_VALUE val)
|
||||||
ENDIF("${val}" GREATER 0)
|
ELSE(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
||||||
|
EXEC_PROGRAM(uname ARGS -p OUTPUT_VARIABLE CMAKE_SYSTEM_PROCESSOR
|
||||||
|
RETURN_VALUE val)
|
||||||
|
IF("${val}" GREATER 0)
|
||||||
|
EXEC_PROGRAM(uname ARGS -m OUTPUT_VARIABLE CMAKE_SYSTEM_PROCESSOR
|
||||||
|
RETURN_VALUE val)
|
||||||
|
ENDIF("${val}" GREATER 0)
|
||||||
|
ENDIF(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
||||||
|
# check the return of the last uname -m or -p
|
||||||
IF("${val}" GREATER 0)
|
IF("${val}" GREATER 0)
|
||||||
SET(CMAKE_SYSTEM_PROCESSOR "unknown")
|
SET(CMAKE_SYSTEM_PROCESSOR "unknown")
|
||||||
ENDIF("${val}" GREATER 0)
|
ENDIF("${val}" GREATER 0)
|
||||||
SET(CMAKE_UNAME ${CMAKE_UNAME} CACHE INTERNAL "uname command")
|
SET(CMAKE_UNAME ${CMAKE_UNAME} CACHE INTERNAL "uname command")
|
||||||
# processor may have double quote in the name, and that needs to be removed
|
# processor may have double quote in the name, and that needs to be removed
|
||||||
|
|
Loading…
Reference in New Issue