Acceptable names documentation
Valid target names seem to be documented in CMP0037 (which doesn't mention namespacing).
It would be useful to have an acceptable names documentation page, similar to Puppet.
I'm for example confused why the following is invalid:
cmake_minimum_required(VERSION 3.16)
project(reserved)
add_library(Wayland::stable::xdg-shell)
Resulting in:
CMake Error at CMakeLists.txt:4 (add_library):
The target name "Wayland::stable::xdg-shell" is reserved or not valid for
certain CMake features, such as generator expressions, and may result in
undefined behavior.