Bonjour ! Comme indiqué, je pense qu'il les essaye tous (en connaissant la commande pour le lancer (cl.exe pour visual par exemple), si la commande réussit, le compilateur est présent et on peut en récupérer la version, sinon, c'est qu'il n'est pas (ou mal) installé.
Pour récupérer la liste, aucune idée, si c'est fait dans l'exécutable en lui même, cela ne va pas être facile, si c'est fait dans les règles CMake, il y aura peut-être moyen de moyenner (ça va se voir que je ne pratique pas CMake )
---------------
On n'est jamais très fort pour ce calcul !