Alex Fails Some News Channel
278 subscribers
661 photos
27 videos
31 files
267 links
Всякая хрень от Фэйлса
Download Telegram
Forwarded from Vladislav 🇺🇸🚜
😁7🤣2
Forwarded from Vladislav Vasil'ev
😁6
Forwarded from Zol
👍6😁5💯2
Forwarded from Руcлан
😁12👍4🤯1
Forwarded from acidicMercury8
😁8💯5😭1
Forwarded from Mems ShitPOST (Antti Tobannen)
😁11👍3🤣2
Forwarded from Yuri Buyanov
😁12🤣2👌1
Forwarded from Vladislav 🇺🇸🚜
👏7😁1
Мы дожили:
🙏6👀4
Опа, релизнулся смак 4.2 (42).

Из самых вкусных вещей это поддержка вышедшей студии 2026 и (ВНЕЗАПНО) системы сборки FASTBuild , которая применяется в некоторых компаниях для распределенной сборки и расширенного контроля за собранным кэшем (знаю, что меня читает народ , что у себя в геймдеве использует её, и мучается со своими смак-врапперами, радуйтесь: ща можно просто сгенерировать и забиндить доп имеющиеся).

Также официально добавлена поддержка сборки под Emscripten (интеграция с апстримом стала лучше), те, кто собираются под васм, тоже рекомендую обновляться.

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

Теперь можно явно очищать значения в кэше через set(CACHE{<var>}) и unset(CACHE{<var>}). Порой бывает, что значение переменной в кэше и при выполнении скрипта не совпадают (иногда бывает при работе с депсами), и это раньше через форс-кэширование, сейчас добавили явный механизм

Остальные нововведения не такие (субъективно) большие, но все равно немного улучшают жизнь:
- cmake -E copy[directory]_if_newer - новая команда для копирования файла/каталога , если он новее;
- линтеры теперь можно отключать через свойство цели SKIP_LINTING - удобно для временного отключения для определенных целей сборки;
- новые команды string(REGEX QUOTE) и cmake_language(TRACE) для поиска точно по строке и переключения трассировки соответственно;
- Новые свойства для контроля имени объектных файлов при сборке и установке OBJECT_NAME, INSTALL_OBJECT_NAME (у этого есть ещё пара доп ручек, см доку);
- Новые свойства для контроля пулов сборки и префиксов имён файлов объединенной сборки JOB_POOL_COMPILE и UNITY_BUILD_FILENAME_PREFIX - думаю, фастбилд чутка поспособствовал этим свойствам, у него было похожее "из коробки";
- модуль ExternalProject теперь может задавать переменные окружения - полезно для кривых кастомных билдов, которые игнорят заданные смаком компиляторы и прочие флажки;
- "модель кода" (абстракция смака с метаинфой для тулинга и IDE-шек) теперь также хранит метаинфу про импортированные таргеты - полезно для пакетников, чтобы они могли проверить корректность импортированных таргетов зависимостей.
- встроенные Find-модули теперь консистентно возвращают инфу о том, что пакет найден, в <PackageName_FOUND> вместо <PACKAGENAME_FOUND>, старые переменные доступны, но помечены устаревшими
- генератор для 2015-й студии признан устаревшим, и его удалят в следующем релизе, можно использовать 2017-ю студию с v140-тулсетом;

И куча другого, смотрите заметки тут: https://cmake.org/cmake/help/latest/release/4.2.html

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

Версия поста v1.2.1 (микро-фиксы; ссылки; find-модули; 2015 студия)

@AlexFailsChannel

#длиннопостик #cmake #длиннопостик@AlexFailsChannel
👍105🤔1💊1
Forwarded from Clem Fandango
1😁9🔥5🤝4
Forwarded from Крылатый Пегас
👏5😁4
Forwarded from Denis
😁10🤣41
Forwarded from veselcraft (Vladimir Barinov)
Я согласен

📼 @veselcraft
Please open Telegram to view this post
VIEW IN TELEGRAM
😁92
Forwarded from Zol
🤝6
Forwarded from IFNDR Club
🔥16