diff options
author | Brad King <brad.king@kitware.com> | 2010-05-05 21:42:11 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2010-05-05 21:46:29 (GMT) |
commit | 0457d5315166892d6975ddf9829db7ecffb0499c (patch) | |
tree | 38ae16374cf08cc8910569c3027938b1e3758e5f /Modules/CMakeFortranCompiler.cmake.in | |
parent | 7883f952b06e378eef7662a42a8c466cbe5aa285 (diff) | |
download | CMake-0457d5315166892d6975ddf9829db7ecffb0499c.zip CMake-0457d5315166892d6975ddf9829db7ecffb0499c.tar.gz CMake-0457d5315166892d6975ddf9829db7ecffb0499c.tar.bz2 |
Use Fortran ABI detection results conservatively
We set CMAKE_Fortran_SIZEOF_DATA_PTR in the Fortran compiler information
file after detecting the compiler ABI. However, since Fortran does not
really have pointers, the preprocessor-based detection is unreliable.
The result is needed to set CMAKE_SIZEOF_VOID_P only for Fortran-only
projects because the value can come from C or C++ compilers otherwise.
Therefore when CMAKE_SIZEOF_VOID_P is available from another language we
should defer to it.
Diffstat (limited to 'Modules/CMakeFortranCompiler.cmake.in')
-rw-r--r-- | Modules/CMakeFortranCompiler.cmake.in | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/Modules/CMakeFortranCompiler.cmake.in b/Modules/CMakeFortranCompiler.cmake.in index ba2b46d..5558651 100644 --- a/Modules/CMakeFortranCompiler.cmake.in +++ b/Modules/CMakeFortranCompiler.cmake.in @@ -34,9 +34,9 @@ ENDIF(UNIX) SET(CMAKE_Fortran_SIZEOF_DATA_PTR "@CMAKE_Fortran_SIZEOF_DATA_PTR@") SET(CMAKE_Fortran_COMPILER_ABI "@CMAKE_Fortran_COMPILER_ABI@") -IF(CMAKE_Fortran_SIZEOF_DATA_PTR) +IF(CMAKE_Fortran_SIZEOF_DATA_PTR AND NOT CMAKE_SIZEOF_VOID_P) SET(CMAKE_SIZEOF_VOID_P "${CMAKE_Fortran_SIZEOF_DATA_PTR}") -ENDIF(CMAKE_Fortran_SIZEOF_DATA_PTR) +ENDIF() IF(CMAKE_Fortran_COMPILER_ABI) SET(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_Fortran_COMPILER_ABI}") |