Re: [PATCH] builddeb: put the dbg files into the correct directory

From: Michal Marek
Date: Fri Aug 22 2014 - 09:56:19 EST


On Mon, Aug 18, 2014 at 10:49:28PM -0700, Darrick J. Wong wrote:
> Since the conversion of objtree to use relative pathnames (commit
> 7e1c04779e, "kbuild: Use relative path for $(objtree)"), the debug
> info files have been ending up in /debian/dbgtmp/ in the regular
> linux-image package instead of the debug files package. Fix up the
> paths so that the debug files end up in the -dbg package.
>
> Signed-off-by: Darrick J. Wong <darrick.wong@xxxxxxxxxx>
> ---
> scripts/package/builddeb | 7 ++++---
> 1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/scripts/package/builddeb b/scripts/package/builddeb
> index 5707466..0456322 100644
> --- a/scripts/package/builddeb
> +++ b/scripts/package/builddeb
> @@ -153,15 +153,16 @@ if grep -q '^CONFIG_MODULES=y' $KCONFIG_CONFIG ; then
> fi
> if [ -n "$BUILD_DEBUG" ] ; then
> (
> + old_dir="$(pwd)"
> cd $tmpdir

Can you try the patch below? I'd rather get rid of the directory change,
if possible.

Michal

diff --git a/scripts/package/builddeb b/scripts/package/builddeb
index 35d5a58..dcfdbda 100755
--- a/scripts/package/builddeb
+++ b/scripts/package/builddeb
@@ -152,18 +152,16 @@ if grep -q '^CONFIG_MODULES=y' $KCONFIG_CONFIG ; then
rmdir "$tmpdir/lib/modules/$version"
fi
if [ -n "$BUILD_DEBUG" ] ; then
- (
- cd $tmpdir
- for module in $(find lib/modules/ -name *.ko); do
- mkdir -p $(dirname $dbg_dir/usr/lib/debug/$module)
- # only keep debug symbols in the debug file
- $OBJCOPY --only-keep-debug $module $dbg_dir/usr/lib/debug/$module
- # strip original module from debug symbols
- $OBJCOPY --strip-debug $module
- # then add a link to those
- $OBJCOPY --add-gnu-debuglink=$dbg_dir/usr/lib/debug/$module $module
- done
- )
+ for module in $(find $tmpdir/lib/modules/ -name *.ko -printf '%P\n'); do
+ module=lib/modules/$module
+ mkdir -p $(dirname $dbg_dir/usr/lib/debug/$module)
+ # only keep debug symbols in the debug file
+ $OBJCOPY --only-keep-debug $tmpdir/$module $dbg_dir/usr/lib/debug/$module
+ # strip original module from debug symbols
+ $OBJCOPY --strip-debug $tmpdir/$module
+ # then add a link to those
+ $OBJCOPY --add-gnu-debuglink=$dbg_dir/usr/lib/debug/$module $module
+ done
fi
fi

--
1.8.4.5

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/