On 06/27/2017 03:45 PM, Dawid Zamirski wrote:
On Sat, 2017-06-24 at 19:35 +0200, Michal Privoznik wrote:
> On 06/23/2017 10:58 AM, Michal Privoznik wrote:
>> <snip/>
>>
>> But this got me thinking, should we follow libvirt's example and
>> finally
>> split src/libvirt-php.c into smaller files that would handle just
>> one
>> object? For example:
>>
>> libvirt-domain.c
>> libvirt-nwfilter.c
>> libvirt-storage.c
>> libvirt-network.c
>>
>> and so on.
>
> Just a clarification on this: I think libvirt-php.c should contain
> just
> the necessary glue/register functions for PHP objects and include
> libvirt-domain.h, libvirt-nwfilter.h, libvirt-storage.h, etc.
>
> The macros we have for dealing with different version of PHP (e.g.
> VIRT_RETURN_RESOURE or VIRT_RETVAL_STRING and friends) can then go to
> util.h (which can be included from all the new *.c files).
>
> libvirt-domain.h could then have all those
> PHP_FUNCTION(libvirt_domain_*) declarations from libvirt-php.h;
> libvirt-nwfilter.h could have all those
> PHP_FUNCTION(libvirt_nwfilter_*)
> declarations, and so on.
>
> The reasoning for this is to have clear dependencies between source
> files. This basically mimics what we have in libvirt too.
>
> Unfortunately, I'm leaving the office for some time now so I will not
> have time to write this myself. So if you guys want to propose the
> patches, please be my guest. Otherwise I'll look into it once I'm
> back.
>
> Michal
I'll take care of this some time and also add the examples for the
NWFilter API usage some time this or next week (that is, as soon as I'm
done with my php-dbus work)
Dawid
Dawid - any progress on this? I'd like to make the release as requested.
For that the NWFilter usage example should be enough. The split of
libvirt-php.c is rather a big change and as such not really a fit for
last minute merge before the release.
Again, if you don't have the time I can look into this.
Michal