!38 adjust include order to avoid gnulib error
From: @zhouwenpei Reviewed-by: @liqingqing_1229 Signed-off-by: @liqingqing_1229
This commit is contained in:
commit
3f18337299
46
0001-adjust-include-order-to-avoid-gnulib-error.patch
Normal file
46
0001-adjust-include-order-to-avoid-gnulib-error.patch
Normal file
@ -0,0 +1,46 @@
|
||||
From 8488c357ce4fc309d49c7b0224cf9574b68e8116 Mon Sep 17 00:00:00 2001
|
||||
From: Kevin Buettner <kevinb@redhat.com>
|
||||
Date: Thu, 18 Feb 2021 22:46:58 -0700
|
||||
Subject: [PATCH] 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.
|
||||
|
||||
--- 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
|
||||
--
|
||||
2.27.0
|
||||
7
gdb.spec
7
gdb.spec
@ -1,6 +1,6 @@
|
||||
Name: gdb
|
||||
Version: 9.2
|
||||
Release: 6
|
||||
Release: 7
|
||||
|
||||
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-1.3
|
||||
Source: ftp://sourceware.org/pub/gdb/releases/gdb-%{version}.tar.xz
|
||||
@ -113,6 +113,8 @@ Patch100: gdb-rhbz1844458-use-fputX_unfiltered.patch
|
||||
Patch101: gdb-rhbz1838777-debuginfod.patch
|
||||
# Fedora patch end
|
||||
|
||||
Patch102: 0001-adjust-include-order-to-avoid-gnulib-error.patch
|
||||
|
||||
%global gdb_src gdb-%{version}
|
||||
%global gdb_build build-%{_target_platform}
|
||||
%global __python %{__python3}
|
||||
@ -394,6 +396,9 @@ rm -f $RPM_BUILD_ROOT%{_datadir}/gdb/python/gdb/command/backtrace.py
|
||||
%{_infodir}/gdb.info*
|
||||
|
||||
%changelog
|
||||
* Fri Aug 13 2021 zhouwenpei <zhouwenpei1@huawei.com> - 9.2-7
|
||||
- adjust include order to avoid gnulib error
|
||||
|
||||
* Fri Jul 23 2021 zhouwenpei <zhouwenpei1@huawei.com> - 9.2-6
|
||||
- remove unnecessary build require.
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user