| Version | EAPI | Keywords | Slot |
|---|---|---|---|
| 1.189.1 | 8 | ~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 | 0 |
# Copyright (c) 2024 The Open-Transactions developers
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
EAPI=8
CMAKE_MAKEFILE_GENERATOR="ninja"
inherit git-r3 cmake
unset PROPERTIES
DESCRIPTION="libopentxs financial cryptography library"
HOMEPAGE="https://github.com/Open-Transactions/opentxs"
EGIT_REPO_URI="https://github.com/Open-Transactions/opentxs"
EGIT_COMMIT="ae61a3c950727414b2d92427e2c772502e1d2c9f"
EGIT_BRANCH="master"
EGIT_MIN_CLONE_TYPE="single+tags"
EGIT_SUBMODULES=( '*' )
LICENSE="MPL-2.0"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="+blockchain chaiscript debug +ed25519 jumbo-build +lmdb lucre +pch-build +pkt +pstl +pstl-needs-tbb qml qt5 qt6 +rpc +rsa +secp256k1 sqlite test tbb +threads valgrind"
REQUIRED_USE="
jumbo-build? ( pch-build )
blockchain? (
lmdb
secp256k1
)
threads? (
^^ ( pstl tbb )
)
pstl? ( threads )
tbb? ( threads )
^^ ( qt5 qt6 )
qml? (
^^ ( qt5 qt6 )
)
"
RESTRICT="!test? ( test )"
DEPEND="
dev-cpp/cs_libguarded
dev-cpp/frozen
dev-cpp/simpleini
dev-libs/boost
dev-libs/libsodium
dev-libs/openssl
dev-libs/protobuf
>=dev-build/cmake-3.26.0
net-libs/zeromq[sodium]
sys-libs/zlib
lmdb? ( dev-db/lmdb )
pstl-needs-tbb? ( dev-cpp/tbb )
qt5? (
dev-qt/qtcore:5
dev-qt/qtgui:5
)
qt6? ( dev-qt/qtbase:6[gui] )
qml? (
|| (
qt5? ( dev-qt/qtdeclarative:5 )
qt6? ( dev-qt/qtdeclarative:6 )
)
)
secp256k1? ( dev-libs/libsecp256k1[ecdh,recovery] )
sqlite? ( dev-db/sqlite )
tbb? ( dev-cpp/tbb )
"
RDEPEND="${DEPEND}"
BDEPEND="
app-alternatives/ninja
dev-libs/protobuf
dev-vcs/git
"
src_unpack() {
git-r3_src_unpack
}
src_prepare() {
cmake_src_prepare
}
src_configure() {
local mycmakeargs=(
"-DBUILD_SHARED_LIBS=ON"
"-DOT_STORAGE_FS=ON"
"-DOT_BOOST_JSON_HEADER_ONLY=OFF"
"-DOT_BOOST_STACKTRACE_ADDR2LINE=OFF"
"-DOT_ENABLE_NONFREE=OFF"
"-DOT_ENABLE_MATTERFI=OFF"
"-DOPENTXS_DEBUG_BUILD=$(usex debug)"
"-DOPENTXS_BUILD_TESTS=$(usex test)"
"-DOPENTXS_PEDANTIC_BUILD=$(usex debug)"
"-DCMAKE_UNITY_BUILD=$(usex jumbo-build)"
"-DOT_PCH=$(usex pch-build)"
"-DOT_VALGRIND=$(usex valgrind)"
"-DOT_STORAGE_SQLITE=$(usex sqlite)"
"-DOT_STORAGE_LMDB=$(usex lmdb)"
"-DOT_CRYPTO_SUPPORTED_KEY_ED25519=$(usex ed25519)"
"-DOT_CRYPTO_SUPPORTED_KEY_RSA=$(usex rsa)"
"-DOT_CRYPTO_SUPPORTED_KEY_SECP256K1=$(usex secp256k1)"
"-DOT_CRYPTO_USING_PACKETCRYPT=$(usex pkt)"
"-DOT_WITH_BLOCKCHAIN=$(usex blockchain)"
"-DOT_CASH_USING_LUCRE=$(usex lucre)"
"-DOT_SCRIPT_USING_CHAI=$(usex chaiscript)"
"-DOT_WITH_QT=$(usex qt5 || usex qt6)"
"-DOT_WITH_QML=$(usex qml)"
"-DOT_USE_PSTL=$(usex pstl)"
"-DOT_PSTL_NEEDS_TBB=$(usex pstl-needs-tbb)"
"-DOT_WITH_TBB=$(usex tbb)"
"-DOT_ENABLE_RPC=$(usex rpc)"
"-DQT_VERSION_MAJOR=$(usex qt6 6 5)"
)
cmake_src_configure
}
src_compile() {
cmake_src_compile
}
src_test() {
cmake_src_test
}
src_install() {
cmake_src_install
}
dev-cpp/cs_libguarded dev-cpp/frozen dev-cpp/simpleini dev-libs/boost dev-libs/libsodium dev-libs/openssl dev-libs/protobuf >=dev-build/cmake-3.26.0 net-libs/zeromq[sodium] sys-libs/zlib lmdb? ( dev-db/lmdb ) pstl-needs-tbb? ( dev-cpp/tbb ) qt5? ( dev-qt/qtcore:5 dev-qt/qtgui:5 ) qt6? ( dev-qt/qtbase:6[gui] ) qml? ( || ( qt5? ( dev-qt/qtdeclarative:5 ) qt6? ( dev-qt/qtdeclarative:6 ) ) ) secp256k1? ( dev-libs/libsecp256k1[ecdh,recovery] ) sqlite? ( dev-db/sqlite ) tbb? ( dev-cpp/tbb )
dev-cpp/cs_libguarded dev-cpp/frozen dev-cpp/simpleini dev-libs/boost dev-libs/libsodium dev-libs/openssl dev-libs/protobuf >=dev-build/cmake-3.26.0 net-libs/zeromq[sodium] sys-libs/zlib lmdb? ( dev-db/lmdb ) pstl-needs-tbb? ( dev-cpp/tbb ) qt5? ( dev-qt/qtcore:5 dev-qt/qtgui:5 ) qt6? ( dev-qt/qtbase:6[gui] ) qml? ( || ( qt5? ( dev-qt/qtdeclarative:5 ) qt6? ( dev-qt/qtdeclarative:6 ) ) ) secp256k1? ( dev-libs/libsecp256k1[ecdh,recovery] ) sqlite? ( dev-db/sqlite ) tbb? ( dev-cpp/tbb )
app-alternatives/ninja dev-libs/protobuf dev-vcs/git