Fix gnulib related build problem (RHBZ 1930528, Kevin Buettner).
This commit is contained in:
parent
ce991fb7c0
commit
23564f9afb
@ -403,3 +403,6 @@ Patch098: gdb-rhbz1905996-fix-off-by-one-error-in-ada_fold_name.patch
|
|||||||
# (RH BZ 1912985).
|
# (RH BZ 1912985).
|
||||||
Patch099: gdb-rhbz1912985-libstdc++-assert.patch
|
Patch099: gdb-rhbz1912985-libstdc++-assert.patch
|
||||||
|
|
||||||
|
# Backport fix for rawhide build error (RH BZ 1930528).
|
||||||
|
Patch100: gdb-rhbz1930528-fix-gnulib-build-error.patch
|
||||||
|
|
||||||
|
@ -97,3 +97,4 @@
|
|||||||
%patch097 -p1
|
%patch097 -p1
|
||||||
%patch098 -p1
|
%patch098 -p1
|
||||||
%patch099 -p1
|
%patch099 -p1
|
||||||
|
%patch100 -p1
|
||||||
|
@ -97,3 +97,4 @@ gdb-vla-intel-fix-print-char-array.patch
|
|||||||
gdb-rhbz1553104-s390x-arch12-test.patch
|
gdb-rhbz1553104-s390x-arch12-test.patch
|
||||||
gdb-rhbz1905996-fix-off-by-one-error-in-ada_fold_name.patch
|
gdb-rhbz1905996-fix-off-by-one-error-in-ada_fold_name.patch
|
||||||
gdb-rhbz1912985-libstdc++-assert.patch
|
gdb-rhbz1912985-libstdc++-assert.patch
|
||||||
|
gdb-rhbz1930528-fix-gnulib-build-error.patch
|
||||||
|
54
gdb-rhbz1930528-fix-gnulib-build-error.patch
Normal file
54
gdb-rhbz1930528-fix-gnulib-build-error.patch
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
From FEDORA_PATCHES Mon Sep 17 00:00:00 2001
|
||||||
|
From: Kevin Buettner <kevinb@redhat.com>
|
||||||
|
Date: Thu, 18 Feb 2021 23:04:29 -0700
|
||||||
|
Subject: gdb-rhbz1930528-fix-gnulib-build-error.patch
|
||||||
|
|
||||||
|
;; Backport fix for rawhide build error (RH BZ 1930528).
|
||||||
|
|
||||||
|
amd64-linux-siginfo.c: Adjust include order to avoid gnulib error
|
||||||
|
|
||||||
|
On Fedora rawhide, after updating to glibc-2.33, I'm seeing the
|
||||||
|
following build failure:
|
||||||
|
|
||||||
|
CXX nat/amd64-linux-siginfo.o
|
||||||
|
In file included from /usr/include/bits/sigstksz.h:24,
|
||||||
|
from /usr/include/signal.h:315,
|
||||||
|
from ../gnulib/import/signal.h:52,
|
||||||
|
from /ironwood1/sourceware-git/rawhide-gnulib/bld/../../worktree-gnulib/gdbserver/../gdb/nat/amd64-linux-siginfo.c:20:
|
||||||
|
../gnulib/import/unistd.h:663:3: error: #error "Please include config.h first."
|
||||||
|
663 | #error "Please include config.h first."
|
||||||
|
| ^~~~~
|
||||||
|
|
||||||
|
glibc-2.33 has changed signal.h to now include <bits/sigstksz.h> which,
|
||||||
|
in turn, includes <unistd.h>. For a gdb build, this causes the gnulib
|
||||||
|
version of unistd.h to be pulled in first. The build failure shown
|
||||||
|
above happens because gnulib's config.h has not been included before
|
||||||
|
the include of <signal.h>.
|
||||||
|
|
||||||
|
The fix is simple - we just rearrange the order of the header file
|
||||||
|
includes to make sure that gdbsupport/commondefs.h is included before
|
||||||
|
attempting to include signal.h. Note that gdbsupport/commondefs.h
|
||||||
|
includes <gnulib/config.h>.
|
||||||
|
|
||||||
|
Build and regression tested on Fedora 33. On Fedora rawhide, GDB
|
||||||
|
builds again.
|
||||||
|
|
||||||
|
gdb/ChangeLog:
|
||||||
|
|
||||||
|
* nat/amd64-linux-siginfo.c: Include "gdbsupport/common-defs.h"
|
||||||
|
(which in turn includes <gnulib/config.h>) before include
|
||||||
|
of <signal.h>.
|
||||||
|
|
||||||
|
diff --git a/gdb/nat/amd64-linux-siginfo.c b/gdb/nat/amd64-linux-siginfo.c
|
||||||
|
--- a/gdb/nat/amd64-linux-siginfo.c
|
||||||
|
+++ b/gdb/nat/amd64-linux-siginfo.c
|
||||||
|
@@ -17,8 +17,8 @@
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with this program. If not, see <http://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
|
-#include <signal.h>
|
||||||
|
#include "gdbsupport/common-defs.h"
|
||||||
|
+#include <signal.h>
|
||||||
|
#include "amd64-linux-siginfo.h"
|
||||||
|
|
||||||
|
#define GDB_SI_SIZE 128
|
7
gdb.spec
7
gdb.spec
@ -37,7 +37,7 @@ Version: 10.1
|
|||||||
|
|
||||||
# The release always contains a leading reserved number, start it at 1.
|
# The release always contains a leading reserved number, start it at 1.
|
||||||
# `upstream' is not a part of `name' to stay fully rpm dependencies compatible for the testing.
|
# `upstream' is not a part of `name' to stay fully rpm dependencies compatible for the testing.
|
||||||
Release: 6%{?dist}
|
Release: 7%{?dist}
|
||||||
|
|
||||||
License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ and GPLv2+ with exceptions and GPL+ and LGPLv2+ and LGPLv3+ and BSD and Public Domain and GFDL
|
License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ and GPLv2+ with exceptions and GPL+ and LGPLv2+ and LGPLv3+ and BSD and Public Domain and GFDL
|
||||||
# Do not provide URL for snapshots as the file lasts there only for 2 days.
|
# Do not provide URL for snapshots as the file lasts there only for 2 days.
|
||||||
@ -1195,7 +1195,10 @@ fi
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Thu Feb 11 2021 Kevin Buettner <kevinb@redhat.com> - 10.1-6
|
* Thu Feb 18 2021 Kevin Buettner <kevinb@redhat.com> - 10.1-7
|
||||||
|
- Fix gnulib related build problem (RHBZ 1930528, Kevin Buettner).
|
||||||
|
|
||||||
|
* Wed Feb 17 2021 Kevin Buettner <kevinb@redhat.com> - 10.1-6
|
||||||
- Fix libstdc++ assert when performing tab completion; build must be made
|
- Fix libstdc++ assert when performing tab completion; build must be made
|
||||||
with -D_GLIBCXX_DEBUG flag in order to trigger assert (RHBZ 1912985,
|
with -D_GLIBCXX_DEBUG flag in order to trigger assert (RHBZ 1912985,
|
||||||
Kevin Buettner).
|
Kevin Buettner).
|
||||||
|
Loading…
Reference in New Issue
Block a user