[libvirt] [PATCH] vbox: add support for v4.2.20+ and v4.3.4+

Ryota Ozaki ozaki.ryota at gmail.com
Mon Dec 30 10:26:08 UTC 2013


On Mon, Dec 30, 2013 at 5:55 PM, Jean-Baptiste Rouault
<jean-baptiste.rouault at diateam.net> wrote:
> On Sunday 29 December 2013 14:44:10 Ryota Ozaki wrote:
>> On Wed, Dec 25, 2013 at 12:47 AM, Jean-Baptiste Rouault
>>
>> <jean-baptiste.rouault at diateam.net> wrote:
>> > While working on adding virDomain*Stats support to the vbox driver, we
>> > found bugs in the VirtualBox API C bindings. These bugs have been fixed
>> > in versions 4.2.20 and 4.3.4.
>> > However, the changes in the C bindings are incompatible with the
>> > vbox_CAPI_v4_2.h and vbox_CAPI_v4_3.h files which are bundled in libvirt
>> > source code. This is why the following patch adds vbox_CAPI_v4_2_20.h
>> > and vbox_CAPI_v4_3_4.h.
>> >
>> > We tried to keep compatibility with older VirtualBox 4.2.x and 4.3.x
>> > releases so we added a "SPECIAL_VERSION" identifier to conditionnaly
>> > include the right header. I'm not really pleased with this
>> > "SPECIAL_VERSION" identifier, maybe we could instead increase the
>> > precision of "VBOX_API_VERSION", for example 4002 would become 4002000.
>> > This would permit us to select the right header based on the
>> > VBOX_API_VERSION only, what do you think ?
>>
>> Can we use VBOX_XPCOMC_VERSION instead of adding a new flag?
>> The version has been bumped up when the incompatibility is introduced.
>>
>>   ozaki-r
>
> The problem is that VBOX_XPCOMC_VERSION is defined in the vbox_CAPI_v*.h
> headers and we need a flag to choose which header we have to include.

Oops. You're right.

Well, one other idea is to include each vbox_CAPI_X_Y.h in
the corresponding vbox_VX_Y.c. That's rather straightforward
for me than including vbox_CAPI_*.h in vbox_tmpl.c according to
VBOX_API_VERSION.

  ozaki-r

>
> --
> Jean-Baptiste ROUAULT
> R&D Engineer - diateam : Architectes de l'information
> Phone : +33 (0)2 98 050 050 Fax : +33 (0)2 98 050 051




More information about the libvir-list mailing list