[libvirt] [PATCH] rm daemon/remote_dispatch_table.h

Matthias Bolte matthias.bolte at googlemail.com
Thu May 5 08:58:38 UTC 2011


2011/5/5 Daniel P. Berrange <berrange at redhat.com>:
> On Thu, May 05, 2011 at 02:59:39PM +0800, Daniel Veillard wrote:
>> On Thu, May 05, 2011 at 02:31:57PM +0800, Hu Tao wrote:
>> > On Thu, May 05, 2011 at 08:07:49AM +0200, Matthias Bolte wrote:
>> > > 2011/5/5 Hu Tao <hutao at cn.fujitsu.com>:
>> > > > 1. this file is automatically generated at compile-time, so rm it
>> > > >   to avoid further commit to this file.
>> > > > 2. any update should made to file src/remote/remote_protocol.x.
>> > > > ---
>> > > >  daemon/remote_dispatch_table.h | 1054 ----------------------------------------
>> > > >  1 files changed, 0 insertions(+), 1054 deletions(-)
>> > > >  delete mode 100644 daemon/remote_dispatch_table.h
>> > > >
>> > >
>> > > There is probably a reason why this generated file is under version
>> > > control, maybe Dan knows.
>> > >
>> > > If we decide to remove the generated protocol dispatch header files
>> > > then we should remove all of them (daemon/remote_dispatch_*.h and
>> > > daemon/qemu_dispatch_*.h) and not just this single one.
>> >
>> > :( doesn't noticed other daemon/remote_dispatch_*.h are also generated
>> > ones. Thanks for pointing it out.
>> >
>> > Dan, what's your opinion?
>>
>>   my recollection is that they are kept because when compiling on
>> windows we don't have ways to generate them. So while generated,
>> they are kept in git and in the dist tarballs.

There are two generators involved rpcgen + rpcgen_fix.pl (client and
daemon side) and remote_generate_stubs.pl (daemon side only).

I'm not sure if the rpcgen that comes with portablexdr (used in my
mingw build) comes with a capable rpcgen. Also I'm not sure about
cygwin and rpcgen.

>
> We kept them because the rpcgen binary was kind of flakey on some
> platforms. This may no longer be required, but will need to check
>
>
> Daniel

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]

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

The manually written code corresponding to the generated prototypes
for the RPC exposed functions:
daemon/remote.c

Actually a major part of daemon/remote.c can be moved to generated
code, see my pending patch series [1].

[1] https://www.redhat.com/archives/libvir-list/2011-April/msg01075.html

Matthias




More information about the libvir-list mailing list