Alexander Neundorf wrote:
in KDE we have the problem that e.g. when compiling kdebase the headers in the source dir should be preferred over the installed ones. Usually we would do include_directories( ${KDE4_INCLUDES} ) in the toplevel CMakeLists.txt. When adding more include dirs in CMakeLists.txt in deeper directories, these directories will be appended to the list of include dirs, except when used with the BEFORE keyword. But now we cannot realistically expect that every KDE developer will always remember the BEFORE keyword. So we had two ideas: make the behaviour configurable: # make prepend default: set(CMAKE_INCLUDE_DIRS_APPEND false) # to force appending: include_directories(AFTER dir1 dir2) Problem here: moving cmake files around to another project where this isn't set would change the behaviour. Second idea: include_directories(LAST dir1 dir2) which would have the effect that the listed directories would always be used after all other include dirs specified without the "LAST" keyword.

I think that will create two ordered lists of include directories
instead of one, which will just be confusing. I suggest creating a kde4_add_indluce_directories macro that adds the BEFORE option:

macro(kde4_add_indluce_directories)
  include_directories(BEFORE ${ARGN})
endmacro(kde4_add_indluce_directories)

-Brad
_______________________________________________
CMake mailing list
CMake@cmake.org
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to