summaryrefslogtreecommitdiff
path: root/net-p2p/monero/monero-0.16.0.1.ebuild
diff options
context:
space:
mode:
Diffstat (limited to 'net-p2p/monero/monero-0.16.0.1.ebuild')
-rw-r--r--net-p2p/monero/monero-0.16.0.1.ebuild118
1 files changed, 118 insertions, 0 deletions
diff --git a/net-p2p/monero/monero-0.16.0.1.ebuild b/net-p2p/monero/monero-0.16.0.1.ebuild
new file mode 100644
index 00000000..29b55430
--- /dev/null
+++ b/net-p2p/monero/monero-0.16.0.1.ebuild
@@ -0,0 +1,118 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python{3_6,3_7,3_8} )
+CMAKE_MAKEFILE_GENERATOR="emake"
+inherit cmake flag-o-matic toolchain-funcs python-single-r1 systemd
+
+DESCRIPTION="Secure, private, untraceable cryptocurrency"
+HOMEPAGE="https://getmonero.org"
+
+TREZOR_COMMON_COMMIT="cb901ba43c753d070f0310d858765c9f21cd7d8b"
+
+SRC_URI="https://github.com/monero-project/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ smartcard? ( https://github.com/trezor/trezor-common/archive/${TREZOR_COMMON_COMMIT}.tar.gz -> trezor-common-${TREZOR_COMMON_COMMIT}.tar.gz )"
+
+LICENSE="NEWLIB"
+SLOT="0/${PV}"
+KEYWORDS="~amd64"
+CPU_FLAGS="cpu_flags_arm_aes cpu_flags_x86_aes"
+IUSE="doc qt5 nls readline smartcard unwind ${CPU_FLAGS}"
+
+RDEPEND="net-dns/unbound:=[threads]
+ >=dev-libs/randomx-1.1.6:=
+ net-libs/miniupnpc:=
+ dev-libs/openssl:0
+ >=dev-libs/boost-1.62:=[icu,threads,nls]
+ net-libs/zeromq:=[sodium]
+ dev-libs/rapidjson:=
+ readline? ( sys-libs/readline:= )
+ unwind? ( sys-libs/libunwind[lzma] )
+ smartcard? (
+ dev-libs/hidapi:=
+ virtual/libusb:=
+ dev-libs/protobuf:=
+ $(python_gen_cond_dep 'dev-python/protobuf-python:=[${PYTHON_MULTI_USEDEP}]')
+ )
+ acct-user/monero
+ acct-group/monero"
+DEPEND="${PYTHON_DEPS}
+ doc? (
+ media-gfx/graphviz
+ app-doc/doxygen:0
+ )
+ nls? ( dev-qt/qtchooser )
+ ${RDEPEND}"
+PDEPEND="qt5? ( net-p2p/monero-gui )"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+PATCHES=(
+ "${FILESDIR}/${PV}-Drop-in-tree-miniupnpc.patch"
+ "${FILESDIR}/${PV}-Use-gentoo-versioning.patch"
+ "${FILESDIR}/${PV}-Do-not-install-trezor-dep-libs.patch"
+ "${FILESDIR}/${PV}-Use-gentoo-dev-libs-randomx.patch"
+ "${FILESDIR}/${PV}-translations-use-host-compiler.patch"
+ "${FILESDIR}/${PV}-https-sourceware.org-bugzilla-show_bug.cgi-id-25210.patch"
+)
+
+QA_MULTILIB_PATHS="usr/lib/.*"
+
+CMAKE_BUILD_TYPE=Release
+
+src_unpack() {
+ default
+
+ if use smartcard ; then
+ unpack "trezor-common-${TREZOR_COMMON_COMMIT}.tar.gz"
+
+ rm -r "${S}/external/trezor-common" || die
+ mv "trezor-common-${TREZOR_COMMON_COMMIT}" "${S}/external/trezor-common" || die
+ fi
+}
+
+src_prepare() {
+ cmake_src_prepare
+
+ append-cflags -DUSE_EXTRA_EC_CERT
+ append-cxxflags -DUSE_EXTRA_EC_CERT
+ tc-export_build_env BUILD_C{C,XX}
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DBUILD_TAG="$(tc-arch)"
+ -DPYTHON_EXECUTABLE="${PYTHON}"
+ -DBUILD_DOCUMENTATION="$(usex doc ON OFF)"
+ -DBUILD_TESTS=OFF
+ -DCOVERAGE=OFF
+ -DUSE_READLINE="$(usex readline ON OFF)"
+ -DBUILD_GUI_DEPS="$(usex qt5 ON OFF)"
+ -DINSTALL_VENDORED_LIBUNBOUND=OFF
+ -DMANUAL_SUBMODULES=ON
+ )
+
+ if use cpu_flags_arm_aes || use cpu_flags_x86_aes ; then
+ mycmakeargs+=( -DNO_AES=OFF )
+ else
+ mycmakeargs+=( -DNO_AES=ON )
+ fi
+
+ export DATABASE="lmdb"
+ export DEVELOPER_LOCAL_TOOLS=0
+ export DEVELOPER_LIBUNBOUND_OLD=0
+
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+
+ insinto /etc
+ doins utils/conf/monerod.conf
+
+ newinitd "${FILESDIR}/monerod.initd" monerod
+ systemd_dounit utils/systemd/monerod.service
+}