Browse Source

BUG: Fixed building of C++-only projects and added a test.

Brad King 19 years ago
parent
commit
d56e6a9241
2 changed files with 20 additions and 0 deletions
  1. 10 0
      Modules/CMakeDetermineCXXCompiler.cmake
  2. 10 0
      Source/CMakeLists.txt

+ 10 - 0
Modules/CMakeDetermineCXXCompiler.cmake

@@ -42,6 +42,16 @@ IF(NOT CMAKE_CXX_COMPILER)
 ENDIF(NOT CMAKE_CXX_COMPILER)
 MARK_AS_ADVANCED(CMAKE_CXX_COMPILER)
 
+GET_FILENAME_COMPONENT(COMPILER_LOCATION "${CMAKE_CXX_COMPILER}" PATH)
+
+FIND_PROGRAM(CMAKE_AR NAMES ar PATHS ${COMPILER_LOCATION})
+
+FIND_PROGRAM(CMAKE_RANLIB NAMES ranlib)
+IF(NOT CMAKE_RANLIB)
+   SET(CMAKE_RANLIB : CACHE INTERNAL "noop for ranlib")
+ENDIF(NOT CMAKE_RANLIB)
+MARK_AS_ADVANCED(CMAKE_RANLIB)
+
 # do not test for GNU if the generator is visual studio
 IF(${CMAKE_GENERATOR} MATCHES "Visual Studio")
   SET(CMAKE_COMPILER_IS_GNUCXX_RUN 1)

+ 10 - 0
Source/CMakeLists.txt

@@ -504,6 +504,16 @@ IF(BUILD_TESTING)
     --build-two-config
     --test-command   conly)
 
+  ADD_TEST(CxxOnly  ${CMAKE_CTEST_COMMAND}
+    --build-and-test
+    "${CMake_SOURCE_DIR}/Tests/CxxOnly"
+    "${CMake_BINARY_DIR}/Tests/CxxOnly"
+    --build-generator ${CMAKE_TEST_GENERATOR}
+    --build-project cxxonly
+    --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+    --build-two-config
+    --test-command cxxonly)
+
   ADD_TEST(MacroTest ${CMAKE_CTEST_COMMAND}
     --build-and-test
     "${CMake_SOURCE_DIR}/Tests/MacroTest"