blob: edad098b5f308b61114d1a0cbbcf10e31baceae2 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
|
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python{3_7,3_8,3_9} )
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:=
virtual/libudev:=
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"
)
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)"
-DUSE_CCACHE=OFF
-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
-DBUILD_SHARED_LIBS=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
}
|