[cmake-commits] king committed CMakeDetermineCCompiler.cmake 1.48 1.49 CMakeDetermineCXXCompiler.cmake 1.41 1.42 CMakeDetermineFortranCompiler.cmake 1.19 1.20 CMakeForceCompiler.cmake 1.5 1.6 CMakeTestCCompiler.cmake 1.22 1.23 CMakeTestCXXCompiler.cmake 1.16 1.17

cmake-commits at cmake.org cmake-commits at cmake.org
Sun Feb 3 17:24:52 EST 2008


Update of /cvsroot/CMake/CMake/Modules
In directory public:/mounts/ram/cvs-serv6980/Modules

Modified Files:
	CMakeDetermineCCompiler.cmake CMakeDetermineCXXCompiler.cmake 
	CMakeDetermineFortranCompiler.cmake CMakeForceCompiler.cmake 
	CMakeTestCCompiler.cmake CMakeTestCXXCompiler.cmake 
Log Message:
BUG: When forcing the C and CXX compilers do not try to detect the ABI information.  Cleanup configured language compiler info files by always using @ONLY.  This addresses bug#6297.


Index: CMakeDetermineCXXCompiler.cmake
===================================================================
RCS file: /cvsroot/CMake/CMake/Modules/CMakeDetermineCXXCompiler.cmake,v
retrieving revision 1.41
retrieving revision 1.42
diff -u -d -r1.41 -r1.42
--- CMakeDetermineCXXCompiler.cmake	18 Jul 2007 14:52:53 -0000	1.41
+++ CMakeDetermineCXXCompiler.cmake	3 Feb 2008 22:24:50 -0000	1.42
@@ -141,7 +141,8 @@
 INCLUDE(CMakeFindBinUtils)
 
 # configure all variables set in this file
-CONFIGURE_FILE(${CMAKE_ROOT}/Modules/CMakeCXXCompiler.cmake.in 
-               ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeCXXCompiler.cmake IMMEDIATE)
+CONFIGURE_FILE(${CMAKE_ROOT}/Modules/CMakeCXXCompiler.cmake.in
+               ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeCXXCompiler.cmake
+               @ONLY)
 
 SET(CMAKE_CXX_COMPILER_ENV_VAR "CXX")

Index: CMakeTestCCompiler.cmake
===================================================================
RCS file: /cvsroot/CMake/CMake/Modules/CMakeTestCCompiler.cmake,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -d -r1.22 -r1.23
--- CMakeTestCCompiler.cmake	21 Jan 2008 23:30:17 -0000	1.22
+++ CMakeTestCCompiler.cmake	3 Feb 2008 22:24:50 -0000	1.23
@@ -42,13 +42,18 @@
   ENDIF(C_TEST_WAS_RUN)
   SET(CMAKE_C_COMPILER_WORKS 1 CACHE INTERNAL "")
 
-  # Try to identify the ABI and configure it into CMakeCCompiler.cmake
-  INCLUDE(${CMAKE_ROOT}/Modules/CMakeDetermineCompilerABI.cmake)
-  CMAKE_DETERMINE_COMPILER_ABI(C ${CMAKE_ROOT}/Modules/CMakeCCompilerABI.c)
-  CONFIGURE_FILE(
-    ${CMAKE_ROOT}/Modules/CMakeCCompiler.cmake.in
-    ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeCCompiler.cmake
-    @ONLY
-    )
+  IF(CMAKE_C_COMPILER_FORCED)
+    # The compiler was forced by the CMAKE_FORCE_C_COMPILER macro.
+    # Assume the user has configured all compiler information.
+  ELSE(CMAKE_C_COMPILER_FORCED)
+    # Try to identify the ABI and configure it into CMakeCCompiler.cmake
+    INCLUDE(${CMAKE_ROOT}/Modules/CMakeDetermineCompilerABI.cmake)
+    CMAKE_DETERMINE_COMPILER_ABI(C ${CMAKE_ROOT}/Modules/CMakeCCompilerABI.c)
+    CONFIGURE_FILE(
+      ${CMAKE_ROOT}/Modules/CMakeCCompiler.cmake.in
+      ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeCCompiler.cmake
+      @ONLY
+      )
+  ENDIF(CMAKE_C_COMPILER_FORCED)
 ENDIF(NOT CMAKE_C_COMPILER_WORKS)
 

Index: CMakeTestCXXCompiler.cmake
===================================================================
RCS file: /cvsroot/CMake/CMake/Modules/CMakeTestCXXCompiler.cmake,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -d -r1.16 -r1.17
--- CMakeTestCXXCompiler.cmake	21 Jan 2008 23:30:17 -0000	1.16
+++ CMakeTestCXXCompiler.cmake	3 Feb 2008 22:24:50 -0000	1.17
@@ -35,12 +35,17 @@
   ENDIF(CXX_TEST_WAS_RUN)
   SET(CMAKE_CXX_COMPILER_WORKS 1 CACHE INTERNAL "")
 
-  # Try to identify the ABI and configure it into CMakeCXXCompiler.cmake
-  INCLUDE(${CMAKE_ROOT}/Modules/CMakeDetermineCompilerABI.cmake)
-  CMAKE_DETERMINE_COMPILER_ABI(CXX ${CMAKE_ROOT}/Modules/CMakeCXXCompilerABI.cpp)
-  CONFIGURE_FILE(
-    ${CMAKE_ROOT}/Modules/CMakeCXXCompiler.cmake.in
-    ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeCXXCompiler.cmake
-    @ONLY
-    )
+  IF(CMAKE_CXX_COMPILER_FORCED)
+    # The compiler was forced by the CMAKE_FORCE_CXX_COMPILER macro.
+    # Assume the user has configured all compiler information.
+  ELSE(CMAKE_CXX_COMPILER_FORCED)
+    # Try to identify the ABI and configure it into CMakeCXXCompiler.cmake
+    INCLUDE(${CMAKE_ROOT}/Modules/CMakeDetermineCompilerABI.cmake)
+    CMAKE_DETERMINE_COMPILER_ABI(CXX ${CMAKE_ROOT}/Modules/CMakeCXXCompilerABI.cpp)
+    CONFIGURE_FILE(
+      ${CMAKE_ROOT}/Modules/CMakeCXXCompiler.cmake.in
+      ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeCXXCompiler.cmake
+      @ONLY
+      )
+  ENDIF(CMAKE_CXX_COMPILER_FORCED)
 ENDIF(NOT CMAKE_CXX_COMPILER_WORKS)

Index: CMakeForceCompiler.cmake
===================================================================
RCS file: /cvsroot/CMake/CMake/Modules/CMakeForceCompiler.cmake,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- CMakeForceCompiler.cmake	24 Aug 2007 12:40:57 -0000	1.5
+++ CMakeForceCompiler.cmake	3 Feb 2008 22:24:50 -0000	1.6
@@ -38,14 +38,14 @@
   SET(CMAKE_C_COMPILER_ID_RUN TRUE)
   SET(CMAKE_C_COMPILER_ID ${id})
   SET(CMAKE_C_COMPILER_WORKS TRUE)
+  SET(CMAKE_C_COMPILER_FORCED TRUE)
 
   # Set old compiler and platform id variables.
   IF("${CMAKE_C_COMPILER_ID}" MATCHES "GNU")
     SET(CMAKE_COMPILER_IS_GNUCC 1)
   ENDIF("${CMAKE_C_COMPILER_ID}" MATCHES "GNU")
 
-  SET(CMAKE_SIZEOF_VOID_P ${sizeof_void} CACHE STRING "sizeof void")
-  SET(HAVE_CMAKE_SIZEOF_VOID_P TRUE CACHE INTERNAL "have sizeof void")
+  SET(CMAKE_C_SIZEOF_DATA_PTR ${sizeof_void})
 ENDMACRO(CMAKE_FORCE_C_COMPILER)
 
 MACRO(CMAKE_FORCE_CXX_COMPILER compiler id)
@@ -53,6 +53,7 @@
   SET(CMAKE_CXX_COMPILER_ID_RUN TRUE)
   SET(CMAKE_CXX_COMPILER_ID ${id})
   SET(CMAKE_CXX_COMPILER_WORKS TRUE)
+  SET(CMAKE_CXX_COMPILER_FORCED TRUE)
 
   IF("${CMAKE_CXX_COMPILER_ID}" MATCHES "GNU")
     SET(CMAKE_COMPILER_IS_GNUCXX 1)

Index: CMakeDetermineFortranCompiler.cmake
===================================================================
RCS file: /cvsroot/CMake/CMake/Modules/CMakeDetermineFortranCompiler.cmake,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -d -r1.19 -r1.20
--- CMakeDetermineFortranCompiler.cmake	7 Jan 2008 15:27:28 -0000	1.19
+++ CMakeDetermineFortranCompiler.cmake	3 Feb 2008 22:24:50 -0000	1.20
@@ -134,6 +134,7 @@
 INCLUDE(CMakeFindBinUtils)
 
 # configure variables set in this file for fast reload later on
-CONFIGURE_FILE(${CMAKE_ROOT}/Modules/CMakeFortranCompiler.cmake.in 
-  ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeFortranCompiler.cmake IMMEDIATE)
+CONFIGURE_FILE(${CMAKE_ROOT}/Modules/CMakeFortranCompiler.cmake.in
+  ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeFortranCompiler.cmake
+  @ONLY)
 SET(CMAKE_Fortran_COMPILER_ENV_VAR "FC")

Index: CMakeDetermineCCompiler.cmake
===================================================================
RCS file: /cvsroot/CMake/CMake/Modules/CMakeDetermineCCompiler.cmake,v
retrieving revision 1.48
retrieving revision 1.49
diff -u -d -r1.48 -r1.49
--- CMakeDetermineCCompiler.cmake	18 Jul 2007 14:52:53 -0000	1.48
+++ CMakeDetermineCCompiler.cmake	3 Feb 2008 22:24:50 -0000	1.49
@@ -131,7 +131,8 @@
 INCLUDE(CMakeFindBinUtils)
 
 # configure variables set in this file for fast reload later on
-CONFIGURE_FILE(${CMAKE_ROOT}/Modules/CMakeCCompiler.cmake.in 
-               "${CMAKE_PLATFORM_ROOT_BIN}/CMakeCCompiler.cmake" IMMEDIATE)
+CONFIGURE_FILE(${CMAKE_ROOT}/Modules/CMakeCCompiler.cmake.in
+               "${CMAKE_PLATFORM_ROOT_BIN}/CMakeCCompiler.cmake"
+               @ONLY)
 
 SET(CMAKE_C_COMPILER_ENV_VAR "CC")



More information about the Cmake-commits mailing list