kbuild: create linux-headers package in deb-pkg

Create a linux-headers-$KVER.deb package which can be used to build
external modules without having the source tree around.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Signed-off-by: Michal Marek <mmarek@suse.cz>

authored by Theodore Ts'o and committed by Michal Marek cd8d60a2 55f88ecc

+27 -1
+27 -1
scripts/package/builddeb
··· 76 fi 77 tmpdir="$objtree/debian/tmp" 78 fwdir="$objtree/debian/fwtmp" 79 packagename=linux-image-$version 80 fwpackagename=linux-firmware-image 81 82 if [ "$ARCH" = "um" ] ; then 83 packagename=user-mode-linux-$version 84 fi 85 86 # Setup the directory structure 87 - rm -rf "$tmpdir" "$fwdir" 88 mkdir -m 755 -p "$tmpdir/DEBIAN" 89 mkdir -p "$tmpdir/lib" "$tmpdir/boot" "$tmpdir/usr/share/doc/$packagename" 90 mkdir -m 755 -p "$fwdir/DEBIAN" ··· 227 EOF 228 229 fi 230 231 # Do we have firmware? Move it out of the way and build it into a package. 232 if [ -e "$tmpdir/lib/firmware" ]; then
··· 76 fi 77 tmpdir="$objtree/debian/tmp" 78 fwdir="$objtree/debian/fwtmp" 79 + hdrdir="$objtree/debian/hdrtmp" 80 packagename=linux-image-$version 81 fwpackagename=linux-firmware-image 82 + hdrpackagename=linux-headers-$version 83 84 if [ "$ARCH" = "um" ] ; then 85 packagename=user-mode-linux-$version 86 fi 87 88 # Setup the directory structure 89 + rm -rf "$tmpdir" "$fwdir" "$hdrdir" 90 mkdir -m 755 -p "$tmpdir/DEBIAN" 91 mkdir -p "$tmpdir/lib" "$tmpdir/boot" "$tmpdir/usr/share/doc/$packagename" 92 mkdir -m 755 -p "$fwdir/DEBIAN" ··· 225 EOF 226 227 fi 228 + 229 + # Build header package 230 + find . -name Makefile -o -name Kconfig\* -o -name \*.pl > /tmp/files$$ 231 + find arch/x86/include include scripts -type f >> /tmp/files$$ 232 + (cd $objtree; find .config Module.symvers include scripts -type f >> /tmp/objfiles$$) 233 + destdir=$hdrdir/usr/src/linux-headers-$version 234 + mkdir -p "$destdir" "$hdrdir/DEBIAN" "$hdrdir/usr/share/doc/$hdrpackagename" 235 + tar -c -f - -T /tmp/files$$ | (cd $destdir; tar -xf -) 236 + (cd $objtree; tar -c -f - -T /tmp/objfiles$$) | (cd $destdir; tar -xf -) 237 + rm -f /tmp/files$$ /tmp/objfiles$$ 238 + arch=$(dpkg --print-architecture) 239 + 240 + cat <<EOF >> debian/control 241 + 242 + Package: $hdrpackagename 243 + Provides: linux-headers, linux-headers-2.6 244 + Architecture: $arch 245 + Description: Linux kernel headers for $KERNELRELEASE on $arch 246 + This package provides kernel header files for $KERNELRELEASE on $arch 247 + . 248 + This is useful for people who need to build external modules 249 + EOF 250 + 251 + create_package "$hdrpackagename" "$hdrdir" 252 253 # Do we have firmware? Move it out of the way and build it into a package. 254 if [ -e "$tmpdir/lib/firmware" ]; then