From d03031187478aa4cd0265e7f6d42612f57fdcf21 Mon Sep 17 00:00:00 2001 From: Bertrand Jacquin Date: Wed, 15 Feb 2023 23:11:55 +0000 Subject: net-p2p/p2pool: Decentralized pool for Monero mining --- net-p2p/p2pool/files/3.0-build-disable-strip.patch | 22 +++++++++ .../p2pool/files/3.0-build-randomx-static.patch | 13 +++++ net-p2p/p2pool/files/p2pool@.service | 17 +++++++ net-p2p/p2pool/metadata.xml | 11 +++++ net-p2p/p2pool/p2pool-3.0.ebuild | 55 ++++++++++++++++++++++ 5 files changed, 118 insertions(+) create mode 100644 net-p2p/p2pool/files/3.0-build-disable-strip.patch create mode 100644 net-p2p/p2pool/files/3.0-build-randomx-static.patch create mode 100644 net-p2p/p2pool/files/p2pool@.service create mode 100644 net-p2p/p2pool/metadata.xml create mode 100644 net-p2p/p2pool/p2pool-3.0.ebuild (limited to 'net-p2p/p2pool') diff --git a/net-p2p/p2pool/files/3.0-build-disable-strip.patch b/net-p2p/p2pool/files/3.0-build-disable-strip.patch new file mode 100644 index 00000000..b4c968a6 --- /dev/null +++ b/net-p2p/p2pool/files/3.0-build-disable-strip.patch @@ -0,0 +1,22 @@ +From 8ec60266561939958bda2d848e480d120edabd9e Mon Sep 17 00:00:00 2001 +From: Bertrand Jacquin +Date: Thu, 16 Feb 2023 01:20:01 +0000 +Subject: [PATCH] build: disable strip + +--- + cmake/flags.cmake | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/cmake/flags.cmake b/cmake/flags.cmake +index 832697b97c6d..83a914636b81 100644 +--- a/cmake/flags.cmake ++++ b/cmake/flags.cmake +@@ -8,7 +8,7 @@ set(CMAKE_C_STANDARD_REQUIRED ON) + if (CMAKE_CXX_COMPILER_ID MATCHES GNU) + set(GENERAL_FLAGS "-pthread") + set(WARNING_FLAGS "-Wall -Wextra -Wcast-align -Wcast-qual -Wlogical-op -Wstrict-overflow=2 -Wundef -Wformat=2 -Wpointer-arith -Werror") +- set(OPTIMIZATION_FLAGS "-Ofast -s -flto -fuse-linker-plugin") ++ set(OPTIMIZATION_FLAGS "-Ofast -flto -fuse-linker-plugin") + + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${GENERAL_FLAGS} ${WARNING_FLAGS} ${OPTIMIZATION_FLAGS}") + set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} ${GENERAL_FLAGS} ${WARNING_FLAGS} ${OPTIMIZATION_FLAGS}") diff --git a/net-p2p/p2pool/files/3.0-build-randomx-static.patch b/net-p2p/p2pool/files/3.0-build-randomx-static.patch new file mode 100644 index 00000000..0ad08058 --- /dev/null +++ b/net-p2p/p2pool/files/3.0-build-randomx-static.patch @@ -0,0 +1,13 @@ +diff --git a/./external/src/RandomX/CMakeLists.txt.ori b/./external/src/RandomX/CMakeLists.txt +index afaf0ee8d410..17f4dc2b57cd 100644 +--- a/./external/src/RandomX/CMakeLists.txt.ori ++++ b/./external/src/RandomX/CMakeLists.txt +@@ -232,7 +232,7 @@ endif() + + set(RANDOMX_INCLUDE "${CMAKE_CURRENT_SOURCE_DIR}/src" CACHE STRING "RandomX Include path") + +-add_library(randomx ${randomx_sources}) ++add_library(randomx STATIC ${randomx_sources}) + + set_property(TARGET randomx PROPERTY POSITION_INDEPENDENT_CODE ON) + set_property(TARGET randomx PROPERTY CXX_STANDARD 14) diff --git a/net-p2p/p2pool/files/p2pool@.service b/net-p2p/p2pool/files/p2pool@.service new file mode 100644 index 00000000..02beef77 --- /dev/null +++ b/net-p2p/p2pool/files/p2pool@.service @@ -0,0 +1,17 @@ +[Unit] +Description=Monero P2Pool +After=network.target + +[Service] +User=%p +Group=%p +WorkingDirectory=~ +RuntimeDirectory=%p/%i + +Type=exec +ExecStart=/usr/bin/p2pool --wallet %i --data-api %t/%p/%i --local-api + +Restart=always + +[Install] +WantedBy=multi-user.target diff --git a/net-p2p/p2pool/metadata.xml b/net-p2p/p2pool/metadata.xml new file mode 100644 index 00000000..c35c3a50 --- /dev/null +++ b/net-p2p/p2pool/metadata.xml @@ -0,0 +1,11 @@ + + + + + bertrand@jacquin.bzh + Bertrand Jacquin + + + SChernykh/p2pool + + diff --git a/net-p2p/p2pool/p2pool-3.0.ebuild b/net-p2p/p2pool/p2pool-3.0.ebuild new file mode 100644 index 00000000..41bf909b --- /dev/null +++ b/net-p2p/p2pool/p2pool-3.0.ebuild @@ -0,0 +1,55 @@ +# Copyright 2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +CMAKE_MAKEFILE_GENERATOR="emake" +inherit git-r3 cmake systemd + +DESCRIPTION="Decentralized pool for Monero mining" +HOMEPAGE="https://github.com/SChernykh/p2pool" +EGIT_REPO_URI="https://github.com/SChernykh/${PN}" +EGIT_COMMIT="v${PV}" + +EGIT_SUBMODULES=( + external/src/RandomX + external/src/robin-hood-hashing +) +EGIT_OVERRIDE_BRANCH_CHERNYKH_RANDOMX="${PN}" +EGIT_OVERRIDE_COMMIT_SCHERNYKH_RANDOMX="1009a63ddf34beb359182aa296437ff4ead3b27d" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64" +IUSE="" + +DEPEND="net-libs/zeromq:=[sodium,pgm] + net-libs/cppzmq:= + dev-libs/libuv:= + net-misc/curl:=" +RDEPEND="${DEPEND} + acct-user/p2pool + acct-group/p2pool" + +PATCHES=( + "${FILESDIR}/${PV}-build-disable-strip.patch" + "${FILESDIR}/${PV}-build-randomx-static.patch" +) + +src_configure () { + local mycmakeargs=( + -DSTATIC_BINARY=OFF + -DSTATIC_LIBS=OFF + -DWITH_RANDOMX=ON + -DDEV_TEST_SYNC=OFF + ) + cmake_src_configure +} + +src_install () { + dobin "${BUILD_DIR}/p2pool" + + insinto "/usr/share/${PN}" + doins -r "${S}/docs/html" + + systemd_dounit "${FILESDIR}/${PN}@.service" +} -- cgit v1.2.3