Pull to refresh

Comments 12

А в чем ценность обертки?

Если autotools можно под целевые платформы использовать как есть, то лишний слой абстрагирования только усложняет поддержку. А для использования готовых наборов параметров почему бы не использовать напрямую shell-скрипт?

Shell-скрипт на 20 строчек, чтобы принять аргументы выбора платформы, спрятать 100500 параметров под пресет, и сгенерить Shell- или bat-скрипт сборки, можно и в MinGW запускать. (https://pastebin.com/h7RY2UqJ)

CMake конечно можно использовать, но он не для скриптования совсем, и всю мощь свою не раскроет, а проблемы в поддержке создаст.

Хотелось достичь единообразия. Весь проект использует CMake. Плюс мы собираем не через MinGW, а через nmake и получается нужно было дублировать скрипт сборки. В целом вариант с shell скриптом хорош, а тут 100% единый интерфейс обращения будет.

а с какой целью вы таскаете OpenSSL вместе с собой?

Дефолтным сценарием использования OpenSSL является `find_package(OpenSSL REQUIRED)`.

У нас кастомный - с белорусской криптографией

И что делать, если вдруг понадобились локальные патчи?

Не совсем понял цели вопроса. Если вопрос в том, что скрипт сборки не умеет патчить, то это в целом и не нужно ему в моем сценарии использования

Вопрос был к человеку, предлагающему find_package(OpenSSL REQUIRED)

дважды подумать прежде чем делать патчи в openssl.

Ну или сделать PR в официальный репозиторий.

Проталкивание PR может занять какое-то время, а версия с поддержкой какого-нибудь ГОСТа заказчику нужна сейчас. Естественно, подразумевается, что работают над этим специалисты по криптографии.

Фу какая гадость. У нас вон тоже openssl собирается как подпроект в cmake и это просто боль. Внезапно у проекта появилась зависимость от perl, а оно нам надо вообще? Нет не надо, но теперь у нас perl в зависимостях. Так ещё и начинаются смешные вещи происходить, когда выкачиваешь исходники себе на диск (винда) rsync-ом отправляешь на макось и наблюдаешь смешнявку "executable not found: perl\n" Весело? Весело.🤬

Разумеется это все решаемо. Но оно вам надо? Так что советую не пытаться себе отстрелить что-нибудь, а использовать системную версию. А если уж так хочется заиметь "свою особенную" пайплайн рядом положите, а потом просто забирайте бинари.

В целом CI на стадии зарождения. Уже перенес нативную сборку под windows на кросскомпиляцию. У нас как раз кастомный OpenSSL

Sign up to leave a comment.

Articles