- Notifications
You must be signed in to change notification settings - Fork 1.6k
/
Copy pathCheckTimeFunction.cmake
28 lines (23 loc) · 969 Bytes
/
CheckTimeFunction.cmake
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# - Check if the Fortran function exists.
# CHECK_TIME_FUNCTION(FUNCTION VARIABLE TYPE)
# - macro which checks if the Fortran function exists
# FUNCTION - the name of the Fortran function
# VARIABLE - variable to store the result
#
macro(CHECK_TIME_FUNCTION FUNCTION VARIABLE)
try_compile(RES
${PROJECT_BINARY_DIR}/INSTALL
${PROJECT_SOURCE_DIR}/INSTALL
TIMING secondtst_${FUNCTION}
OUTPUT_VARIABLEOUTPUT)
if(RES)
set(${VARIABLE}${FUNCTION}CACHEINTERNAL"Have Fortran function ${FUNCTION}")
message(STATUS"Looking for Fortran ${FUNCTION} - found")
file(APPEND${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log
"Fortran ${FUNCTION} exists. ${OUTPUT}\n\n")
else()
message(STATUS"Looking for Fortran ${FUNCTION} - not found")
file(APPEND${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log
"Fortran ${FUNCTION} does not exist. \n${OUTPUT}\n")
endif()
endmacro()