Cyclic dependencies in add_dependencies
add_dependencies does not fail generation when a cyclic dependency is created. This makes MANUALLY_ADDED_DEPENDENCIES possible to contain cycles.
Example:
add_executable(cyclebug main.cpp)
add_dependencies(cyclebug cyclebug)
get_target_property(cyclebug_dependencies cyclebug MANUALLY_ADDED_DEPENDENCIES)
message("cyclebug manually depends on ${cyclebug_dependencies}")
Observing the generated VS project, cyclebug is not depending on itself, so the filtering is happening at some point, however, it leaves MANUALLY_ADDED_DEPENDENCIES with invalid values.
Would be great to have the validation happen in add_dependencies as it happens in target_link_libraries.