Message ID | 20240113104339.16131-1-masahiroy@kernel.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v2,1/4] kbuild: deb-pkg: show verbose log for direct package builds | expand |
On Sat, Jan 13, 2024 at 07:43:36PM +0900, Masahiro Yamada wrote: > When the Debian package build is initiated by Kbuild ('make deb-pkg' > or 'make bindeb-pkg'), the log messages are displayed in the short > form, which is the Kbuild default. > > Otherwise, let's show verbose messages (unless the 'terse' tag is set > in DEB_BUILD_OPTION), as suggested by Debian Policy: "The package build > should be as verbose as reasonably possible, except where the terse tag > is included in DEB_BUILD_OPTIONS." [1] > > This is what the Debian kernel also does. [2] > > [1]: https://www.debian.org/doc/debian-policy/ch-source.html#main-building-script-debian-rules > [2]: https://salsa.debian.org/kernel-team/linux/-/blob/debian/6.7-1_exp1/debian/rules.real#L36 > > Signed-off-by: Masahiro Yamada <masahiroy@kernel.org> > --- > > Changes in v2: > - New patch > > scripts/package/debian/rules | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff --git a/scripts/package/debian/rules b/scripts/package/debian/rules > index 098307780062..697fbfa7595f 100755 > --- a/scripts/package/debian/rules > +++ b/scripts/package/debian/rules > @@ -11,6 +11,14 @@ ifneq (,$(filter-out parallel=1,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))) > MAKEFLAGS += -j$(NUMJOBS) > endif > > +# When KBUILD_VERBOSE is undefined (presumably you are directly working with > +# the debianized tree), show verbose logs unless DEB_BUILD_OPTION=terse is set. > +ifeq ($(origin KBUILD_VERBOSE),undefined) > + ifeq (,$(filter terse,$(DEB_BUILD_OPTIONS))) > + export KBUILD_VERBOSE := 1 > + endif > +endif > + > revision = $(lastword $(subst -, ,$(shell dpkg-parsechangelog -S Version))) > CROSS_COMPILE ?= $(filter-out $(DEB_BUILD_GNU_TYPE)-, $(DEB_HOST_GNU_TYPE)-) > make-opts = ARCH=$(ARCH) KERNELRELEASE=$(KERNELRELEASE) KBUILD_BUILD_VERSION=$(revision) $(addprefix CROSS_COMPILE=,$(CROSS_COMPILE)) > -- > 2.40.1 > thanks! Reviewed-by: Nicolas Schier <n.schier@avm.de>
diff --git a/scripts/package/debian/rules b/scripts/package/debian/rules index 098307780062..697fbfa7595f 100755 --- a/scripts/package/debian/rules +++ b/scripts/package/debian/rules @@ -11,6 +11,14 @@ ifneq (,$(filter-out parallel=1,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))) MAKEFLAGS += -j$(NUMJOBS) endif +# When KBUILD_VERBOSE is undefined (presumably you are directly working with +# the debianized tree), show verbose logs unless DEB_BUILD_OPTION=terse is set. +ifeq ($(origin KBUILD_VERBOSE),undefined) + ifeq (,$(filter terse,$(DEB_BUILD_OPTIONS))) + export KBUILD_VERBOSE := 1 + endif +endif + revision = $(lastword $(subst -, ,$(shell dpkg-parsechangelog -S Version))) CROSS_COMPILE ?= $(filter-out $(DEB_BUILD_GNU_TYPE)-, $(DEB_HOST_GNU_TYPE)-) make-opts = ARCH=$(ARCH) KERNELRELEASE=$(KERNELRELEASE) KBUILD_BUILD_VERSION=$(revision) $(addprefix CROSS_COMPILE=,$(CROSS_COMPILE))
When the Debian package build is initiated by Kbuild ('make deb-pkg' or 'make bindeb-pkg'), the log messages are displayed in the short form, which is the Kbuild default. Otherwise, let's show verbose messages (unless the 'terse' tag is set in DEB_BUILD_OPTION), as suggested by Debian Policy: "The package build should be as verbose as reasonably possible, except where the terse tag is included in DEB_BUILD_OPTIONS." [1] This is what the Debian kernel also does. [2] [1]: https://www.debian.org/doc/debian-policy/ch-source.html#main-building-script-debian-rules [2]: https://salsa.debian.org/kernel-team/linux/-/blob/debian/6.7-1_exp1/debian/rules.real#L36 Signed-off-by: Masahiro Yamada <masahiroy@kernel.org> --- Changes in v2: - New patch scripts/package/debian/rules | 8 ++++++++ 1 file changed, 8 insertions(+)