Remove GCC from BuildRoot
Removing gcc and gcc-c++ from default buildroot in Koji and mock.
- Name: Igor Gnatenko
- Email: firstname.lastname@example.org
- Release notes owner:
- Targeted release: Fedora 29
- Last updated: 2018-03-04
- Tracker bug: #1551327
- Release Notes tracking: #123
Since beginning of Fedora, gcc (and gcc-c++) are installed in every buildroot. Times have changed and nowadays many of packages are not written in C/C++, they are written in Python, Ruby, Node.js, Go, Rust, Perl and so on so they don't need to have C/C++ compiler. Installing gcc and gcc-c++ takes time so if we remove it, we can improve build times for many of the packages.
buildgroup in Koji.
buildsys-buildgroup in comps (fedora-comps).
- Try to automatically fix affected packages.
Benefit to Fedora
- Smaller build times (for packages which do not need gcc/gcc-c++ during build).
- Better package compliance with Packaging Guidelines.
- Cleaner buildroot environment.
- Proposal owners: Automatically fix as much as possible of affected packages and send Pull Request for fedora-comps.
- Other developers: If package has not been automatically fixed by owners, fix it manually.
- Release engineering: #7317 (rel-eng should adjust koji configuration and merge Pull Request for fedora-comps)
- List of deliverables: N/A (not a System Wide Change)
- Policies and guidelines: Nothing needed, guidelines already have paragraph about listing all required BuildRequires.
- Trademark approval: N/A (not needed for this Change)
This change is internal to packaging and is not visible to end users.
How To Test
You can test that your package still builds without gcc and gcc-c++ in the buildroot by running
fedpkg mockbuild with a modified configuration file that excludes
gcc-c++ from the buildroot. Instructions can be found here.
Users (developers) who build packages could notice this change if they use gcc/gcc-c++ in their packages. Solution is simple, add appropriate BuildRequires.
Change in koji settings and fedora-comps is required.
- Contingency mechanism: (What to do? Who will do it?) Revert changes in koji/fedora-comps by persons who have access there.
- Contingency deadline: Beta Freeze
- Blocks release? Hard to say, we would need to fix packages.