[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Different linux-image produced w/wo pkg.linux.nokerneldbg profile?



Hello Ben,


I have a question about the following commits:

[1] a4c612e9e09a963937ea162cff716eb3f6d68c3a
  ("d/bin/gencontrol.py, d/rules.real: Replace DEBUG variable with if_package")

[2] 140798ec27895a346d871283fb24dfa07fc54b4c
  ("Add pkg.linux.nokerneldbg build profile")


With the pkg.linux.nokerneldbg profile given,
the linux-image will skip --add-gnu-debuglink and re-do signing.


This does not seem to comply with what is mentioned in BuildProfileSpec.
(https://wiki.debian.org/BuildProfileSpec)


----------------------------------->8----------------------------------------
[Profile built binary packages]

  A binary package must contain the exact same content for all
profiles with which
  it builds including no activated profile at all (if it builds in
that case). Otherwise a
  package depending on that binary package might not find the
functionality or data
  it expects it to provide. This means that if necessary binary
packages have to be
  split or that a source package has to be built in two stages. This
requirement can
  not technically be checked before ReproducibleBuilds happen.

  This requirement does not apply if the "stage1" or "nodoc" profile
is active. In this
  case, only the parts of the package that expose a functional
interface (scripts,
  programs, libraries, headers) must not be different. Non-functional
interfaces like
  documentation can be different or missing in the produced binary packages.
----------------------------------->8----------------------------------------


To produce the same package w/wo pkg.linux.nokerneldbg,
does the following change make sense?



diff --git a/debian/rules.real b/debian/rules.real
index 0e88ed78d6..6c59b26ffb 100644
--- a/debian/rules.real
+++ b/debian/rules.real
@@ -368,7 +368,6 @@ endif
          binary_image_dt \
          DIR='$(DIR)' DESTDIR='$(DESTDIR)' REAL_VERSION='$(REAL_VERSION)'
        +$(MAKE_CLEAN) -C $(DIR) modules_install
DEPMOD='$(CURDIR)/debian/bin/no-depmod' INSTALL_MOD_PATH=$(DESTDIR)
INSTALL_MOD_STRIP=1
-ifeq ($(call if_package,linux-image-$(ABINAME)$(LOCALVERSION)-dbg,y),y)
 # We are building debug info, so add debug links
        set -o pipefail; \
        find $(DESTDIR) -name '*.ko' | sed
's|$(DESTDIR)/lib/modules/$(REAL_VERSION)/kernel/||' | while read
module ; do \
@@ -379,7 +378,6 @@ ifeq ($(call
if_package,linux-image-$(ABINAME)$(LOCALVERSION)-dbg,y),y)
        +if grep -qs '^CONFIG_MODULE_SIG_ALL=y' $(DIR)/.config; then \
                $(MAKE_CLEAN) -C $(DIR) modules_sign
INSTALL_MOD_PATH=$(DESTDIR); \
        fi
-endif
        sed '/CONFIG_\(MODULE_SIG_\(ALL\|KEY\)\|SYSTEM_TRUSTED_KEYS\|BUILD_SALT\)[
=]/d' $(DIR)/.config > $(DESTDIR)/boot/config-$(REAL_VERSION)
        echo "ffffffffffffffff B The real System.map is in the
linux-image-<version>-dbg package" \
                > $(DESTDIR)/boot/System.map-$(REAL_VERSION)



-- 
Best Regards
Masahiro Yamada


Reply to: