diff --git a/dev-libs/open62541/Manifest b/dev-libs/open62541/Manifest index 2ddc80c6c4..f62cdd2712 100644 --- a/dev-libs/open62541/Manifest +++ b/dev-libs/open62541/Manifest @@ -1 +1,2 @@ DIST open62541-1.4.2.tar.gz 4197777 BLAKE2B 3b92e20b51acdff130c12cfb19d97d63f8313a3a23eef6c812bd4090aa2c89e92f8a5c6894c34b2725d25d3efcdaebb10d15caead49be4b8b9c74da1bb29f24b SHA512 145e152e4aab28e7100b518b991b47312c55cca9ece7fc9716ca09296e10d209223ee8d6da9e82543e00d536c19fbe071fcb0a43bcd5e59a0f86e798ee397596 +DIST open62541-1.4.3.tar.gz 4198524 BLAKE2B 8dbafa568381a93e2c6e5c95a51a193b63330cb980f4ea7026fb19d5c1d8519fcc345789520dbb68757a3fd9b41b19027bca4148ccc4d321f44a355365ae7ff6 SHA512 53388315eb78ad74b947f36ab92de0431c936d7a42883331e1145b5636cfcc82c45a060001296e9b45373b5755e870d3919a85f598dc441dc89bbf3da5e3f734 diff --git a/dev-libs/open62541/open62541-1.4.3.ebuild b/dev-libs/open62541/open62541-1.4.3.ebuild new file mode 100644 index 0000000000..a4226411bf --- /dev/null +++ b/dev-libs/open62541/open62541-1.4.3.ebuild @@ -0,0 +1,82 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) + +inherit cmake python-single-r1 + +DESCRIPTION="Open source C implementation of OPC UA" +HOMEPAGE="https://www.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 +}