Все больше и больше софта перелезает на другие средства конфигурирования - cmake и meson.
Вот и пострес обзавелся мезоновской билдсистемой. Причем уже в 17 версии для windows она осталась единственной.
Так что приходится учиться ей пользоваться.
И тут выясняется, что те сборки 3rd-party библиотек - gettext, openssl, zstd, lz4 и еще много чего чего постгрес использует для реализации существеной функциональности, которые у нас использовались, мезон не находит.
Старая билд-система, которая генерировала проекты visual studio с помощью перловых скриптов работала в этом плане тупо - указываешь в config.pl путь к соответствующей библиотеке и вперед. (правда было дело, я там с керберосом намаялся). А теперь вот указываешь в -Dextra_include_dirs путь к инклюдам zstd, и в extra_lib_dirs соответственно к самой библиотеке, а оно и говорит, "не могу найти. Пробовали pkgconfig и cmake".
Как выясняется, для того чтобы meson-овский билд нашел libzstd и liblz4, эти библиотеки должны быть сами собраны с помощью cmake. Тогда в инсталлированное дерево попадут файлики которые cmake умееет читать и достаточно будет добавить место куда все это инсталлировано в CMAKE_PREFIX_PATH, чтобы библиотека правильно нашлась.
Пошел разбираться по списку библиотек.
lz4 - собирается cmake
zstd - собирается cmake
zlib - по станринке имеет win32/Makefile.msc для микрософтовского nmake
openssl - как собиралась собственным непохожим перловым Configure в версии 0.98, так в 3.0.15 и собирается
ossp-uuid - собрать апстримовсакую 1.8.2 не удалось, пришлось брать с сурсфоржа адаптированную под msvc. Ту же самую, пятнадцатилетней давности
icu4c - ну там лежит готовый solution для visual studio. С ее configure лучше не связываться
GNOME libxml2 - собирается cmake
GNOME libxslt - собирается cmake
GNU libiconv - вот здесь autotools в полный рост. С automake и libtool. Причем в качестве CC и AR предлагается указывать какие-то шелл-скрипты обертки вокруг настоящего компилятора и lib.exe идущие в комплекте. Но собирается.
GNU gettext - в Readme рекомендуется воспользваться инструкциями от libiconv. Однако имеется море подводных камней. Во-первых, если у нас в PATH директория windows указана раньше msys-овской, сборка ломается. (в норме мы сначала указываем нативные perl и python, потом стандарные windows директории, потом msys, а после этого запускмем vcvarsall). Во-вторых оно как-то родными средствами configure не может найти только что собранную libiconv. При этом у gettext в каждой поддиректории свой configure в результате он конфигурится куда медленнее, чем куда более объемный постгрес.
В общем конечно, тридцатилетняя эволюция (или уже 40-летняя) завела autotools куда-то не туда, и понятно почему начинают появляться альтернативы.