lkml.org 
[lkml]   [2023]   [Mar]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Subject[PATCH v2 1/1] kbuild: deb-pkg: Build parallely with current dpkg-buildpackage
Date
With dpkg-buildpackage v1.21.10 or later, the only way to build the
deb-pkg generated package parallely is adding -j<N> to the MAKEFLAGS
environment variable or using the --jobs-force option. The package ignores
the usual parallel build option that is described in Debian Policy §4.9.1.

Derive make's -j parameter from the DEB_BUILD_OPTIONS environment variable
that ends up being set by dpkg-buildpackage -j<N>.

Link: https://www.debian.org/doc/debian-policy/ch-source.html
Signed-off-by: Bastian Germann <bage@linutronix.de>
---
scripts/package/mkdebian | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/scripts/package/mkdebian b/scripts/package/mkdebian
index f74380036bb5..0217790e7a26 100755
--- a/scripts/package/mkdebian
+++ b/scripts/package/mkdebian
@@ -238,11 +238,15 @@ fi
cat <<EOF > debian/rules
#!$(command -v $MAKE) -f

+ifneq (,\$(filter parallel=%,\$(DEB_BUILD_OPTIONS)))
+ JOBS = -j\$(subst parallel=,,\$(filter parallel=%,\$(DEB_BUILD_OPTIONS)))
+endif
+
srctree ?= .

build-indep:
build-arch:
- \$(MAKE) -f \$(srctree)/Makefile ARCH=${ARCH} \
+ \$(MAKE) -f \$(srctree)/Makefile ARCH=${ARCH} \$(JOBS) \
\$(shell \$(srctree)/scripts/package/deb-build-option) \
olddefconfig all

@@ -250,10 +254,10 @@ build: build-arch

binary-indep:
binary-arch: build-arch
- \$(MAKE) -f \$(srctree)/Makefile ARCH=${ARCH} intdeb-pkg
+ \$(MAKE) -f \$(srctree)/Makefile ARCH=${ARCH} \$(JOBS) intdeb-pkg
clean:
rm -rf debian/files debian/linux-*
- \$(MAKE) -f \$(srctree)/Makefile ARCH=${ARCH} clean
+ \$(MAKE) -f \$(srctree)/Makefile ARCH=${ARCH} \$(JOBS) clean

binary: binary-arch
EOF
--
2.39.2
\
 
 \ /
  Last update: 2023-03-27 01:01    [W:0.039 / U:1.016 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site