mkimage-profiles/doc/assumptions.txt

54 lines
3.5 KiB
Plaintext
Raw Normal View History

== Предположения ==
Некоторые фрагменты кода закладываются на определённое поведение
других частей mkimage-profiles либо содержание переменных.
2012-10-31 01:21:23 +04:00
NB: пути приводятся от верхнего уровня; проект в целом предполагает
ALT Linux 6.0+ и GNU make 3.81+ (на которых и разрабатывается),
но может быть портирован вместе с mkimage. Если что-либо не работает
или не собирается, стоит проверить на Sisyphus (mkimage, make, hasher,
собственно пакетная база), поскольку именно на нём происходит основная
разработка mkimage-profiles. Сломанная сборка на текущем стабильном
бранче считается ошибкой и подлежит исправлению, если оно технически
возможно на базе этого бранча.
2012-10-31 01:21:23 +04:00
* lib/report.mk
** ожидает, что каждая подлежащая трассированию цель каждого
makefile при сборке конфигурации образа содержит непустой
recipe -- хотя бы "; @:" -- т.к. зависит от запуска $(SHELL)
2012-10-31 01:21:23 +04:00
** характерный признак пропуска -- разрыв графа (report-targets.png)
2012-10-31 01:21:23 +04:00
* pkg.in/lists/Makefile
** ожидает, что названия пакаджлистов указываются в переменных
вида *_LISTS, и копирует в генерируемый профиль только их
2012-10-31 01:21:23 +04:00
** если задать имя файла пакаджлиста непосредственно в Makefile
субпрофиля, он не будет скопирован
2012-10-31 01:21:23 +04:00
** характерное сообщение об ошибке:
E: Couldn't find package
2012-10-31 01:21:23 +04:00
* features.in/stage2/stage1/scripts.d/02-kdefault
* features.in/stage2/stage1/scripts.d/03-test-kernel
* sub.in/stage1/Makefile
** ожидают, что в stage1 попадёт строго одно ядро сообразно
явному указанию в STAGE1_KFLAVOUR (либо последнее указанное
в KFLAVOURS)
2012-10-31 01:21:23 +04:00
** если добавить какой-либо kernel-image в STAGE1_PACKAGES*,
результат может быть неожиданным
2012-10-31 01:21:23 +04:00
** вероятная ошибка: незагрузка полученного squashfs
* features.in/install2/install2/stage2cfg.mk
* features.in/live/live/stage2cfg.mk
* features.in/rescue/rescue/stage2cfg.mk
* features.in/syslinux/cfg.in/15live.cfg
* features.in/syslinux/cfg.in/20install2.cfg
* features.in/syslinux/cfg.in/80rescue.cfg
* features.in/syslinux/scripts.d/20-propagator-ramdisk
** ожидают, что названия squashfs-образов второй стадии инсталятора,
livecd и спасательной системы соответственно altinst, live и rescue
2012-10-31 01:21:23 +04:00
* image.in/Makefile
** ожидает, что конфигурация будет в distcfg.mk (см. тж. lib/profile.mk),
а лог сборки -- в build.log (см. тж. lib/log.mk); альтернативой было
бы пробрасывание переменных с полным путём ради единственного места