The source and header files will not magically be found in other
directories. You have to tell CMake where to find them. Try this in the
top-level CMakeLists.txt file:
ADD_LIBRARY(mylib src/x.cpp incl/x.hpp)
SOURCE_GROUP("Include Files" FILES incl/x.hpp)
Basically source files have to be named with a relative path to the
location of the CMakeLists.txt file. This may also work from
lib/CMakeLists.txt:
ADD_LIBRARY(mylib ../src/x.cpp ../incl/x.hpp)
SOURCE_GROUP("Include Files" FILES ../incl/x.hpp)
It works both ways, thank you very much!
__
As an aside, I would add that the "simple example" off of the documentation
page starts one off in the habit of coding this:
ADD_LIBRARY(mylib ../src/x.cpp )
(which results in no "Header Files" group being created)
instead of this:
ADD_LIBRARY(mylib ../src/x.cpp ../incl/x.hpp)
(which results in a "Header Files" group being created for you )
One could read the example as implying that the .cpp dependence upon .hpp is
implied and "automagical".
What actually seems to be "automagical" is the creation of a "Header Files"
group when header files are explicitly listed as dependencies.
I grant that the example is not referring to header files because it is "so
simple" that header files are not even present at all. However, I think it
might actually save people some run-around (taking myself as a case in
point!) if the example were just slightly more complex to illustrate the
"useful and proper" inclusion of header files in dependency lists (my $.02
worth).
Thanks again for the assistance! :^)
_______________________________________________
CMake mailing list
CMake@cmake.org
http://www.cmake.org/mailman/listinfo/cmake