I've come across some projects where the source files listed in their
add_executable() and add_library() commands do not have file extensions. It
seems that CMake still finds the sources by trying some set of file
suffixes. This is not documented behaviour, but it does show up in error
messages if you give those commands a file name for a non-existent source.
For example, if I specify a full filename which doesn't exist, I see an
error message similar to the following:
CMake Error at /somepath/CMakeLists.txt:10 (add_library):
Cannot find source file:
../somethingThatDoesNotExist.h
Tried extensions .c .C .c++ .cc .cpp .cxx .m .M .mm .h .hh .h++ .hm .hpp
.hxx .in .txx
So my question is whether specifying source file names without extensions
is a feature which is simply missing documentation or is it an undocumented
feature that projects are not supposed to use? Since there are error
messages like the above, it would seem that the latter would be a harder
position to justify.
--
Craig Scott
Melbourne, Australia
https://crascit.com
--
Powered by www.kitware.com
Please keep messages on-topic and check the CMake FAQ at:
http://www.cmake.org/Wiki/CMake_FAQ
Kitware offers various services to support the CMake community. For more
information on each offering, please visit:
CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html
Visit other Kitware open-source projects at
http://www.kitware.com/opensource/opensource.html
Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake-developers