Bug 1930528 - gnulib build problem in rawhide / gdb
Summary: gnulib build problem in rawhide / gdb
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: gdb
Version: rawhide
Hardware: All
OS: Linux
unspecified
high
Target Milestone: ---
Assignee: Kevin Buettner
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2021-02-19 05:14 UTC by Kevin Buettner
Modified: 2021-03-19 19:59 UTC (History)
5 users (show)

Fixed In Version: gdb-10.1-7.fc34
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2021-02-24 21:59:38 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

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.


Note You need to log in before you can comment on or make changes to this bug.