commit:     9d525905e50dc0b4902b9811db594af913e5d60d
Author:     Alexey Korepanov <kaikaikai <AT> yandex <DOT> ru>
AuthorDate: Fri Jan  8 16:13:25 2021 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Jan  9 12:45:12 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9d525905

net-vpn/i2pd: version bump to 2.35.0

Signed-off-by: Alexey Korepanov <kaikaikai <AT> yandex.ru>
Closes: https://bugs.gentoo.org/763033
Signed-off-by: Sam James <sam <AT> gentoo.org>

 net-vpn/i2pd/Manifest                              |  1 +
 net-vpn/i2pd/files/i2pd-2.35.0-avx-detection.patch | 32 ++++++++
 net-vpn/i2pd/i2pd-2.35.0.ebuild                    | 95 ++++++++++++++++++++++
 3 files changed, 128 insertions(+)

diff --git a/net-vpn/i2pd/Manifest b/net-vpn/i2pd/Manifest
index db90e6f4267..e95441059af 100644
--- a/net-vpn/i2pd/Manifest
+++ b/net-vpn/i2pd/Manifest
@@ -2,3 +2,4 @@ DIST i2pd-2.32.0.tar.gz 1098880 BLAKE2B 
0b5db302cac78c6993fd7c25362bad512c059722
 DIST i2pd-2.32.1.tar.gz 1099034 BLAKE2B 
be32443d2d686247459e74396202ff5fc595be27b7a4e207aa756f35c6b65fe05b006491bb9b8a564bc2b3c1144dae1dcba8dcfdff95cedfb032ca137f30d617
 SHA512 
2c492942526b5d6dd787baaf6ad31b036c593d633a36ba951c02d3289607be5e43562057622deee51db724854eef6f4bd67eaec62699b07aad47ee49fd291783
 DIST i2pd-2.33.0.tar.gz 1101578 BLAKE2B 
d569a7900bda1fecc19f6ec966cd004d04599993193de9bcda89620dff9909889c14165aca457e6a5fa0539614304af11be573329b9a54596684d3232ee28833
 SHA512 
7a3e7a8a908be8a12b675fda4ce923cb2b0eaf3e9b12a513b9ae7b56e9ecb593eef0ea278debb4027406d50ee9a46599a6792a54ce2e2f4e2c44c1fc82479910
 DIST i2pd-2.34.0.tar.gz 1103199 BLAKE2B 
16e16a0e396b22f5de797455a97322e51bc2289e770617106d4daa9a7cd6d1d94d4d84955e182493f3c11dbacd527fbb3f127bd4e2e555a7b04f7eb697213dcb
 SHA512 
74c8234b850159c6e680fa61b20e2c22a0f04ca8397b4aa68f92fa20520fb74a63e442ac75c2fbb17dc1e5a193011b9b38085cee08746de4496620778aa7f027
+DIST i2pd-2.35.0.tar.gz 1105837 BLAKE2B 
4480b3b4922d2a51d158366674ad7880b7710d3c2bc45d3e403330d3a8ea04a7803a1a7826b0d60c4f9837e84c2900b9635024846d0fce7d585e30ad658fbd27
 SHA512 
cffc41484a63eba7c7091957cd4d8b8584bb02580d70c69132f1447018be5b3cde7893ae4a0bcb914d53e95c089d4253ece6e20442c9da7810e7800a2b99b117

diff --git a/net-vpn/i2pd/files/i2pd-2.35.0-avx-detection.patch 
b/net-vpn/i2pd/files/i2pd-2.35.0-avx-detection.patch
new file mode 100644
index 00000000000..6e407f1978c
--- /dev/null
+++ b/net-vpn/i2pd/files/i2pd-2.35.0-avx-detection.patch
@@ -0,0 +1,32 @@
+From ca3b8191510c1006d031d02c50edcf6b4f6a6e8f Mon Sep 17 00:00:00 2001
+From: R4SAS <[email protected]>
+Date: Thu, 10 Dec 2020 18:32:41 +0300
+Subject: [PATCH] [avx] check ig c++ target supports AVX
+
+Signed-off-by: R4SAS <[email protected]>
+---
+ libi2pd/Crypto.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/libi2pd/Crypto.cpp
++++ b/libi2pd/Crypto.cpp
+@@ -638,7 +638,7 @@ namespace crypto
+       {
+               uint64_t buf[256];
+               uint64_t hash[12]; // 96 bytes
+-#if defined(__x86_64__) || defined(__i386__)
++#if (defined(__x86_64__) || defined(__i386__)) && defined(__AVX__) // not all 
X86 targets supports AVX (like old Pentium, see #1600)
+               if(i2p::cpu::avx)
+               {
+                       __asm__
+--- a/libi2pd/Identity.cpp
++++ b/libi2pd/Identity.cpp
+@@ -828,7 +828,7 @@ namespace data
+       XORMetric operator^(const IdentHash& key1, const IdentHash& key2)
+       {
+               XORMetric m;
+-#if defined(__x86_64__) || defined(__i386__)
++#if (defined(__x86_64__) || defined(__i386__)) && defined(__AVX__) // not all 
X86 targets supports AVX (like old Pentium, see #1600)
+               if(i2p::cpu::avx)
+               {
+                       __asm__

diff --git a/net-vpn/i2pd/i2pd-2.35.0.ebuild b/net-vpn/i2pd/i2pd-2.35.0.ebuild
new file mode 100644
index 00000000000..b33e89eb849
--- /dev/null
+++ b/net-vpn/i2pd/i2pd-2.35.0.ebuild
@@ -0,0 +1,95 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake toolchain-funcs systemd
+
+DESCRIPTION="A C++ daemon for accessing the I2P anonymous network"
+HOMEPAGE="https://github.com/PurpleI2P/i2pd";
+SRC_URI="https://github.com/PurpleI2P/${PN}/archive/${PV}.tar.gz -> 
${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="cpu_flags_x86_aes cpu_flags_x86_avx i2p-hardening libressl static +upnp"
+
+RDEPEND="
+       acct-user/i2pd
+       acct-group/i2pd
+       !static? (
+               dev-libs/boost:=[threads]
+               !libressl? ( dev-libs/openssl:0=[-bindist] )
+               libressl? ( dev-libs/libressl:0= )
+               upnp? ( net-libs/miniupnpc:= )
+       )"
+DEPEND="${RDEPEND}
+       static? (
+               dev-libs/boost:=[static-libs,threads]
+               sys-libs/zlib[static-libs]
+               !libressl? ( dev-libs/openssl:0=[static-libs] )
+               libressl? ( dev-libs/libressl:0=[static-libs] )
+               upnp? ( net-libs/miniupnpc:=[static-libs] )
+       )"
+
+CMAKE_USE_DIR="${S}/build"
+
+DOCS=( README.md contrib/i2pd.conf contrib/tunnels.conf )
+
+PATCHES=(
+       "${FILESDIR}/i2pd-2.25.0-lib-path.patch"
+       "${FILESDIR}/i2pd-2.35.0-avx-detection.patch"
+)
+
+pkg_pretend() {
+       if use i2p-hardening && ! tc-is-gcc; then
+               die "i2p-hardening requires gcc"
+       fi
+}
+
+src_configure() {
+       mycmakeargs=(
+               -DWITH_AESNI=$(usex cpu_flags_x86_aes ON OFF)
+               -DWITH_HARDENING=$(usex i2p-hardening ON OFF)
+               -DWITH_PCH=OFF
+               -DWITH_STATIC=$(usex static ON OFF)
+               -DWITH_UPNP=$(usex upnp ON OFF)
+               -DWITH_LIBRARY=ON
+               -DWITH_BINARY=ON
+       )
+       cmake_src_configure
+}
+
+src_install() {
+       cmake_src_install
+
+       # config
+       insinto /etc/i2pd
+       doins contrib/i2pd.conf
+       doins contrib/tunnels.conf
+
+       # working directory
+       insinto /var/lib/i2pd
+       doins -r contrib/certificates
+
+       # add /var/lib/i2pd/certificates to CONFIG_PROTECT
+       doenvd "${FILESDIR}/99i2pd"
+
+       # openrc and systemd daemon routines
+       newconfd "${FILESDIR}/i2pd-2.6.0-r3.confd" i2pd
+       newinitd "${FILESDIR}/i2pd-2.6.0-r3.initd" i2pd
+       systemd_newunit "${FILESDIR}/i2pd-2.6.0-r3.service" i2pd.service
+
+       # logrotate
+       insinto /etc/logrotate.d
+       newins "${FILESDIR}/i2pd-2.6.0-r3.logrotate" i2pd
+}
+
+pkg_postinst() {
+       if [[ -f ${EROOT}/etc/i2pd/subscriptions.txt ]]; then
+               ewarn
+               ewarn "Configuration of the subscriptions has been moved from"
+               ewarn "subscriptions.txt to i2pd.conf. We recommend updating"
+               ewarn "i2pd.conf accordingly and deleting subscriptions.txt."
+       fi
+}

Reply via email to