On 11/07/2012 02:05 PM, Gene Czarcinski wrote:
As I was doing this, I also looked through the libvirt.spec file.
My,
what a wonderful example of wizardly that is. Anyway, I thought some
updates may be in ortder:
- increase the minimum version for dnsmasq from 2.41 to 2.48.
That's probably safe, since it still works for RHEL 5.9.
- why is radvd required for rpmbuild?
So that ./configure finds the radvd binaries, and encodes the correct
location into the built libvirt, for the case where libvirt will be
using radvd. The dependency makes sense for distros where we plan on
using radvd, but can be made conditional so that we skip it on distros
where using dnsmasq alone is sufficient.
- in light of my patch, make radvd an optional runtime requirement. I am
not a spec file expert by any means but there must be a way to not
require radvd if dnsmasq >- 2.63.
Yes, we can alter the spec file to make things conditional. For
example, we have conditions for using init scripts in Fedora 16 and RHEL
6, but systemd scripts in Fedora 17 and RHEL 7 (on the assumption that
when RHEL 7 is finally released, it will probably be based on Fedora 17
or later); so whether we depend on cgconfig or systemd is determined by
which distro we are building for. In the same way, we could make it
conditional that if you are building for Fedora 19 or RHEL 7 you get
dnsmasq doing everything, but for RHEL 6 or Fedora 18 (where dnsmasq
won't be new enough), we stick to radvd.
Don't worry if you don't know quite how to get the spec file to express
that; if you can merely draw up the table of preferred versions in
relation to the default installs in Fedora releases, we can help turn it
into spec syntax. In fact, worrying about Fedora alone may be
sufficient; the RHEL conditionals are best maintained by Red Hat since
they are the ones choosing what to backport.
--
Eric Blake eblake(a)redhat.com +1-919-301-3266
Libvirt virtualization library
http://libvirt.org