diff options
author | Bill Hoffman <bill.hoffman@kitware.com> | 2010-12-20 20:25:16 (GMT) |
---|---|---|
committer | Bill Hoffman <bill.hoffman@kitware.com> | 2010-12-20 20:25:16 (GMT) |
commit | f578381e6624b83843a1b9ff079a8073f7bc210f (patch) | |
tree | 36dd32e852db797d07137ab2b33ed257198d165c /Tests | |
parent | 34a2dee75d80afe175bd041e26be10da9c09a74f (diff) | |
download | CMake-f578381e6624b83843a1b9ff079a8073f7bc210f.zip CMake-f578381e6624b83843a1b9ff079a8073f7bc210f.tar.gz CMake-f578381e6624b83843a1b9ff079a8073f7bc210f.tar.bz2 |
Fix vs2010 project generation error when HEADER_FILE_ONLY is set.
In vs2010 a bad project file could be generated if a .c or .cxx file
was marked with HEADER_FILE_ONLY, if it was in a library that contained
both c and c++ code. This fixes the error in the code, and adds a test
for this case.
Diffstat (limited to 'Tests')
-rw-r--r-- | Tests/Complex/Executable/CMakeLists.txt | 9 | ||||
-rw-r--r-- | Tests/Complex/Executable/complex_nobuild.c | 1 |
2 files changed, 9 insertions, 1 deletions
diff --git a/Tests/Complex/Executable/CMakeLists.txt b/Tests/Complex/Executable/CMakeLists.txt index 98b29bb..08cc7d4 100644 --- a/Tests/Complex/Executable/CMakeLists.txt +++ b/Tests/Complex/Executable/CMakeLists.txt @@ -49,10 +49,17 @@ LINK_LIBRARIES(${COMPLEX_LIBS}) SET_SOURCE_FILES_PROPERTIES(complex_nobuild.cxx PROPERTIES HEADER_FILE_ONLY 1) +# Test forcing a .c file to not build. +# This makes sure a mixed language library is created +# with header file only sources +SET_SOURCE_FILES_PROPERTIES(complex_nobuild.c 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 complex_nobuild.cxx) +ADD_EXECUTABLE(complex.file complex.file.cxx complex_nobuild.cxx + complex_nobuild.c) IF(COMPLEX_TEST_CMAKELIB) TARGET_LINK_LIBRARIES(complex CMakeLib cmsys cmexpat cmzlib cmlibarchive cmbzip2 cmcurl) ENDIF(COMPLEX_TEST_CMAKELIB) diff --git a/Tests/Complex/Executable/complex_nobuild.c b/Tests/Complex/Executable/complex_nobuild.c new file mode 100644 index 0000000..6b3c2c1 --- /dev/null +++ b/Tests/Complex/Executable/complex_nobuild.c @@ -0,0 +1 @@ +#error "This file should not be compiled." |