From Fedora Project Wiki
Line 67: Line 67:
 
* Proposal owners: Create a subpackage in gdb, Add <code>Suggests: gdb-minimal</code> into rpm-build
 
* Proposal owners: Create a subpackage in gdb, Add <code>Suggests: gdb-minimal</code> into rpm-build
 
* Other developers: N/A (not a System Wide Change) <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
 
* Other developers: N/A (not a System Wide Change) <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
* Release engineering: [https://pagure.io/releng/issues #Releng issue number] (a check of an impact with Release Engineering is needed) <!-- REQUIRED FOR SYSTEM WIDE AS WELL AS FOR SELF CONTAINED CHANGES -->
+
* Release engineering: [https://pagure.io/releng/issue/8311 #8311] (a check of an impact with Release Engineering is needed) <!-- REQUIRED FOR SYSTEM WIDE AS WELL AS FOR SELF CONTAINED CHANGES -->
 
<!-- Does this feature require coordination with release engineering (e.g. changes to installer image generation or update package delivery)?  Is a mass rebuild required?  include a link to the releng issue.  
 
<!-- Does this feature require coordination with release engineering (e.g. changes to installer image generation or update package delivery)?  Is a mass rebuild required?  include a link to the releng issue.  
 
The issue is required to be filed prior to feature submission, to ensure that someone is on board to do any process development work and testing, and that all changes make it into the pipeline; a bullet point in a change is not sufficient communication -->
 
The issue is required to be filed prior to feature submission, to ensure that someone is on board to do any process development work and testing, and that all changes make it into the pipeline; a bullet point in a change is not sufficient communication -->

Revision as of 20:53, 26 April 2019

Minimal GDB in buildroot

Summary

Create gdb-minimal package (without XML support, Python support, Syntax Highlight and such) and switch to it in buildroot.

Owner

Current status

  • Targeted release: Fedora 31
  • Last updated: 2019-04-26
  • Tracker bug: <will be assigned by the Wrangler>

Detailed Description

Create subpackage in gdb source package called gdb-minimal that will contain 2 files:

  • /usr/libexec/gdb-minimal — GDB executable built without optional unneeded features
  • /usr/bin/gdb-add-index — Executable script shared with gdb-headless package (modified to fallback to gdb-minimal if exists)

debuginfo code in RPM needs just gdb-add-index and that one doesn't need any syntax highlight or python plugins to work.

As of Apr 26, following packages would disappear from buildroot (number next to NEVRA is RPM size):

boost-regex-1.69.0-6.fc30.x86_64 295936
ctags-5.8-25.fc30.x86_64 161740
gdbm-libs-1:1.18-4.fc30.x86_64 50908
libbabeltrace-1.5.6-2.fc30.x86_64 188264
libicu-63.1-2.fc30.x86_64 9412856
libipt-2.0-2.fc30.x86_64 51848
python-pip-wheel-19.0.3-1.fc31.noarch 1189276
python-setuptools-wheel-40.8.0-1.fc30.noarch 285204
python3-3.7.3-2.fc31.x86_64 38832
python3-libs-3.7.3-2.fc31.x86_64 8274948
python3-pip-19.0.3-1.fc31.noarch 1841456
python3-setuptools-40.8.0-1.fc30.noarch 650932
source-highlight-3.1.8-24.fc31.x86_64 664136
sqlite-libs-3.27.2-3.fc31.x86_64 553384

Benefit to Fedora

  • Python 3 will disappear from buildroot (yes, it was there just because of GDB)
  • buildroot RPM download size will go from 101M to 86M

Scope

  • Proposal owners: Create a subpackage in gdb, Add Suggests: gdb-minimal into rpm-build
  • Other developers: N/A (not a System Wide Change)
  • Release engineering: #8311 (a check of an impact with Release Engineering is needed)
  • Policies and guidelines: N/A (not a System Wide Change)
  • Trademark approval: N/A (not needed for this Change)

Upgrade/compatibility impact

N/A (not a System Wide Change)

How To Test

N/A (not a System Wide Change)

User Experience

Python 3 will disappear from buildroot, but nobody should have ever relied on it since we have guidelines about that for long time: https://docs.fedoraproject.org/en-US/packaging-guidelines/#buildrequires

Dependencies

N/A (not a System Wide Change)

Contingency Plan

  • Contingency mechanism: (What to do? Who will do it?) N/A (not a System Wide Change)
  • Contingency deadline: N/A (not a System Wide Change)
  • Blocks release? N/A (not a System Wide Change), Yes/No
  • Blocks product? product

Documentation

N/A (not a System Wide Change)

Release Notes