On Thu, May 05, 2011 at 01:05:43PM -0600, Eric Blake wrote:
On 05/05/2011 05:02 AM, Daniel P. Berrange wrote:
>>
>> I think we're talking about different things here. Thee are several
>> related/generated files:
>>
>> The manually written XDR protocol definition files:
>> src/remote/(remote|qemu)_protocol.x
>>
>> The rpcgen generated code for XDR argument and return value struct handling:
>> src/remote/(remote|qemu)_protocol.[ch]
Here, there are two questions:
1. do we want a configure-time dependency on rpcgen? If not, then the
files must be generated at 'make dist' time. But if so, then question 2
is moot, because the user will always be able to recreate them
2. if the files are generated at 'make dist' time, then are all rpcgen
created equal? If so, then we don't need to store the generated files
in git (and don't want to, as users with different rpcgen programs will
probably cause spurious churn in the generated file). If not, then we
absolutely need to store the canonical generated version in git.
Off-hand, I think the answer to question 1 is that we do NOT want a
configure-time dependency on rpcgen, and therefore the files must be
generated prior to 'make dist'. However, for question 2, I'm not yet sure.
The only requirement wrt rpcgen, is that it must be the Linux
GLibC rpcgen binary. This is because our post-processing script
to fix various compiler warnings only works with the code generated
from that. Hence we do not want a configure time use of rpcgen, and
should include the generated files in 'make dist'.
Since our release tar.gz archives are always generated on a RHEL
box, we don't need them in GIT.
>> The remote_generate_stubs.pl generated headers with
prototypes and
>> dispatch tables for the RPC exposed functions:
>> daemon/(remote|qemu)_dispatch_(args|table|prototypes|ret).h
Here, there's only one question:
1. do we want a configure-time dependency on perl? If so, then we
should quit generating them. But if not, we already have a 'make dist'
dependency on perl (what, you ask? Why, autoconf and automake), so we
already require developers to have perl present. Which means we really
should change the makefile to ensure the files are generated at 'make
dist' time, but quit storing the generated files in git.
Yes, include in make dist, but not in git.
Daniel
--
|:
http://berrange.com -o-
http://www.flickr.com/photos/dberrange/ :|
|:
http://libvirt.org -o-
http://virt-manager.org :|
|:
http://autobuild.org -o-
http://search.cpan.org/~danberr/ :|
|:
http://entangle-photo.org -o-
http://live.gnome.org/gtk-vnc :|