Описание тега kbuild
kbuild - это платформа сборки, основанная на GNU make и стандартном наборе кроссплатформенных инструментов. Первоначально он был разработан для ядра Linux, но теперь используется в других проектах, таких как crossstool-ng, buildroot, ltib и т. Д.
kbuild чрезвычайно мощный и пытается скрыть большую часть своей сложности в шаблонах, так что фактические make-файлы относительно легко понять и написать. Kbuild состоит из двух частей; Набор инструментов и языков для описания переменных конфигурации и кода шаблона Gnu make для управления фактическим процессом сборки.
Есть стоковая документация на разные темы,
- kbuild.txt - документирует переменные в Makefiles.
- kconfig-language.txt - документирует язык kconfig.
- kconfig.txt - настройка ядер с помощью Kbuild.
- makefiles.txt - с использованием файлов make, управляемых Kbuild.
- modules.txt - специфическая информация для людей, создающих модули.
Программа Gnu make для ядра Linux находится в основном файле Makefile и в Kbuild.include. Инструменты для настройки переменных (и обработки языка Kconfig) находятся в каталоге kconfig. Очевидно, что другие проекты, такие как buildroot и crossstool-ng, используют модифицированные версии.
Эти два аспекта находятся в файлах исходного кода ядра. Это файл Kconfig, определяющий переменные, которые могут быть определены инструментами. Вторая часть - это Makefile, который использует вывод Kconfig (обычно.config
), чтобы направлять процесс сборки с помощью обычных правил Gnu make, шаблонов и макросов.