[CMake] include_directories(...) versus set_directory_properties(PROPERTIES INCLUDE_DIRECTORIES ...)

Brad King brad.king at kitware.com
Mon Feb 3 11:51:49 EST 2014


On 01/30/2014 03:08 AM, Marcel Loose wrote:
> cmake was consuming a whopping 14GB(!) of RAM memory.
[snip]
> include_directories() is used inside a macro that is called
> quite a lot in order to resolve cross-dependencies. This never was a
> problem, because CMake automatically performed de-duplication of include
> paths; until version 2.8.8.

IIUC it still does de-duplication but delays doing so until the
generation step.  Therefore in this use case the configuration
step buffers the duplicates.

Steve, David, having worked on these changes, what do you think
about teaching include_directories and target_include_directories
to skip appending a path that already exists in each dir/target
property?

-Brad



More information about the CMake mailing list