package/uhd: fix build on RISC-V
authorGwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
Tue, 12 Jan 2021 06:30:27 +0000 (07:30 +0100)
committerThomas Petazzoni <thomas.petazzoni@bootlin.com>
Sat, 23 Jan 2021 21:00:00 +0000 (22:00 +0100)
commit8692d8f38d7251cf6919902a3386aefcd503fedf
tree05e8038ff9d69f77f300fea56f5eeb14e653e6ec
parentb6eeb2fdda3b40f8aa8127d38e661b77afbbced8
package/uhd: fix build on RISC-V

When the target CPU is riscV, msgpack is unable to detect endianness with a list of errors like:

uhd/host/lib/deps/rpclib/include/rpc/msgpack/pack.hpp:190:2: error: #error msgpack-c supports only big endian and little endian
  190 | #error msgpack-c supports only big endian and little endian
      |  ^~~~~

and with subsequent errors:

uhd0/host/lib/deps/rpclib/include/rpc/msgpack/pack.hpp:236:46: error: there are no arguments to 'take8_8' that depend on a template parameter, so a declaration of 'take8_8' must be available [-fpermissive]
  236 |     char buf[2] = {static_cast<char>(0xccu), take8_8(d)};
      |

This is due to a missing support for this architecture in msgpack.
This patch adapt commit from https://github.com/boostorg/predef

[backported from https://github.com/EttusResearch/uhd/pull/400]

Fix:
- http://autobuild.buildroot.net/results/afacf5c5c2cd9dff6962523f1fdded9b474b9d66/
- http://autobuild.buildroot.net/results/91530538d630a7f09d85327e514f01b45253c1a6/
- http://autobuild.buildroot.net/results/91530538d630a7f09d85327e514f01b45253c1a6/
- and others

Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
package/uhd/0003-add-RISC-V-endian-detection.patch [new file with mode: 0644]