summary refs log tree commit diff
path: root/scripts/package
diff options
context:
space:
mode:
authorBen Hutchings <ben@decadent.org.uk>2013-11-15 03:03:25 +0000
committerMichal Marek <mmarek@suse.cz>2013-11-18 14:35:49 +0100
commit1c8ddae09f4c102b97c9086cc70347e89468a547 (patch)
tree5348eebcb5b7dd6a3de8bdc639836daa88423910 /scripts/package
parent6cf3a6eff77273a55b996a5a43f342b150cfba09 (diff)
downloadlinux-1c8ddae09f4c102b97c9086cc70347e89468a547.tar.gz
deb-pkg: Inhibit initramfs builders if CONFIG_BLK_DEV_INITRD is not set
The kernel postinst hook for initramfs-tools will build an initramfs
on installation unless $INITRD is set to 'No'.  make-kpkg generates a
postinst script that sets this variable appropriately, but we don't.
Set it based on CONFIG_BLK_DEV_INITRD.

This should also work with dracut when <http://bugs.debian.org/729622>
is fixed.

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Signed-off-by: Michal Marek <mmarek@suse.cz>
Diffstat (limited to 'scripts/package')
-rw-r--r--scripts/package/builddeb12
1 files changed, 11 insertions, 1 deletions
diff --git a/scripts/package/builddeb b/scripts/package/builddeb
index 90e521fde35f..65014e1495bf 100644
--- a/scripts/package/builddeb
+++ b/scripts/package/builddeb
@@ -172,8 +172,15 @@ fi
 
 # Install the maintainer scripts
 # Note: hook scripts under /etc/kernel are also executed by official Debian
-# kernel packages, as well as kernel packages built using make-kpkg
+# kernel packages, as well as kernel packages built using make-kpkg.
+# make-kpkg sets $INITRD to indicate whether an initramfs is wanted, and
+# so do we; recent versions of dracut and initramfs-tools will obey this.
 debhookdir=${KDEB_HOOKDIR:-/etc/kernel}
+if grep -q '^CONFIG_BLK_DEV_INITRD=y' $KCONFIG_CONFIG; then
+	want_initrd=Yes
+else
+	want_initrd=No
+fi
 for script in postinst postrm preinst prerm ; do
 	mkdir -p "$tmpdir$debhookdir/$script.d"
 	cat <<EOF > "$tmpdir/DEBIAN/$script"
@@ -184,6 +191,9 @@ set -e
 # Pass maintainer script parameters to hook scripts
 export DEB_MAINT_PARAMS="\$*"
 
+# Tell initramfs builder whether it's wanted
+export INITRD=$want_initrd
+
 test -d $debhookdir/$script.d && run-parts --arg="$version" --arg="/$installed_image_path" $debhookdir/$script.d
 exit 0
 EOF