From ced61f5722d65525fd4b8dbf96d5ea8f254099c2 Mon Sep 17 00:00:00 2001 From: Bill Hoffman Date: Thu, 2 Sep 2010 11:56:40 -0400 Subject: Let CMake recognize .CPP .CXX and .C++ as c++ files. --- Modules/CMakeCXXCompiler.cmake.in | 4 ++-- Tests/CxxOnly/CMakeLists.txt | 2 +- Tests/CxxOnly/cxxonly.cxx | 4 ++++ Tests/CxxOnly/test.C++ | 1 + Tests/CxxOnly/test.CPP | 1 + Tests/CxxOnly/test.CXX | 1 + 6 files changed, 10 insertions(+), 3 deletions(-) create mode 100644 Tests/CxxOnly/test.C++ create mode 100644 Tests/CxxOnly/test.CPP create mode 100644 Tests/CxxOnly/test.CXX diff --git a/Modules/CMakeCXXCompiler.cmake.in b/Modules/CMakeCXXCompiler.cmake.in index b264da1..e1b25d2 100644 --- a/Modules/CMakeCXXCompiler.cmake.in +++ b/Modules/CMakeCXXCompiler.cmake.in @@ -21,8 +21,8 @@ IF(CMAKE_COMPILER_IS_MINGW) SET(MINGW 1) ENDIF(CMAKE_COMPILER_IS_MINGW) SET(CMAKE_CXX_COMPILER_ID_RUN 1) -SET(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;H;o;O;obj;OBJ;def;DEF;rc;RC) -SET(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;m;mm) +SET(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC) +SET(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;m;mm;C++;CC;CPP;CXX) SET(CMAKE_CXX_LINKER_PREFERENCE 30) SET(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1) diff --git a/Tests/CxxOnly/CMakeLists.txt b/Tests/CxxOnly/CMakeLists.txt index bfc8271..8418ad9 100644 --- a/Tests/CxxOnly/CMakeLists.txt +++ b/Tests/CxxOnly/CMakeLists.txt @@ -2,7 +2,7 @@ project (CxxOnly CXX) set(CMAKE_DEBUG_POSTFIX "_test_debug_postfix") -add_library(testcxx1 STATIC libcxx1.cxx) +add_library(testcxx1 STATIC libcxx1.cxx test.CPP test.CXX test.C++) add_library(testcxx2 SHARED libcxx2.cxx) add_executable (CxxOnly cxxonly.cxx) target_link_libraries(CxxOnly testcxx1 testcxx2) diff --git a/Tests/CxxOnly/cxxonly.cxx b/Tests/CxxOnly/cxxonly.cxx index 99ccf3b..2996e65 100644 --- a/Tests/CxxOnly/cxxonly.cxx +++ b/Tests/CxxOnly/cxxonly.cxx @@ -1,10 +1,14 @@ #include "libcxx1.h" #include "libcxx2.h" +extern int testCPP; +extern int testCXX; +extern int testCplusplus; #include int main () { + testCPP = testCXX= testCplusplus = 1; if ( LibCxx1Class::Method() != 2.0 ) { printf("Problem with libcxx1\n"); diff --git a/Tests/CxxOnly/test.C++ b/Tests/CxxOnly/test.C++ new file mode 100644 index 0000000..6049ef1 --- /dev/null +++ b/Tests/CxxOnly/test.C++ @@ -0,0 +1 @@ +int testCplusplus; diff --git a/Tests/CxxOnly/test.CPP b/Tests/CxxOnly/test.CPP new file mode 100644 index 0000000..8a3cde2 --- /dev/null +++ b/Tests/CxxOnly/test.CPP @@ -0,0 +1 @@ +int testCPP; diff --git a/Tests/CxxOnly/test.CXX b/Tests/CxxOnly/test.CXX new file mode 100644 index 0000000..c05f788 --- /dev/null +++ b/Tests/CxxOnly/test.CXX @@ -0,0 +1 @@ +int testCXX; -- cgit v0.12