From a443308c37c41edf75dabaf87feee33bb57212b6 Mon Sep 17 00:00:00 2001 From: Brad King Date: Thu, 6 May 2010 11:23:41 -0400 Subject: Load compiler information after configuring it After configuring CMakeFiles/CMakeCompiler.cmake in the build tree the second time (to store ABI information), include it immediately. This allows any logic and settings in the compiler information files to be used without duplicating it in CMakeDetermineCompilerABI.cmake. The change in commit "Use Fortran ABI detection results conservatively" (2010-05-05) needs this to use the same logic to set CMAKE_SIZEOF_VOID_P during first and later runs of CMake. --- Modules/CMakeDetermineCompilerABI.cmake | 2 -- Modules/CMakeTestCCompiler.cmake | 1 + Modules/CMakeTestCXXCompiler.cmake | 1 + Modules/CMakeTestFortranCompiler.cmake | 1 + 4 files changed, 3 insertions(+), 2 deletions(-) diff --git a/Modules/CMakeDetermineCompilerABI.cmake b/Modules/CMakeDetermineCompilerABI.cmake index c8f4c99..aa4733b 100644 --- a/Modules/CMakeDetermineCompilerABI.cmake +++ b/Modules/CMakeDetermineCompilerABI.cmake @@ -49,12 +49,10 @@ FUNCTION(CMAKE_DETERMINE_COMPILER_ABI lang src) IF(ABI_SIZEOF_DPTR) SET(CMAKE_${lang}_SIZEOF_DATA_PTR "${ABI_SIZEOF_DPTR}" PARENT_SCOPE) - SET(CMAKE_SIZEOF_VOID_P "${ABI_SIZEOF_DPTR}" PARENT_SCOPE) ENDIF(ABI_SIZEOF_DPTR) IF(ABI_NAME) SET(CMAKE_${lang}_COMPILER_ABI "${ABI_NAME}" PARENT_SCOPE) - SET(CMAKE_INTERNAL_PLATFORM_ABI "${ABI_NAME}" PARENT_SCOPE) ENDIF(ABI_NAME) # Parse implicit linker information for this language, if available. diff --git a/Modules/CMakeTestCCompiler.cmake b/Modules/CMakeTestCCompiler.cmake index eeaff7d..bac9932 100644 --- a/Modules/CMakeTestCCompiler.cmake +++ b/Modules/CMakeTestCCompiler.cmake @@ -74,6 +74,7 @@ ELSE(NOT CMAKE_C_COMPILER_WORKS) ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeCCompiler.cmake @ONLY IMMEDIATE # IMMEDIATE must be here for compatibility mode <= 2.0 ) + INCLUDE(${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeCCompiler.cmake) ENDIF(CMAKE_C_COMPILER_FORCED) ENDIF(NOT CMAKE_C_COMPILER_WORKS) diff --git a/Modules/CMakeTestCXXCompiler.cmake b/Modules/CMakeTestCXXCompiler.cmake index 72bb8f2..06ef301 100644 --- a/Modules/CMakeTestCXXCompiler.cmake +++ b/Modules/CMakeTestCXXCompiler.cmake @@ -67,5 +67,6 @@ ELSE(NOT CMAKE_CXX_COMPILER_WORKS) ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeCXXCompiler.cmake @ONLY IMMEDIATE # IMMEDIATE must be here for compatibility mode <= 2.0 ) + INCLUDE(${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeCXXCompiler.cmake) ENDIF(CMAKE_CXX_COMPILER_FORCED) ENDIF(NOT CMAKE_CXX_COMPILER_WORKS) diff --git a/Modules/CMakeTestFortranCompiler.cmake b/Modules/CMakeTestFortranCompiler.cmake index 6f419c2..61d6336 100644 --- a/Modules/CMakeTestFortranCompiler.cmake +++ b/Modules/CMakeTestFortranCompiler.cmake @@ -90,5 +90,6 @@ ELSE(NOT CMAKE_Fortran_COMPILER_WORKS) ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeFortranCompiler.cmake @ONLY IMMEDIATE # IMMEDIATE must be here for compatibility mode <= 2.0 ) + INCLUDE(${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeFortranCompiler.cmake) ENDIF(CMAKE_Fortran_COMPILER_FORCED) ENDIF(NOT CMAKE_Fortran_COMPILER_WORKS) -- cgit v0.12