autobuildrequires - Man Page
Work out the BuildRequires of an RPM build automatically
Synopsis
auto-br-rpmbuild -ba foo.spec auto-br [build-command ...]
Description
Autobuildrequires analyzes an RPM package build to find out what BuildRequires lines it needs.
Instead of using rpmbuild
, use this command:
auto-br-rpmbuild -ba foo.spec
(all the usual rpmbuild flags are supported). The command will build your package and then output a list of BuildRequires
lines that it thinks your package needs.
If your build command is more complex and/or doesn't use rpmbuild, then use:
auto-br [build-command ...]
For example:
auto-br make
How It Works
The basic "magic" is a C LD_PRELOAD
module, auto-buildrequires-preload.c, which intercepts some system calls to determine which files the build is looking at. Those get logged to a simple text file.
The Perl analysis script, auto-br-analyze.pl, runs afterwards on the logfile, and uses rpm to find out which packages those files belong to. Those are printed out as the list of BuildRequires.
A shell script, auto-br, brings the whole thing together.
Exit Status
This program returns 0 if successful, or non-zero if there was an error.
See Also
Authors
Richard W.M. Jones <http://people.redhat.com/~rjones/>
Copyright
Copyright (C) 2008-2015 Red Hat Inc.
Referenced By
The man pages auto-br(1) and auto-br-rpmbuild(1) are aliases of autobuildrequires(1).