Bug 1695015

Summary: gdb-headless now depends on source-ghighlight, making buildroot bigger by 100+M
Product: [Fedora] Fedora Reporter: Igor Raits <igor.raits>
Component: gdbAssignee: Sergio Durigan Junior <sergiodj>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: jan.kratochvil, keiths, kevinb, pmuldoon, sergiodj, yaneti
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: gdb-8.3.50.20190425-9.fc31 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-05-01 22:30:42 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 Igor Raits 2019-04-02 09:58:09 UTC
Latest gdb-headless started to pull source-highlight which pulls ctags and boost-regex and libicu. Which means that buildroot size increased from:

DEBUG util.py:439:  Install  146 Packages
DEBUG util.py:439:  Total download size: 63 M
DEBUG util.py:439:  Installed size: 235 M

to:

DEBUG util.py:556:  Install  151 Packages
DEBUG util.py:556:  Total download size: 76 M
DEBUG util.py:556:  Installed size: 342 M

---

Is it really necessary to have in gdb-headless?

Comment 1 Sergio Durigan Junior 2019-04-02 17:29:03 UTC
The problem here is that we only ship one GDB binary, which is in gdb-headless, and this binary pulls in all these dependencies.  So yeah, unfortunately (for buildroot) it is necessary for GDB to depend on source-highlight, assuming we want to ship a GDB with source highlight activated for the user (which we do).

Perhaps one option to reduce the buildroot size is to create a "boost-regex-devel" package, which only pulls the necessary development headers for boost-regex.  I don't know how feasible that is.

Another option is to create a "gdb-minimal" package, which only offers the bare minimum necessary for the buildroot.  This would be the best way, I think, because it would allow us to remove even more dependencies from GDB that "pollute" the buildroot nowadays.  I can't promise anything now, but I will try to work on that.

Comment 2 Jan Kratochvil 2019-04-02 17:39:17 UTC
(In reply to Sergio Durigan Junior from comment #1)
> Perhaps one option to reduce the buildroot size is to create a
> "boost-regex-devel" package, which only pulls the necessary development
> headers for boost-regex.  I don't know how feasible that is.

I do not believe this will change anything, 'ldd /lib64/libboost_regex.so' itself already brings in libicu.

Requires are generated from *.so dependencies (DT_NEEDED).

Comment 3 Sergio Durigan Junior 2019-05-01 22:30:42 UTC
The gdb-minimal package has been created and is now available to be used in the buildroot.

Igor and I are proposing the following change to Fedora buildroot:

https://fedoraproject.org/wiki/Changes/Minimal_GDB_in_buildroot

I am therefore closing this bug.