[c++] How to properly add include directories with CMake?
First, you use
include_directories() to tell CMake to add the directory as
-I to compilation command line. Second, you list the headers in your
As an example, if your project's sources are in
src, and you need headers from
include, you could do it like this:
include_directories(include) add_executable(MyExec src/main.c src/other_source.c include/header1.h include/header2.h )
About a year ago I asked about header dependencies in CMake.
I realized recently that the issue seemed to be that CMake considered those header files to be external to the project. At least, when generating a Code::Blocks project the header files do not appear within the project (the source files do). It therefore seems to me that CMake consider those headers to be external to the project, and does not track them in the depends.
A quick search in the CMake tutorial only pointed to
include_directories which does not seem to do what I wish...
What is the proper way to signal to CMake that a particular directory contain headers to be included, and that those headers should be tracked by the Makefile generated ?