URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 116835
[ Назад ]

Исходное сообщение
"Релиз системы сборки CMake 3.14"

Отправлено opennews , 15-Мрт-19 11:51 
Состоялся (https://blog.kitware.com/cmake-3-14-0-available-for-download/) релиз кроссплатформенного открытого генератора сценариев сборки CMake 3.14 (http://www.cmake.org/), выступающего в качестве альтернативы Autotools и используемого в таких проектах, как KDE, LLVM/Clang, MySQL, MariaDB, ReactOS и Blender. Код  CMake написан на языке C++  и распространяется под лицензией BSD.

CMake примечателен предоставлением простого языка сценариев, средствами расширения функциональности через модули, минимальным числом зависимостей (нет привязки к M4, Perl или Python), поддержкой кэширования, наличием инструментов для кросс-компиляции, поддержкой генерации файлов сборки для широкого спектра систем сборки и компиляторов, наличием утилит ctest и cpack для определения сценариев тестирования и сборки пакетов, утилитой cmake-gui для интерактивной настройки параметров сборки.

Основные улучшения (https://cmake.org/cmake/help/v3.13/release/3.14.html):


-  Добавлена поддержка кросс-компиляции для iOS, tvOS и watchOS с использованием простых файлов toolchain (https://cmake.org/cmake/help/v3.6/manual/cmake-toolchains.7....);
-  Добавлен экспериментальный генератор сборочных сценариев для Visual Studio 16 2019 (протестирован в Visual Studio 2019 Preview 4). Новый генератор сильно отличается от генераторов для других версий Visual Studio и не поддерживает указание целевой платформы в имени генератора (платформа передаётся только через переменную окружения CMAKE_GENERATOR_PLATFORM). Целевая платформа по умолчанию выбирается на основании платформы текущего окружения (хост-платформы);

-  В генератор "Green Hills MULTI" добавлена поддержка библиотек объектных файлов (Object Library), возможность переименования целевых  платформ и изменения свойств вывода;

-  Добавлены переменные "CMAKE_BUILD_RPATH_USE_ORIGIN" и  "BUILD_RPATH_USE_ORIGIN", позволяющие использовать относительные пути для runtime (RPATH), что полезно для организации повторяемых сборок;

-  В команду "install(TARGETS)" добавлена возможность определения каталогов для установки по умолчанию в зависимости от типа целевых платформ, без использования переменной DESTINATION.  В команды "install(FILES)" и "install(DIRECTORY)" добавлены новые параметры для установки в привязке к типу файлов. Данные о каталогах основываются на переменных, выставляемых модулем GNUInstallDirs, и встроенных значений по молчанию;
-  В команды "install(CODE)" и "install(SCRIPT)" добавлена поддержка выражений генератора;
-  В команду "if()" добавлена возможность проверки переменных из кэша, определённых при помощи выражения "DEFINED CACHE{VAR}";

-  В сборочный режим "cmake --build" добавлена поддержка опций  "--verbose" и
"-v". В команду "cmake -E compare_files" добавлена опция "--ignore-eol" для игнорирования маркеров конца строки (LF или CRLF) при сравнении;


-  Прекращена поддержка запуска CMake в Windows XP и Windows Vista, для работы на платформе Windows теперь требуется  как минимум Windows 7.

URL: https://blog.kitware.com/cmake-3-14-0-available-for-download/
Новость: https://www.opennet.me/opennews/art.shtml?num=50327


Содержание

Сообщения в этом обсуждении
"Релиз системы сборки CMake 3.14"
Отправлено Аноним , 15-Мрт-19 11:51 
> Прекращена поддержка запуска CMake в Windows XP и Windows Vista, для работы на платформе Windows теперь требуется как минимум Windows 7

Печально, конечно. Я устал бегать с ОС на ОС и давно хочу стабильности. Один вечный Windows на все времена

Главное чтобы бинарные сборки под Linux продолжали собирать в Debian 6. Раньше собирали в каком-то старом CentOS, но начиная с CMake 3.0 обновили билд-ферму до Debian 6. В мейл-листах мне сказали, что это было сделано, чтобы все необходимые вызовы Glibc были доступны. Хотя из исходников CMake 3.x продолжает компилироваться и в CentOS 5 с Glibc 2.4


"Релиз системы сборки CMake 3.14"
Отправлено Аноним , 15-Мрт-19 13:45 
Ну так и пользуйтесь одной вечной windows xp и старым ПО, проблема-то в чём?

"Релиз системы сборки CMake 3.14"
Отправлено trdm , 16-Мрт-19 08:19 
> Ну так и пользуйтесь одной вечной windows xp и старым ПО, проблема-то в чём?

GitHub требует браузер обновить. А на XP крайний: 5Х.0.1.


"Релиз системы сборки CMake 3.14"
Отправлено Аноним , 17-Мрт-19 10:28 
Ради такой благородной цели можно и руками собрать свежачок.

"Релиз системы сборки CMake 3.14"
Отправлено Аноним , 17-Мрт-19 16:29 
Просто ИТ-потреблятели не принимают прописанные им лекарства. Вместо этого употребляют Яблочное смузи.

"Релиз системы сборки CMake 3.14"
Отправлено пох , 18-Мрт-19 19:46 
а он не собирается - версия cmake манки-кодерами вбивается в requirements- разумеется, самая распоследняя, которую только эта обезьянка сумела у себя завести, хотя никакими новыми фичами ни разу не пользовалась (а если и пользовалась, то нахрен они не нужны), а еще там и пихон какой-нибудь будет гвоздями прибит.

Исправить - уже немного не самая тривиальная задача для обыкновенного пользователя, пусть даже и осилившего сборку.


"Релиз системы сборки CMake 3.14"
Отправлено IRASoldier , 15-Мрт-19 16:02 
>Один вечный Windows на все времена

Ставьте 10-ку.


"Релиз системы сборки CMake 3.14"
Отправлено trolleybus , 15-Мрт-19 12:18 
> 3.14

В день числа Пи зарелизили, однако


"Релиз системы сборки CMake 3.14"
Отправлено Аноним , 15-Мрт-19 22:16 
И правильно, ведь это 3.141ц.

"Релиз системы сборки CMake 3.14"
Отправлено Аноним , 17-Мрт-19 13:49 
14.03 вы хотели сказать.

"Релиз системы сборки CMake 3.14"
Отправлено adolfus , 19-Мрт-19 12:26 
14.88

"Релиз системы сборки CMake 3.14"
Отправлено Ложечка , 15-Мрт-19 15:42 
Линковку в режиме whole archive когда сделают? Джва года жду.

"Релиз системы сборки CMake 3.14"
Отправлено Аноним , 15-Мрт-19 19:18 
Можно аргументы линкеру совать прямо в списке библиотек, так работает. Но выглядит криво, конечно.

"Релиз системы сборки CMake 3.14"
Отправлено Аноним , 15-Мрт-19 23:22 
Прочитал https://stackoverflow.com/questions/805555/ld-linker-questio... и так и не понял зачем оно может быть кому-то нужно в реальной жизни. Автор вопроса тоже, очевидно, как и авторы CMake.

"Релиз системы сборки CMake 3.14"
Отправлено Ложечка , 17-Мрт-19 18:47 
Чтобы статическую либу не разбирало на отдельные объектники, которые друг без друга не работают (гугли С++ статическая регистрация). Сейчас приходится дополнительный линк-враппер делать - add_library(INTERFACE), делать ей set_property(INTERFACE_LINK_OPTIONS) с ключами для каждого ликонвищика и прописывать зависимость между линк-враппером и либой. Но зачем мне этим всем заниматься, если это всё может cmake нагенерировать? Тем более что про существование whole archive он уже явно в курсе.

"Релиз системы сборки CMake 3.14"
Отправлено Аноним , 15-Мрт-19 15:50 
> В команду "install(TARGETS)" добавлена возможность определения каталогов для установки по умолчанию

Шикарно.

> В сборочный режим "cmake --build" добавлена поддержка опций "--verbose" и "-v"

И это.


"Релиз системы сборки CMake 3.14"
Отправлено Анонимс , 15-Мрт-19 17:35 
Что быстрее и удобнее использовать при сборке больших проектов: autotools, cmake или meson?

"Релиз системы сборки CMake 3.14"
Отправлено Sauron , 15-Мрт-19 20:24 
cargo

"Релиз системы сборки CMake 3.14"
Отправлено DerRoteBaron , 16-Мрт-19 01:08 
А туда таки сделали возможность выполнить что-то в post-build или post-install?

"Релиз системы сборки CMake 3.14"
Отправлено Аноним , 15-Мрт-19 22:11 
scons. не благодарите.

"Релиз системы сборки CMake 3.14"
Отправлено Аноним , 15-Мрт-19 23:26 
Скунс - это если совсем некуда торопиться. Карго (и вообще ржавчина) - туда же.

"Релиз системы сборки CMake 3.14"
Отправлено Cradle , 16-Мрт-19 19:55 
а скажите, этот scons умеет с разными кросс- тулчейнами в подпроектах работать? На самом деле cmake гадость та еще, но и без него никак, проекты должны собираться для пары контроллеров + хост, 2-3 архитекруры за раз с общими зависимостями

"Релиз системы сборки CMake 3.14"
Отправлено Аноним , 16-Мрт-19 00:44 
Голый make?

"Релиз системы сборки CMake 3.14"
Отправлено anonimm , 16-Мрт-19 09:51 
На каждой системе ручками прописывать пути к библиотекам? Спасибо.
Лучше пусть это делает maintainer, когда создаёт cmake-привязки.

"Релиз системы сборки CMake 3.14"
Отправлено Аноним , 17-Мрт-19 01:26 
Пути к библиотекам можно получить и на голом make:

CPPFLAGS += $(shell pkg-config --cflags-only-I $(SUPERDUPERLIB))
CFLAGS += $(shell pkg-config --cflags-only-other $(SUPERDUPERLIB))
LDFLAGS += $(shell pkg-config --libs $(SUPERDUPERLIB))

Хотя это, конечно, всё равно куда менее переносимо и, кажется, GNU make only.

"Релиз системы сборки CMake 3.14"
Отправлено leap42 , 16-Мрт-19 06:37 
meson+ninja

гляньте на опыт gnome/mesa, они сразу дропнули autotools как meson заработал (ибо небо и земля)


"Релиз системы сборки CMake 3.14"
Отправлено Аноним , 16-Мрт-19 16:56 
Точно не autotools. Мой выбор — cmake, но на meson просто не хочу смотреть из-за зависимости от питона.

"Релиз системы сборки CMake 3.14"
Отправлено Аноним , 15-Мрт-19 22:14 
>Прекращена поддержка запуска CMake в Windows XP и Windows Vista, для работы на платформе Windows теперь требуется как минимум Windows 7.

CMake  - одна из худших систем сборки. Баг-трекер и пулл-реквесты требуют отдельной регистрации на сайте kitware, а регистрация - за рекапчей, что есть сообщение "шли бы вы отсюда, срaть мы хотели на ваши баг репорты и пулл-реквесты, мы систему исключительно для себя пилим".


"Релиз системы сборки CMake 3.14"
Отправлено Аноним , 16-Мрт-19 07:45 
В чем твоя проблема? Ты хотел без рекапчи тонну ботов регистрировать или авторизовываться через зонды?

"Релиз системы сборки CMake 3.14"
Отправлено Аноним , 16-Мрт-19 08:38 
Я ткого не утверждал. Вы зачем дешевую демагогию применяете?

"Релиз системы сборки CMake 3.14"
Отправлено Аноним , 16-Мрт-19 12:33 
Так в чем претензия то?

"Релиз системы сборки CMake 3.14"
Отправлено Аноним , 16-Мрт-19 16:59 
Вообще-то там есть вход с гугловским или гитхабовским аккаунтом, но ты ведь всё равно найдёшь причину ничего не репортить.

"Релиз системы сборки CMake 3.14"
Отправлено Аноним , 17-Мрт-19 16:27 
Есть. С обязательным предоставлением доступа к почте в ГХ-аккаунте. А не проследовать ли им на йух с такими запросами?

"Релиз системы сборки CMake 3.14"
Отправлено Аноним , 17-Мрт-19 22:49 
Я же говорил: повод не репортить всегда найдётся, было бы нежелание.

"Релиз системы сборки CMake 3.14"
Отправлено Аноним , 19-Мрт-19 13:00 
Если это используется в RectalOS, врядли это показатель чего-то хорошего.