summaryrefslogtreecommitdiff
path: root/CMAKE/CheckFortranIntSize.cmake
diff options
context:
space:
mode:
authorjulie <julielangou@users.noreply.github.com>2010-12-31 01:33:24 +0000
committerjulie <julielangou@users.noreply.github.com>2010-12-31 01:33:24 +0000
commit8326a972ee36357ae635e91b43e9c250ed35a202 (patch)
tree6dc83a41d83df695364a17a96674ada3586d68ec /CMAKE/CheckFortranIntSize.cmake
parent1a1c5a44dfaa87cb8a6292e03c57d77b987320b4 (diff)
downloadlapack-8326a972ee36357ae635e91b43e9c250ed35a202.tar.gz
lapack-8326a972ee36357ae635e91b43e9c250ed35a202.tar.bz2
lapack-8326a972ee36357ae635e91b43e9c250ed35a202.zip
Re-worked the type size check to be much more compact
- Chuck Atkins (Kitware)
Diffstat (limited to 'CMAKE/CheckFortranIntSize.cmake')
-rw-r--r--CMAKE/CheckFortranIntSize.cmake60
1 files changed, 0 insertions, 60 deletions
diff --git a/CMAKE/CheckFortranIntSize.cmake b/CMAKE/CheckFortranIntSize.cmake
deleted file mode 100644
index d575e2e8..00000000
--- a/CMAKE/CheckFortranIntSize.cmake
+++ /dev/null
@@ -1,60 +0,0 @@
-# This module perdorms several try-compiles to determine the default integer
-# size being used by the fortran compiler
-#
-# After execution, the following variable is set:
-#
-# SIZEOF_INTEGER - Number of bytes used to store the default integer type
-# Will be set to 1, 2, 4, 8 or 16 if successful, otherwise it
-# will be unset
-#
-#=============================================================================
-# Author: Chuck Atkins
-# Copyright 2010
-#=============================================================================
-
-macro( CHECK_FORTRAN_INT_SIZE )
- if( NOT CMAKE_Fortran_COMPILER_SUPPORTS_F90 )
- message( FATAL_ERROR "Type size tests require Fortran 90 support" )
- endif()
- if( NOT SIZEOF_INTEGER )
- foreach( _TEST_SIZE 1 2 4 8 16 )
- message( STATUS "Testing default integer*${_TEST_SIZE} - " )
- set( _TEST_FILE ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/testFortranInteger${_TEST_SIZE}.f90 )
- file( WRITE ${_TEST_FILE} "
- module check_int_size
- interface int_size
- function int_size_${_TEST_SIZE}(a) result(int_size)
- integer*${_TEST_SIZE} a
- integer int_size
- end function int_size_${_TEST_SIZE}
- end interface
- end module
-
- program check_int_size_${_TEST_SIZE}
- use check_int_size
- integer a, b
- a = 7
- b = int_size(a)
- end program
-
- function int_size_${_TEST_SIZE}(a) result(int_size)
- integer*4 a
- int_size = 7
- end function
- ")
- try_compile( SIZEOF_INTEGER ${CMAKE_BINARY_DIR} ${_TEST_FILE} )
- if( SIZEOF_INTEGER )
- message( STATUS "Testing default integer*${_TEST_SIZE} - found" )
- set( SIZEOF_INTEGER ${_TEST_SIZE} CACHE INTERNAL "Size of the default INTEGER type" FORCE )
- break()
- else()
- message( STATUS "Testing default integer*${_TEST_SIZE} - not found" )
- endif()
- endforeach()
- endif()
-
- if( NOT SIZEOF_INTEGER )
- unset( SIZEOF_INTEGER )
- endif()
-endmacro()
-