diff mbox series

[meta-networking] opcua: Add new recipe

Message ID 20221004052707.1499760-1-uvv.mail@gmail.com
State Under Review
Headers show
Series [meta-networking] opcua: Add new recipe | expand

Commit Message

Vyacheslav Yurkov Oct. 4, 2022, 5:27 a.m. UTC
From: Vyacheslav Yurkov <v.yurkov@precitec.de>

open62541 (http://open62541.org) is an open source and free implementation
of OPC Unified Architecture according to IEC62541 standard

The patch exclude git-related files from installation directory
Upstream-Status: Accepted
https://github.com/open62541/open62541/commit/a0328d4cb527f9778a262fc4a6b42bfbdffc38e9

Signed-off-by: Vyacheslav Yurkov <v.yurkov@precitec.de>
---
 ...1-fix-build-do-not-install-git-files.patch | 22 +++++++++++
 .../opcua/open62541_1.3.3.bb                  | 38 +++++++++++++++++++
 2 files changed, 60 insertions(+)
 create mode 100644 meta-networking/recipes-protocols/opcua/open62541/0001-fix-build-do-not-install-git-files.patch
 create mode 100644 meta-networking/recipes-protocols/opcua/open62541_1.3.3.bb
diff mbox series

Patch

diff --git a/meta-networking/recipes-protocols/opcua/open62541/0001-fix-build-do-not-install-git-files.patch b/meta-networking/recipes-protocols/opcua/open62541/0001-fix-build-do-not-install-git-files.patch
new file mode 100644
index 000000000..44ee7b92c
--- /dev/null
+++ b/meta-networking/recipes-protocols/opcua/open62541/0001-fix-build-do-not-install-git-files.patch
@@ -0,0 +1,22 @@ 
+From a490e82dca5a669b0af27a13d74759d8f77e2333 Mon Sep 17 00:00:00 2001
+From: Vyacheslav Yurkov <v.yurkov@precitec.de>
+Date: Mon, 3 Oct 2022 18:25:15 +0200
+Subject: [PATCH] fix(build): do not install git files
+
+Signed-off-by: Vyacheslav Yurkov <v.yurkov@precitec.de>
+---
+ CMakeLists.txt | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 1934374e..bc5c8bad 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1703,6 +1703,7 @@ install(DIRECTORY ${UA_install_tools_dirs}
+     FILES_MATCHING
+     PATTERN "*"
+     PATTERN "*.pyc" EXCLUDE
++    PATTERN ".git*" EXCLUDE
+     )
+ 
+ install(FILES ${UA_install_tools_files} DESTINATION ${open62541_install_tools_dir})
diff --git a/meta-networking/recipes-protocols/opcua/open62541_1.3.3.bb b/meta-networking/recipes-protocols/opcua/open62541_1.3.3.bb
new file mode 100644
index 000000000..317697262
--- /dev/null
+++ b/meta-networking/recipes-protocols/opcua/open62541_1.3.3.bb
@@ -0,0 +1,38 @@ 
+DESCRIPTION = "open62541 is an implementation of OPC UA (OPC Unified Architecture)"
+HOMEPAGE = "https://github.com/open62541/open62541.git"
+LICENSE = "MPL-2.0 & BSD-3-Clause & MIT"
+LIC_FILES_CHKSUM = "\
+    file://LICENSE;md5=815ca599c9df247a0c7f619bab123dad \
+    file://deps/mdnsd/LICENSE;md5=3bb4047dc4095cd7336de3e2a9be94f0 \
+    file://deps/mqtt-c/LICENSE;md5=9226377baf0b79174c89a1ab55592456 \
+"
+
+SRCREV_FORMAT = "opcua_mdnsd_ua-nodeset_mqtt-c"
+SRCREV_opcua = "ff73268829359639531ff02905c889f73a77b408"
+SRCREV_mdnsd = "3151afe5899dba5125dffa9f4cf3ae1fe2edc0f0"
+SRCREV_ua-nodeset = "f71b3f411d5cb16097c3ae0c744f67ad45535ffb"
+SRCREV_mqtt-c = "f69ce1e7fd54f3b1834c9c9137ce0ec5d703cb4d"
+
+SRC_URI = " \
+    git://github.com/open62541/open62541.git;name=opcua;branch=1.3;protocol=https \
+    git://github.com/Pro/mdnsd.git;name=mdnsd;protocol=https;branch=master;destsuffix=git/deps/mdnsd \
+    git://github.com/OPCFoundation/UA-Nodeset;name=ua-nodeset;protocol=https;branch=v1.04;destsuffix=git/deps/ua-nodeset \
+    git://github.com/LiamBindle/MQTT-C.git;name=mqtt-c;protocol=https;branch=master;destsuffix=git/deps/mqtt-c \
+    file://0001-fix-build-do-not-install-git-files.patch \
+"
+
+S = "${WORKDIR}/git"
+
+inherit cmake python3native
+
+EXTRA_OECMAKE += "\
+    -DBUILD_SHARED_LIBS=ON \
+    -DUA_NAMESPACE_ZERO=FULL \
+    -DUA_LOGLEVEL=600 \
+"
+
+PACKAGECONFIG ?= "encryption pubsub pubsub-eth"
+PACKAGECONFIG[amalgamation] = "-DUA_ENABLE_AMALGAMATION=ON, -DUA_ENABLE_AMALGAMATION=OFF"
+PACKAGECONFIG[encryption] = "-DUA_ENABLE_ENCRYPTION=ON, -DUA_ENABLE_ENCRYPTION=OFF, mbedtls"
+PACKAGECONFIG[pubsub] = "-DUA_ENABLE_PUBSUB=ON, -DUA_ENABLE_PUBSUB=OFF"
+PACKAGECONFIG[pubsub-eth] = "-DUA_ENABLE_PUBSUB_ETH_UADP=ON, -DUA_ENABLE_PUBSUB_ETH_UADP=OFF"