[room] почему я недолюбливаю криворукие сборочные системы

Michael Shigorin mike на altlinux.org
Вс Сен 1 21:18:18 MSK 2019


...которые все как одна почему-то писаны на питоне...

В scons когда-то нашёл детскую ошибку, приводившую
к принципиальной несовместимости с -Wl,--as-needed:
эти читавшие ещё меньше мануалов расставили объектники
и библиотеки (переменные), разумеется, не в том порядке.

cmake не перестаёт радовать кривизной своих тестов
и системным забиванием на CFLAGS/CXXFLAGS.

Сейчас тем же порадовал waf при сборке ardour под e2k:

$ ./waf build --help | grep CF
  --keepflags           Do not ignore CFLAGS/CXXFLAGS environment vars

Офигеть, а почему?

$ grep CFLAGS wscript | grep user
        # Nuke user CFLAGS/CXXFLAGS if debug is set (they likely contain -O3, NDEBUG, etc)

Отладка у них при этом включена по умолчанию.

В итоге обнаружил специальную опцию --cxx11 (да, вот именно так)
для передачи -std=c++11 -- для ./waf configure, build молча игнорит:
https://www.nsnam.org/bugzilla/show_bug.cgi?id=1866#c1

Вот откуда у этих людей растут руки?
С чего они взяли, что им должно писать сборочные системы?..

(да, я понимаю, что жалуюсь на троллейбусной остановке,
но тут перед отправкой багрепорта надо пар выпустить,
похоже, иначе без личных характеристик не обойдусь же)

PPS: meson сопровождают примерно с таким же уровнем внимания, похоже
-- по крайней мере один разъезд внутренного API я уже наблюдал,
когда приняли патч, который его менял, но не потрудился обойти всех
уже имеющихся "клиентов" в кодовой базе и подновить их.

-- 
 ---- WBR, Michael Shigorin / http://altlinux.org
  ------ http://opennet.ru / http://anna-news.info


Подробная информация о списке рассылки smoke-room