[PATCH] deb-pkg: add comment about future removal of KDEB_COMPRESS

From: Masahiro Yamada
Date: Fri Mar 14 2025 - 05:54:02 EST


'man dpkg-deb' describes as follows:

DPKG_DEB_COMPRESSOR_TYPE
Sets the compressor type to use (since dpkg 1.21.10).

The -Z option overrides this value.

When commit 1a7f0a34ea7d ("builddeb: allow selection of .deb compressor")
was applied, dpkg-deb did not support this environment variable.

Later, dpkg commit c10aeffc6d71 ("dpkg-deb: Add support for
DPKG_DEB_COMPRESSOR_TYPE/LEVEL") introduced support for
DPKG_DEB_COMPRESSOR_TYPE, which provides the same functionality as
KDEB_COMPRESS.

KDEB_COMPRESS is still useful for users of older dpkg versions, but I
would like to remove this redundant functionality in the future.

This commit adds comments to notify users of the planned removal and to
encourage migration to DPKG_DEB_COMPRESSOR_TYPE where possible.

Signed-off-by: Masahiro Yamada <masahiroy@xxxxxxxxxx>
---

lib/Kconfig.debug | 6 +++---
scripts/package/debian/rules | 4 ++++
2 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
index 17ccd913975d..be9f5af4c05c 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
@@ -335,12 +335,12 @@ config DEBUG_INFO_COMPRESSED_ZLIB
Compress the debug information using zlib. Requires GCC 5.0+ or Clang
5.0+, binutils 2.26+, and zlib.

- Users of dpkg-deb via scripts/package/builddeb may find an increase in
+ Users of dpkg-deb via debian/rules may find an increase in
size of their debug .deb packages with this config set, due to the
debug info being compressed with zlib, then the object files being
recompressed with a different compression scheme. But this is still
- preferable to setting $KDEB_COMPRESS to "none" which would be even
- larger.
+ preferable to setting KDEB_COMPRESS or DPKG_DEB_COMPRESSOR_TYPE to
+ "none" which would be even larger.

config DEBUG_INFO_COMPRESSED_ZSTD
bool "Compress debugging information with zstd"
diff --git a/scripts/package/debian/rules b/scripts/package/debian/rules
index ca07243bd5cd..33bfd00974b3 100755
--- a/scripts/package/debian/rules
+++ b/scripts/package/debian/rules
@@ -41,6 +41,10 @@ package = $($(@:binary-%=%-package))
# which package is being processed in the build log.
DH_OPTIONS = -p$(package)

+# Note: future removal of KDEB_COMPRESS
+# dpkg-deb >= 1.21.10 supports the DPKG_DEB_COMPRESSOR_TYPE environment
+# variable, which provides the same functionality as KDEB_COMPRESS. The
+# KDEB_COMPRESS variable will be removed in the future.
define binary
$(Q)dh_testdir $(DH_OPTIONS)
$(Q)dh_testroot $(DH_OPTIONS)
--
2.43.0