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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Aug 22, 2014 at 03:56:07PM +0200, Michal Marek wrote:
> 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

This should read:

$OBJCOPY --add-gnu-debuglink=$dbg_dir/usr/lib/debug/$module $tmpdir/$module

(The last argument needs "$tmpdir/".)

but otherwise it's ok, so you can add:
Tested-by: Darrick J. Wong <darrick.wong@xxxxxxxxxx>

--D
--
To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux&nblp;USB Development]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite Secrets]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux