Use the version range feature introduced in 3.12. On CMake <3.12 the extra dots are simply interpreted as extra version number separators. The fallback for ancient CMake versions is kept.