1 |
commit: 4e77177d9990f6598d2d3471139100ba9898cb31 |
2 |
Author: Kurt Kanzenbach <kurt <AT> kmk-computers <DOT> de> |
3 |
AuthorDate: Thu Jul 16 17:12:29 2020 +0000 |
4 |
Commit: Kurt Kanzenbach <kurt <AT> kmk-computers <DOT> de> |
5 |
CommitDate: Thu Jul 16 17:12:29 2020 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=4e77177d |
7 |
|
8 |
dev-libs/open62541: Add version v1.1.1 |
9 |
|
10 |
Package-Manager: Portage-2.3.99, Repoman-2.3.23 |
11 |
Signed-off-by: Kurt Kanzenbach <kurt <AT> kmk-computers.de> |
12 |
|
13 |
dev-libs/open62541/Manifest | 1 + |
14 |
dev-libs/open62541/files/open62541-1.1.1-etf.patch | 43 +++++++++ |
15 |
.../open62541/files/open62541-1.1.1-headers.patch | 36 +++++++ |
16 |
.../open62541/files/open62541-1.1.1-tests.patch | 104 +++++++++++++++++++++ |
17 |
dev-libs/open62541/open62541-1.1.1.ebuild | 98 +++++++++++++++++++ |
18 |
5 files changed, 282 insertions(+) |
19 |
|
20 |
diff --git a/dev-libs/open62541/Manifest b/dev-libs/open62541/Manifest |
21 |
index 1291050..4415d55 100644 |
22 |
--- a/dev-libs/open62541/Manifest |
23 |
+++ b/dev-libs/open62541/Manifest |
24 |
@@ -1,2 +1,3 @@ |
25 |
DIST open62541-1.0.1.tar.gz 2689199 BLAKE2B ad2932a9e42cda5a5ef29904e740ff1cfb0d3e3d481f1d15ba0b1e67c8b42fae11774f28f9b8d8abf8b78400d1c3aea5dfe75a32fb70a303f5378ab5915bc337 SHA512 9fb0af8befba4d7c376ecd98dfab9033439e0a0594e7e3f48b6df54749af482a4e70a7aa077c49202fd704520bb433a7598fc9f9297a5ff12cb7a019176c4031 |
26 |
+DIST open62541-1.1.1.tar.gz 2916122 BLAKE2B a3230911bfeaf54282b687293afc82e9d66f93250707cbdf2e2fc2141b8737153d182a7199a7fc677e5e625c17454d16f434923837554a4f79ba7c4d5013312d SHA512 5b4dacf25de6c20311de52feb0ea791779b8a9ccb894341786e63e740367ec1e8d91b984b670b1a58d62ea160d7384fedb3ff50cabbc93d76c95c330507afc57 |
27 |
DIST open62541-1.1.tar.gz 2931184 BLAKE2B 817caad357e25bb70c548e7367ee75c358f40c27e5fde6b2edf6fe935289f58c40aa232565f0da5ba8ba6bcaf7138ce835232b649f10c2c9dee9618421eca6d8 SHA512 cf4d28de9534069600cdd3b20e837cdfbdeb46d4da59ad70fa8ad60fa1cd7fd02216cd0b818e8ece8dedb77de1986608817ab5f015e2ac0a806d5d8ba20a1765 |
28 |
|
29 |
diff --git a/dev-libs/open62541/files/open62541-1.1.1-etf.patch b/dev-libs/open62541/files/open62541-1.1.1-etf.patch |
30 |
new file mode 100644 |
31 |
index 0000000..cce618e |
32 |
--- /dev/null |
33 |
+++ b/dev-libs/open62541/files/open62541-1.1.1-etf.patch |
34 |
@@ -0,0 +1,43 @@ |
35 |
+From 8cac173827297e936a24b4bdfe73f2498dfe483a Mon Sep 17 00:00:00 2001 |
36 |
+From: Kurt Kanzenbach <kurt@×××××××××××××.de> |
37 |
+Date: Sun, 12 Jul 2020 10:57:08 +0200 |
38 |
+Subject: [PATCH 3/3] etf: Fix compiler warning/build error in etf plugin |
39 |
+MIME-Version: 1.0 |
40 |
+Content-Type: text/plain; charset=UTF-8 |
41 |
+Content-Transfer-Encoding: 8bit |
42 |
+ |
43 |
+Fix the following warning/error: |
44 |
+ |
45 |
+|In function ‘snprintf’, |
46 |
+| inlined from ‘UA_PubSubChannelEthernetETF_open’ at /var/tmp/portage/dev-libs/open62541-1.1/work/open62541-1.1/plugins/ua_pubsub_ethernet_etf.c:189:5, |
47 |
+| inlined from ‘TransportLayerEthernetETF_addChannel’ at /var/tmp/portage/dev-libs/open62541-1.1/work/open62541-1.1/plugins/ua_pubsub_ethernet_etf.c:563:40: |
48 |
+|/usr/include/bits/stdio2.h:67:10: error: ‘__builtin___snprintf_chk’ specified bound 40 exceeds destination size 16 [-Werror=stringop-overflow=] |
49 |
+| 67 | return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1, |
50 |
+| | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
51 |
+| 68 | __bos (__s), __fmt, __va_arg_pack ()); |
52 |
+| | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
53 |
+| |
54 |
+ |
55 |
+By using the correct size. |
56 |
+ |
57 |
+Signed-off-by: Kurt Kanzenbach <kurt@×××××××××××××.de> |
58 |
+--- |
59 |
+ plugins/ua_pubsub_ethernet_etf.c | 2 +- |
60 |
+ 1 file changed, 1 insertion(+), 1 deletion(-) |
61 |
+ |
62 |
+diff --git a/plugins/ua_pubsub_ethernet_etf.c b/plugins/ua_pubsub_ethernet_etf.c |
63 |
+index 416b5857945a..d55eb363e3b5 100644 |
64 |
+--- a/plugins/ua_pubsub_ethernet_etf.c |
65 |
++++ b/plugins/ua_pubsub_ethernet_etf.c |
66 |
+@@ -186,7 +186,7 @@ UA_PubSubChannelEthernetETF_open(const UA_PubSubConnectionConfig *connectionConf |
67 |
+ struct ifreq ifreq; |
68 |
+ memset(&ifreq, 0, sizeof(struct ifreq)); |
69 |
+ UA_UInt64 len = UA_MIN(address->networkInterface.length, sizeof(ifreq.ifr_name)-1); |
70 |
+- UA_snprintf(ifreq.ifr_name, sizeof(struct ifreq), |
71 |
++ UA_snprintf(ifreq.ifr_name, sizeof(ifreq.ifr_name), |
72 |
+ "%.*s", (int)len, |
73 |
+ (char*)address->networkInterface.data); |
74 |
+ |
75 |
+-- |
76 |
+2.26.2 |
77 |
+ |
78 |
|
79 |
diff --git a/dev-libs/open62541/files/open62541-1.1.1-headers.patch b/dev-libs/open62541/files/open62541-1.1.1-headers.patch |
80 |
new file mode 100644 |
81 |
index 0000000..97e225b |
82 |
--- /dev/null |
83 |
+++ b/dev-libs/open62541/files/open62541-1.1.1-headers.patch |
84 |
@@ -0,0 +1,36 @@ |
85 |
+From a5697f1eb69822e172bc31d1549222c8ca718844 Mon Sep 17 00:00:00 2001 |
86 |
+From: Kurt Kanzenbach <kurt@×××××××××××××.de> |
87 |
+Date: Sun, 12 Jul 2020 10:39:31 +0200 |
88 |
+Subject: [PATCH 2/3] cmake: Install ETF and XDP plugin headers |
89 |
+ |
90 |
+When the corresponding features are enabled, the headers should be installed as |
91 |
+well. |
92 |
+ |
93 |
+Signed-off-by: Kurt Kanzenbach <kurt@×××××××××××××.de> |
94 |
+--- |
95 |
+ CMakeLists.txt | 2 ++ |
96 |
+ 1 file changed, 2 insertions(+) |
97 |
+ |
98 |
+diff --git a/CMakeLists.txt b/CMakeLists.txt |
99 |
+index d7417c88088b..8f87c5d998c6 100755 |
100 |
+--- a/CMakeLists.txt |
101 |
++++ b/CMakeLists.txt |
102 |
+@@ -861,6 +861,7 @@ if(UA_ENABLE_PUBSUB) |
103 |
+ list(APPEND default_plugin_headers ${PROJECT_SOURCE_DIR}/plugins/include/open62541/plugin/pubsub_udp.h) |
104 |
+ list(APPEND default_plugin_sources ${PROJECT_SOURCE_DIR}/plugins/ua_pubsub_udp.c) |
105 |
+ if(UA_ENABLE_PUBSUB_ETH_UADP_ETF) |
106 |
++ list(APPEND default_plugin_headers ${PROJECT_SOURCE_DIR}/plugins/include/open62541/plugin/pubsub_ethernet_etf.h) |
107 |
+ list(APPEND default_plugin_sources ${PROJECT_SOURCE_DIR}/plugins/ua_pubsub_ethernet_etf.c) |
108 |
+ endif() |
109 |
+ if(UA_ENABLE_PUBSUB_ETH_UADP) |
110 |
+@@ -870,6 +871,7 @@ if(UA_ENABLE_PUBSUB) |
111 |
+ if(UA_ENABLE_PUBSUB_ETH_UADP_XDP) |
112 |
+ if(EXISTS "${XDP_LIBRARY}") |
113 |
+ list(APPEND open62541_LIBRARIES ${XDP_LIBRARY}) |
114 |
++ list(APPEND default_plugin_headers ${PROJECT_SOURCE_DIR}/plugins/include/open62541/plugin/pubsub_ethernet_xdp.h) |
115 |
+ list(APPEND default_plugin_sources ${PROJECT_SOURCE_DIR}/plugins/ua_pubsub_ethernet_xdp.c) |
116 |
+ else() |
117 |
+ MESSAGE(WARNING "samples in bpf-next directory were not built. Build the bpf-next to use XDP") |
118 |
+-- |
119 |
+2.26.2 |
120 |
+ |
121 |
|
122 |
diff --git a/dev-libs/open62541/files/open62541-1.1.1-tests.patch b/dev-libs/open62541/files/open62541-1.1.1-tests.patch |
123 |
new file mode 100644 |
124 |
index 0000000..ad96717 |
125 |
--- /dev/null |
126 |
+++ b/dev-libs/open62541/files/open62541-1.1.1-tests.patch |
127 |
@@ -0,0 +1,104 @@ |
128 |
+From ab9a4a1c826bb662816f71020054ba2558afefc7 Mon Sep 17 00:00:00 2001 |
129 |
+From: Kurt Kanzenbach <kurt@×××××××××××××.de> |
130 |
+Date: Sat, 20 Jun 2020 14:28:57 +0200 |
131 |
+Subject: [PATCH 1/3] cmake: pubsub: Disable failing tests within portage |
132 |
+ |
133 |
+The Pub/Sub tests won't work within portage. Disable them. |
134 |
+ |
135 |
+Signed-off-by: Kurt Kanzenbach <kurt@×××××××××××××.de> |
136 |
+--- |
137 |
+ tests/CMakeLists.txt | 78 -------------------------------------------- |
138 |
+ 1 file changed, 78 deletions(-) |
139 |
+ |
140 |
+diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt |
141 |
+index c73b2b04520b..fb21fb856ba4 100644 |
142 |
+--- a/tests/CMakeLists.txt |
143 |
++++ b/tests/CMakeLists.txt |
144 |
+@@ -331,84 +331,6 @@ if(UA_ENABLE_DISCOVERY) |
145 |
+ add_test_valgrind(discovery ${TESTS_BINARY_DIR}/check_discovery) |
146 |
+ endif() |
147 |
+ |
148 |
+-if(UA_ENABLE_PUBSUB) |
149 |
+- add_executable(check_pubsub_encoding pubsub/check_pubsub_encoding.c $<TARGET_OBJECTS:open62541-object> $<TARGET_OBJECTS:open62541-testplugins>) |
150 |
+- target_link_libraries(check_pubsub_encoding ${LIBS}) |
151 |
+- add_test_valgrind(pubsub_encoding ${TESTS_BINARY_DIR}/check_pubsub_encoding) |
152 |
+- add_executable(check_pubsub_pds pubsub/check_pubsub_pds.c $<TARGET_OBJECTS:open62541-object> $<TARGET_OBJECTS:open62541-plugins>) |
153 |
+- target_link_libraries(check_pubsub_pds ${LIBS}) |
154 |
+- add_test_valgrind(pubsub_pds ${TESTS_BINARY_DIR}/check_pubsub_pds) |
155 |
+- add_executable(check_pubsub_connection_udp pubsub/check_pubsub_connection_udp.c $<TARGET_OBJECTS:open62541-object> $<TARGET_OBJECTS:open62541-plugins>) |
156 |
+- target_link_libraries(check_pubsub_connection_udp ${LIBS}) |
157 |
+- add_test_valgrind(pubsub_connection_udp ${TESTS_BINARY_DIR}/check_pubsub_connection_udp) |
158 |
+- add_executable(check_pubsub_publish pubsub/check_pubsub_publish.c $<TARGET_OBJECTS:open62541-object> $<TARGET_OBJECTS:open62541-plugins>) |
159 |
+- target_link_libraries(check_pubsub_publish ${LIBS}) |
160 |
+- add_test_valgrind(pubsub_publish ${TESTS_BINARY_DIR}/check_pubsub_publish) |
161 |
+- add_executable(check_pubsub_publish_uadp pubsub/check_pubsub_publish_uadp.c $<TARGET_OBJECTS:open62541-object> $<TARGET_OBJECTS:open62541-plugins>) |
162 |
+- target_link_libraries(check_pubsub_publish_uadp ${LIBS}) |
163 |
+- add_test_valgrind(pubsub_publish ${TESTS_BINARY_DIR}/check_pubsub_publish_uadp) |
164 |
+- |
165 |
+- #Link libraries for executing subscriber unit test |
166 |
+- add_executable(check_pubsub_subscribe pubsub/check_pubsub_subscribe.c $<TARGET_OBJECTS:open62541-object> $<TARGET_OBJECTS:open62541-plugins>) |
167 |
+- target_link_libraries(check_pubsub_subscribe ${LIBS}) |
168 |
+- add_executable(check_pubsub_publishspeed pubsub/check_pubsub_publishspeed.c $<TARGET_OBJECTS:open62541-object> $<TARGET_OBJECTS:open62541-plugins>) |
169 |
+- target_link_libraries(check_pubsub_publishspeed ${LIBS}) |
170 |
+- add_test_valgrind(pubsub_publishspeed ${TESTS_BINARY_DIR}/check_pubsub_publish) |
171 |
+- add_executable(check_pubsub_config_freeze pubsub/check_pubsub_config_freeze.c $<TARGET_OBJECTS:open62541-object> $<TARGET_OBJECTS:open62541-plugins>) |
172 |
+- target_link_libraries(check_pubsub_config_freeze ${LIBS}) |
173 |
+- add_test_valgrind(check_pubsub_config_freeze ${TESTS_BINARY_DIR}/check_pubsub_config_freeze) |
174 |
+- add_executable(check_pubsub_publish_rt_levels pubsub/check_pubsub_publish_rt_levels.c $<TARGET_OBJECTS:open62541-object> $<TARGET_OBJECTS:open62541-plugins>) |
175 |
+- target_link_libraries(check_pubsub_publish_rt_levels ${LIBS}) |
176 |
+- add_test_valgrind(check_pubsub_publish_rt_levels ${TESTS_BINARY_DIR}/check_pubsub_publish_rt_levels) |
177 |
+- |
178 |
+- add_executable(check_pubsub_multiple_layer pubsub/check_pubsub_multiple_layer.c $<TARGET_OBJECTS:open62541-object> $<TARGET_OBJECTS:open62541-plugins>) |
179 |
+- target_link_libraries(check_pubsub_multiple_layer ${LIBS}) |
180 |
+- add_test_valgrind(pubsub_multiple_layer ${TESTS_BINARY_DIR}/check_pubsub_multiple_layer) |
181 |
+- |
182 |
+- if(UA_ENABLE_PUBSUB_ETH_UADP) |
183 |
+- if(NOT UA_ENABLE_PUBSUB_ETH_UADP_ETF) |
184 |
+- add_executable(check_pubsub_connection_ethernet pubsub/check_pubsub_connection_ethernet.c $<TARGET_OBJECTS:open62541-object> $<TARGET_OBJECTS:open62541-plugins>) |
185 |
+- target_link_libraries(check_pubsub_connection_ethernet ${LIBS}) |
186 |
+- add_test_valgrind(pubsub_connection_ethernet ${TESTS_BINARY_DIR}/check_pubsub_connection_ethernet) |
187 |
+- add_executable(check_pubsub_publish_ethernet pubsub/check_pubsub_publish_ethernet.c $<TARGET_OBJECTS:open62541-object> $<TARGET_OBJECTS:open62541-plugins>) |
188 |
+- target_link_libraries(check_pubsub_publish_ethernet ${LIBS}) |
189 |
+- add_test_valgrind(pubsub_publish_ethernet ${TESTS_BINARY_DIR}/check_pubsub_publish_ethernet) |
190 |
+- endif() |
191 |
+- if(UA_ENABLE_PUBSUB_ETH_UADP_XDP) |
192 |
+- add_executable(check_pubsub_connection_xdp pubsub/check_pubsub_connection_xdp.c $<TARGET_OBJECTS:open62541-object> $<TARGET_OBJECTS:open62541-plugins>) |
193 |
+- target_link_libraries(check_pubsub_connection_xdp ${LIBS}) |
194 |
+- add_test_valgrind(pubsub_connection_xdp ${TESTS_BINARY_DIR}/check_pubsub_connection_xdp) |
195 |
+- endif() |
196 |
+- endif() |
197 |
+- if(UA_ENABLE_PUBSUB_ETH_UADP_ETF) |
198 |
+- add_executable(check_pubsub_connection_ethernet_etf pubsub/check_pubsub_connection_ethernet_etf.c $<TARGET_OBJECTS:open62541-object> $<TARGET_OBJECTS:open62541-plugins>) |
199 |
+- target_link_libraries(check_pubsub_connection_ethernet_etf ${LIBS}) |
200 |
+- add_test_valgrind(pubsub_connection_ethernet_etf ${TESTS_BINARY_DIR}/check_pubsub_connection_ethernet_etf) |
201 |
+- add_executable(check_pubsub_publish_ethernet_etf pubsub/check_pubsub_publish_ethernet_etf.c $<TARGET_OBJECTS:open62541-object> $<TARGET_OBJECTS:open62541-plugins>) |
202 |
+- target_link_libraries(check_pubsub_publish_ethernet_etf ${LIBS}) |
203 |
+- add_test_valgrind(pubsub_publish_ethernet_etf ${TESTS_BINARY_DIR}/check_pubsub_publish_ethernet_etf) |
204 |
+- endif() |
205 |
+- |
206 |
+- if(UA_ENABLE_PUBSUB_INFORMATIONMODEL) |
207 |
+- add_executable(check_pubsub_informationmodel pubsub/check_pubsub_informationmodel.c $<TARGET_OBJECTS:open62541-object> $<TARGET_OBJECTS:open62541-plugins>) |
208 |
+- target_link_libraries(check_pubsub_informationmodel ${LIBS}) |
209 |
+- add_test_valgrind(check_pubsub_informationmodel ${TESTS_BINARY_DIR}/check_pubsub_informationmodel) |
210 |
+- if(UA_ENABLE_PUBSUB_INFORMATIONMODEL_METHODS) |
211 |
+- add_executable(check_pubsub_informationmodel_methods pubsub/check_pubsub_informationmodel_methods.c $<TARGET_OBJECTS:open62541-object> $<TARGET_OBJECTS:open62541-plugins>) |
212 |
+- target_link_libraries(check_pubsub_informationmodel_methods ${LIBS}) |
213 |
+- add_test_valgrind(check_pubsub_informationmodel_methods ${TESTS_BINARY_DIR}/check_pubsub_informationmodel_methods) |
214 |
+- |
215 |
+- endif() |
216 |
+- endif() |
217 |
+- if(UA_ENABLE_PUBSUB_MQTT) |
218 |
+- if(NOT WIN32) |
219 |
+- add_executable(check_pubsub_connection_mqtt pubsub/check_pubsub_connection_mqtt.c $<TARGET_OBJECTS:open62541-object> $<TARGET_OBJECTS:open62541-plugins>) |
220 |
+- target_link_libraries(check_pubsub_connection_mqtt ${LIBS}) |
221 |
+- add_test_valgrind(pubsub_connection_mqtt ${TESTS_BINARY_DIR}/check_pubsub_connection_mqtt) |
222 |
+- endif() |
223 |
+- endif() |
224 |
+-endif() |
225 |
+- |
226 |
+ add_executable(check_server_readspeed server/check_server_readspeed.c $<TARGET_OBJECTS:open62541-object> $<TARGET_OBJECTS:open62541-testplugins>) |
227 |
+ target_link_libraries(check_server_readspeed ${LIBS}) |
228 |
+ add_test_no_valgrind(server_readspeed ${TESTS_BINARY_DIR}/check_server_readspeed) |
229 |
+-- |
230 |
+2.26.2 |
231 |
+ |
232 |
|
233 |
diff --git a/dev-libs/open62541/open62541-1.1.1.ebuild b/dev-libs/open62541/open62541-1.1.1.ebuild |
234 |
new file mode 100644 |
235 |
index 0000000..b6b0d45 |
236 |
--- /dev/null |
237 |
+++ b/dev-libs/open62541/open62541-1.1.1.ebuild |
238 |
@@ -0,0 +1,98 @@ |
239 |
+# Copyright 1999-2020 Gentoo Authors |
240 |
+# Distributed under the terms of the GNU General Public License v2 |
241 |
+ |
242 |
+EAPI=7 |
243 |
+ |
244 |
+PYTHON_COMPAT=( python3_{6..8} ) |
245 |
+ |
246 |
+inherit cmake python-single-r1 |
247 |
+ |
248 |
+DESCRIPTION="Open source C implementation of OPC UA" |
249 |
+HOMEPAGE="https://open62541.org/" |
250 |
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" |
251 |
+ |
252 |
+LICENSE="MPL-2.0" |
253 |
+SLOT="0" |
254 |
+KEYWORDS="~amd64 ~arm64 ~x86" |
255 |
+IUSE="doc encryption examples etf mbedtls pubsub openssl test tools xdp" |
256 |
+RESTRICT="!test? ( test )" |
257 |
+ |
258 |
+REQUIRED_USE=" |
259 |
+ ${PYTHON_REQUIRED_USE} |
260 |
+ encryption? ( || ( mbedtls openssl ) ) |
261 |
+ etf? ( pubsub ) |
262 |
+ xdp? ( pubsub ) |
263 |
+" |
264 |
+ |
265 |
+BDEPEND=" |
266 |
+ ${PYTHON_DEPS} |
267 |
+ virtual/pkgconfig |
268 |
+ doc? ( |
269 |
+ media-gfx/graphviz |
270 |
+ $(python_gen_cond_dep ' |
271 |
+ dev-python/sphinx[${PYTHON_MULTI_USEDEP}] |
272 |
+ dev-python/sphinx_rtd_theme[${PYTHON_MULTI_USEDEP}] |
273 |
+ ') |
274 |
+ ) |
275 |
+ test? ( |
276 |
+ dev-libs/check |
277 |
+ dev-util/valgrind |
278 |
+ $(python_gen_cond_dep ' |
279 |
+ dev-python/subunit[${PYTHON_MULTI_USEDEP}] |
280 |
+ ') |
281 |
+ ) |
282 |
+" |
283 |
+DEPEND=" |
284 |
+ mbedtls? ( net-libs/mbedtls:= ) |
285 |
+ openssl? ( dev-libs/openssl:0= ) |
286 |
+" |
287 |
+RDEPEND=" |
288 |
+ ${PYTHON_DEPS} |
289 |
+ ${DEPEND} |
290 |
+" |
291 |
+ |
292 |
+PATCHES=( |
293 |
+ "${FILESDIR}/${P}-etf.patch" |
294 |
+ "${FILESDIR}/${P}-headers.patch" |
295 |
+ "${FILESDIR}/${P}-tests.patch" |
296 |
+) |
297 |
+ |
298 |
+src_configure() { |
299 |
+ local mycmakeargs=( |
300 |
+ -DBUILD_SHARED_LIBS=ON |
301 |
+ -DOPEN62541_VERSION=v${PV} |
302 |
+ -DUA_BUILD_EXAMPLES=OFF |
303 |
+ -DUA_BUILD_TOOLS=$(usex tools) |
304 |
+ -DUA_BUILD_UNIT_TESTS=$(usex test) |
305 |
+ -DUA_ENABLE_ENCRYPTION=$(usex encryption) |
306 |
+ -DUA_ENABLE_ENCRYPTION_MBEDTLS=$(usex mbedtls) |
307 |
+ -DUA_ENABLE_ENCRYPTION_OPENSSL=$(usex openssl) |
308 |
+ -DUA_ENABLE_PUBSUB=$(usex pubsub) |
309 |
+ -DUA_ENABLE_PUBSUB_ETH_UADP=$(usex pubsub) |
310 |
+ -DUA_ENABLE_PUBSUB_ETH_UADP_ETF=$(usex etf) |
311 |
+ -DUA_ENABLE_PUBSUB_ETH_UADP_XDP=$(usex xdp) |
312 |
+ ) |
313 |
+ |
314 |
+ cmake_src_configure |
315 |
+} |
316 |
+ |
317 |
+src_compile() { |
318 |
+ cmake_src_compile |
319 |
+ use doc && cmake_build doc |
320 |
+} |
321 |
+ |
322 |
+src_install() { |
323 |
+ use doc && local HTML_DOCS=( "${WORKDIR}"/${P}_build/doc/. ) |
324 |
+ cmake_src_install |
325 |
+ |
326 |
+ if use examples; then |
327 |
+ docompress -x /usr/share/doc/${PF}/examples |
328 |
+ dodoc -r examples/ |
329 |
+ fi |
330 |
+ |
331 |
+ python_fix_shebang "${ED}" |
332 |
+} |
333 |
+ |
334 |
+src_test() { |
335 |
+ cmake_src_test -j1 |
336 |
+} |