-# NOTE
-# - Do not remove -lib package, it is required by FPC
+# NOTE: -lib package is used by fpc.spec
# TODO
+# - rpm5 librpm support (gdb/configure.ac checks for 4.x or so)
# - change install msg to poldek in buildid-locate-rpm-pld.patch when poldek allows it. LP#493922
+# - reenable guile after https://sourceware.org/bugzilla/show_bug.cgi?id=21104 is fixed
#
# Conditional build:
-%bcond_with python # build with python support
+%bcond_with guile # Guile embedded scripting
+%bcond_without python # build without python support
Summary: A GNU source-level debugger for C, C++ and Fortran
Summary(de.UTF-8): Symbolischer Debugger für C und andere Sprachen
Summary(zh_CN.UTF-8): [开发]C和其他语言的调试器
Summary(zh_TW.UTF-8): [.-A開發]C和.$)B其.-A他語.$)B言的調試器
Name: gdb
-Version: 7.2
-Release: 0.1
+Version: 11.1
+Release: 1
License: GPL v3+
Group: Development/Debuggers
-Source0: http://ftp.gnu.org/gnu/gdb/%{name}-%{version}.tar.bz2
-# Source0-md5: 64260e6c56979ee750a01055f16091a5
+Source0: https://ftp.gnu.org/gnu/gdb/%{name}-%{version}.tar.xz
+# Source0-md5: 257cb0f67927f79acf636d8c01e19990
Source1: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2
# Source1-md5: 2e8a48939ae282c12bbacdd54e398247
Source3: %{name}-gstack.man
-
-# FEDORA -- use the same numbering that they do
-# don't ever modify these patches, apply secondary patch to alter it pld way
-# use:'<,'>!grep -vE '^(\#|$)' in vim to filterout comments, spaces
-
-Patch1: %{name}-6.3-rh-dummykfail-20041202.patch
-Patch2: %{name}-6.3-rh-testversion-20041202.patch
-Patch3: %{name}-6.3-rh-testlibunwind-20041202.patch
-Patch104: %{name}-6.3-ppcdotsolib-20041022.patch
-Patch105: %{name}-6.3-ppc64syscall-20040622.patch
-Patch106: %{name}-6.3-framepczero-20040927.patch
-Patch111: %{name}-6.3-ppc64displaysymbol-20041124.patch
-Patch112: %{name}-6.6-scheduler_locking-step-sw-watchpoints2.patch
-Patch260: %{name}-6.6-scheduler_locking-step-is-default.patch
-Patch118: %{name}-6.3-gstack-20050411.patch
-Patch122: %{name}-6.3-test-pie-20050107.patch
-Patch389: %{name}-archer-pie-addons.patch
-Patch394: %{name}-archer-pie-addons-keep-disabled.patch
-Patch125: %{name}-6.3-test-self-20050110.patch
-Patch133: %{name}-6.3-test-dtorfix-20050121.patch
-Patch136: %{name}-6.3-test-movedir-20050125.patch
-Patch140: %{name}-6.3-gcore-thread-20050204.patch
-Patch141: %{name}-6.6-step-thread-exit.patch
-Patch259: %{name}-6.3-step-thread-exit-20050211-test.patch
-Patch142: %{name}-6.3-terminal-fix-20050214.patch
-Patch145: %{name}-6.3-threaded-watchpoints2-20050225.patch
-Patch148: %{name}-6.3-inheritance-20050324.patch
-Patch153: %{name}-6.3-ia64-gcore-page0-20050421.patch
-Patch157: %{name}-6.3-security-errata-20050610.patch
-Patch158: %{name}-6.3-ia64-sigtramp-frame-20050708.patch
-Patch160: %{name}-6.3-ia64-gcore-speedup-20050714.patch
-Patch161: %{name}-6.3-inferior-notification-20050721.patch
-Patch162: %{name}-6.3-ia64-info-frame-fix-20050725.patch
-Patch163: %{name}-6.3-inheritancetest-20050726.patch
-Patch164: %{name}-6.3-readnever-20050907.patch
-Patch169: %{name}-6.3-ia64-sigill-20051115.patch
-Patch170: %{name}-6.3-bt-past-zero-20051201.patch
-Patch176: %{name}-6.3-large-core-20051206.patch
-Patch188: %{name}-6.5-bz203661-emit-relocs.patch
-Patch190: %{name}-6.5-dwarf-stack-overflow.patch
-Patch194: %{name}-6.5-bz185337-resolve-tls-without-debuginfo-v2.patch
-Patch196: %{name}-6.5-sharedlibrary-path.patch
-Patch199: %{name}-6.5-bz190810-gdbserver-arch-advice.patch
-Patch211: %{name}-6.5-last-address-space-byte-test.patch
-Patch208: %{name}-6.5-BEA-testsuite.patch
-Patch209: %{name}-6.5-readline-long-line-crash.patch
-Patch213: %{name}-6.5-readline-long-line-crash-test.patch
-Patch214: %{name}-6.5-bz216711-clone-is-outermost.patch
-Patch216: %{name}-6.5-bz218379-ppc-solib-trampoline-test.patch
-Patch217: %{name}-6.5-bz218379-solib-trampoline-lookup-lock-fix.patch
-Patch225: %{name}-6.5-bz109921-DW_AT_decl_file-test.patch
-Patch229: %{name}-6.3-bz140532-ppc-unwinding-test.patch
-Patch231: %{name}-6.3-bz202689-exec-from-pthread-test.patch
-Patch232: %{name}-upstream.patch
-Patch234: %{name}-6.6-bz230000-power6-disassembly-test.patch
-Patch235: %{name}-6.3-bz231832-obstack-2gb.patch
-Patch241: %{name}-6.6-bz225783-gdb-debuginfo-paths.patch
-Patch245: %{name}-6.6-bz229517-gcore-without-terminal.patch
-Patch247: %{name}-6.6-bz235197-fork-detach-info.patch
-Patch254: %{name}-6.6-testsuite-timeouts.patch
-Patch258: %{name}-6.6-bz237572-ppc-atomic-sequence-test.patch
-Patch261: %{name}-6.6-readline-system.patch
-Patch263: %{name}-6.3-attach-see-vdso-test.patch
-Patch265: %{name}-6.6-bz247354-leader-exit-fix.patch
-Patch266: %{name}-6.6-bz247354-leader-exit-test.patch
-Patch271: %{name}-6.5-bz243845-stale-testing-zombie-test.patch
-Patch274: %{name}-6.6-buildid-locate.patch
-Patch353: %{name}-6.6-buildid-locate-rpm.patch
-Patch415: %{name}-6.6-buildid-locate-core-as-arg.patch
-Patch282: %{name}-6.7-charsign-test.patch
-Patch284: %{name}-6.7-ppc-clobbered-registers-O2-test.patch
-Patch287: %{name}-6.7-testsuite-stable-results.patch
-Patch289: %{name}-6.5-ia64-libunwind-leak-test.patch
-Patch290: %{name}-6.5-missed-trap-on-step-test.patch
-Patch293: %{name}-6.7-bz426600-DW_TAG_interface_type-fix.patch
-Patch294: %{name}-6.7-bz426600-DW_TAG_interface_type-test.patch
-Patch296: %{name}-6.5-gcore-buffer-limit-test.patch
-Patch298: %{name}-6.6-threads-static-test.patch
-Patch304: %{name}-6.7-kernel-headers-compat.patch
-Patch309: %{name}-6.3-mapping-zero-inode-test.patch
-Patch311: %{name}-6.3-focus-cmd-prev-test.patch
-Patch315: %{name}-6.8-bz442765-threaded-exec-test.patch
-Patch317: %{name}-6.8-sparc64-silence-memcpy-check.patch
-Patch318: %{name}-6.8-gcc35998-ada-memory-trash.patch
-Patch320: %{name}-6.5-section-num-fixup-test.patch
-Patch324: %{name}-6.8-glibc-headers-compat.patch
-Patch326: %{name}-6.8-tui-singlebinary.patch
-Patch329: %{name}-6.8-bz254229-gcore-prpsinfo.patch
-Patch330: %{name}-6.8-bz436037-reg-no-longer-active.patch
-Patch331: %{name}-6.8-quit-never-aborts.patch
-Patch332: %{name}-6.8-fortran-tag-constant.patch
-Patch337: %{name}-6.8-attach-signalled-detach-stopped.patch
-Patch343: %{name}-6.8-watchpoint-conditionals-test.patch
-Patch348: %{name}-6.8-bz466901-backtrace-full-prelinked.patch
-Patch349: %{name}-archer.patch
-Patch420: %{name}-archer-ada.patch
-Patch360: %{name}-6.8-bz457187-largefile-test.patch
-Patch381: %{name}-simultaneous-step-resume-breakpoint-test.patch
-Patch382: %{name}-core-open-vdso-warning.patch
-Patch391: %{name}-x86_64-i386-syscall-restart.patch
-Patch392: %{name}-bz533176-fortran-omp-step.patch
-Patch397: %{name}-follow-child-stale-parent.patch
-Patch403: %{name}-ccache-workaround.patch
-Patch404: %{name}-fortran-common-reduce.patch
-Patch405: %{name}-fortran-common.patch
-Patch407: %{name}-lineno-makeup-test.patch
-Patch408: %{name}-ppc-power7-test.patch
-Patch412: %{name}-unused-revert.patch
-Patch417: %{name}-bz541866-rwatch-before-run.patch
-Patch451: %{name}-bz575292-delayed-physname.patch
-Patch454: %{name}-bz539590-gnu-ifunc-fix-cond.patch
-Patch459: %{name}-moribund-utrace-workaround.patch
-Patch461: %{name}-bz594560-core-vs-process.patch
-Patch470: %{name}-archer-next-over-throw-cxx-exec.patch
-Patch475: %{name}-bz601887-dwarf4-rh-test.patch
-Patch486: %{name}-bz562763-pretty-print-2d-vectors.patch
-Patch489: %{name}-bz614659-prelink-dynbss.patch
-Patch491: %{name}-gdb-add-index-script.patch
-Patch493: %{name}-bz555076-gcore-small-height.patch
-Patch496: %{name}-bz568248-oom-is-error.patch
-Patch497: %{name}-false-gcc-warning.patch
-Patch499: %{name}-bz631575-gdb-index-nobits.patch
-Patch500: %{name}-bz631158-cxx-this-lookup.patch
-Patch501: %{name}-gdbindex-ada-regression.patch
-Patch502: %{name}-bz634660-gdbpy-load-on-attach.patch
-Patch503: %{name}-pr12028-double-free.patch
-Patch504: %{name}-bz623749-gcore-relro.patch
-Patch506: %{name}-bz627432-loop-static-self-class.patch
-Patch507: %{name}-bz592031-siginfo-lost-1of5.patch
-Patch508: %{name}-bz592031-siginfo-lost-2of5.patch
-Patch509: %{name}-bz592031-siginfo-lost-3of5.patch
-Patch510: %{name}-bz592031-siginfo-lost-4of5.patch
-Patch511: %{name}-bz592031-siginfo-lost-5of5.patch
-Patch512: %{name}-gdbindex-bigendian.patch
-Patch513: %{name}-bz637770-ifunc-watchpoint-delete.patch
-
-# PLD patches
+Patch0: glibc2.34.patch
+Patch100: gdb-6.6-buildid-locate.patch
+Patch101: gdb-6.6-buildid-locate-solib-missing-ids.patch
+Patch102: gdb-6.6-buildid-locate-rpm.patch
+Patch104: gdb-6.6-buildid-locate-rpm-librpm-workaround.patch
+Patch105: gdb-6.6-buildid-locate-misleading-warning-missing-debuginfo-rhbz981154.patch
+Patch106: gdb-6.6-buildid-locate-rpm-scl.patch
+Patch110: gdb-6.3-gstack-20050411.patch
+
+Patch114: gdb-vla-intel-stringbt-fix.patch
+Patch115: gdb-vla-intel-tests.patch
Patch1000: %{name}-readline.patch
Patch1001: %{name}-info.patch
Patch1002: %{name}-passflags.patch
Patch1005: %{name}-pretty-print-by-default.patch
-#Patch1006: buildid-locate-rpm-pld.patch NEEDS UPDATE/REVIEW
-
+Patch1006: buildid-locate-rpm-pld.patch
URL: http://www.gnu.org/software/gdb/
-BuildRequires: autoconf >= 2.53
+BuildRequires: autoconf >= 2.69
BuildRequires: automake
BuildRequires: bison
+BuildRequires: babeltrace-devel >= 1.1.0
BuildRequires: expat-devel
-BuildRequires: flex
+BuildRequires: flex >= 2.6.4
+BuildRequires: gettext-tools >= 0.12.1
+%if %{with guile}
+BuildRequires: guile-devel >= 2.0
+BuildRequires: guile-devel < 3.2
+%endif
+%ifarch %{ix86} %{x8664}
+BuildRequires: libipt-devel
+%endif
+BuildRequires: libselinux-devel
+BuildRequires: libstdc++-devel >= 6:4.8
BuildRequires: libtool
+BuildRequires: make >= 3.81
+BuildRequires: mpfr-devel
BuildRequires: ncurses-devel >= 5.2
BuildRequires: pkgconfig
BuildRequires: readline-devel
BuildRequires: rpmbuild(macros) >= 1.219
+BuildRequires: source-highlight-devel >= 3.0
+BuildRequires: tar >= 1:1.22
BuildRequires: texinfo >= 4.4
+BuildRequires: xxHash-devel
+BuildRequires: xz
+BuildRequires: xz-devel
BuildRequires: zlib-devel
%if %{with python}
-BuildRequires: python-devel
+BuildRequires: python3-devel
BuildRequires: rpm-pythonprov
+Obsoletes: python-gdb
+# for traceback module
+Requires: python3-modules
%endif
+%{?with_guile:Requires: guile >= 2.0.12}
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+%define autoconf_ver %(rpm -q --qf='%%{VERSION}' autoconf)
+
%description
Gdb is a full featured, command driven debugger. Gdb allows you to
trace the execution of programs and examine their internal state at
%package gdbserver
Summary: A standalone server for GDB (the GNU source-level debugger)
+Summary(pl.UTF-8): Samodzielny serwer GDB (debuggera GNU)
Group: Development/Debuggers
%description gdbserver
different machine than the one which is running the program being
debugged.
-%package -n python-%{name}
-Summary: GDB Python bindings
-Summary(pl.UTF-8): Wiązania PackageKit dla Pythona
-Group: Development/Languages/Python
-Requires: python-libs
+%description gdbserver -l pl.UTF-8
+GDB (GNU debugger) pozwala śledzić programy napisane w C, C++, Javie i
+innych językach programowania poprzez wykonywanie ich w sposób
+kontrolowany oraz wypisywanie ich danych.
-%description -n python-%{name}
-GDB Python bindings.
+Ten pakiet zawiera program pozwalający uruchamiać GDB na innej
+maszynie niż ta, na której działa śledzony program.
%package lib
Summary: GDB in the form of a static library
Summary(pl.UTF-8): GDB w postaci biblioteki statycznej
Group: Development/Debuggers
-#Requires: binutils-devel >= 2.17.50
+# libraries that needs to be linked to fulfill libgdb.a symbol requirements
+Requires: binutils-devel >= 2.17.50
+Requires: expat-devel
+Requires: libselinux-devel
+Requires: libsepol-devel
+Requires: ncurses-devel
+Requires: python3-devel
+Requires: readline-devel
+Requires: xz-devel
+Requires: zlib-devel
%description lib
GDB in the form of a static library.
%setup -q
# Files have `# <number> <file>' statements breaking VPATH / find-debuginfo.sh .
-rm -f gdb/ada-exp.c gdb/ada-lex.c gdb/c-exp.c gdb/cp-name-parser.c gdb/f-exp.c
-rm -f gdb/jv-exp.c gdb/m2-exp.c gdb/objc-exp.c gdb/p-exp.c
-
-# FEDORA PATCHES -- keep them in same order they do
-%patch2 -p1
-%patch232 -p1
-%patch349 -p1
-%patch420 -p1
-%patch1 -p1
-%patch3 -p1
+%{__rm} gdb/ada-exp.c gdb/ada-lex.c gdb/c-exp.c gdb/cp-name-parser.c gdb/f-exp.c
+%{__rm} gdb/m2-exp.c gdb/p-exp.c
+
+%patch0 -p1
+%patch100 -p1
+%patch101 -p1
+%patch102 -p1
%patch104 -p1
%patch105 -p1
%patch106 -p1
-%patch111 -p1
-%patch112 -p1
-%patch118 -p1
-%patch122 -p1
-%patch125 -p1
-%patch133 -p1
-%patch136 -p1
-%patch140 -p1
-%patch141 -p1
-%patch259 -p1
-%patch142 -p1
-%patch145 -p1
-%patch148 -p1
-%patch153 -p1
-%patch157 -p1
-%patch158 -p1
-%patch160 -p1
-%patch161 -p1
-%patch162 -p1
-%patch163 -p1
-%patch164 -p1
-%patch169 -p1
-%patch170 -p1
-%patch176 -p1
-%patch188 -p1
-%patch190 -p1
-%patch194 -p1
-%patch196 -p1
-%patch199 -p1
-%patch208 -p1
-%patch209 -p1
-%patch211 -p1
-%patch213 -p1
-%patch214 -p1
-%patch216 -p1
-%patch217 -p1
-%patch225 -p1
-%patch229 -p1
-%patch231 -p1
-%patch234 -p1
-%patch235 -p1
-%patch241 -p1
-%patch245 -p1
-%patch247 -p1
-%patch254 -p1
-%patch258 -p1
-%patch260 -p1
-%patch261 -p1
-%patch263 -p1
-%patch265 -p1
-%patch266 -p1
-%patch271 -p1
-%patch274 -p1
-%patch353 -p1
-%patch282 -p1
-%patch284 -p1
-%patch287 -p1
-%patch289 -p1
-%patch290 -p1
-%patch293 -p1
-%patch294 -p1
-%patch296 -p1
-%patch298 -p1
-%patch304 -p1
-%patch309 -p1
-%patch311 -p1
-%patch315 -p1
-%patch317 -p1
-%patch318 -p1
-%patch320 -p1
-%patch324 -p1
-%patch326 -p1
-%patch329 -p1
-%patch330 -p1
-%patch331 -p1
-%patch332 -p1
-%patch337 -p1
-%patch343 -p1
-%patch348 -p1
-%patch360 -p1
-%patch381 -p1
-%patch382 -p1
-%patch391 -p1
-%patch392 -p1
-%patch397 -p1
-%patch403 -p1
-%patch404 -p1
-%patch405 -p1
-%patch389 -p1
-%patch394 -p1
-%patch407 -p1
-%patch408 -p1
-%patch412 -p1
-%patch417 -p1
-%patch451 -p1
-%patch454 -p1
-%patch459 -p1
-%patch461 -p1
-%patch470 -p1
-%patch475 -p1
-%patch486 -p1
-%patch415 -p1
-%patch489 -p1
-%patch491 -p1
-%patch493 -p1
-%patch496 -p1
-%patch497 -p1
-%patch499 -p1
-%patch500 -p1
-%patch501 -p1
-%patch502 -p1
-%patch503 -p1
-%patch504 -p1
-%patch506 -p1
-%patch507 -p1
-%patch508 -p1
-%patch509 -p1
-%patch510 -p1
-%patch511 -p1
-%patch512 -p1
-%patch513 -p1
-
-# PLD patches
+%patch110 -p1
+
+%patch114 -p1
+%patch115 -p1
+
%patch1000 -p1
%patch1001 -p1
%patch1002 -p1
%patch1005 -p1
-#patch1006 -p1
+%patch1006 -p1
# Change the version that gets printed at GDB startup, so it is PLD Linux specific.
cat > gdb/version.in << EOF
-PLD Linux (%{version}-%{release})
+%{version}-%{release} (PLD Linux)
EOF
-sed -i -e 's#_GCC_AUTOCONF_VERSION\], \[2\.64\]#_GCC_AUTOCONF_VERSION], [2.68]#g' config/override.m4
+sed -E -i -e '1s,#!\s*/usr/bin/env\s+python2(\s|$),#!%{__python}\1,' -e '1s,#!\s*/usr/bin/env\s+python(\s|$),#!%{__python3}\1,' -e '1s,#!\s*/usr/bin/python(\s|$),#!%{__python3}\1,' \
+ contrib/dg-extract-results.py \
+ gdb/contrib/test_pubnames_and_indexes.py \
+ gdb/testsuite/analyze-racy-logs.py \
+ gdb/testsuite/print-ts.py
+
+sed -E -i -e '1s,#!\s*/usr/bin/env\s+python3(\s|$),#!%{__python3}\1,' \
+ gdb/copyright.py
+
+sed -E -i -e '1s,#!\s*/usr/bin/env\s+(.*),#!%{__bindir}\1,' \
+ gdb/contrib/cc-with-tweaks.sh \
+ gdb/gcore \
+ gdb/gcore.in \
+ src-release.sh
+
+sed -i -e 's/\[2\.69\]/[%{autoconf_ver}]/' config/override.m4
%build
+# omit hand-written gdb/testsuite aclocal.m4
+for dir in gdb gdbserver ; do
+ olddir=$(pwd)
+ cd $dir
+ %{__rm} aclocal.m4
+ %{__aclocal} $(grep '^ACLOCAL_AMFLAGS' Makefile.in | sed -e 's/.*=//')
+ cd $olddir
+done
for dir in $(find gdb -name 'configure.in' -o -name 'configure.ac'); do
dir=$(dirname "$dir")
olddir=$(pwd)
cd $dir
- rm -f aclocal.m4
- %{__aclocal} `[ -d config ] && echo "-I config"` `[ -d m4 ] && echo "-I m4"` `[ -d gnulib/m4 ] && echo "-I gnulib/m4"`
%{__autoconf}
grep -q AC_CONFIG_HEADER configure.* && %{__autoheader}
cd $olddir
done
cp -f /usr/share/automake/config.* .
+install -d build && cd build
# don't --enable-shared here, there would be libs version mismatch with binutils
-%configure \
- --with-gdb-datadir=%{_datadir}/gdb \
- --with-separate-debug-dir=/usr/lib/debug \
-%if %{with python}
- --with-python \
- --with-pythondir=%{py_sitescriptdir} \
-%else
- --without-python \
-%endif
+../%configure \
--disable-gdbtk \
--disable-shared \
+ --disable-silent-rules \
--enable-gdbcli \
--enable-gdbmi \
--enable-multi-ice \
--enable-netrom \
--enable-nls \
--enable-tui \
- --with-system-readline \
--with-cpu=%{_target_cpu} \
+ --with-gdb-datadir=%{_datadir}/gdb \
+ --with-guile%{!?with_guile:=no} \
%ifnarch alpha
--with-mmalloc \
%endif
+%if %{with python}
+ --with-python="%{__python3}" \
+ --with-pythondir=%{py3_sitescriptdir} \
+%else
+ --without-python \
+%endif
+ --with-separate-debug-dir=/usr/lib/debug \
+ --with-system-readline \
--without-included-gettext \
--without-included-regex \
--without-x
-%{__make} -j1
+# V=1 because only some subdirs honour --enable-silent-rules
+%{__make} \
+ V=1
+
%{__make} -j1 info
+# gdb/ChangeLog: Build gdb directly from *.o files not using libgdb.a.
+%{__make} -C gdb libgdb.a \
+ V=1
+
%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT%{_infodir}
-%{__make} -j1 install install-info \
+%{__make} -C build -j1 install install-info \
DESTDIR=$RPM_BUILD_ROOT
-# gdbtui seems all identical to gdb except when invoked as gdbtio, ncurses
+cp -a build/gdb/libgdb.a $RPM_BUILD_ROOT%{_libdir}
+
+# gdbtui seems all identical to gdb except when invoked as gdbtui, ncurses
# window is created too.
echo ".so gdb.1" > $RPM_BUILD_ROOT%{_mandir}/man1/gdbtui.1
ln -f $RPM_BUILD_ROOT%{_bindir}/{gdb,gdbtui}
bzip2 -dc %{SOURCE1} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
-cp -a gdb/libgdb.a $RPM_BUILD_ROOT%{_libdir}
+%{__rm} $RPM_BUILD_ROOT%{_mandir}/README.gdb-non-english-man-pages
rm -f $RPM_BUILD_ROOT%{_infodir}/dir
-rm -f $RPM_BUILD_ROOT%{_mandir}/README.gdb-non-english-man-pages
%if %{with python}
# Temporarily now:
-for LIB in lib lib64; do
+for LIB in lib lib64 libx32; do
LIBPATH="$RPM_BUILD_ROOT%{_datadir}/gdb/auto-load%{_prefix}/$LIB"
install -d $LIBPATH
- # basename is being run only for the native (non-biarch) file.
- sed -e 's,@pythondir@,%{_datadir}/gdb/python,' \
- -e 's,@toolexeclibdir@,%{_prefix}/'"$LIB," \
- < libstdcxxpython/hook.in \
- > $LIBPATH/$(basename %{_prefix}/%{_lib}/libstdc++.so.6.*)-gdb.py
done
-cp -a libstdcxxpython/libstdcxx $RPM_BUILD_ROOT%{py_sitescriptdir}
-%py_ocomp $RPM_BUILD_ROOT%{py_sitescriptdir}
-%py_comp $RPM_BUILD_ROOT%{py_sitescriptdir}
-%py_postclean
+%py3_ocomp $RPM_BUILD_ROOT%{py3_sitescriptdir}
+%py3_comp $RPM_BUILD_ROOT%{py3_sitescriptdir}
%endif
cp -a %{SOURCE3} $RPM_BUILD_ROOT%{_mandir}/man1/gstack.1
+cp -p build/libdecnumber/libdecnumber.a $RPM_BUILD_ROOT%{_libdir}
+
# Remove the files that are part of a gdb build but that are owned and provided by other packages.
-# These are part of binutils
-rm -rf $RPM_BUILD_ROOT%{_datadir}/locale
-rm -f $RPM_BUILD_ROOT%{_infodir}/bfd*
-rm -f $RPM_BUILD_ROOT%{_infodir}/standard*
-rm -f $RPM_BUILD_ROOT%{_infodir}/mmalloc*
-rm -f $RPM_BUILD_ROOT%{_infodir}/configure*
-rm -rf $RPM_BUILD_ROOT%{_includedir}
-rm -rf $RPM_BUILD_ROOT%{_libdir}/lib{bfd*,opcodes*,iberty*,mmalloc*}
+# These are part of binutils:
+%{__rm} $RPM_BUILD_ROOT%{_localedir}/*/LC_MESSAGES/{bfd,opcodes}.mo
+%{__rm} $RPM_BUILD_ROOT%{_infodir}/bfd.info*
+%{__rm} $RPM_BUILD_ROOT%{_includedir}/{ansidecl,bfd,bfdlink,ctf,ctf-api,diagnostics,dis-asm,symcat,plugin-api}.h
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/lib{bfd,ctf,ctf-nobfd,opcodes}.la
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/lib{bfd,ctf,ctf-nobfd,opcodes}.a
%clean
rm -rf $RPM_BUILD_ROOT
-%post -p /sbin/postshell
+%post -p /sbin/postshell
-/usr/sbin/fix-info-dir -c %{_infodir}
-%postun -p /sbin/postshell
+%postun -p /sbin/postshell
-/usr/sbin/fix-info-dir -c %{_infodir}
%files
%attr(755,root,root) %{_bindir}/gdbtui
%attr(755,root,root) %{_bindir}/gdb-add-index
%attr(755,root,root) %{_bindir}/gstack
+%attr(755,root,root) %{_bindir}/gcore
%dir %{_datadir}/gdb
+%dir %{_datadir}/gdb/auto-load
+%dir %{_datadir}/gdb/auto-load%{_prefix}
+%dir %{_datadir}/gdb/auto-load%{_prefix}/lib
+%ifarch %{x8664} x32
+%dir %{_datadir}/gdb/auto-load%{_prefix}/lib64
+%dir %{_datadir}/gdb/auto-load%{_prefix}/libx32
+%endif
+%ifarch aarch64
+%dir %{_datadir}/gdb/auto-load%{_prefix}/lib64
+%endif
+%{?with_guile:%{_datadir}/gdb/guile}
%{_datadir}/gdb/syscalls
+%{_datadir}/gdb/system-gdbinit
+%{_datadir}/gdb/python
%{_mandir}/man1/gdb.1*
%{_mandir}/man1/gdbtui.1*
+%{_mandir}/man1/gdb-add-index.1*
%{_mandir}/man1/gstack.1*
+%{_mandir}/man1/gcore.1*
+%{_mandir}/man5/gdbinit.5*
%lang(es) %{_mandir}/es/man1/*
%lang(fr) %{_mandir}/fr/man1/*
%lang(hu) %{_mandir}/hu/man1/*
%lang(pl) %{_mandir}/pl/man1/*
%{_infodir}/annotate.info*
%{_infodir}/gdb.info*
-%{_infodir}/gdbint.info*
%{_infodir}/stabs.info*
-%if %{with python}
-%files -n python-%{name}
-%defattr(644,root,root,755)
-%dir %{py_sitescriptdir}/gdb
-%{py_sitescriptdir}/gdb/*.py[co]
-%dir %{py_sitescriptdir}/gdb/command
-%{py_sitescriptdir}/gdb/command/*.py[co]
-%dir %{py_sitescriptdir}/gdb/function
-%{py_sitescriptdir}/gdb/function/*.py[co]
-
-# likely oneday gcc.spec will provide this
-%dir %{py_sitescriptdir}/libstdcxx
-%{py_sitescriptdir}/libstdcxx/*.py[co]
-%dir %{py_sitescriptdir}/libstdcxx/v6
-%{py_sitescriptdir}/libstdcxx/v6/*.py[co]
-
-# or should we include it in base package?
-%{_datadir}/gdb/auto-load
-%endif
-
%files gdbserver
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/gdbserver
%{_mandir}/man1/gdbserver.1*
+%ifnarch %{arm}
%attr(755,root,root) %{_libdir}/libinproctrace.so
+%endif
%files lib
%defattr(644,root,root,755)
+%{_libdir}/libdecnumber.a
%{_libdir}/libgdb.a
+%{_includedir}/gdb
+# -devel?
+%{_includedir}/sim