Introduce parallelism

By using --cores argument to rootfs.py, JOBS= is set in the
live-bootstrap environment, and -j${JOBS} is used on builds. This speeds
larger packages up significantly.

A fair number of packages do not build properly with parallelism. Most
of these, at least for now, are disabled with -j1.
This commit is contained in:
fosslinux 2023-04-10 15:30:16 +10:00
parent f2a0d74bfb
commit d98f97e214
74 changed files with 146 additions and 95 deletions

View file

@ -69,7 +69,7 @@ src_compile() {
# We have to choose the order ourselves because the Makefile is extremely lax about the order
# First of all, do everything that doesn't use any C
rm Modules/_blake2/blake2s_impl.c
make regen-opcode \
make "${MAKEJOBS}" regen-opcode \
regen-opcode-targets \
regen-typeslots \
regen-token \
@ -82,17 +82,17 @@ src_compile() {
regen-global-objects
# Do the freeze regen process
make regen-frozen
make regen-deepfreeze
make regen-global-objects
make "${MAKEJOBS}" regen-frozen
make "${MAKEJOBS}" regen-deepfreeze
make "${MAKEJOBS}" regen-global-objects
make CPPFLAGS="-U__DATE__ -U__TIME__"
make "${MAKEJOBS}" CPPFLAGS="-U__DATE__ -U__TIME__"
# Regen Python/stdlib_module_names.h (you must have an existing build first)
make regen-stdlib-module-names
make "${MAKEJOBS}" regen-stdlib-module-names
# Now rebuild with proper stdlib_module_names.h
make CPPFLAGS="-U__DATE__ -U__TIME__"
make "${MAKEJOBS}" CPPFLAGS="-U__DATE__ -U__TIME__"
}
src_install() {