diff --git a/dev-libs/open62541/Manifest b/dev-libs/open62541/Manifest index 0b461c7c17..7bb409280f 100644 --- a/dev-libs/open62541/Manifest +++ b/dev-libs/open62541/Manifest @@ -1 +1,2 @@ DIST open62541-1.5.3.tar.gz 6702218 BLAKE2B dc8012fbf2fcdbc04a63a36379c05aeb48959a27a24a4f5293b8b4f8b20826e4269c535e50560a941e0c439ac26f8ea4efdbf693a43c50d3acf66c66a237d359 SHA512 a358b6468879d9eec63018b91a000ba5cfe372fec26b5150aca1b427b73f5c17ad33106875d611a209eb3484bb7ac8cadd7e45181ae5fdbad6cf6f344ca1d0f4 +DIST open62541-1.5.4.tar.gz 6798907 BLAKE2B f99e0567a8cbd613fb865b55839fcfa51f0c6f15363c48afe870c05167c2659843dd715d31e9e6c19427d52fbc24011b16ae736c756fa57b3ef86e69c23c11d4 SHA512 608af2b3c45047c0ac603a2bb0728539161a435669d3f96358fa4cd831eee235f08778864af3ab73e66941ce52d8056c7135366eb57498fd833960c094f73789 diff --git a/dev-libs/open62541/open62541-1.5.4.ebuild b/dev-libs/open62541/open62541-1.5.4.ebuild new file mode 100644 index 0000000000..e59003591d --- /dev/null +++ b/dev-libs/open62541/open62541-1.5.4.ebuild @@ -0,0 +1,82 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{12..14} ) + +inherit cmake python-single-r1 + +DESCRIPTION="Open source C implementation of OPC UA" +HOMEPAGE="https://open62541.org/" +SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="MPL-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" +IUSE="doc examples mbedtls pubsub openssl tools" +# Requires network access +RESTRICT="test" + +REQUIRED_USE=" + ${PYTHON_REQUIRED_USE} + ?? ( mbedtls openssl ) +" + +BDEPEND=" + ${PYTHON_DEPS} + virtual/pkgconfig + doc? ( + media-gfx/graphviz + $(python_gen_cond_dep ' + dev-python/sphinx[${PYTHON_USEDEP}] + dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}] + ') + ) +" +DEPEND=" + mbedtls? ( net-libs/mbedtls:= ) + openssl? ( dev-libs/openssl:0= ) +" +RDEPEND=" + ${PYTHON_DEPS} + ${DEPEND} +" + +src_configure() { + local mycmakeargs=( + -DBUILD_SHARED_LIBS=ON + -DOPEN62541_VERSION=v${PV} + -DUA_BUILD_EXAMPLES=OFF + -DUA_BUILD_TOOLS=$(usex tools) + -DUA_BUILD_UNIT_TESTS=OFF + -DUA_ENABLE_HARDENING=OFF + -DUA_ENABLE_PUBSUB=$(usex pubsub) + -DUA_ENABLE_PUBSUB_INFORMATIONMODEL=$(usex pubsub) + -DUA_FORCE_WERROR=OFF + ) + + use mbedtls && mycmakeargs+=(-DUA_ENABLE_ENCRYPTION=MBEDTLS) + use openssl && mycmakeargs+=(-DUA_ENABLE_ENCRYPTION=OPENSSL) + + cmake_src_configure +} + +src_compile() { + cmake_src_compile + use doc && cmake_build doc +} + +src_install() { + use doc && local HTML_DOCS=( "${WORKDIR}"/${P}_build/doc/. ) + cmake_src_install + + if use examples; then + docompress -x /usr/share/doc/${PF}/examples + dodoc -r examples/ + fi +} + +src_test() { + cmake_src_test -j1 +}