[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1329187753.3048.44.camel@deadeye>
Date: Tue, 14 Feb 2012 02:49:13 +0000
From: Ben Hutchings <ben@...adent.org.uk>
To: Joerg Roedel <joerg.roedel@....com>
Cc: linux-kernel@...r.kernel.org, Michal Marek <mmarek@...e.cz>,
maximilian attems <max@...o.at>,
debian-kernel@...ts.debian.org, linux-kbuild@...r.kernel.org
Subject: Re: [PATCH v2] kbuild: Fix link to headers in 'make deb-pkg'
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@...e.cz>
> Cc: maximilian attems <max@...o.at>
> Cc: Ben Hutchings <ben@...adent.org.uk>
> Cc: debian-kernel@...ts.debian.org
> Cc: linux-kbuild@...r.kernel.org
> Signed-off-by: Joerg Roedel <joerg.roedel@....com>
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
Download attachment "signature.asc" of type "application/pgp-signature" (829 bytes)
Powered by blists - more mailing lists