initial isohybrid support

Here we go with postprocessing priorities along the way
as ISO hybridization has to occur before implanting
final MD5 sum (which must happen earlier than e.g. some
external MD5SUM file generation).

Unfortunately proper dependencies aren't applicable here
(though I'd like to be proved wrong on this one).

Please note that this needs propagator > 20101130-alt9
for automatic mode to work (has also been worked around
in gfxboot case with design-bootloader-source-6.0-alt1).

Thanks rom_as@ for asking about the hybrid image status
and helping out with testing.
This commit is contained in:
Michael Shigorin 2011-12-12 17:34:00 +02:00
parent 1d66879681
commit 6fadf7e0e9
8 changed files with 27 additions and 4 deletions

View File

@ -39,6 +39,11 @@
+ значение: пусто (по умолчанию), 1 или 2 + значение: пусто (по умолчанию), 1 или 2
+ см. ../lib/log.mk + см. ../lib/log.mk
- ISOHYBRID
+ включает постобработку ISO-образа isohybrid
+ значение: пусто (по умолчанию) либо любая строка
+ см. ../features.in/pack/config.mk
- NICE - NICE
+ понижает нагрузку системы сборочной задачей + понижает нагрузку системы сборочной задачей
+ значение: пусто (по умолчанию) либо любая строка + значение: пусто (по умолчанию) либо любая строка

View File

@ -0,0 +1,9 @@
Эта фича производит постобработку ISO-образа утилитой isohybrid
с целью обеспечения возможности его загрузки как с CD/DVD,
так и с USB-флэшки.
Можно указать в цепочке зависимостей дистрибутива явно с тем,
чтобы гарантировать гибридный вид образа; в экспериментальном
порядке сделана возможность запросить включение этой фичи при
сборке конфигурации произвольного дистрибутива
(ISOHYBRID=1, см. ../pack/config.mk).

View File

@ -0,0 +1,3 @@
use/isohybrid:
@$(call add_feature)
@$(call add,POSTPROCESS_TARGETS,80isohybrid)

View File

@ -0,0 +1,4 @@
CHROOT_PACKAGES += syslinux
postprocess-80isohybrid:
@isohybrid "$(IMAGEDIR)/$(IMAGE_OUTFILE)"

View File

@ -1,3 +1,3 @@
use/isomd5sum: use/isomd5sum:
@$(call add_feature) @$(call add_feature)
@$(call add,POSTPROCESS_TARGETS,isomd5sum) @$(call add,POSTPROCESS_TARGETS,90isomd5sum)

View File

@ -1,4 +1,4 @@
CHROOT_PACKAGES += isomd5sum CHROOT_PACKAGES += isomd5sum
postprocess-isomd5sum: postprocess-90isomd5sum:
@implantisomd5 "$(IMAGEDIR)/$(IMAGE_OUTFILE)" @implantisomd5 "$(IMAGEDIR)/$(IMAGE_OUTFILE)"

View File

@ -3,7 +3,9 @@ DISTRO_EXTS := .iso
use/pack: use/pack:
@$(call add_feature) @$(call add_feature)
use/pack/iso: use/pack boot/isolinux # conventional ISO9660 image hybridization
# for direct bootable usbflash imaging
use/pack/iso: use/pack boot/isolinux $(ISOHYBRID:%=use/isohybrid)
ifeq (distro,$(IMAGE_CLASS)) ifeq (distro,$(IMAGE_CLASS))
@$(call set,IMAGE_PACKTYPE,isoboot) @$(call set,IMAGE_PACKTYPE,isoboot)
else else

View File

@ -47,7 +47,7 @@ pack-image: imagedir
imagedir: imagedir:
@mkdir -p "$(IMAGEDIR)" @mkdir -p "$(IMAGEDIR)"
postprocess: $(addprefix postprocess-,$(POSTPROCESS_TARGETS)) postprocess: | $(addprefix postprocess-,$(sort $(POSTPROCESS_TARGETS)))
@OUTPATH="$(IMAGEDIR)/$(IMAGE_OUTFILE)"; \ @OUTPATH="$(IMAGEDIR)/$(IMAGE_OUTFILE)"; \
echo "** image: $$OUTPATH" >&2 && \ echo "** image: $$OUTPATH" >&2 && \
ln -sf "$(IMAGE_OUTFILE)" "$(IMAGEDIR)/$(IMAGE_LINK)" && \ ln -sf "$(IMAGE_OUTFILE)" "$(IMAGEDIR)/$(IMAGE_LINK)" && \