> Не поверишь, но компилиться дольше оно из-за того, что собирает кросскомпилятор.не только, не только - поверь, там основной потерей является то, что сборка c++ (причем там такой, вполне модный-современный плюс, а не времен Си-с-классами) всегда тяжелее plain c.
Но вот на фоне этого еще и мильен таржетов под платформы которых у тебя не то что нет, а на которых оно в общем-то толком и работать не собиралось никогда - действительно, бесили - неужели ж можно стало?!
> WITHOUT_LLVM_TARGET_AARCH64="YES"
это вот кому-то спасибо огромное (хотя по словам автора - 12/14%, а потери от llvm'овых либ - они не в процентах, они в разах). Прям прослезился.
Оно в releng попало какой-нибудь, или только 11 stable ?
> ld для tier1 никогда и не был поломан. Откуда такие сведения ?
оттуда же, оттуда же, из man src.conf.
Вот тебе позапрошлогодние дефолты:
WITHOUT_LLD_IS_LD
Set to use GNU binutils ld as the system linker, instead of
LLVM's LLD.
This is a default setting on amd64/amd64, arm/arm, arm/armeb,
arm/armv6, i386/i386, mips/mipsel, mips/mips, mips/mips64el,
mips/mips64, mips/mipsn32, pc98/i386, powerpc/powerpc,
powerpc/powerpc64 and sparc64/sparc64.
Он не то что совсем поломан был, он то ли ядро, то ли не только ядро не мог слинковать. Поэтому (если ты руками ничего не трогал) на этом tier1 собиралось clang'ом, не собирался gcc, но зато ld у тебя было аж два - родной clang'овский, который дальше не использовался никак, и ld-gold, которым собиралась собственно операционная система, хоть и скомпиленная шлангом. При этом WITHOUT_LLD было можно (и нужно, нахрена мне второй-полуработающий, вызываемый по спецзаказу для ничего нужного)
Дальше это вроде победили, но я к тому времени безнадежно поломал свою версию, и в zfs, и в ядре, и с тех пор не обновляюсь, потому что не получится - мои правки несовместимы с апстримными.