소스 검색

Run PDBDirectoryAndName test on MSVC and Intel

Move it out of the condition that also accepts MinGW/MSYS.
Teach the test to allow the Intel for Windows compiler but
do not verify the results because the compiler does not
seem to write PDB output in all cases.
Brad King 13 년 전
부모
커밋
2ccca05fad
2개의 변경된 파일8개의 추가작업 그리고 3개의 파일을 삭제
  1. 1 1
      Tests/CMakeLists.txt
  2. 7 2
      Tests/PDBDirectoryAndName/CMakeLists.txt

+ 1 - 1
Tests/CMakeLists.txt

@@ -1254,12 +1254,12 @@ ${CMake_BINARY_DIR}/bin/cmake -DVERSION=master -P ${CMake_SOURCE_DIR}/Utilities/
 
   if(CMAKE_TEST_MSVC)
     ADD_TEST_MACRO(ForceInclude foo)
+    ADD_TEST_MACRO(PDBDirectoryAndName myexe)
     ADD_TEST_MACRO(PrecompiledHeader foo)
   endif()
   if(CMAKE_TEST_MSVC OR
       "${CMAKE_TEST_GENERATOR}" MATCHES "(MSYS|MinGW) Makefiles")
     ADD_TEST_MACRO(ModuleDefinition example_exe)
-    ADD_TEST_MACRO(PDBDirectoryAndName myexe)
   endif()
 
   ADD_TEST_MACRO(CheckCompilerRelatedVariables CheckCompilerRelatedVariables)

+ 7 - 2
Tests/PDBDirectoryAndName/CMakeLists.txt

@@ -1,8 +1,9 @@
 cmake_minimum_required(VERSION 2.8)
 project(PDBDirectoryAndName C)
 
-if(NOT MSVC)
-    MESSAGE(FATAL_ERROR "The PDB file test works only with MSVC")
+# Make sure the proper compiler is in use.
+if(NOT MSVC AND NOT "${CMAKE_C_COMPILER_ID}" MATCHES "^(Intel)$")
+  message(FATAL_ERROR "The PDBDirectoryAndName test works only with MSVC or Intel")
 endif()
 
 set(my_targets "")
@@ -57,6 +58,10 @@ target_link_libraries(myexe2 mylibA mylibD)
 if("${CMAKE_GENERATOR}" MATCHES "Visual Studio 6")
   return()
 endif()
+# PDB output not fully implemented for Intel
+if("${CMAKE_C_COMPILER_ID}" MATCHES "^(Intel)$")
+  return()
+endif()
 
 set(pdbs "")
 foreach(t ${my_targets})