2012-02-15 16:54:11

by Joerg Roedel

[permalink] [raw]
Subject: [PATCH 1/2] kbuild: Fix link to headers in 'make deb-pkg'

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 <[email protected]>
Cc: maximilian attems <[email protected]>
Cc: Ben Hutchings <[email protected]>
Cc: [email protected]
Cc: [email protected]
Signed-off-by: Joerg Roedel <[email protected]>
---
scripts/package/builddeb | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/scripts/package/builddeb b/scripts/package/builddeb
index 3c6c0b1..39e3f30 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,7 @@ destdir=$kernel_headers_dir/usr/src/linux-headers-$version
mkdir -p "$destdir"
(cd $srctree; tar -c -f - -T "$objtree/debian/hdrsrcfiles") | (cd $destdir; tar -xf -)
(cd $objtree; tar -c -f - -T "$objtree/debian/hdrobjfiles") | (cd $destdir; tar -xf -)
+ln -sf "/usr/src/linux-headers-$version" "$kernel_headers_dir/lib/modules/$version/build"
rm -f "$objtree/debian/hdrsrcfiles" "$objtree/debian/hdrobjfiles"
arch=$(dpkg --print-architecture)

--
1.7.5.4


2012-02-15 16:38:57

by Joerg Roedel

[permalink] [raw]
Subject: [PATCH 2/2] kbuild: Only build linux-image package for UML

For user-mode Linux the other packages are not required. So
only build the package with the linux-image in it.

Cc: Michal Marek <[email protected]>
Cc: maximilian attems <[email protected]>
Cc: Ben Hutchings <[email protected]>
Cc: [email protected]
Cc: [email protected]
Signed-off-by: Joerg Roedel <[email protected]>
---
scripts/package/builddeb | 14 +++++++++-----
1 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/scripts/package/builddeb b/scripts/package/builddeb
index 39e3f30..0db889f 100644
--- a/scripts/package/builddeb
+++ b/scripts/package/builddeb
@@ -130,8 +130,10 @@ if grep -q '^CONFIG_MODULES=y' .config ; then
fi
fi

-make headers_check
-make headers_install INSTALL_HDR_PATH="$libc_headers_dir/usr"
+if [ "$ARCH" != "um" ]; then
+ make headers_check
+ make headers_install INSTALL_HDR_PATH="$libc_headers_dir/usr"
+fi

# Install the maintainer scripts
# Note: hook scripts under /etc/kernel are also executed by official Debian
@@ -263,8 +265,6 @@ Description: Linux kernel headers for $KERNELRELEASE on $arch
This is useful for people who need to build external modules
EOF

-create_package "$kernel_headers_packagename" "$kernel_headers_dir"
-
# Do we have firmware? Move it out of the way and build it into a package.
if [ -e "$tmpdir/lib/firmware" ]; then
mv "$tmpdir/lib/firmware" "$fwdir/lib/"
@@ -291,7 +291,11 @@ Description: Linux support headers for userspace development
are used by the installed headers for GNU glibc and other system libraries.
EOF

-create_package "$libc_headers_packagename" "$libc_headers_dir"
+if [ "$ARCH" != "um" ]; then
+ create_package "$kernel_headers_packagename" "$kernel_headers_dir"
+ create_package "$libc_headers_packagename" "$libc_headers_dir"
+fi
+
create_package "$packagename" "$tmpdir"

exit 0
--
1.7.5.4

2012-02-16 04:45:31

by Ben Hutchings

[permalink] [raw]
Subject: Re: [PATCH 1/2] kbuild: Fix link to headers in 'make deb-pkg'

On Wed, 2012-02-15 at 17:38 +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 <[email protected]>
> Cc: maximilian attems <[email protected]>
> Cc: Ben Hutchings <[email protected]>
> Cc: [email protected]
> Cc: [email protected]
> Signed-off-by: Joerg Roedel <[email protected]>
[...]
Reviewed-by: Ben Hutchings <[email protected]>

--
Ben Hutchings
Beware of programmers who carry screwdrivers. - Leonard Brandwein


Attachments:
signature.asc (828.00 B)
This is a digitally signed message part

2012-02-16 04:49:50

by Ben Hutchings

[permalink] [raw]
Subject: Re: [PATCH 2/2] kbuild: Only build linux-image package for UML

On Wed, 2012-02-15 at 17:38 +0100, Joerg Roedel wrote:
> For user-mode Linux the other packages are not required. So
> only build the package with the linux-image in it.
>
> Cc: Michal Marek <[email protected]>
> Cc: maximilian attems <[email protected]>
> Cc: Ben Hutchings <[email protected]>
> Cc: [email protected]
> Cc: [email protected]
> Signed-off-by: Joerg Roedel <[email protected]>
Tested-by: Ben Hutchings <[email protected]>

But I've never touched UML either so we should get confirmation that
this really is the right thing to do.

Ben.

> ---
> scripts/package/builddeb | 14 +++++++++-----
> 1 files changed, 9 insertions(+), 5 deletions(-)
>
> diff --git a/scripts/package/builddeb b/scripts/package/builddeb
> index 39e3f30..0db889f 100644
> --- a/scripts/package/builddeb
> +++ b/scripts/package/builddeb
> @@ -130,8 +130,10 @@ if grep -q '^CONFIG_MODULES=y' .config ; then
> fi
> fi
>
> -make headers_check
> -make headers_install INSTALL_HDR_PATH="$libc_headers_dir/usr"
> +if [ "$ARCH" != "um" ]; then
> + make headers_check
> + make headers_install INSTALL_HDR_PATH="$libc_headers_dir/usr"
> +fi
>
> # Install the maintainer scripts
> # Note: hook scripts under /etc/kernel are also executed by official Debian
> @@ -263,8 +265,6 @@ Description: Linux kernel headers for $KERNELRELEASE on $arch
> This is useful for people who need to build external modules
> EOF
>
> -create_package "$kernel_headers_packagename" "$kernel_headers_dir"
> -
> # Do we have firmware? Move it out of the way and build it into a package.
> if [ -e "$tmpdir/lib/firmware" ]; then
> mv "$tmpdir/lib/firmware" "$fwdir/lib/"
> @@ -291,7 +291,11 @@ Description: Linux support headers for userspace development
> are used by the installed headers for GNU glibc and other system libraries.
> EOF
>
> -create_package "$libc_headers_packagename" "$libc_headers_dir"
> +if [ "$ARCH" != "um" ]; then
> + create_package "$kernel_headers_packagename" "$kernel_headers_dir"
> + create_package "$libc_headers_packagename" "$libc_headers_dir"
> +fi
> +
> create_package "$packagename" "$tmpdir"
>
> exit 0
> --
> 1.7.5.4
>
>
>

--
Ben Hutchings
Beware of programmers who carry screwdrivers. - Leonard Brandwein


Attachments:
signature.asc (828.00 B)
This is a digitally signed message part

2012-02-16 21:36:10

by Mattia Dongili

[permalink] [raw]
Subject: Re: [PATCH 2/2] kbuild: Only build linux-image package for UML

On Thu, Feb 16, 2012 at 04:49:50AM +0000, Ben Hutchings wrote:
> On Wed, 2012-02-15 at 17:38 +0100, Joerg Roedel wrote:
> > For user-mode Linux the other packages are not required. So
> > only build the package with the linux-image in it.
> >
> > Cc: Michal Marek <[email protected]>
> > Cc: maximilian attems <[email protected]>
> > Cc: Ben Hutchings <[email protected]>
> > Cc: [email protected]
> > Cc: [email protected]
> > Signed-off-by: Joerg Roedel <[email protected]>
> Tested-by: Ben Hutchings <[email protected]>
>
> But I've never touched UML either so we should get confirmation that
> this really is the right thing to do.

there is a wishlist bug opened ages ago (and pinged not so long ago)
requesting headers to be packaged in debian:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=186930
Just to say that there is some interest in having headers packaged
somehow.

--
mattia
:wq!


Attachments:
(No filename) (924.00 B)
signature.asc (198.00 B)
Digital signature
Download all attachments

2012-02-24 22:57:38

by Michal Marek

[permalink] [raw]
Subject: Re: [PATCH 1/2] kbuild: Fix link to headers in 'make deb-pkg'

On Thu, Feb 16, 2012 at 04:45:21AM +0000, Ben Hutchings wrote:
> On Wed, 2012-02-15 at 17:38 +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 <[email protected]>
> > Cc: maximilian attems <[email protected]>
> > Cc: Ben Hutchings <[email protected]>
> > Cc: [email protected]
> > Cc: [email protected]
> > Signed-off-by: Joerg Roedel <[email protected]>
> [...]
> Reviewed-by: Ben Hutchings <[email protected]>

Applied to kbuild.git#misc.

Michal

2012-02-24 22:57:37

by Michal Marek

[permalink] [raw]
Subject: Re: [PATCH 2/2] kbuild: Only build linux-image package for UML

On Fri, Feb 17, 2012 at 06:29:27AM +0900, Mattia Dongili wrote:
> On Thu, Feb 16, 2012 at 04:49:50AM +0000, Ben Hutchings wrote:
> > On Wed, 2012-02-15 at 17:38 +0100, Joerg Roedel wrote:
> > > For user-mode Linux the other packages are not required. So
> > > only build the package with the linux-image in it.
> > >
> > > Cc: Michal Marek <[email protected]>
> > > Cc: maximilian attems <[email protected]>
> > > Cc: Ben Hutchings <[email protected]>
> > > Cc: [email protected]
> > > Cc: [email protected]
> > > Signed-off-by: Joerg Roedel <[email protected]>
> > Tested-by: Ben Hutchings <[email protected]>
> >
> > But I've never touched UML either so we should get confirmation that
> > this really is the right thing to do.
>
> there is a wishlist bug opened ages ago (and pinged not so long ago)
> requesting headers to be packaged in debian:
> http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=186930
> Just to say that there is some interest in having headers packaged
> somehow.

As there was no further reaction, I applied the patch now to
kbuild.git#misc.

Michal