Backport PARALLEL_MAKE_IMAGE support

Add support for running the final make_image step in parallel

to make best use of larger machines with SSD storage. Use
PARALLEL_MAKE_IMAGE=<n> to specify how many to build in parallel.
This commit is contained in:
Steve McIntyre 2020-12-12 03:13:53 +00:00
parent b60845a775
commit 6d8619a0e6
4 changed files with 21 additions and 1 deletions

View File

@ -428,6 +428,11 @@ if [ -d "/etc/ssl/ca-debian" ]; then
fi
export WGET="wget $WGET_OPTS"
# Run the make_image step in parallel? Specify the number of calls to
# use in parallel here if desired. Don't go too high - this *will*
# thrash your IO!
#export PARALLEL_MAKE_IMAGE=4
# Set this to force the Release file(s) to say "stable". Used in first
# Etch builds to allow us to build before the archive updated
#EARLY_BUILD_HACK=1

View File

@ -491,6 +491,12 @@ image-trees: ok genlist
images: ok $(OUT) $(BDIR)/md5-check
$(Q)$(make_image) "$(BDIR)" "$(ARCHES)" "$(OUT)" "$(DEBVERSION)" "$(MIRROR)" "$(MKISOFS)" "$(MKISOFS_OPTS)" "$(JIGDO_OPTS)" "$(jigdo_cleanup)"
parallel_images: $(subst volid,image,$(notdir $(wildcard $(BDIR)/*.volid)))
echo $^
%.image: ok $(OUT) $(BDIR)/checksum-check
$(Q)CD=$(subst .image,,$@) $(make_image) "$(BDIR)" "$(ARCHES)" "$(OUT)" "$(DEBVERSION)" "$(MIRROR)" "$(MKISOFS)" "$(MKISOFS_OPTS)" "$(JIGDO_OPTS)" "$(jigdo_cleanup)"
check-number-given:
@test -n "$(CD)" || (echo "Give me a CD=<num> parameter !" && false)

View File

@ -80,7 +80,12 @@ else
fi
echo "Building $NUMJIGDOS jigdos and $NUMISOS isos for $ARCHES $DISKTYPE"
make $IMAGETARGET
if [ "$IMAGETARGET" = "official_images" ] && [ ! -z "$PARALLEL_MAKE_IMAGE" ]; then
make ok init packagelists image-trees
make -j $PARALLEL_MAKE_IMAGE parallel_images
else
make $IMAGETARGET
fi
if [ "$IMAGESUMS"x = 1x ]; then
make imagesums

4
debian/changelog vendored
View File

@ -11,6 +11,10 @@ debian-cd (3.1.26-buster) UNRELEASED; urgency=medium
+ tools/generate_di_list: Only include kernel udebs for the
highest ABI we know about. Don't waste space on new installation
media with older udebs from the archive.
+ Add support for running the final make_image step in parallel to
make best use of larger machines with SSD storage. Use
PARALLEL_MAKE_IMAGE=<n> to specify how many to build in
parallel.
-- Samuel Thibault <sthibault@debian.org> Fri, 23 Aug 2019 21:51:50 +0200