# Use this to set include paths which needs to be used by any target depending # on a library. After the library name, you pass any number of paths. macro(ROSA_set_external_include_reqs library) set(${library}_EXTERNAL_INCLUDES ${ARGN} CACHE INTERNAL "Externally required include paths for ${library}") endmacro() # Use this for a target to register library dependencies. # It also adds external include paths if the library have set any. macro(ROSA_add_library_dependencies target dependencies) foreach( dependency ${dependencies} ) target_link_libraries(${target} ${dependency}) if( ${dependency}_EXTERNAL_INCLUDES ) include_directories(${${dependency}_EXTERNAL_INCLUDES}) endif() endforeach() endmacro()