mirror of
https://github.com/moparisthebest/pacman
synced 2024-11-15 13:55:09 -05:00
makepkg: assign debugging symbol directory to a variable
Simplifies the stripping of files a lot. Signed-off-by: Allan McRae <allan@archlinux.org>
This commit is contained in:
parent
13667fd4b1
commit
dbbe3e7cb4
@ -1438,38 +1438,36 @@ strip_file() {
|
|||||||
|
|
||||||
# has this file already been stripped
|
# has this file already been stripped
|
||||||
if [[ -n "$bid" ]]; then
|
if [[ -n "$bid" ]]; then
|
||||||
if [[ -f "$pkgdir-@DEBUGSUFFIX@"/usr/lib/debug/.build_id/${bid:0:2}/${bid:2}.debug ]]; then
|
if [[ -f "$dbgdir/.build_id/${bid:0:2}/${bid:2}.debug" ]]; then
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
elif [[ -f "$pkgdir-@DEBUGSUFFIX@/usr/lib/debug/$binary.debug" ]]; then
|
elif [[ -f "$dbgdir/$binary.debug" ]]; then
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
|
|
||||||
mkdir -p "$pkgdir-@DEBUGSUFFIX@/usr/lib/debug/${binary%/*}"
|
mkdir -p "$dbgdir/${binary%/*}"
|
||||||
objcopy --only-keep-debug "$binary" "$pkgdir-@DEBUGSUFFIX@/usr/lib/debug/$binary.debug"
|
objcopy --only-keep-debug "$binary" "$dbgdir/$binary.debug"
|
||||||
objcopy --add-gnu-debuglink="$pkgdir-@DEBUGSUFFIX@/usr/lib/debug/${binary#/}.debug" "$binary"
|
objcopy --add-gnu-debuglink="$dbgdir/${binary#/}.debug" "$binary"
|
||||||
|
|
||||||
# create any needed hardlinks
|
# create any needed hardlinks
|
||||||
while read -d '' file ; do
|
while read -d '' file ; do
|
||||||
if [[ "${binary}" -ef "${file}" &&
|
if [[ "${binary}" -ef "${file}" && ! -f "$dbgdir/${file}.debug" ]]; then
|
||||||
! -f "$pkgdir-@DEBUGSUFFIX@/usr/lib/debug/${file}.debug" ]]; then
|
mkdir -p "$dbgdir/${file%/*}"
|
||||||
mkdir -p "$pkgdir-@DEBUGSUFFIX@/usr/lib/debug/${file%/*}"
|
ln "$dbgdir/${binary}.debug" "$dbgdir/${file}.debug"
|
||||||
ln "$pkgdir-@DEBUGSUFFIX@/usr/lib/debug/${binary}.debug" \
|
|
||||||
"$pkgdir-@DEBUGSUFFIX@/usr/lib/debug/${file}.debug"
|
|
||||||
fi
|
fi
|
||||||
done < <(find . -type f -perm -u+w -print0 2>/dev/null)
|
done < <(find . -type f -perm -u+w -print0 2>/dev/null)
|
||||||
|
|
||||||
if [[ -n "$bid" ]]; then
|
if [[ -n "$bid" ]]; then
|
||||||
local target
|
local target
|
||||||
mkdir -p "$pkgdir-@DEBUGSUFFIX@/usr/lib/debug/.build_id/${bid:0:2}"
|
mkdir -p "$dbgdir/.build_id/${bid:0:2}"
|
||||||
|
|
||||||
target="../../../../../${binary#./}"
|
target="../../../../../${binary#./}"
|
||||||
target="${target/..\/..\/usr\/lib\/}"
|
target="${target/..\/..\/usr\/lib\/}"
|
||||||
target="${target/..\/usr\/}"
|
target="${target/..\/usr\/}"
|
||||||
ln -s "$target" "$pkgdir-@DEBUGSUFFIX@/usr/lib/debug/.build_id/${bid:0:2}/${bid:2}"
|
ln -s "$target" "$dbgdir/.build_id/${bid:0:2}/${bid:2}"
|
||||||
|
|
||||||
target="../../${binary#./}.debug"
|
target="../../${binary#./}.debug"
|
||||||
ln -s "$target" "$pkgdir-@DEBUGSUFFIX@/usr/lib/debug/.build_id/${bid:0:2}/${bid:2}.debug"
|
ln -s "$target" "$dbgdir/.build_id/${bid:0:2}/${bid:2}.debug"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -1532,7 +1530,8 @@ tidy_install() {
|
|||||||
[[ -z ${STRIP_STATIC+x} ]] && STRIP_STATIC="-S"
|
[[ -z ${STRIP_STATIC+x} ]] && STRIP_STATIC="-S"
|
||||||
|
|
||||||
if check_option "debug" "y"; then
|
if check_option "debug" "y"; then
|
||||||
mkdir -p $pkgdir-@DEBUGSUFFIX@/usr/lib/debug
|
dbgdir="$pkgdir-@DEBUGSUFFIX@/usr/lib/debug"
|
||||||
|
mkdir -p "$dbgdir"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
local binary strip_flags
|
local binary strip_flags
|
||||||
|
Loading…
Reference in New Issue
Block a user