From a9d6e2dddd7b532b75d97a25c9f3804fc64176b7 Mon Sep 17 00:00:00 2001 From: Bertrand Jacquin Date: Tue, 9 Apr 2024 20:41:33 +0100 Subject: net-p2p/monero: add 9999 --- net-p2p/monero/monero-9999.ebuild | 128 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 128 insertions(+) create mode 100644 net-p2p/monero/monero-9999.ebuild (limited to 'net-p2p/monero/monero-9999.ebuild') diff --git a/net-p2p/monero/monero-9999.ebuild b/net-p2p/monero/monero-9999.ebuild new file mode 100644 index 00000000..26f4d500 --- /dev/null +++ b/net-p2p/monero/monero-9999.ebuild @@ -0,0 +1,128 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +PYTHON_COMPAT=( python3_{11..12} ) +CMAKE_MAKEFILE_GENERATOR="emake" +inherit git-r3 cmake flag-o-matic toolchain-funcs python-any-r1 systemd + +DESCRIPTION="Secure, private, untraceable cryptocurrency" +HOMEPAGE="https://getmonero.org" + +EGIT_REPO_URI="https://github.com/monero-project/monero.git" +EGIT_SUBMODULES=( + external/trezor-common + external/supercop +) + +LICENSE="NEWLIB" +SLOT="0/${PV}" +CPU_FLAGS="cpu_flags_arm_aes cpu_flags_x86_aes" +IUSE="doc nls readline ${CPU_FLAGS}" + +RDEPEND="net-dns/unbound:=[threads] + >=dev-libs/randomx-1.1.9:= + net-libs/miniupnpc:= + dev-libs/openssl:0 + >=dev-libs/boost-1.62:=[icu,nls] + >=net-libs/zeromq-4.3:=[sodium] + dev-libs/rapidjson:= + readline? ( sys-libs/readline:= ) + acct-user/monero + acct-group/monero" +DEPEND="${RDEPEND}" +BDEPEND="${PYTHON_DEPS} + doc? ( + media-gfx/graphviz + app-text/doxygen + )" + +PATCHES_MONERO=( + "${FILESDIR}/monero-${PV}-Drop-in-tree-miniupnpc.patch" + "${FILESDIR}/monero-${PV}-Use-gentoo-dev-libs-randomx.patch" + "${FILESDIR}/monero-${PV}-translations-use-host-compiler.patch" + "${FILESDIR}/monero-${PV}-build-remove-mcpu-march-mtune.patch" +) + +CMAKE_BUILD_TYPE=Release + +src_prepare() { + export AR=$(tc-getAR) + export CC=$(tc-getCC) + export CXX=$(tc-getCXX) + tc-export_build_env BUILD_C{C,XX} + + append-cflags -DUSE_EXTRA_EC_CERT + append-cxxflags -DUSE_EXTRA_EC_CERT + + CMAKE_USE_DIR="${WORKDIR}/monero-${PV}" + BUILD_DIR="${WORKDIR}/monero-${PV}_build" + pushd "${CMAKE_USE_DIR}" > /dev/null || die + S="${CMAKE_USE_DIR}" PATCHES="${PATCHES_MONERO[@]}" cmake_src_prepare + popd > /dev/null || die +} + +src_configure() { + local mycmakeargs + local cmakeargs_monero=( + -Wno-dev + -DBUILD_TAG="$(tc-arch)" + -DARCH="native" + -DUSE_CCACHE=OFF + -DPYTHON_EXECUTABLE="${PYTHON}" + -DBUILD_DOCUMENTATION="$(usex doc ON OFF)" + -DBUILD_TESTS=OFF + -DUSE_READLINE="$(usex readline ON OFF)" + -DUSE_DEVICE_TREZOR=OFF + -DBUILD_GUI_DEPS=OFF + -DSTACK_TRACE=OFF + -DBUILD_SHARED_LIBS=OFF + -DMANUAL_SUBMODULES=ON + ) + + if use cpu_flags_arm_aes || use cpu_flags_x86_aes ; then + cmakeargs_monero+=( -DNO_AES=OFF ) + else + cmakeargs_monero+=( -DNO_AES=ON ) + fi + + export DATABASE="lmdb" + export DEVELOPER_LOCAL_TOOLS=0 + export DEVELOPER_LIBUNBOUND_OLD=0 + + cat > "${WORKDIR}/monero-${PV}_build/translations.cmake" <<- _EOF_ || die + SET (CMAKE_C_COMPILER "${BUILD_CC}") + SET (CMAKE_C_FLAGS "${BUILD_CFLAGS}") + SET (CMAKE_CXX_COMPILER "${BUILD_CXX}") + SET (CMAKE_CXX_FLAGS "${BUILD_CXXFLAGS}") + SET (CMAKE_EXE_LINKER_FLAGS "${BUILD_LDFLAGS}") + SET (CMAKE_MODULE_LINKER_FLAGS "${BUILD_LDFLAGS}") + SET (CMAKE_SHARED_LINKER_FLAGS "${BUILD_LDFLAGS}") +_EOF_ + + CMAKE_USE_DIR="${WORKDIR}/monero-${PV}" + BUILD_DIR="${WORKDIR}/monero-${PV}_build" + mycmakeargs=( ${cmakeargs_monero[@]} ) + cmake_src_configure +} + +src_compile() { + CMAKE_USE_DIR="${WORKDIR}/monero-${PV}" + BUILD_DIR="${WORKDIR}/monero-${PV}_build" + cmake_src_compile +} + +src_install() { + CMAKE_USE_DIR="${WORKDIR}/monero-${PV}" + BUILD_DIR="${WORKDIR}/monero-${PV}_build" + cmake_src_install + + rm -rf "${ED}/usr/include" || die + rm -rf "${ED}/usr/lib" || die + + insinto /etc + doins utils/conf/monerod.conf + + newinitd "${FILESDIR}/monerod.initd" monerod + systemd_dounit utils/systemd/monerod.service +} -- cgit v1.2.3