浏览代码

ENH: Adding test for using HEADER_FILE_ONLY to avoid building a .cxx file.

Brad King 18 年之前
父节点
当前提交
88b31bd007

+ 5 - 1
Tests/Complex/Executable/CMakeLists.txt

@@ -19,10 +19,14 @@ ENDIF(COMPLEX_TEST_CMAKELIB)
 SET(COMPLEX_LIBS CMakeTestLibrary;CMakeTestLibraryShared;CMakeTestCLibraryShared)
 LINK_LIBRARIES(${COMPLEX_LIBS})
 
+# Test forcing a .cxx file to not build.
+SET_SOURCE_FILES_PROPERTIES(complex_nobuild.cxx PROPERTIES
+  HEADER_FILE_ONLY 1)
+
 ADD_EXECUTABLE(A A.cxx A.hh A.h A.txt)
 ADD_EXECUTABLE(complex complex testcflags.c )
 #  Sub1/NameConflictTest.c Sub2/NameConflictTest.c)
-ADD_EXECUTABLE(complex.file complex.file.cxx)
+ADD_EXECUTABLE(complex.file complex.file.cxx complex_nobuild.cxx)
 IF(COMPLEX_TEST_CMAKELIB)
   TARGET_LINK_LIBRARIES(complex CMakeLib cmsys cmexpat cmzlib cmtar)
 ENDIF(COMPLEX_TEST_CMAKELIB)

+ 1 - 0
Tests/Complex/Executable/complex_nobuild.cxx

@@ -0,0 +1 @@
+#error "This file should not be compiled."

+ 5 - 1
Tests/ComplexOneConfig/Executable/CMakeLists.txt

@@ -19,10 +19,14 @@ ENDIF(COMPLEX_TEST_CMAKELIB)
 SET(COMPLEX_LIBS CMakeTestLibrary;CMakeTestLibraryShared;CMakeTestCLibraryShared)
 LINK_LIBRARIES(${COMPLEX_LIBS})
 
+# Test forcing a .cxx file to not build.
+SET_SOURCE_FILES_PROPERTIES(complex_nobuild.cxx PROPERTIES
+  HEADER_FILE_ONLY 1)
+
 ADD_EXECUTABLE(A A.cxx A.hh A.h A.txt)
 ADD_EXECUTABLE(complex complex testcflags.c )
 #  Sub1/NameConflictTest.c Sub2/NameConflictTest.c)
-ADD_EXECUTABLE(complex.file complex.file.cxx)
+ADD_EXECUTABLE(complex.file complex.file.cxx complex_nobuild.cxx)
 IF(COMPLEX_TEST_CMAKELIB)
   TARGET_LINK_LIBRARIES(complex CMakeLib cmsys cmexpat cmzlib cmtar)
 ENDIF(COMPLEX_TEST_CMAKELIB)

+ 1 - 0
Tests/ComplexOneConfig/Executable/complex_nobuild.cxx

@@ -0,0 +1 @@
+#error "This file should not be compiled."

+ 5 - 1
Tests/ComplexRelativePaths/Executable/CMakeLists.txt

@@ -19,10 +19,14 @@ ENDIF(COMPLEX_TEST_CMAKELIB)
 SET(COMPLEX_LIBS CMakeTestLibrary;CMakeTestLibraryShared;CMakeTestCLibraryShared)
 LINK_LIBRARIES(${COMPLEX_LIBS})
 
+# Test forcing a .cxx file to not build.
+SET_SOURCE_FILES_PROPERTIES(complex_nobuild.cxx PROPERTIES
+  HEADER_FILE_ONLY 1)
+
 ADD_EXECUTABLE(A A.cxx A.hh A.h A.txt)
 ADD_EXECUTABLE(complex complex testcflags.c )
 #  Sub1/NameConflictTest.c Sub2/NameConflictTest.c)
-ADD_EXECUTABLE(complex.file complex.file.cxx)
+ADD_EXECUTABLE(complex.file complex.file.cxx complex_nobuild.cxx)
 IF(COMPLEX_TEST_CMAKELIB)
   TARGET_LINK_LIBRARIES(complex CMakeLib cmsys cmexpat cmzlib cmtar)
 ENDIF(COMPLEX_TEST_CMAKELIB)

+ 1 - 0
Tests/ComplexRelativePaths/Executable/complex_nobuild.cxx

@@ -0,0 +1 @@
+#error "This file should not be compiled."