No edit summary |
No edit summary |
||
Line 46: | Line 46: | ||
* Other developers: Maintainers should follow guidelines and add <code>BuildRequires: gcc</code> if they need it during build (this guideline exists for long time). | * Other developers: Maintainers should follow guidelines and add <code>BuildRequires: gcc</code> if they need it during build (this guideline exists for long time). | ||
* Release engineering: [https://pagure.io/releng/ | * Release engineering: [https://pagure.io/releng/issue/7317 #7317] (a check of an impact with Release Engineering is needed) | ||
** [[Fedora_Program_Management/ReleaseBlocking/Fedora{{FedoraVersionNumber|next}}|List of deliverables]]: N/A (not a System Wide Change) <!-- REQUIRED FOR SYSTEM WIDE CHANGES --> | ** [[Fedora_Program_Management/ReleaseBlocking/Fedora{{FedoraVersionNumber|next}}|List of deliverables]]: N/A (not a System Wide Change) <!-- REQUIRED FOR SYSTEM WIDE CHANGES --> | ||
* Policies and guidelines: Nothing needed, guidelines already have paragraph about listing all required BuildRequires. | * Policies and guidelines: Nothing needed, guidelines already have paragraph about listing all required BuildRequires. |
Revision as of 11:48, 16 February 2018
🔗 Remove GCC from BuildRoot
🔗 Summary
Removing gcc and gcc-c++ from default buildroot in Koji and mock.
🔗 Owner
- Name: Igor Gnatenko
- Email: ignatenkobrain@fedoraproject.org
- Release notes owner:
🔗 Current status
- Targeted release: Fedora 29
- Last updated: 2018-02-16
- Tracker bug: <will be assigned by the Wrangler>
🔗 Detailed Description
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, OCaml, 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.
🔗 Benefit to Fedora
Faster build times (for packages which do not need gcc/gcc-c++ during build).
🔗 Scope
- Proposal owners: Remove
gcc
,gcc-c++
frombuild
group in Koji and frombuildsys-build
group in comps.
- Other developers: Maintainers should follow guidelines and add
BuildRequires: gcc
if they need it during build (this guideline exists for long time). - Release engineering: #7317 (a check of an impact with Release Engineering is needed)
- 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)
🔗 Upgrade/compatibility impact
Users would no notice this, Fedora Package Maintainers need to fix their packaging.
🔗 How To Test
Try to rebuild your package using mock with configuration provided (TODO).
🔗 User Experience
Users (developers) who build packages could notice this change if they use gcc/gcc-c++ in their packages. Solution is simple, add appropriate BuildRequires.
🔗 Dependencies
Koji and fedora-comps needs to change.
🔗 Contingency Plan
- 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.
🔗 Documentation
- https://fedoraproject.org/wiki/Packaging:C_and_C%2B%2B#BuildRequires_and_Requires
- https://fedoraproject.org/wiki/Packaging:Guidelines#Build-Time_Dependencies_.28BuildRequires.29