О компиляторах.
Если проект не содержит в себе один или несколько проприетарных компиляторов, предназначенных для сборки именно этого проекта - то это не очень большой проект.
Ядро Linux по этому определению может называться очень большим проектом. Под него специально затачивается gcc.
У IBM есть даже специальный язык PL/S, используемый специально для написания операционной системы. Компилятор PL/S не доступен вне IBM.