Да. Don’t build — это не собирать. А «не поставлять» — когда вообще в дистрибутиве нет.
Да, идея с toolchain(s).cpp божественна. В смысле — http://llvm.org/svn/llvm-project/cfe/trunk/lib/Driver/ToolChains.cpp :
»
enum Distro {
ArchLinux,
DebianLenny,
DebianSqueeze,
DebianWheezy,
DebianJessie,
Exherbo,
RHEL4,
RHEL5,
RHEL6,
Fedora13,
Fedora14,
Fedora15,
Fedora16,
FedoraRawhide,
OpenSUSE,
UbuntuHardy,
UbuntuIntrepid,
UbuntuJaunty,
UbuntuKarmic,
UbuntuLucid,
UbuntuMaverick,
UbuntuNatty,
UbuntuOneiric,
UbuntuPrecise,
UbuntuQuantal,
UbuntuRaring,
UbuntuSaucy,
UnknownDistro
};
»
Я, честно говоря, даже не думал, что такие костыли можно делать в 21-м веке, разрабатывая абсолютно новый компилятор С++.