iiod-client: Add support for ZSTD-compressed metadata
iiod-client: Add support for ZSTD-compressed metadata

If compiled WITH_ZSTD, use the ZPRINT command to receive a
ZSTD-compressed payload that can be decompressed into the original XML
string of the remote context. If the remote IIOD does not support
ZPRINT, it will simply revert to using PRINT instead.

This can dramatically speed up context creation when using a slow
transport (e.g. serial), as the XML strings can be really big.

For instance, the XML string of the ADALM-Pluto is close to 25 KiB.
On a standard 57600 bps UART connection, this would take about ~3.4
seconds to transfer. The compressed payload amounts to only about
3.7 KiB, which would take about ~0.5 seconds to transfer.

Signed-off-by: Paul Cercueil <a027184a55211cd23e3f3094f1fdc728df5e0500@crapouillou.net>

analogdevicesinc/libiio,analogdevicesinc/libiio,analogdevicesinc/libiio,analogdevicesinc/libiio