The build.sh and build_all.sh wrapper scripts are the easiest way to make CDs, but they're not very complicated.
This loads the configuration from CONF.sh, set some more default configuration (in case it's not already set in CONF.sh), then runs:
make distclean
- clean up after a previous run
make ${CODENAME}_status
- initialise the temp trees
and seed the default set of base packages needed for the specified
arch(es)
make mirrorcheck
- grab metadata from the mirror,
used in generating jigdo files
make $IMAGETARGET
- will be the same as make
official_images
unless you've configured things
differently. This is the step that actually builds images; more
details later.
make imagesums
- generate md5sums of the completed
images
the single argument that build.sh takes is the architecture (or architectures) to build for. It will only build one set of CDs; if you specify more than one architecture as the parameter, the set will be multi-arch. Be aware, that to pass multiple arches as one parameter you need to specify them in quotes so the shell does not split them up, e.g.
build.sh "i386 amd64 powerpc"
build_all.sh is very similar to build_all.sh (deliberately). The only difference is that it will loop through a list of architectures, running each in turn and outputting them to a per-arch subdirectory in your output tree. That's all.