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

@ -29,10 +29,11 @@ def create_configuration_file(args):
""" """
config_path = os.path.join('sysa', 'bootstrap.cfg') config_path = os.path.join('sysa', 'bootstrap.cfg')
with open(config_path, "w", encoding="utf_8") as config: with open(config_path, "w", encoding="utf_8") as config:
config.write("FORCE_TIMESTAMPS=" + str(args.force_timestamps) + "\n") config.write(f"FORCE_TIMESTAMPS={args.force_timestamps}\n")
config.write("CHROOT=" + str(args.chroot or args.bwrap) + "\n") config.write(f"CHROOT={args.chroot or args.bwrap}\n")
config.write("CHROOT_ONLY_SYSA=" + str(args.bwrap) + "\n") config.write(f"CHROOT_ONLY_SYSA={args.bwrap}\n")
config.write("UPDATE_CHECKSUMS=" + str(args.update_checksums) + "\n") config.write(f"UPDATE_CHECKSUMS={args.update_checksums}\n")
config.write(f"JOBS={args.cores}\n")
config.write("DISK=sda1\n") config.write("DISK=sda1\n")
if (args.bare_metal or args.qemu) and not args.kernel: if (args.bare_metal or args.qemu) and not args.kernel:
config.write("KERNEL_BOOTSTRAP=True\n") config.write("KERNEL_BOOTSTRAP=True\n")
@ -61,6 +62,8 @@ def main():
action="store_true") action="store_true")
parser.add_argument("--tmpfs-size", help="Size of the tmpfs", parser.add_argument("--tmpfs-size", help="Size of the tmpfs",
default="8G") default="8G")
parser.add_argument("--cores", help="Cores to use for building",
default=2)
parser.add_argument("--force-timestamps", parser.add_argument("--force-timestamps",
help="Force all files timestamps to be 0 unix time", help="Force all files timestamps to be 0 unix time",
action="store_true") action="store_true")
@ -119,6 +122,10 @@ def main():
if args.bwrap and args.tmpfs: if args.bwrap and args.tmpfs:
raise ValueError("tmpfs cannot be used with bwrap.") raise ValueError("tmpfs cannot be used with bwrap.")
# Cores validation
if int(args.cores) < 1:
raise ValueError("Must use one or more cores.")
# bootstrap.cfg # bootstrap.cfg
if args.bare_metal: if args.bare_metal:
args.no_create_config = True args.no_create_config = True
@ -221,6 +228,7 @@ print(shutil.which('chroot'))
run(args.qemu_cmd, run(args.qemu_cmd,
'-enable-kvm', '-enable-kvm',
'-m', str(args.qemu_ram) + 'M', '-m', str(args.qemu_ram) + 'M',
'-smp', str(args.cores),
'-no-reboot', '-no-reboot',
'-hda', tmpdir.get_disk("sysc"), '-hda', tmpdir.get_disk("sysc"),
'-nic', 'user,ipv6=off,model=e1000', '-nic', 'user,ipv6=off,model=e1000',
@ -233,6 +241,7 @@ print(shutil.which('chroot'))
run(args.qemu_cmd, run(args.qemu_cmd,
'-enable-kvm', '-enable-kvm',
'-m', "4G", '-m', "4G",
'-smp', str(args.cores),
'-no-reboot', '-no-reboot',
'-drive', 'file=' + os.path.join(system_a.tmp_dir, 'sysa.img') + ',format=raw', '-drive', 'file=' + os.path.join(system_a.tmp_dir, 'sysa.img') + ',format=raw',
'-machine', 'kernel-irqchip=split', '-machine', 'kernel-irqchip=split',

View File

@ -31,7 +31,7 @@ src_configure() {
} }
src_compile() { src_compile() {
make MAKEINFO=true DESTDIR="${DESTDIR}" make "${MAKEJOBS}" MAKEINFO=true DESTDIR="${DESTDIR}"
} }
src_install() { src_install() {

View File

@ -33,7 +33,7 @@ src_compile() {
# Workaround for racy make dependencies # Workaround for racy make dependencies
make -C bin autom4te make -C bin autom4te
make -C lib make -C lib
make MAKEINFO=true make "${MAKEJOBS}" MAKEINFO=true
} }
src_install() { src_install() {

View File

@ -27,7 +27,7 @@ src_compile() {
make -C bin autom4te make -C bin autom4te
make -C lib make -C lib
make MAKEINFO=true make "${MAKEJOBS}" MAKEINFO=true
} }
src_install() { src_install() {

View File

@ -25,7 +25,7 @@ src_compile() {
# Workaround for racy make dependencies # Workaround for racy make dependencies
make -C bin autom4te make -C bin autom4te
make -C lib make -C lib
make MAKEINFO=true make "${MAKEJOBS}" MAKEINFO=true
} }
src_install() { src_install() {

View File

@ -25,7 +25,7 @@ src_compile() {
# Workaround for racy make dependencies # Workaround for racy make dependencies
make -C bin autom4te make -C bin autom4te
make -C lib make -C lib
make MAKEINFO=true make "${MAKEJOBS}" MAKEINFO=true
} }
src_install() { src_install() {

View File

@ -19,7 +19,7 @@ src_configure() {
} }
src_compile() { src_compile() {
make MAKEINFO=true make -j1 MAKEINFO=true PREFIX="${PREFIX}"
} }
src_install() { src_install() {

View File

@ -18,7 +18,7 @@ src_configure() {
} }
src_compile() { src_compile() {
make MAKEINFO=true make "${MAKEJOBS}" MAKEINFO=true
} }
src_install() { src_install() {

View File

@ -18,7 +18,7 @@ src_configure() {
} }
src_compile() { src_compile() {
make MAKEINFO=true make "${MAKEJOBS}" MAKEINFO=true
} }
src_install() { src_install() {

View File

@ -19,7 +19,7 @@ src_configure() {
} }
src_compile() { src_compile() {
AUTOM4TE=autom4te-2.61 make MAKEINFO=true CC=tcc AUTOM4TE=autom4te-2.61 make "${MAKEJOBS}" MAKEINFO=true CC=tcc
} }
src_install() { src_install() {

View File

@ -20,7 +20,7 @@ src_configure() {
} }
src_compile() { src_compile() {
AUTORECONF=autoreconf-2.64 AUTOM4TE=autom4te-2.64 AUTOHEADER=autoheader-2.64 AUTOCONF=autoconf-2.64 make MAKEINFO=true AUTORECONF=autoreconf-2.64 AUTOM4TE=autom4te-2.64 AUTOHEADER=autoheader-2.64 AUTOCONF=autoconf-2.64 make "${MAKEJOBS}" MAKEINFO=true
} }
src_install() { src_install() {

View File

@ -22,7 +22,7 @@ src_configure() {
} }
src_compile() { src_compile() {
AUTORECONF=autoreconf-2.69 AUTOM4TE=autom4te-2.69 AUTOHEADER=autoheader-2.69 AUTOCONF=autoconf-2.69 make MAKEINFO=true AUTORECONF=autoreconf-2.69 AUTOM4TE=autom4te-2.69 AUTOHEADER=autoheader-2.69 AUTOCONF=autoconf-2.69 make -j1 MAKEINFO=true
} }
src_install() { src_install() {

View File

@ -13,7 +13,7 @@ src_configure() {
} }
src_compile() { src_compile() {
make MAKEINFO=true make "${MAKEJOBS}" MAKEINFO=true
} }
src_install() { src_install() {

View File

@ -15,7 +15,7 @@ src_configure() {
} }
src_compile() { src_compile() {
make MAKEINFO=true make "${MAKEJOBS}" MAKEINFO=true
} }
src_install() { src_install() {

View File

@ -13,7 +13,7 @@ src_configure() {
} }
src_compile() { src_compile() {
make MAKEINFO=true make "${MAKEJOBS}" MAKEINFO=true
} }
src_install() { src_install() {

View File

@ -14,7 +14,7 @@ src_configure() {
} }
src_compile() { src_compile() {
make MAKEINFO=true make "${MAKEJOBS}" MAKEINFO=true
} }
src_install() { src_install() {

View File

@ -39,6 +39,10 @@ src_configure() {
bash_cv_dev_fd=whacky bash_cv_dev_fd=whacky
} }
src_compile() {
make -j1
}
src_install() { src_install() {
install -D bash "${DESTDIR}${PREFIX}/bin/bash" install -D bash "${DESTDIR}${PREFIX}/bin/bash"
# Work around weird symlink bug # Work around weird symlink bug

View File

@ -18,4 +18,3 @@ src_configure() {
./configure --prefix="${PREFIX}" \ ./configure --prefix="${PREFIX}" \
--build=i386-unknown-linux-musl --build=i386-unknown-linux-musl
} }

View File

@ -88,7 +88,7 @@ src_configure() {
src_compile() { src_compile() {
make -C bfd headers make -C bfd headers
for dir in libiberty zlib bfd opcodes binutils gas gprof ld; do for dir in libiberty zlib bfd opcodes binutils gas gprof ld; do
make -C $dir tooldir=${PREFIX} CPPFLAGS="-DPLUGIN_LITTLE_ENDIAN" MAKEINFO=true make "${MAKEJOBS}" -C $dir tooldir=${PREFIX} CPPFLAGS="-DPLUGIN_LITTLE_ENDIAN" MAKEINFO=true
done done
} }

View File

@ -19,3 +19,7 @@ src_prepare() {
cp ../../mk/lib.mk lib/Makefile cp ../../mk/lib.mk lib/Makefile
cp ../../mk/src.mk src/Makefile cp ../../mk/src.mk src/Makefile
} }
src_compile() {
make -j1 -f Makefile PREFIX="${PREFIX}"
}

View File

@ -19,3 +19,7 @@ src_prepare() {
cp ../../mk/lib.mk lib/Makefile cp ../../mk/lib.mk lib/Makefile
cp ../../mk/src.mk src/Makefile cp ../../mk/src.mk src/Makefile
} }
src_compile() {
make -j1 -f Makefile PREFIX="${PREFIX}"
}

View File

@ -16,3 +16,7 @@ src_prepare() {
cp ../../mk/lib.mk lib/Makefile cp ../../mk/lib.mk lib/Makefile
cp ../../mk/src.mk src/Makefile cp ../../mk/src.mk src/Makefile
} }
src_compile() {
make -j1 -f Makefile PREFIX="${PREFIX}"
}

View File

@ -9,7 +9,7 @@ src_prepare() {
} }
src_compile() { src_compile() {
make CC=tcc AR="tcc -ar" bzip2 make "${MAKEJOBS}" CC=tcc AR="tcc -ar" bzip2
} }
src_install() { src_install() {

View File

@ -25,7 +25,7 @@ src_configure() {
} }
src_compile() { src_compile() {
make MAKEINFO=true DESTDIR="${DESTDIR}" make "${MAKEJOBS}" MAKEINFO=true DESTDIR="${DESTDIR}"
} }
src_install() { src_install() {

View File

@ -11,6 +11,10 @@ src_prepare() {
rm parse.c parse.h scan.c skel.c rm parse.c parse.h scan.c skel.c
} }
src_compile() {
make -j1 PREFIX="${PREFIX}"
}
src_install() { src_install() {
if test -d /lex; then if test -d /lex; then
# Remove lex, later make install will symlink lex to flex # Remove lex, later make install will symlink lex to flex

View File

@ -12,7 +12,7 @@ src_prepare() {
src_compile() { src_compile() {
cd src cd src
default make -j1 PREFIX="${PREFIX}"
cd .. cd ..
} }

View File

@ -93,7 +93,7 @@ src_compile() {
mkdir build/gcc/include mkdir build/gcc/include
ln -s ../../../gcc/gsyslimits.h build/gcc/include/syslimits.h ln -s ../../../gcc/gsyslimits.h build/gcc/include/syslimits.h
for dir in libiberty libcpp gcc; do for dir in libiberty libcpp gcc; do
make -C build/$dir LIBGCC2_INCLUDES=-I"${PREFIX}/include" STMP_FIXINC= make "${MAKEJOBS}" -C build/$dir LIBGCC2_INCLUDES=-I"${PREFIX}/include" STMP_FIXINC=
done done
} }

View File

@ -87,7 +87,7 @@ src_configure() {
src_compile() { src_compile() {
ln -s . build/build-i386-unknown-linux-musl ln -s . build/build-i386-unknown-linux-musl
for dir in libiberty libcpp gcc; do for dir in libiberty libcpp gcc; do
make -C build/$dir LIBGCC2_INCLUDES=-I"${PREFIX}/include" STMP_FIXINC= make "${MAKEJOBS}" -C build/$dir LIBGCC2_INCLUDES=-I"${PREFIX}/include" STMP_FIXINC=
done done
} }

View File

@ -18,7 +18,7 @@ src_configure() {
} }
src_compile() { src_compile() {
make MAKEINFO=true make "${MAKEJOBS}" MAKEINFO=true
} }
src_install() { src_install() {

View File

@ -321,7 +321,7 @@ default_src_configure() {
# Default function for compiling source. It simply runs make without any parameters. # Default function for compiling source. It simply runs make without any parameters.
default_src_compile() { default_src_compile() {
make -f Makefile PREFIX="${PREFIX}" make "${MAKEJOBS}" -f Makefile PREFIX="${PREFIX}"
} }
# Default installing function. PREFIX should be set by run.sh script. # Default installing function. PREFIX should be set by run.sh script.

View File

@ -22,7 +22,7 @@ src_configure() {
src_compile() { src_compile() {
# Missing dependency in Makefile # Missing dependency in Makefile
flex -o src/analyze.c src/analyze.l flex -o src/analyze.c src/analyze.l
make MAKEINFO=true make "${MAKEJOBS}" MAKEINFO=true
} }
src_install() { src_install() {

View File

@ -29,7 +29,7 @@ src_configure() {
} }
src_compile() { src_compile() {
make AUTOM4TE=autom4te-2.61 MAKEINFO=true make "${MAKEJOBS}" AUTOM4TE=autom4te-2.61 MAKEINFO=true
} }
src_install() { src_install() {

View File

@ -50,8 +50,8 @@ src_compile() {
generate_autoconf_h generate_autoconf_h
# Allow use of patched initramfs_list.sh (which is required anyway) # Allow use of patched initramfs_list.sh (which is required anyway)
make ARCH=i386 prepare make "${MAKEJOBS}" ARCH=i386 prepare
PATH="${PWD}/usr:${PATH}" make ARCH=i386 PATH="${PWD}/usr:${PATH}" make "${MAKEJOBS}" ARCH=i386
# Clear up more space # Clear up more space
find . -name '*.o' -delete find . -name '*.o' -delete

View File

@ -20,7 +20,7 @@ src_configure() {
} }
src_compile() { src_compile() {
make MAKEINFO="true" make "${MAKEJOBS}" MAKEINFO="true"
} }
src_install() { src_install() {

View File

@ -24,7 +24,7 @@ src_configure() {
} }
src_compile() { src_compile() {
make PREFIX="${PREFIX}" CROSS_COMPILE= CFLAGS="-DSYSCALL_NO_TLS" AS_CMD='as -o $@ $<' make "${MAKEJOBS}" PREFIX="${PREFIX}" CROSS_COMPILE= CFLAGS="-DSYSCALL_NO_TLS" AS_CMD='as -o $@ $<'
} }
src_install() { src_install() {

View File

@ -27,5 +27,5 @@ src_configure() {
} }
src_compile() { src_compile() {
make CROSS_COMPILE= AR="tcc -ar" RANLIB=true CFLAGS="-DSYSCALL_NO_TLS" make "${MAKEJOBS}" CROSS_COMPILE= AR="tcc -ar" RANLIB=true CFLAGS="-DSYSCALL_NO_TLS"
} }

View File

@ -29,5 +29,5 @@ src_configure() {
} }
src_compile() { src_compile() {
make CROSS_COMPILE= make "${MAKEJOBS}" CROSS_COMPILE=
} }

View File

@ -34,6 +34,10 @@ src_prepare() {
sed -i "s#/usr/include/errno.h#${PREFIX}/include/musl/bits/errno.h#" ext/Errno/Errno_pm.PL sed -i "s#/usr/include/errno.h#${PREFIX}/include/musl/bits/errno.h#" ext/Errno/Errno_pm.PL
} }
src_compile() {
make -j1 PREFIX="${PREFIX}"
}
src_install() { src_install() {
# Remove old perl # Remove old perl
rm -rf "${PREFIX}"/lib/perl5/ rm -rf "${PREFIX}"/lib/perl5/

View File

@ -21,6 +21,13 @@ SRCDIR="${srcdir}"
# shellcheck source=sysa/helpers.sh # shellcheck source=sysa/helpers.sh
. helpers.sh . helpers.sh
if [ "${KERNEL_BOOTSTRAP}" ]; then
# Fiwix does not support SMP
MAKEJOBS="-j1"
else
MAKEJOBS="-j${JOBS}"
fi
# Ask some questions # Ask some questions
echo echo
echo "Now that bash has been built, there are potentially some questions for you!" echo "Now that bash has been built, there are potentially some questions for you!"
@ -178,6 +185,7 @@ SOURCES=${SOURCES}
DESTDIR=${DESTDIR} DESTDIR=${DESTDIR}
DISTFILES=${DISTFILES} DISTFILES=${DISTFILES}
SRCDIR=${SRCDIR} SRCDIR=${SRCDIR}
MAKEJOBS=${MAKEJOBS}
EOF EOF
exec env -i bash run2.sh exec env -i bash run2.sh

View File

@ -8,6 +8,10 @@ src_prepare() {
touch config.h touch config.h
} }
src_compile() {
make -j1 PREFIX="${PREFIX}"
}
src_install() { src_install() {
default default
} }

View File

@ -15,7 +15,7 @@ src_configure() {
} }
src_compile() { src_compile() {
make MAKEINFO=true make "${MAKEJOBS}" MAKEINFO=true
} }
src_install() { src_install() {

View File

@ -11,7 +11,7 @@ src_configure() {
} }
src_compile() { src_compile() {
make MAKEINFO=true DESTDIR="${DESTDIR}" make "${MAKEJOBS}" MAKEINFO=true DESTDIR="${DESTDIR}"
} }
src_install() { src_install() {

View File

@ -47,7 +47,7 @@ src_compile() {
--disable-shared \ --disable-shared \
--enable-timeout=15 --enable-timeout=15
touch doc/agdoc.texi # build later touch doc/agdoc.texi # build later
make CFLAGS=-Wno-error make -j1 CFLAGS=-Wno-error
# Fix non-reproducible man-page # Fix non-reproducible man-page
awk '{gsub("\\(/tmp/.*", "", $7); print}' agen5/autogen.1 > autogen.1 awk '{gsub("\\(/tmp/.*", "", $7); print}' agen5/autogen.1 > autogen.1

View File

@ -15,7 +15,7 @@ src_configure() {
} }
src_compile() { src_compile() {
make MAKEINFO=true make "${MAKEJOBS}" MAKEINFO=true
} }
src_install() { src_install() {

View File

@ -47,6 +47,10 @@ src_configure() {
bash_cv_dev_fd=whacky bash_cv_dev_fd=whacky
} }
src_compile() {
make -j1 PREFIX="${PREFIX}"
}
src_install() { src_install() {
install -D bash "${DESTDIR}${PREFIX}/bin/bash" install -D bash "${DESTDIR}${PREFIX}/bin/bash"
# Work around weird symlink bug # Work around weird symlink bug

View File

@ -89,7 +89,7 @@ src_configure() {
src_compile() { src_compile() {
make -C bfd headers make -C bfd headers
for dir in libiberty bfd opcodes libctf binutils gas gprof ld; do for dir in libiberty bfd opcodes libctf binutils gas gprof ld; do
make -C $dir tooldir=${PREFIX} CFLAGS="-std=c99" make "${MAKEJOBS}" -C $dir tooldir=${PREFIX} CFLAGS="-std=c99"
done done
} }

View File

@ -26,7 +26,7 @@ src_configure() {
} }
src_compile() { src_compile() {
make MAKEINFO=true make -j1 MAKEINFO=true
} }
src_install() { src_install() {

View File

@ -27,7 +27,7 @@ src_configure() {
} }
src_compile() { src_compile() {
make MAKEINFO=true make -j1 MAKEINFO=true
} }
src_install() { src_install() {

View File

@ -42,7 +42,7 @@ src_configure() {
} }
src_compile() { src_compile() {
make PREFIX="${PREFIX}" MAKEINFO="true" make "${MAKEJOBS}" PREFIX="${PREFIX}" MAKEINFO="true"
} }
src_install() { src_install() {

View File

@ -22,7 +22,7 @@ src_configure() {
} }
src_compile() { src_compile() {
make MAKEINFO=true make "${MAKEJOBS}" MAKEINFO=true
} }
src_install() { src_install() {

View File

@ -11,6 +11,6 @@ src_configure() {
./configure \ ./configure \
--prefix="${PREFIX}" \ --prefix="${PREFIX}" \
--libdir="${LIBDIR}" \ --libdir="${LIBDIR}" \
--disable-shared \ --disable-shared \
CFLAGS='-D_GNU_SOURCE -DNO_GETCONTEXT -DSEARCH_FOR_DATA_START -DUSE_MMAP -DHAVE_DL_ITERATE_PHDR' CFLAGS='-D_GNU_SOURCE -DNO_GETCONTEXT -DSEARCH_FOR_DATA_START -DUSE_MMAP -DHAVE_DL_ITERATE_PHDR'
} }

View File

@ -125,15 +125,15 @@ src_compile() {
ln -s . build/build-i386-unknown-linux-musl ln -s . build/build-i386-unknown-linux-musl
for dir in libiberty libcpp libdecnumber gcc; do for dir in libiberty libcpp libdecnumber gcc; do
# We have makeinfo now but it is not happy with gcc .info files, so skip it # We have makeinfo now but it is not happy with gcc .info files, so skip it
make -C build/$dir LIBGCC2_INCLUDES=-I"${PREFIX}/include" \ make "${MAKEJOBS}" -C build/$dir LIBGCC2_INCLUDES=-I"${PREFIX}/include" \
STMP_FIXINC= GMPLIBS="-lmpc -lmpfr -lgmp" MAKEINFO=true STMP_FIXINC= GMPLIBS="-lmpc -lmpfr -lgmp" MAKEINFO=true
done done
# host_subdir is necessary because we have slightly different build directory layout # host_subdir is necessary because we have slightly different build directory layout
make -C build/libgcc PATH="${PATH}:../gcc" CC=../gcc/xgcc \ make "${MAKEJOBS}" -C build/libgcc PATH="${PATH}:../gcc" CC=../gcc/xgcc \
host_subdir=build CFLAGS="-I../gcc/include -I/${PREFIX}/include" host_subdir=build CFLAGS="-I../gcc/include -I/${PREFIX}/include"
make -C build/libstdc++-v3 PATH="${PATH}:${PWD}/build/gcc" \ make "${MAKEJOBS}" -C build/libstdc++-v3 PATH="${PATH}:${PWD}/build/gcc" \
CXXFLAGS="-I${PWD}/build/gcc/include -I ${PREFIX}/include" CXXFLAGS="-I${PWD}/build/gcc/include -I ${PREFIX}/include"
} }

View File

@ -21,7 +21,7 @@ src_configure() {
} }
src_compile() { src_compile() {
make MAKEINFO=true CFLAGS="-I${PWD}/libtextstyle/lib" make "${MAKEJOBS}" MAKEINFO=true CFLAGS="-I${PWD}/libtextstyle/lib"
} }
src_install() { src_install() {

View File

@ -23,7 +23,7 @@ src_configure() {
} }
src_compile() { src_compile() {
make MAKEINFO=true DESTDIR="${DESTDIR}" make "${MAKEJOBS}" MAKEINFO=true DESTDIR="${DESTDIR}"
} }
src_install() { src_install() {

View File

@ -21,6 +21,8 @@ export SOURCE_DATE_EPOCH=0
# shellcheck source=sysa/helpers.sh # shellcheck source=sysa/helpers.sh
. "${SOURCES}/helpers.sh" . "${SOURCES}/helpers.sh"
MAKEJOBS="-j${JOBS}"
echo echo
echo "Installing packages into sysc" echo "Installing packages into sysc"
@ -75,6 +77,7 @@ SOURCES=${SOURCES}
DESTDIR=${DESTDIR} DESTDIR=${DESTDIR}
DISTFILES=${DISTFILES} DISTFILES=${DISTFILES}
SRCDIR=${SRCDIR} SRCDIR=${SRCDIR}
MAKEJOBS=${MAKEJOBS}
EOF EOF
exec ./run.sh exec ./run.sh

View File

@ -14,7 +14,7 @@ src_configure() {
} }
src_compile() { src_compile() {
make MAKEINFO=true make "${MAKEJOBS}" MAKEINFO=true
} }
src_install() { src_install() {

View File

@ -35,7 +35,7 @@ src_configure() {
} }
src_compile() { src_compile() {
make AUTOM4TE=autom4te-2.69 MAKEINFO=true make "${MAKEJOBS}" AUTOM4TE=autom4te-2.69 MAKEINFO=true
} }
src_install() { src_install() {

View File

@ -21,7 +21,7 @@ src_configure() {
} }
src_compile() { src_compile() {
make MAKEINFO="true" make "${MAKEJOBS}" MAKEINFO="true"
} }
src_install() { src_install() {

View File

@ -17,7 +17,7 @@ src_configure() {
} }
src_compile() { src_compile() {
make MAKEINFO=true DESTDIR="${DESTDIR}" make "${MAKEJOBS}" MAKEINFO=true DESTDIR="${DESTDIR}"
} }
src_install() { src_install() {

View File

@ -20,7 +20,7 @@ src_configure() {
} }
src_compile() { src_compile() {
make MAKEINFO=true DESTDIR="${DESTDIR}" make "${MAKEJOBS}" MAKEINFO=true DESTDIR="${DESTDIR}"
} }
src_install() { src_install() {

View File

@ -13,7 +13,7 @@ src_configure() {
} }
src_compile() { src_compile() {
make CROSS_COMPILE= make "${MAKEJOBS}" CROSS_COMPILE=
} }
src_install() { src_install() {

View File

@ -16,7 +16,7 @@ src_configure() {
} }
src_compile() { src_compile() {
make MAKEINFO=true make "${MAKEJOBS}" MAKEINFO=true
} }
src_install() { src_install() {

View File

@ -36,11 +36,11 @@ src_configure() {
src_compile() { src_compile() {
# Build pgen # Build pgen
pushd Parser pushd Parser
make pgen make -j1 pgen
popd popd
# Regen graminit.c and graminit.h # Regen graminit.c and graminit.h
pushd Grammar pushd Grammar
make graminit.c make -j1 graminit.c
popd popd
# Regenerate some Python scripts using the other regenerated files # Regenerate some Python scripts using the other regenerated files
@ -56,7 +56,7 @@ src_compile() {
mv Lib/token.py.new Lib/token.py mv Lib/token.py.new Lib/token.py
# Now build the main program # Now build the main program
make make -j1
} }
src_install() { src_install() {

View File

@ -35,11 +35,11 @@ src_configure() {
src_compile() { src_compile() {
# Build pgen # Build pgen
pushd Parser pushd Parser
make pgen make -j1 pgen
popd popd
# Regen graminit.c and graminit.h # Regen graminit.c and graminit.h
pushd Grammar pushd Grammar
make graminit.c make -j1 graminit.c
popd popd
# Regenerate some Python scripts using the other regenerated files # Regenerate some Python scripts using the other regenerated files
@ -55,7 +55,7 @@ src_compile() {
mv Lib/token.py.new Lib/token.py mv Lib/token.py.new Lib/token.py
# Now build the main program # Now build the main program
make make -j1
} }
src_install() { src_install() {

View File

@ -46,9 +46,9 @@ src_configure() {
src_compile() { src_compile() {
# Build pgen # Build pgen
make Parser/pgen make "${MAKEJOBS}" Parser/pgen
# Regen graminit.c and graminit.h # Regen graminit.c and graminit.h
make Include/graminit.h make "${MAKEJOBS}" Include/graminit.h
# Regenerate some Python scripts using the other regenerated files # Regenerate some Python scripts using the other regenerated files
# Must move them out to avoid using Lib/ module files which are # Must move them out to avoid using Lib/ module files which are
@ -59,7 +59,7 @@ src_compile() {
python token.py python token.py
# Now build the main program # Now build the main program
make CFLAGS="-U__DATE__ -U__TIME__" make "${MAKEJOBS}" CFLAGS="-U__DATE__ -U__TIME__"
} }
src_install() { src_install() {

View File

@ -47,9 +47,9 @@ src_configure() {
src_compile() { src_compile() {
# Build pgen # Build pgen
make Parser/pgen make "${MAKEJOBS}" Parser/pgen
# Regen graminit.c and graminit.h # Regen graminit.c and graminit.h
make Include/graminit.h make "${MAKEJOBS}" Include/graminit.h
# Regenerate some Python scripts using the other regenerated files # Regenerate some Python scripts using the other regenerated files
# Must move them out to avoid using Lib/ module files which are # Must move them out to avoid using Lib/ module files which are
@ -60,7 +60,7 @@ src_compile() {
python token.py python token.py
# Now build the main program # Now build the main program
make CFLAGS="-U__DATE__ -U__TIME__" make "${MAKEJOBS}" CFLAGS="-U__DATE__ -U__TIME__"
} }
src_install() { src_install() {

View File

@ -58,9 +58,9 @@ src_compile() {
# Temporarily break include cycle # Temporarily break include cycle
patch -Np0 -i graminit-regen.patch patch -Np0 -i graminit-regen.patch
# Build pgen # Build pgen
make Parser/pgen make "${MAKEJOBS}" Parser/pgen
# Regen graminit.c and graminit.h # Regen graminit.c and graminit.h
make Include/graminit.h make "${MAKEJOBS}" Include/graminit.h
# Regenerate some Python scripts using the other regenerated files # Regenerate some Python scripts using the other regenerated files
# Must move them out to avoid using Lib/ module files which are # Must move them out to avoid using Lib/ module files which are
@ -73,7 +73,7 @@ src_compile() {
# Undo change # Undo change
patch -Np0 -R -i graminit-regen.patch patch -Np0 -R -i graminit-regen.patch
# Now build the main program # Now build the main program
make CFLAGS="-U__DATE__ -U__TIME__" make "${MAKEJOBS}" CFLAGS="-U__DATE__ -U__TIME__"
} }
src_install() { src_install() {

View File

@ -52,9 +52,9 @@ src_compile() {
# Temporarily break include cycle # Temporarily break include cycle
patch -Np0 -i graminit-regen.patch patch -Np0 -i graminit-regen.patch
# Build pgen # Build pgen
make Parser/pgen make "${MAKEJOBS}" Parser/pgen
# Regen graminit.c and graminit.h # Regen graminit.c and graminit.h
make Include/graminit.h make "${MAKEJOBS}" Include/graminit.h
# Regenerate some Python scripts using the other regenerated files # Regenerate some Python scripts using the other regenerated files
# Must move them out to avoid using Lib/ module files which are # Must move them out to avoid using Lib/ module files which are
@ -67,7 +67,7 @@ src_compile() {
# Undo change # Undo change
patch -Np0 -R -i graminit-regen.patch patch -Np0 -R -i graminit-regen.patch
# Now build the main program # Now build the main program
make CFLAGS="-U__DATE__ -U__TIME__" make "${MAKEJOBS}" CFLAGS="-U__DATE__ -U__TIME__"
} }
src_install() { src_install() {

View File

@ -57,9 +57,9 @@ src_compile() {
# Temporarily break include cycle # Temporarily break include cycle
patch -Np0 -i graminit-regen.patch patch -Np0 -i graminit-regen.patch
# Build pgen # Build pgen
make Parser/pgen make "${MAKEJOBS}" Parser/pgen
# Regen graminit.c and graminit.h # Regen graminit.c and graminit.h
make Include/graminit.h make "${MAKEJOBS}" Include/graminit.h
# Regenerate some Python scripts using the other regenerated files # Regenerate some Python scripts using the other regenerated files
# Must move them out to avoid using Lib/ module files which are # Must move them out to avoid using Lib/ module files which are
@ -72,7 +72,7 @@ src_compile() {
# Undo change # Undo change
patch -Np0 -R -i graminit-regen.patch patch -Np0 -R -i graminit-regen.patch
# Now build the main program # Now build the main program
make CFLAGS="-U__DATE__ -U__TIME__" make "${MAKEJOBS}" CFLAGS="-U__DATE__ -U__TIME__"
} }
src_install() { src_install() {

View File

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

View File

@ -55,9 +55,9 @@ src_configure() {
src_compile() { src_compile() {
# Build pgen # Build pgen
make Parser/pgen make "${MAKEJOBS}" Parser/pgen
# Regen graminit.c and graminit.h # Regen graminit.c and graminit.h
make Include/graminit.h make "${MAKEJOBS}" Include/graminit.h
# Regenerate some Python scripts using the other regenerated files # Regenerate some Python scripts using the other regenerated files
# Must move them out to avoid using Lib/ module files which are # Must move them out to avoid using Lib/ module files which are
@ -69,7 +69,7 @@ src_compile() {
python token.py python token.py
# Now build the main program # Now build the main program
make CFLAGS="-U__DATE__ -U__TIME__" make -j1 CFLAGS="-U__DATE__ -U__TIME__"
} }
src_install() { src_install() {

View File

@ -58,9 +58,9 @@ src_configure() {
src_compile() { src_compile() {
# Build pgen # Build pgen
make Parser/pgen make -j1 Parser/pgen
# Regen graminit.c and graminit.h # Regen graminit.c and graminit.h
make Include/graminit.h make "${MAKEJOBS}" Include/graminit.h
# Regenerate some Python scripts using the other regenerated files # Regenerate some Python scripts using the other regenerated files
# Must move them out to avoid using Lib/ module files which are # Must move them out to avoid using Lib/ module files which are
@ -72,7 +72,7 @@ src_compile() {
python token.py python token.py
# Now build the main program # Now build the main program
make CFLAGS="-U__DATE__ -U__TIME__" make "${MAKEJOBS}" CFLAGS="-U__DATE__ -U__TIME__"
} }
src_install() { src_install() {

View File

@ -53,9 +53,9 @@ src_configure() {
src_compile() { src_compile() {
# Regenerations # Regenerations
rm Modules/_blake2/blake2s_impl.c rm Modules/_blake2/blake2s_impl.c
make regen-all make "${MAKEJOBS}" regen-all
make CPPFLAGS="-U__DATE__ -U__TIME__" make "${MAKEJOBS}" CPPFLAGS="-U__DATE__ -U__TIME__"
} }
src_install() { src_install() {

View File

@ -27,7 +27,7 @@ src_configure() {
} }
src_compile() { src_compile() {
make PREFIX="${PREFIX}" MAKEINFO="true" make "${MAKEJOBS}" PREFIX="${PREFIX}" MAKEINFO="true"
} }
src_install() { src_install() {