Linking a C++/CLR shared library to another C++/CLR shared library

I have two C++/CLR shared libraries where one depends on the other. I have set the VS_DOTNET_REFERENCE to point to the DLL as follows

set_target_properties(clr1 PROPERTIES
COMMON_LANGUAGE_RUNTIME ""
VS_DOTNET_REFERENCES "System"
VS_DOTNET_REFERENCE_clr2 "${CMAKE_CURRENT_BINARY_DIR}/clr2.dll"
)

However if I try to add a dependency (either add_dependency or target_link_libraries) so that clr2 is built before clr1 I get linker errors stating that clr2.lib cannot be found; clr2.lib is never built.

If I create a dummy custom target to produce an intermediate dependency then there is no issue with linking.

add_custom_target(clr2Dep)
add_dependencies(clr2Dep clr2)
add_dependencies(clr1 clr2Dep)

What is the correct way to specify this type of build order dependency?