Re: [PATCH 0/3] Fix examples/ under mingw

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 1/9/19 7:33 AM, Andrea Bolognani wrote:
> On Tue, 2019-01-08 at 13:56 -0600, Eric Blake wrote:
>> My recent patch to make all of the examples work independently of
>> gnulib worked fine on Linux, but failed on mingw:
>> https://travis-ci.org/libvirt/libvirt/jobs/476898635
>>
>> The whole point of gnulib is to work around portability pitfalls so
>> we don't have to bend over backwards thinking about it in our code;
>> and it would be possible to fix this bug by linking the problematic
>> example binaries against gnulib after all.  But since the examples
>> are still small and self-contained enough that using manual
>> workarounds wasn't too daunting, that's the approach I took here.
> 
> It's kind of a done deal now, but I still wonder if it was the right
> approach.
> 
> The way I see it, our examples are supposed to illustrate how to use
> libvirt itself, not how to write C code that is portable to a
> multitude of platforms: with that goal in mind, taking advantage of
> gnulib makes perfect sense, as it allows us to put the focus on the
> usage of libvirt rather than the surrounding compatibility gunk.

Not everyone that would write to libvirt API's would have installed
gnulib. Asked differently, is having gnulib installed a prerequisite for
having libvirt installed? What about libvirt-devel?

While altering these examples to adhere to some least common denominator
architecture is perhaps less optimal - it does show one can generate
architecture agnostic examples as long as they understand issues
surrounding portability.

An alternative one could generate patches for would be #ifdef'd code or
perhaps even simply comments indicating the alternative methodology that
is less portable. For those without git history it's perhaps harder to
figure out.

John

> 
> I would probably have a different opinion about this if the
> workarounds were related to eg. using certain types as opposed to
> others when passing data to libvirt functions, but as far as I can
> tell that's not the case.
> 

--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list



[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]

  Powered by Linux