Skip to content
  • Stephen Kelly's avatar
    Add CMAKE_BUILD_INTERFACE_INCLUDES build-variable. · 9ce1b9ef
    Stephen Kelly authored and Brad King's avatar Brad King committed
    This makes
    
     set(CMAKE_BUILD_INTERFACE_INCLUDES ON)
    
    add the equivalent of
    
     set_property(TARGET tgt APPEND PROPERTY
       INTERFACE_INCLUDE_DIRECTORIES
       $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR};${CMAKE_CURRENT_BINARY_DIR}>
     )
    
    to every target.
    
    If the headers are in CMAKE_CURRENT_SOURCE_DIR, and the generated headers
    are in CMAKE_CURRENT_BINARY_DIR, this is a convenient way to build a target
    bar, which depends on foo, just by using target_link_libraries() and adding
    the INTERFACE_INCLUDE_DIRECTORIES to the INCLUDE_DIRECTORIES of the target
    being linked. There will be more-convenient porcelain API to consume the
    property in the future.
    9ce1b9ef