Привет! Меня зовут Александр, я работаю в VK в команде браузера Atom. В его основе лежит open source-движок Сhromium. Сегодня хочу поговорить о системе мета-сборки GN. Её используют в крупных проектах Google (Chrome, Fuchsia, а также связанных с ними), и, например, когда разрабатывают браузеры на основе Chromium (то есть почти все браузеры, кроме Mozilla, Safari и совсем какой-то экзотики). Система мета-сборки GN используется для генерации ninja-файлов, описывающих этапы сборки проекта.
Системы сборки *
Системы автоматизации сборки
ToolChain: Настройка сборки прошивок для микроконтроллеров Artery из Makefile
Настало время освоить очередное семейство микроконтроллеров: от компании Artery Technology.
Компания Artery Technology уже возвела полноценную экосистему для своих процессоров. Есть фирменные отладочные платы, программаторы, документация, исходные коды MCAL и даже кодо генераторы.
В этом тексте я представил пошаговую инструкцию того как запрограммировать микроконтроллер Artery.
4 инструмента автоматизации для DevOps, заслуживающих внимания — по версии TechRepublic
Это небольшой обзор по средствам автоматизации и тестирования для инженеров DevOps с портала TechRepublic с целью «сверки часов». Наверняка многие специалисты в командах разработки периодически задаются вопросом, — является ли используемые ими инструменты DevOps и QA современными и лучшими на рынке, не отстали ли они от мировых трендов? Не претендуя на глубину мыслей, — а в этом Хабр уникален и вне конкуренции, — зарубежные статьи могут попробовать дать ответы на такие вопросы.
Автоматическое Обновление Версии Прошивки
В программировании микроконтроллеров новые сборки появляются каждый день.
Какие-то сборки уходят в релиз, а какие-то в циркулируют на разных электронных платах внутри предприятия.
Как отличать прошивки между собой? Как понять, какая прошивка новее, а какая старее?
Проблема в том, что вручную обновлять номер версии прошивки очень утомительно.
В тексте представлен механизм автоматического увеличения версии прошивки
Кроссплатформенные ресурсы в сборках .NET — пишем условия MSBuild
При разработке приложений на платформе .NET почти всегда возникает необходимость включить в сборку сторонние ресурсы. Попробуем настроить процесс сборки небольшого проекта на Avalonia UI для Windows и Linux.
О применении Liquibase в проектах разработки
О применении Liquibase в проектах разработки
Под впечатлением от недавнего обсуждения Liquibase с коллегами, и на основе ранее сложившегося впечатления о распространенном отношении к этому инструменту со стороны разработчиков, я решил написать о своем видении предназначения Liquibase, и ему подобных инструментов, в проектах разработки enterprise-приложений с использованием баз данных.
Вышел релиз GitLab 16.8 с поддержкой менеджера секретных ключей GCP и возможностью ускорения сборок с прокси зависимосте
Мы с радостью объявляем о релизе GitLab 16.8 с поддержкой менеджера секретных ключей GCP, возможностью ускорения сборок с прокси зависимостей Maven, общим доступом к рабочим пространствам, новым представлением DevOps c бенчмарками на основе DORA и многими другими фичами!
Миландр + GCC + VSCode. Пробуем мигать светодиодом на отечественном ARM32 микроконтроллере
Год назад я написал статью об отладке STM32 микроконтроллеров из под VSCode, с компиляцией в GCC и сборкой с помощью CMake. А в декабре мне в руки попали две тестовые единицы отечественных микроконтроллеров К1986ВЕ92FI (MDR1211FI1). Производитель имеет свою библиотеку SPL на C, а также неплохую базу примеров инициализации и применения различной периферии в Keil и IAR; однако я, average C++20+ enjoyer , решил попробовать перенести свой тулчейн на новое железо.
Вышел релиз GitLab 16.7 с GitLab Duo Code Suggestions в общем доступе и бета-версией каталога CI/CD
Вышел релиз GitLab 16.7 с GitLab Duo Code Suggestions в общем доступе и бета-версией каталога CI/CD
На этот раз мы с радостью объявляем о релизе GitLab 16.7 с фичей GitLab Duo Code Suggestions в общем доступе, бета-версией каталога CI/CD, новым детальным представлением графиков отчётов Insights, результатами сканирования SAST в представлении изменений мерж-реквеста и многими другими фичами!
Как мы переводили проект на CMake
В статье мы расскажем о том, как переводили проект с рекурсивной сборочной подсистемы ЗОСРВ "Нейтрино", представляющей собой набор расширений инструмента GNU Make на сборочную систему CMake: с какими нюансами нам пришлось столкнуться, какие преимущества мы получили в результате перевода и как это повлияло на нашу команду разработчиков.
Как собрать Си программу в OS Windows
Иногда возникает ситуация, когда надо что-то посчитать согласно сложному алгоритму прямо на LapTop PC. При этом сам алгоритм написан на Си.
Это может быть цифровой фильтр, дискретное преобразование Фурье, генератор QR кода, кусок линейной алгебры с векторами, какое-то тригонометрическое вычисление, программный модулятор, статистическая обработка случайной величины.
Да всё, что угодно! То есть Вы хотите использовать язык Си как гибкий и быстрый калькулятор в Windows.
В этом тексте представлено минимальное окружение для сборки Си кода в Windows.
Какие этапы можно пройти при написании правильного пайплайна?
5 декабря мы провели вебинар «Этапы становления CI с использованием GitLab-CI», на котором подробно разобрали этапы создания качественного пайплайна. Делимся с вами кратким конспектом встречи.
Что такое генераторы статических сайтов и почему Astro — лучший фреймворк для разработки лендингов
Всем привет! Недавно я решал задачу разработки сайта-лендинга для собственного проекта. У лендинга должна была быть админка, то есть данные для его содержимого должны были храниться и редактироваться на сервере. Поэтому я искал современный и мощный инструмент для генерации страниц на основе данных из API админ-панели.
Так я познакомился c подходом SSG (Static Site Generation — Генерация статических сайтов), попробовал его в деле, и хочу рассказать о том, что это такое, зачем может понадобиться SSG-фреймворк и почему Astro — лучший выбор для генерации статических сайтов прямо сейчас.
Ближайшие события
Вышел релиз GitLab 16.6 с новой фичей GitLab Duo Chat (бета)
Сегодня мы с радостью объявляем о релизе GitLab 16.6 с бета-версией GitLab Duo Chat, правилами соответствия требованиям на основе подтверждения мерж-реквестов, улучшенным механизмом ветвления, улучшенным интерфейсом пользователя для управления переменными CI/CD и многими другими фичами!
Сортировка Конфигов для Make Сборок
Как известно любая большая программа на Си содержит много программных компонентов и, как следствие, много настроек: констант, макросов, конфигурационных структур и прочего. Всё это можно назвать одним словом: конфиги.
Все передают конфиги по-разному.
В этом тексте представлен способ передавать конфиги через скрипты сборки.
Webpack vs esbuild — уже можно использовать в production?
Периодически я пробую разные инструменты, и если они стабильно покрывают все необходимые сценарии - включаю в свою экосистему для коммерческих проектов. С третьего подхода за последние 3 года esbuild, наконец, приблизился по функционалу к Webpack. В статье привожу проблемы, с которыми я столкнулся при миграции, и пути их решения.
От ручной сборки приложений к конвейеру: опыт бэк-офиса «Магнита»
Как мы ежа и ужа собирали. Сказ об автосборке разномастных технологий под одну крышу.
Если серьёзно: у нас было много разнообразной ручной работы на пути от разработчика до релиза приложения для сети магазинов.
Мы научились хранить наши приложения в git и собирать их «одним кликом», перешли от подхода «один репозиторий – одна технология» к «один репозиторий – одно приложение». Реализовали установку всех частей приложения «одной командой»; собрали грабли, разложенные в самых неожиданных местах, и создали несколько инструментов, помогающих на разных этапах сборки и установки приложений.
В этой статье рассказываю, с чего мы начали, где находимся сейчас и что было на этом пути.
Вышел релиз GitLab 16.5 с отчётами о соответствии требованиям и правилами задания целевой ветки мерж-реквестов
Мы с радостью объявляем о релизе GitLab 16.5 с отчётами о соблюдении стандартов соответствия требованиям, правилами задания целевой ветки мерж-реквеста, возможностью завершать обсуждения по тикету, ускорением цепочек мерж-реквестов для полулинейной истории коммитов и многими другими фичами!
Готовим драйвера МК для проброса периферии
В предыдущей статье рассматривался принцип, как можно прокинуть периферию микроконтроллера (UART, I2C, CAN bus etc) в обычную ПК программу, так как если бы она входила в состав нашего компьютера и висела на обшей шине с памятью. В той публикации рассматривается теория и инструменты, которые позволяют это сделать. В этой части мы рассмотрим, как на практике осуществляется подготовка кода драйверов к инструментизации ADIN LLVM pass и последующей сборке в отдельную динамическую библиотеку, которую вы можете использовать в своих проектах
Практическое руководство по созданию Helm чарта или как избавиться от рутины при работе с YAML манифестами
Бывало ли у вас такое, что вы совершали одни и те же действия из раза в раз и наконец-то решили избавиться от всей этой рутины? Но вы решили отложить это решение на некоторое время, в частности из-за занятости или лени. Но вот вы решаете взять себя в руки и всё изменить! Также было и со мной - и вот в конце концов я решился пойти на оптимизацию развертывания сервисов в Kubernetes при помощи Helm и написать об этом статью!
Я уже успел развернуть несколько приложений в Kubernetes. Но в последнее время взаимодействовать с ресурсами через kubectl становится невыносимо больно. Поэтому я решил осуществить свою давнюю затею - написать свой Helm чарт. Сегодня мы вместе с тобой, Хабрюзер, создадим свой чарт, который можно будет использовать для деплоя собственных приложений!
Вклад авторов
aigrychev 258.3aionin 237.0diafour 212.0tkir 196.0Zhbert 148.0tangro 138.8nem 117.6AloneCoder 107.2SvyatoslavMC 91.0m1rko 85.6