d5a5941f96
This is quite a large-scale change since mkimage-profiles got used to baking distributions over the last year, and virtual environments are quite different, so e.g. image.in/Makefile had to be split in two with the main part of it moved into features.in/iso/lib/. Short overview: - features.in/Makefile: lib/ support (supporting VE images requires dynamic modifications to image.in/Makefile before starting the build; the most natural way to achieve that seems to use features mechanism along with makefile include dir) - packaging format related part moved into features.in/pack (should be better prepared for diversity either) - features.in/iso renamed to features.in/build-distro - features.in/ve renamed to features.in/build-ve + NB: these could not be merged as e.g. features.in/build due to completely different script hooks - lib/image.mk renamed to lib/build.mk - image, config, log postprocessing moved downstream - added a sort of a topping in the form of lib/sugar.mk - assorted style fixups (like ifeq usage) - clean.mk: reliability fix (the problem was observed by Oleg Ivanov and me too but finally it did get the attention quantum) - reviewed, updated and extended docs + QUICKSTART: should be[come] a step-by-step guide (thanks Leo-sp50 for prodiving feedback) |
||
---|---|---|
.. | ||
00example | ||
bootloader | ||
build-distro | ||
build-ve | ||
cleanup | ||
dos | ||
firmware | ||
hdt | ||
install2 | ||
live | ||
lowmem | ||
memtest | ||
pack | ||
powerbutton | ||
rescue | ||
stage2 | ||
syslinux | ||
x11 | ||
Makefile | ||
README |
Этот каталог содержит т.н. фичи (features, особенности) -- каталоги, содержимое каждого из которых реализует одну из подключаемых автономных возможностей дистрибутива. Каждая фича должна содержать задействуемый при построении конфигурации будущего образа файл config.mk, включаемый в ../Makefile; он может описывать одну или более целей вида use/*, дополняющих конфигурацию дистрибутива, и при наличии дополнительных хуков для копирования или generate.* должен добавить имя фичи в $(FEATURES). На этапе генерации дистрибутивного профиля фичи рассматриваются после инициализации профиля (см. ../image.in/) и копирования субпрофилей (см. ../sub.in/). Для каждой фичи, указанной в $(FEATURES), копируются подкаталоги сообразно субпрофилям, а также производится обработка {tagged/,}{image-},scripts.d/ (см. cleanup/ в качестве примера); затем выполняется скрипт generate.sh и задействуется generate.mk (при их наличии). NB: тегированные скрипты являются экспериментальными, возможны недоработки и существенные изменения! Если фича дополняет хуками семейство целевых субпрофилей, построенных на одном базовом, можно воспользоваться подкаталогом с именем исходного базового субпрофиля (см. $src, $dst в Makefile). Каталог lib/ является специфическим для фич, определяющих построение образа -- см. build-*/. Несложный пример содержится в 00example/, более близкий к жизни и нынешним пределам возможностей метапрофиля -- в syslinux/.