On Mon, 2012-02-13 at 15:48 +0100, Joerg Roedel wrote: > The Link to the kernel header files in the debian packages > point to the original build directory. This is a bad choice > if the packages were installed on a different machine. Fix > this in by manually re-creating the link in the builddeb > script. > > Cc: Michal Marek <mmarek@xxxxxxx> > Cc: maximilian attems <max@xxxxxxx> > Cc: Ben Hutchings <ben@xxxxxxxxxxxxxxx> > Cc: debian-kernel@xxxxxxxxxxxxxxxx > Cc: linux-kbuild@xxxxxxxxxxxxxxx > Signed-off-by: Joerg Roedel <joerg.roedel@xxxxxxx> This looks good for !UML. I wonder about the UML case though. Did you test it? In 3.3-rc3, 'make headers_install' is broken. But if I suppress the header check, the resulting packages have links in the right places. I'm also unconvinced that anyone will be interested in building an OOT module for UML; and if they do their build script or makefile will use 'make -C /lib/modules/<version>/build' which won't work. Maybe for UML we should only build the 'image' package? Ben. > --- > scripts/package/builddeb | 9 +++++++++ > 1 files changed, 9 insertions(+), 0 deletions(-) > > diff --git a/scripts/package/builddeb b/scripts/package/builddeb > index f6cbc3d..fc3f76a 100644 > --- a/scripts/package/builddeb > +++ b/scripts/package/builddeb > @@ -97,6 +97,7 @@ mkdir -m 755 -p "$libc_headers_dir/DEBIAN" > mkdir -p "$libc_headers_dir/usr/share/doc/$libc_headers_packagename" > mkdir -m 755 -p "$kernel_headers_dir/DEBIAN" > mkdir -p "$kernel_headers_dir/usr/share/doc/$kernel_headers_packagename" > +mkdir -p "$kernel_headers_dir/lib/modules/$version/" > if [ "$ARCH" = "um" ] ; then > mkdir -p "$tmpdir/usr/lib/uml/modules/$version" "$tmpdir/usr/bin" > fi > @@ -121,6 +122,8 @@ fi > > if grep -q '^CONFIG_MODULES=y' .config ; then > INSTALL_MOD_PATH="$tmpdir" make KBUILD_SRC= modules_install > + rm -f "$tmpdir/lib/modules/$version/build" > + rm -f "$tmpdir/lib/modules/$version/source" > if [ "$ARCH" = "um" ] ; then > mv "$tmpdir/lib/modules/$version"/* "$tmpdir/usr/lib/uml/modules/$version/" > rmdir "$tmpdir/lib/modules/$version" > @@ -245,6 +248,12 @@ destdir=$kernel_headers_dir/usr/src/linux-headers-$version > mkdir -p "$destdir" > (cd $srctree; tar -c -f - -T /tmp/files$$) | (cd $destdir; tar -xf -) > (cd $objtree; tar -c -f - -T /tmp/objfiles$$) | (cd $destdir; tar -xf -) > +ln -sf "/usr/src/linux-headers-$version" "$kernel_headers_dir/lib/modules/$version/build" > +if [ "$ARCH" = "um" ] ; then > + mkdir -p "$kernel_headers_dir/usr/lib/uml/modules/$version/" > + mv "$kernel_headers_dir/lib/modules/$version"/* "$kernel_headers_dir/usr/lib/uml/modules/$version/" > + rmdir "$kernel_headers_dir/lib/modules/$version" > +fi > rm -f /tmp/files$$ /tmp/objfiles$$ > arch=$(dpkg --print-architecture) > -- Ben Hutchings Beware of programmers who carry screwdrivers. - Leonard Brandwein
Attachment:
signature.asc
Description: This is a digitally signed message part