[Buildroot] [PATCH] package/wvstreams: add patch to fix build with C99 compilers

Romain Naour romain.naour at gmail.com
Fri Oct 14 22:07:17 UTC 2016


Hi All,

Le 08/10/2016 à 12:22, Romain Naour a écrit :
> Hi Jörg, Arnout, All
> 
> Le 24/09/2016 à 18:14, Arnout Vandecappelle a écrit :
>>
>>
>> On 24-09-16 10:47, Jörg Krause wrote:
>>>
>>>
>>> Hi Romain,
>>>
>>> Am 24. September 2016 10:31:57 MESZ, schrieb Romain Naour <romain.naour at gmail.com>:
>>>> Hi Jörg,
>>>>
>>>> Le 23/09/2016 à 23:42, Jörg Krause a écrit :
>> [snip]
>>>>> Note, that wvstreams is not maintained anymore. Last activity was on
>>>>> Github was 2011, the current version 1.6.1 dates from 2009.
>>>>
>>>> Thanks for this investigation and the fix.
>>>> Are you using wvstreams or it's for the sake of autobuilders ?
>>>
>>> No, I am not using wvstreams and yes, it is for the sake of autobuilders.
>>>
>>>> I'm wondering if we should deprecate this package ?
>>>> Last time I looked at it, I disabled it for musl based toolchains.
>>>>
>>>> Thoughts ?
>>>
>>> I am not sure which policy Buildroot follows here, but I would like to know.
>>
>>  This is precisely the kind of situation where we start considering deprecating
>> a package.
>>
>>
>>  In this case, wvstreams only exists for the sake of wvdial. I don't know of
>> many alternatives however. modem-manager is somewhat bloaty, and chat + ppp.conf
>> is a lot more difficult.
>>
>>
>>  Adding Simon, the original contributor, for a second opinion.
> 
> I build tested this patch and indeed it fix the build with gcc5.
> But I tested with gcc6 and it fail with a weird C++ error:
> 
> streams/wvstream.cc: In member function ‘void
> WvStream::_build_selectinfo(IWvStream::SelectInfo&, time_t, bool, bool, bool,
> bool)’:
> streams/wvstream.cc:910:22: error: cannot convert ‘IWvStreamCallback {aka
> std::tr1::function<void()>}’ to ‘bool’ in assignment
>   si.wants.readable = readcb;
>                       ^~~~~~
> streams/wvstream.cc:911:22: error: cannot convert ‘IWvStreamCallback {aka
> std::tr1::function<void()>}’ to ‘bool’ in assignment
>   si.wants.writable = writecb;
>                       ^~~~~~~
> streams/wvstream.cc:912:25: error: cannot convert ‘IWvStreamCallback {aka
> std::tr1::function<void()>}’ to ‘bool’ in assignment
>   si.wants.isexception = exceptcb;
>                          ^~~~~~~~
> streams/wvstream.cc: In member function ‘IWvStream::SelectRequest
> WvStream::get_select_request()’:
> streams/wvstream.cc:1022:62: error: no matching function for call to
> ‘IWvStream::SelectRequest::SelectRequest(IWvStreamCallback&, IWvStreamCallback&,
> IWvStreamCallback&)’
>      return IWvStream::SelectRequest(readcb, writecb, exceptcb);
>                                                               ^
> So, let's deprecate wvdial and wvstreams.

It's now deprecated, I'll mark this patch rejected in patchwork.

https://git.buildroot.net/buildroot/commit/?id=521cf82ad842e019c07e3a0d1c0c29c09ae00776

Best regards,
Romain

> 
> Best regards,
> Romain
> 
>>
>>  Regards,
>>  Arnout
>>
> 




More information about the buildroot mailing list