Archive:PackagingDrafts/BuildRequires

= BuildRequires =

Overview
I propose to change the BuildRequires section of Packaging Guidelines. This section talks only about using rpmdev-rmdevelrpms to detect missing BRs at present. However, mock seems to be a much better way (even if more complicated) to do that. This proposal also requires creation of Anchor(rmdevelrpms) in front of rpmdev-rmdevelrpms section.

Current
rpmdev-rmdevelrpms is a suggested way for detecting missing Build Requires in spec files. If the build fails or is missing certain features due to missing build dependencies, then the missing dependency needs to be found and added.

Proposal
There are two suggested ways of detecting missing Build Requires. rpmdev-rmdevelrpms and mock. The first one is designed to remove all developer-related packages from your system. If the build fails or is missing certain features due to missing build dependencies, then the missing dependency needs to be found and added. Check the  rpmdev-rmdevelrpms  section to find out more.  mock is another good way to check build dependencies. Rather than remove all developer packages, it tries to build your package in a chroot. It makes no changes to your normal, daily environment and ensures that your package will build fine. However, mock may need a good internet connection to download all required packages. MockTricks page contains more information. Another mock-like tool, mach is also available in the Fedora repository.