aboutsummaryrefslogtreecommitdiffstats
path: root/main/gdb/APKBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'main/gdb/APKBUILD')
-rw-r--r--main/gdb/APKBUILD60
1 files changed, 49 insertions, 11 deletions
diff --git a/main/gdb/APKBUILD b/main/gdb/APKBUILD
index dd3079f859d..178ebc083c2 100644
--- a/main/gdb/APKBUILD
+++ b/main/gdb/APKBUILD
@@ -1,17 +1,31 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=gdb
-pkgver=11.1
-pkgrel=0
+pkgver=14.2
+pkgrel=1
pkgdesc="The GNU Debugger"
url="https://www.gnu.org/software/gdb/"
arch="all"
-license="GPL-3.0-or-later LGPL-3.0-or-later"
-makedepends="ncurses-dev expat-dev texinfo readline-dev python3-dev
- zlib-dev autoconf automake libtool linux-headers perl gmp-dev"
+license="GPL-3.0-or-later AND LGPL-3.0-or-later"
+makedepends="
+ autoconf
+ automake
+ expat-dev
+ gmp-dev
+ libtool
+ linux-headers
+ mpfr-dev
+ ncurses-dev
+ perl
+ python3-dev
+ readline-dev
+ texinfo
+ zlib-dev
+ zstd-dev
+ "
options="!check"
-[ "$CARCH" = "riscv64" ] && options="$options textrels"
-subpackages="$pkgname-doc $pkgname-multiarch"
+subpackages="$pkgname-dbg $pkgname-doc $pkgname-multiarch"
source="https://ftp.gnu.org/gnu/gdb/gdb-$pkgver.tar.xz
+ gcore-sh.patch
s390x-use-elf-gdb_fpregset_t.patch
ppc-musl.patch
ppc-ptregs.patch
@@ -36,6 +50,9 @@ build() {
--mandir=/usr/share/man
--infodir=/usr/share/info"
+ export CFLAGS="$CFLAGS -O2 -g1"
+ export CXXFLAGS="$CXXFLAGS -O2 -g1"
+
# use system readline if not cross compiling
[ "$CBUILD" = "$CHOST" ] && _config="$_config --with-system-readline"
@@ -49,34 +66,55 @@ build() {
../configure $_config
make
+ # XXX: As of GDB 12.1, --enable-targets=all is broken on 32-bit targets.
+ #
+ # See: https://sourceware.org/pipermail/gdb-patches/2022-May/189227.html
cd "$builddir"/multiarch
- ../configure $_config --enable-targets=all
+ case "$CARCH" in
+ arm*|x86) ../configure $_config \
+ --disable-sim \
+ --enable-64-bit-bfd \
+ --enable-targets=all ;;
+ *) ../configure $_config --enable-targets=all ;;
+ esac
make
}
package() {
+ # backtracing/debugging pretty much anything is going to need libc debug symbols
+ # not everything, but the common case needs this, and it's a small dep in comparison
+ depends="musl-dbg"
+
cd "$builddir"/vanilla
make DESTDIR="$pkgdir" install
# resolve conflict with binutils-doc
rm -f "$pkgdir"/usr/share/info/bfd.info
+ rm -f "$pkgdir"/usr/share/info/ctf-spec.info
rm -f "$pkgdir"/usr/share/info/dir
# those are provided by binutils
rm -rf "$pkgdir"/usr/include
rm -rf "$pkgdir"/usr/lib
+
+ # resolve conflict with binutils-doc
+ rm "$pkgdir"/usr/share/info/sframe-spec.info
+
+ # install gdb-multiarch here for default dbg() split function to work
+ install -Dm755 "$builddir"/multiarch/gdb/gdb \
+ "$pkgdir"/usr/bin/gdb-multiarch
}
multiarch() {
depends="$pkgname"
pkgdesc="The GNU Debugger for all supported architectures"
- install -Dm755 "$builddir"/multiarch/gdb/gdb \
- "$subpkgdir"/usr/bin/gdb-multiarch
+ amove usr/bin/gdb-multiarch
}
sha512sums="
-c40bf970e2f7c2107b29c5aa6a7150daa709d75ddadb73ac20742419d4637d158e3063a4c6ff6e47fae8ca8e1d36253973f85ea15445d004be6d5d7a2dd9bd46 gdb-11.1.tar.xz
+7e07941f1fe661288cc571b4964012ceabc1760624fce20320db2f470c01439b2386f859b5288da13204b758e2e3b22a74c68c012178db93b9529b06f1e22ede gdb-14.2.tar.xz
+68f893e72742eac7e41fd7c3e688b8cccc79327f0422b03319302a1a9d24513e77d698bc6ff16f67236b521df321b9ff0ca2ee342c11f12933c492c5c530ec9b gcore-sh.patch
70e7d04e4d72461436da503b5bfa370c5779e03245c521f30e9779d5ff37dbb2d708b05f2afb27f43ad9defc44df4bd979d72f777e744851fdbf156295e1cc9f s390x-use-elf-gdb_fpregset_t.patch
04911f87904b62dd7662435f9182b20485afb29ddb3d6398a9d31fef13495f7b70639c77fdae3a40e2775e270d7cd40d0cfd7ddf832372b506808d33c8301e01 ppc-musl.patch
ab554899bbb2aa98261fd1b6beb4a71ed7c713a714bddd3fa7ec875258e39bd5474dc96a11accb4dadd316f3834f215e8395d3b373bf3affd122dc5b4a8fe710 ppc-ptregs.patch