2009/4/3 Robert Blake <rbl...@jhu.edu>:
> I'm converting a large mixed C++/C cmake application to C++.  The project
> has many ".c" files that I would like to compile with the C++ compiler
> instead of the C compiler.  Does anyone know the proper way to do this in
> CMake?
>
> Things I've tried:
> 1.) Changing CMAKE_C_COMPILER myself: Usually CMake doesn't let you change
> CMAKE_C_COMPILER, but there are ways around that.  This way feels like a
> hack.  The output while compiling still says "Compiling C".  In addition,
> forcing CMAKE_*_COMPILER to change makes it very difficult to run plane
> cmake on Unix machines where curses is not installed.
>
> 2.) Tell CMake that ".c" files are in the CXX language:  I've tried
> PROJECT(Blah CXX)
> list(APPEND CMAKE_CXX_SOURCE_FILE_EXTENSIONS c)
>
> When I run CMake on my project with these changes, I get errors like:
>
> CMake Error: Cannot determine link language for target "foobar"
>
> ...for all my targets that depend only on .c files.

Did you try to force LANGUAGE property for those files:

set_source_files_properties(file1.c file2.c
                                       PROPERTIES LANGUAGE C)



-- 
Erk
_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to