Bug 1930528

Summary: gnulib build problem in rawhide / gdb
Product: [Fedora] Fedora Reporter: Kevin Buettner <kevinb>
Component: gdbAssignee: Kevin Buettner <kevinb>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: unspecified    
Version: rawhideCC: jan.kratochvil, keiths, kevinb, pmuldoon, sergiodj
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: gdb-10.1-7.fc34 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-02-24 21:59:38 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Kevin Buettner 2021-02-19 05:14:24 UTC
Description of problem:

After updating glibc (and related devel / header packages) to glibc-2.33.9000-1.fc35, the GDB package no longer builds.  The build is failing while compiling gdb/nat/amd64-linux-siginfo.c:

g++  -D_GLIBCXX_DEBUG -g3 -O0    -I. -I../../gdbserver -I../../gdbserver/../gdb/regformats -I../../gdbserver/.. -I../../gdbserver/../include -I../../gdbserver/../gdb -I../../gdbserver/../gnulib/import -I../gnulib/import -I../../gdbserver/.. -I..   -pthread -Wall -Wpointer-arith -Wno-unused -Wunused-value -Wunused-variable -Wunused-function -Wno-switch -Wno-char-subscripts -Wempty-body -Wunused-but-set-parameter -Wunused-but-set-variable -Wno-sign-compare -Wno-error=maybe-uninitialized -Wno-mismatched-tags -Wsuggest-override -Wimplicit-fallthrough=3 -Wduplicated-cond -Wshadow=local -Wdeprecated-copy -Wdeprecated-copy-dtor -Wredundant-move -Wmissing-declarations -Wstrict-null-sentinel -Wformat -Wformat-nonliteral  -DGDBSERVER -E -o nat/amd64-linux-siginfo.i  ../../gdbserver/../gdb/nat/amd64-linux-siginfo.c
In file included from /usr/include/bits/sigstksz.h:24,
                 from /usr/include/signal.h:315,
                 from ../gnulib/import/signal.h:52,
                 from ../../gdbserver/../gdb/nat/amd64-linux-siginfo.c:20:
../gnulib/import/unistd.h:637:3: error: #error "Please include config.h first."
  637 |  #error "Please include config.h first."
      |   ^~~~~


Version-Release number of selected component (if applicable):

gdb-10.1-4.fc34. However, the problem is also in upstream GDB.


How reproducible:

Always.


Steps to Reproduce:
1. Build GDB package.
2. Wait for build failure.
3.

Actual results:

Failed build.


Expected results:

Successful build.


Additional info:

The problem is actually gnulib related.  It turns out that the glibc headers now pull in <unistd.h> (from sigstksz.h, which is now included from signal.h). In the gdb build, this causes the gnulib version of unistd.h to be included, but gnulib's config.h had not been included first, which is the cause of the error. The fix is simple (though it took me a while to track it down).

I have a fix for this problem, but am reporting the bug to track it.

Comment 1 Kevin Buettner 2021-02-24 21:59:38 UTC
After fixing some unrelated problems, I've finally gotten a clean build of the gdb package on rawhide. I'm closing this bug...

Comment 2 Fedora Update System 2021-03-03 04:41:12 UTC
FEDORA-2021-41af532e06 has been submitted as an update to Fedora 34. https://bodhi.fedoraproject.org/updates/FEDORA-2021-41af532e06

Comment 3 Fedora Update System 2021-03-03 15:46:52 UTC
FEDORA-2021-41af532e06 has been pushed to the Fedora 34 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2021-41af532e06`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2021-41af532e06

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 4 Fedora Update System 2021-03-19 17:43:55 UTC
FEDORA-2021-41af532e06 has been pushed to the Fedora 34 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 5 Fedora Update System 2021-03-19 19:59:56 UTC
FEDORA-2021-41af532e06 has been pushed to the Fedora 34 stable repository.
If problem still persists, please make note of it in this bug report.