<p dir="ltr">Instead of using ifdefs in the code, perhaps we could partition the source code/files in a way that the build process selects between a true mbim/qmi implementation and a stub mbim/qmi implementation (which effectively bypasses mbim/qmi).</p>
<p dir="ltr">We currently still bypass the qmi implementation in MM on certain ChromeOS platforms due to the need to use some Gobi specific features.</p>
<p dir="ltr">Ben</p>
<div class="gmail_quote">On Jan 17, 2015 10:57 AM, "Aleksander Morgado" <<a href="mailto:aleksander@aleksander.es">aleksander@aleksander.es</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Sat, Jan 17, 2015 at 3:33 PM, Marius Kotsbak <<a href="mailto:marius@kotsbak.com">marius@kotsbak.com</a>> wrote:<br>
>> Hey,<br>
>><br>
>> I'd like to suggest removing the optional support for libqmi and<br>
>> libmbim in the next MM release, so that both libraries end up being<br>
>> mandatory. Most distributions already ship both libraries, and most<br>
>> new modems come with MBIM support, so I think it truly makes sense.<br>
>><br>
>> Any comment?<br>
><br>
> What I could think of is space restricted embedded devices/containers where<br>
> you want to strip down the pieces that you know are not in use.<br>
><br>
<br>
That's a fair point.<br>
<br>
> What are the benefits of making it required?<br>
<br>
Less ifdefs everywhere mainly, cleaner code... I still would like to<br>
see if anyone builds MM without libmbim or libqmi lately.<br>
<br>
Anyway, again, that is a fair point. Actually, one option we could<br>
even take if we want that as a supported usecase is to allow choosing<br>
the plugins being built; see e.g.:<br>
<a href="https://bitbucket.org/mitchfoo/modemmanager/commits/6e11b5b9bd49e8b1ca9a2cf337028765764e0bc0" target="_blank">https://bitbucket.org/mitchfoo/modemmanager/commits/6e11b5b9bd49e8b1ca9a2cf337028765764e0bc0</a><br>
<br>
Or even independent interfaces, e.g.:<br>
<a href="https://bitbucket.org/mitchfoo/modemmanager/commits/7e484dd31721482308a6c9215fd0afbc50ccfa91" target="_blank">https://bitbucket.org/mitchfoo/modemmanager/commits/7e484dd31721482308a6c9215fd0afbc50ccfa91</a><br>
<br>
Now, that is a #ifdef nightmare...<br>
<br>
--<br>
Aleksander<br>
<a href="https://aleksander.es" target="_blank">https://aleksander.es</a><br>
_______________________________________________<br>
ModemManager-devel mailing list<br>
<a href="mailto:ModemManager-devel@lists.freedesktop.org">ModemManager-devel@lists.freedesktop.org</a><br>
<a href="http://lists.freedesktop.org/mailman/listinfo/modemmanager-devel" target="_blank">http://lists.freedesktop.org/mailman/listinfo/modemmanager-devel</a><br>
</blockquote></div>