(Created page with "<!-- The actual name of your proposed change page should look something like: Changes/Your_Change_Proposal_Name. This keeps all change proposals in the same namespace --> =...") |
No edit summary |
||
Line 89: | Line 89: | ||
== Scope == | == Scope == | ||
* Proposal owners: Update packaging guidelines to mention the automatic removal of `*.la` files and mention the mechanism for opting out of this behavior. | * Proposal owners: | ||
** Update packaging guidelines to mention the automatic removal of `*.la` files and mention the mechanism for opting out of this behavior. | |||
<!-- What work do the feature owners have to accomplish to complete the feature in time for release? Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?--> | <!-- What work do the feature owners have to accomplish to complete the feature in time for release? Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?--> | ||
* Other developers: | |||
* Other developers: For the packages already removing their `*.la` files manually, there should be no change. For packages that want to install such packages, the package maintainers need to opt out of the automatic removal. | ** For the packages already removing their `*.la` files manually, there should be no change. For packages that want to install such packages, the package maintainers need to opt out of the automatic removal. | ||
<!-- REQUIRED FOR SYSTEM WIDE CHANGES --> | <!-- REQUIRED FOR SYSTEM WIDE CHANGES --> | ||
Line 132: | Line 133: | ||
== User Experience == | == User Experience == | ||
Users should not notice any change. | |||
== Dependencies == | == Dependencies == | ||
There are no dependencies. Only `redhat-rpm-config` needs to adapt to the change. | |||
== Contingency Plan == | == Contingency Plan == | ||
<!-- If you cannot complete your feature by the final development freeze, what is the backup plan? This might be as simple as "Revert the shipped configuration". Or it might not (e.g. rebuilding a number of dependent packages). If you feature is not completed in time we want to assure others that other parts of Fedora will not be in jeopardy. --> | <!-- If you cannot complete your feature by the final development freeze, what is the backup plan? This might be as simple as "Revert the shipped configuration". Or it might not (e.g. rebuilding a number of dependent packages). If you feature is not completed in time we want to assure others that other parts of Fedora will not be in jeopardy. --> | ||
* Contingency mechanism: | * Contingency mechanism: The change can simply be reverted in the `redhat-rpm-config` package. Packages that have already removed the manual deletion of `*.la` files need to revert this change too. Packages that have opted out of the automatic `*.la` file removal don't need to do anything. | ||
<!-- When is the last time the contingency mechanism can be put in place? This will typically be the beta freeze. --> | <!-- When is the last time the contingency mechanism can be put in place? This will typically be the beta freeze. --> | ||
* Contingency deadline: | * Contingency deadline: beta freeze <!-- REQUIRED FOR SYSTEM WIDE CHANGES --> | ||
<!-- Does finishing this feature block the release, or can we ship with the feature in incomplete state? --> | <!-- Does finishing this feature block the release, or can we ship with the feature in incomplete state? --> | ||
* Blocks release? | * Blocks release? Yes <!-- REQUIRED FOR SYSTEM WIDE CHANGES --> | ||
Line 162: | Line 153: | ||
<!-- Is there upstream documentation on this change, or notes you have written yourself? Link to that material here so other interested developers can get involved. --> | <!-- Is there upstream documentation on this change, or notes you have written yourself? Link to that material here so other interested developers can get involved. --> | ||
Pull request implementing `%__brp_remove_la_files` in the upstream rpm repository: https://github.com/rpm-software-management/rpm/pull/1674 | |||
== Release Notes == | == Release Notes == | ||
Line 171: | Line 162: | ||
Release Notes are not required for initial draft of the Change Proposal but has to be completed by the Change Freeze. | Release Notes are not required for initial draft of the Change Proposal but has to be completed by the Change Freeze. | ||
--> | --> | ||
The [https://rpm.org/wiki/Releases/4.17.0 RPM 4.17 release notes] simply state "Add policy for removing .la files from buildroot by default". |
Revision as of 12:02, 21 October 2021
Remove .la files from buildroot
Summary
Autools/libtool-based projects frequently install files ending in .la
in their make install
. These files are usually unwanted. Many projects therefore end up with a variation of find $RPM_BUILD_ROOT -name "*.la" -delete
in their %install section
.
This changes proposes to instead use the %__brp_remove_la_files
macro in redhat-rpm-config
's %__os_install_post
to remove the *.la
files automatically. This has been added to RPM 4.17.
Owner
- Name: Timm Bäder
- Email: tbaeder@redhat.com
Current status
- Targeted release: Fedora Linux 36
- Last updated: 2021-10-21
- FESCo issue: <will be assigned by the Wrangler>
- Tracker bug: <will be assigned by the Wrangler>
- Release notes tracker: <will be assigned by the Wrangler>
Detailed Description
Feedback
Benefit to Fedora
This change removes a widely used line of shell script from many spec files. The advantage is cleaner and easier to maintain spec files as well as more sensible defaults for rpm package builds.
Scope
- Proposal owners:
- Update packaging guidelines to mention the automatic removal of
*.la
files and mention the mechanism for opting out of this behavior.
- Update packaging guidelines to mention the automatic removal of
- Other developers:
- For the packages already removing their
*.la
files manually, there should be no change. For packages that want to install such packages, the package maintainers need to opt out of the automatic removal.
- For the packages already removing their
- Release engineering: #Releng issue number
- Policies and guidelines: N/A (not needed for this Change)
- Alignment with Objectives:
Upgrade/compatibility impact
How To Test
User Experience
Users should not notice any change.
Dependencies
There are no dependencies. Only redhat-rpm-config
needs to adapt to the change.
Contingency Plan
- Contingency mechanism: The change can simply be reverted in the
redhat-rpm-config
package. Packages that have already removed the manual deletion of*.la
files need to revert this change too. Packages that have opted out of the automatic*.la
file removal don't need to do anything.
- Contingency deadline: beta freeze
- Blocks release? Yes
Documentation
Pull request implementing %__brp_remove_la_files
in the upstream rpm repository: https://github.com/rpm-software-management/rpm/pull/1674
Release Notes
The RPM 4.17 release notes simply state "Add policy for removing .la files from buildroot by default".