diff options
author | Sai Hari Chandana Kalluri <chandana.kalluri@xilinx.com> | 2020-10-29 15:39:57 -0700 |
---|---|---|
committer | Sai Hari Chandana Kalluri <chandana.kalluri@xilinx.com> | 2020-10-29 16:42:29 -0700 |
commit | dc623bac0bfbdf374c5417c4eba7ff01918fd625 (patch) | |
tree | 10eda5c27353522c976605e82a8c3363d1128cce /meta-xilinx-bsp | |
parent | b3963be5447ea1b71ca11798ab9269b75b42178b (diff) | |
download | meta-xilinx-dc623bac0bfbdf374c5417c4eba7ff01918fd625.tar.gz |
xrt_git.bb: Replace deprecated boost macros
xrt source includes boost/detail/endian.hpp to detect endianess. In Yocto,
gatesgarth, boost version is 1.74 which has deprecated some older macros
resulting in the below error
/workspaces/ckalluri/yocto/master-dev/builds-versal/tmp/work/cortexa72-cortexa53-xilinx-linux/xrt/202010.2.7.0-r0/git/src/runtime_src/xocl/core/kernel.cpp:24:10:
fatal error: boost/detail/e ndian.hpp: No such file or directory | 24 |
| compilation terminated.
To fix the compilation issue, currently include a patch on top of xrt source
that replaces the deprecated BOOST_BYTE_ORDER macro with __BYTE_ORDER macro to
detect endianess.
Signed-off-by: Sai Hari Chandana Kalluri <chandana.kalluri@xilinx.com>
Diffstat (limited to 'meta-xilinx-bsp')
-rw-r--r-- | meta-xilinx-bsp/recipes-xrt/xrt/xrt/0001-Replace-boost-detail-endian.hpp-with-boost-predef-ot.patch | 80 | ||||
-rw-r--r-- | meta-xilinx-bsp/recipes-xrt/xrt/xrt_git.bb | 2 |
2 files changed, 82 insertions, 0 deletions
diff --git a/meta-xilinx-bsp/recipes-xrt/xrt/xrt/0001-Replace-boost-detail-endian.hpp-with-boost-predef-ot.patch b/meta-xilinx-bsp/recipes-xrt/xrt/xrt/0001-Replace-boost-detail-endian.hpp-with-boost-predef-ot.patch new file mode 100644 index 00000000..2ad7f01a --- /dev/null +++ b/meta-xilinx-bsp/recipes-xrt/xrt/xrt/0001-Replace-boost-detail-endian.hpp-with-boost-predef-ot.patch | |||
@@ -0,0 +1,80 @@ | |||
1 | From aa556b2142b8d6c62c457f82f4470430e9fe80e7 Mon Sep 17 00:00:00 2001 | ||
2 | From: Sai Hari Chandana Kalluri <chandana.kalluri@xilinx.com> | ||
3 | Date: Thu, 29 Oct 2020 15:28:06 -0700 | ||
4 | Subject: [PATCH] Replace boost/detail/endian.hpp with | ||
5 | boost/predef/other/endian.h | ||
6 | |||
7 | The use of BOOST_*_ENDIAN and BOOST_BYTE_ORDER is deprecated. Include | ||
8 | <boost/predef/other/endian.h> and use __BYTE_ORDER and1234 | ||
9 | |||
10 | Signed-off-by: Sai Hari Chandana Kalluri <chandana.kalluri@xilinx.com> | ||
11 | --- | ||
12 | runtime_src/core/common/api/xrt_kernel.cpp | 8 ++++---- | ||
13 | runtime_src/xocl/core/kernel.cpp | 4 ++-- | ||
14 | 2 files changed, 6 insertions(+), 6 deletions(-) | ||
15 | |||
16 | diff --git a/runtime_src/core/common/api/xrt_kernel.cpp b/runtime_src/core/common/api/xrt_kernel.cpp | ||
17 | index 1025e9d..1fb7caf 100644 | ||
18 | --- a/runtime_src/core/common/api/xrt_kernel.cpp | ||
19 | +++ b/runtime_src/core/common/api/xrt_kernel.cpp | ||
20 | @@ -48,7 +48,7 @@ | ||
21 | #include <cstdlib> | ||
22 | using namespace std::chrono_literals; | ||
23 | |||
24 | -#include <boost/detail/endian.hpp> | ||
25 | +#include <boost/predef/other/endian.h> | ||
26 | |||
27 | #ifdef _WIN32 | ||
28 | # pragma warning( disable : 4244 4267 4996) | ||
29 | @@ -464,7 +464,7 @@ class argument | ||
30 | virtual std::vector<uint32_t> | ||
31 | get_value(std::va_list* args) const | ||
32 | { | ||
33 | - static_assert(BOOST_BYTE_ORDER==1234,"Big endian detected"); | ||
34 | + static_assert(__BYTE_ORDER==1234,"Big endian detected"); | ||
35 | |||
36 | HostType value = va_arg(*args, VaArgType); | ||
37 | return value_to_uint32_vector(value); | ||
38 | @@ -485,7 +485,7 @@ class argument | ||
39 | virtual std::vector<uint32_t> | ||
40 | get_value(std::va_list* args) const | ||
41 | { | ||
42 | - static_assert(BOOST_BYTE_ORDER==1234,"Big endian detected"); | ||
43 | + static_assert(__BYTE_ORDER==1234,"Big endian detected"); | ||
44 | |||
45 | HostType* value = va_arg(*args, VaArgType*); | ||
46 | return value_to_uint32_vector(value, size); | ||
47 | @@ -507,7 +507,7 @@ class argument | ||
48 | virtual std::vector<uint32_t> | ||
49 | get_value(std::va_list* args) const | ||
50 | { | ||
51 | - static_assert(BOOST_BYTE_ORDER==1234,"Big endian detected"); | ||
52 | + static_assert(__BYTE_ORDER==1234,"Big endian detected"); | ||
53 | if (xrt_core::config::get_xrt_bo()) { | ||
54 | auto bo = va_arg(*args, xrtBufferHandle); | ||
55 | return value_to_uint32_vector(xrt_core::bo::address(bo)); | ||
56 | diff --git a/runtime_src/xocl/core/kernel.cpp b/runtime_src/xocl/core/kernel.cpp | ||
57 | index f4f7edf..ec71c7e 100644 | ||
58 | --- a/runtime_src/xocl/core/kernel.cpp | ||
59 | +++ b/runtime_src/xocl/core/kernel.cpp | ||
60 | @@ -21,7 +21,7 @@ | ||
61 | #include "compute_unit.h" | ||
62 | #include "core/common/xclbin_parser.h" | ||
63 | |||
64 | -#include <boost/detail/endian.hpp> | ||
65 | +#include <boost/predef/other/endian.h> | ||
66 | |||
67 | #include <sstream> | ||
68 | #include <iostream> | ||
69 | @@ -130,7 +130,7 @@ void | ||
70 | kernel::scalar_argument:: | ||
71 | set(size_t size, const void* cvalue) | ||
72 | { | ||
73 | - static_assert(BOOST_BYTE_ORDER==1234,"Big endian detected"); | ||
74 | + static_assert(__BYTE_ORDER==1234,"Big endian detected"); | ||
75 | |||
76 | if (size != m_sz) | ||
77 | throw error(CL_INVALID_ARG_SIZE,"Invalid scalar argument size, expected " | ||
78 | -- | ||
79 | 2.7.4 | ||
80 | |||
diff --git a/meta-xilinx-bsp/recipes-xrt/xrt/xrt_git.bb b/meta-xilinx-bsp/recipes-xrt/xrt/xrt_git.bb index e522d387..d891c272 100644 --- a/meta-xilinx-bsp/recipes-xrt/xrt/xrt_git.bb +++ b/meta-xilinx-bsp/recipes-xrt/xrt/xrt_git.bb | |||
@@ -14,6 +14,8 @@ REPO ?= "git://github.com/Xilinx/XRT.git;protocol=https" | |||
14 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" | 14 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" |
15 | SRC_URI = "${REPO};${BRANCHARG}" | 15 | SRC_URI = "${REPO};${BRANCHARG}" |
16 | 16 | ||
17 | FILESEXTRAPATHS_prepend := "${THISDIR}/xrt:" | ||
18 | SRC_URI_append = " file://0001-Replace-boost-detail-endian.hpp-with-boost-predef-ot.patch" | ||
17 | PV = "202010.2.7.0" | 19 | PV = "202010.2.7.0" |
18 | SRCREV ?= "8a4c6eb5012c57423fba468e1af8df53a293dcd5" | 20 | SRCREV ?= "8a4c6eb5012c57423fba468e1af8df53a293dcd5" |
19 | 21 | ||