70 lines
1.9 KiB
Diff
70 lines
1.9 KiB
Diff
|
http://sourceware.org/ml/gdb-patches/2017-01/msg00110.html
|
||
|
Subject: [patch] contrib/gdb-add-index.sh: chmod u+w
|
||
|
|
||
|
|
||
|
--AhhlLboLdkugWU4S
|
||
|
Content-Type: text/plain; charset=us-ascii
|
||
|
Content-Disposition: inline
|
||
|
|
||
|
Hi,
|
||
|
|
||
|
in Fedora 24 it still worked, in Fedora 25 it does not - *-debuginfo.rpm
|
||
|
no longer have the .gdb_index accelerating section now.
|
||
|
|
||
|
It happens because:
|
||
|
objcopy: unable to copy file 'foo.debug'; reason: Permission denied
|
||
|
|
||
|
*.debug files in Fedora were always 444 but the time gdb-add-index is run is
|
||
|
still before the *.debug split and in Fedora 24 the files were -rwxr-xr-x
|
||
|
that time while in Fedora 25 they are apparently no longer w.
|
||
|
|
||
|
OK for check-in?
|
||
|
|
||
|
|
||
|
Jan
|
||
|
|
||
|
--AhhlLboLdkugWU4S
|
||
|
Content-Type: text/plain; charset=us-ascii
|
||
|
Content-Disposition: inline; filename=1
|
||
|
|
||
|
gdb/ChangeLog
|
||
|
2017-01-06 Jan Kratochvil <jan.kratochvil@redhat.com>
|
||
|
|
||
|
* contrib/gdb-add-index.sh: Use chmod u+w for $file.
|
||
|
|
||
|
diff --git a/gdb/contrib/gdb-add-index.sh b/gdb/contrib/gdb-add-index.sh
|
||
|
index 0cd4ce3..5a190a0 100755
|
||
|
--- a/gdb/contrib/gdb-add-index.sh
|
||
|
+++ b/gdb/contrib/gdb-add-index.sh
|
||
|
@@ -38,10 +38,11 @@ fi
|
||
|
dir="${file%/*}"
|
||
|
test "$dir" = "$file" && dir="."
|
||
|
index="${file}.gdb-index"
|
||
|
+mode="${file}.mode"
|
||
|
|
||
|
-rm -f $index
|
||
|
+rm -f $index $mode
|
||
|
# Ensure intermediate index file is removed when we exit.
|
||
|
-trap "rm -f $index" 0
|
||
|
+trap "rm -f $index $mode" 0
|
||
|
|
||
|
$GDB --batch -nx -iex 'set auto-load no' \
|
||
|
-ex "file $file" -ex "save gdb-index $dir" || {
|
||
|
@@ -58,8 +59,13 @@ $GDB --batch -nx -iex 'set auto-load no' \
|
||
|
status=0
|
||
|
|
||
|
if test -f "$index"; then
|
||
|
+ touch "$mode"
|
||
|
+ chmod --reference="$file" "$mode"
|
||
|
+ # objcopy: unable to copy file 'foo.debug'; reason: Permission denied
|
||
|
+ chmod u+w "$file"
|
||
|
$OBJCOPY --add-section .gdb_index="$index" \
|
||
|
--set-section-flags .gdb_index=readonly "$file" "$file"
|
||
|
+ chmod --reference="$mode" "$file"
|
||
|
status=$?
|
||
|
else
|
||
|
echo "$myname: No index was created for $file" 1>&2
|
||
|
|
||
|
--AhhlLboLdkugWU4S--
|
||
|
|