Alex Fails Some News Channel
279 subscribers
672 photos
28 videos
31 files
270 links
Всякая хрень от Фэйлса
Download Telegram
Опа, релизнулся смак 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 Крылатый Пегас
👏6😁4
Forwarded from Denis
😁10🤣41
Forwarded from veselcraft (Vladimir Barinov)
Я согласен

📼 @veselcraft
Please open Telegram to view this post
VIEW IN TELEGRAM
😁112
Forwarded from Zol
🤝6👍1
Forwarded from IFNDR Club
🔥19😁1
Стало даже немножко понятнее...

#cppmodules #arewemodulesyet

@AlexFailsChannel
😁71
Очень прикольная задумка: The UNIX Pipe Card Game. Идея в том, чтобы обучить кого-то искусству pipes. Игроки по очереди тянут карточки и пытаются из них составить последовательность, которая решит поставленную задачу.

#game #unix #bash
🔥9🤔21
Forwarded from Antti Tobannen
🔥9😁3
Forwarded from [tenr owl]
🔥6🤣3
Forwarded from Юрий Буянов
💩2👍1🔥1😭1
Forwarded from [tenr owl]
🔥4🤝3😁21😍1
Forwarded from Новости Linux
Утверждён стандарт C++26

Комитет ISO по стандартизации языка C++ завершил утвердил финальным вариант спецификации, образующей международный стандарт "C++26". Представленные в спецификации возможности частично уже поддерживаются в компиляторах GCC, Clang и Microsoft Visual C++. Поддерживающие C++26 стандартные библиотеки реализованы в рамках проекта Boost.

Читать полностью

#OpenNet
@linux_potok
🔥13
Forwarded from [tenr owl]
🤣13👍2💩21🔥1💯1
Forwarded from Евгений
💯12🔥3💩1
Alex Fails Some News Channel
#cppref #your_taking_too_long @AlexFailsChannel
Господа, мы дождались! Это не учебная тревога! Cppreference.com снова ожил!

#cppref #its_alive #walking_dead #your_taking_too_long
🔥12
Forwarded from Antti Tobannen
🔥6👍3🤮2💯2😁1💩1
Forwarded from ttldtor_posts (Sad Catoly)
This media is not supported in your browser
VIEW IN TELEGRAM
Ямайская Сейлор Мун ❤️ ❤️ ❤️
🔥4💩21😁1😱1