mkimage-profiles/features.in
Michael Shigorin c83cc111a6 initial kernel and metadata features
This further refines the modular build by making
metadata being a clearly separated feature rather
than having to rely on runtime tests, and also by
moving the code which cares for kernel bits of base
installation (.base list) in a feature of its own.

There's more to it but let's get the ball rolling first.
2012-05-10 21:18:02 +03:00
..
00example docs update 2012-04-02 18:13:14 +03:00
bootloader several features forgot to show up in FEATURES 2012-04-23 23:10:29 +03:00
branding initial kernel and metadata features 2012-05-10 21:18:02 +03:00
build-distro initial kernel and metadata features 2012-05-10 21:18:02 +03:00
build-ve initial kernel and metadata features 2012-05-10 21:18:02 +03:00
cleanup cleanup scripts rehashed 2012-03-31 21:08:09 +03:00
dev initial "+shortcut" support and refactoring 2012-03-19 13:14:07 +02:00
dos cleanup scripts rehashed 2012-03-31 21:08:09 +03:00
firmware several features forgot to show up in FEATURES 2012-04-23 23:10:29 +03:00
hdt plant SHELL beacons into all config-forming rules 2012-03-19 19:23:38 +02:00
install2 initial kernel and metadata features 2012-05-10 21:18:02 +03:00
isohybrid initial kernel and metadata features 2012-05-10 21:18:02 +03:00
isomd5sum initial kernel and metadata features 2012-05-10 21:18:02 +03:00
kernel initial kernel and metadata features 2012-05-10 21:18:02 +03:00
live live: add variable debug target too 2012-05-06 19:17:10 +03:00
lowmem introduced add_feature function 2011-11-19 11:47:29 +02:00
ltsp several features forgot to show up in FEATURES 2012-04-23 23:10:29 +03:00
memtest introduced add_feature function 2011-11-19 11:47:29 +02:00
metadata initial kernel and metadata features 2012-05-10 21:18:02 +03:00
pack initial isohybrid support 2011-12-16 15:22:28 +02:00
power several features forgot to show up in FEATURES 2012-04-23 23:10:29 +03:00
repo initial kernel and metadata features 2012-05-10 21:18:02 +03:00
rescue live tweaks for x11 rescue 2011-12-02 17:46:04 +02:00
slinux simply: dvd refactoring 2012-05-06 21:58:25 +03:00
stage2 stage2: squashfs blocksize tweaks 2012-04-09 22:03:29 +03:00
syslinux initial branding feature 2012-05-04 15:57:06 +03:00
systemd introduced add_feature function 2011-11-19 11:47:29 +02:00
vm virtualbox feature renamed to vm, extended 2012-04-18 21:04:11 +03:00
x11 several features forgot to show up in FEATURES 2012-04-23 23:10:29 +03:00
Makefile features.in: generalize lib/ handling 2012-04-25 14:31:26 +03:00
README initial "+shortcut" support and refactoring 2012-03-19 13:14:07 +02:00

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Этот каталог содержит т.н. фичи (features, особенности) --
каталоги, содержимое каждого из которых реализует одну из
подключаемых автономных возможностей образа.

Каждая фича должна содержать задействуемый при построении
конфигурации будущего образа файл config.mk, включаемый
в ../main.mk; он может описывать одну или более целей
вида use/*, дополняющих конфигурацию, и при наличии
дополнительных хуков для копирования или generate.*
обязан добавить имя фичи в $(FEATURES), для чего
создана функция add_feature без аргументов.

На этапе генерации сборочного профиля фичи рассматриваются
после инициализации профиля (см. ../image.in/) и копирования
субпрофилей (см. ../sub.in/).  Для каждой фичи, указанной
в $(FEATURES), копируются подкаталоги сообразно субпрофилям,
а также производится обработка {image-,}scripts.d/; затем
выполняется скрипт generate.sh и задействуется generate.mk
(при их наличии).

Если фича дополняет хуками семейство целевых субпрофилей,
построенных на одном базовом, можно воспользоваться подкаталогом
с именем исходного базового субпрофиля (см. $src, $dst в Makefile).

Наиболее употребительные цели можно снабжать "ярлычками" вроде
"+icewm" с тем, чтобы сделать более краткими и выразительными
использующие их правила.  Просьба не злоупотреблять количеством.

Каталог lib/ является специфическим для фич, определяющих
построение конкретного вида образа -- см. build-*/.

Несложный пример содержится в 00example/, более близкий к жизни
и нынешним пределам возможностей метапрофиля -- в syslinux/.