Gentoo Archives: gentoo-commits

From: Joonas Niilola <juippis@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-libs/libsecp256k1/
Date: Sun, 07 Feb 2021 09:03:46
Message-Id: 1612688614.1e27ef699be069fe56b3d2f674d78f17a5fe9688.juippis@gentoo
1 commit: 1e27ef699be069fe56b3d2f674d78f17a5fe9688
2 Author: Luke Dashjr <luke-jr+git <AT> utopios <DOT> org>
3 AuthorDate: Mon Feb 1 01:48:21 2021 +0000
4 Commit: Joonas Niilola <juippis <AT> gentoo <DOT> org>
5 CommitDate: Sun Feb 7 09:03:34 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1e27ef69
7
8 dev-libs/libsecp256k1: Bump to 0.1_pre20201028
9
10 Signed-off-by: Luke Dashjr <luke-jr+git <AT> utopios.org>
11 Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>
12
13 dev-libs/libsecp256k1/Manifest | 1 +
14 .../libsecp256k1-0.1_pre20201028.ebuild | 75 ++++++++++++++++++++++
15 dev-libs/libsecp256k1/metadata.xml | 5 ++
16 3 files changed, 81 insertions(+)
17
18 diff --git a/dev-libs/libsecp256k1/Manifest b/dev-libs/libsecp256k1/Manifest
19 index a782dfc4d6f..5d4a61eeda9 100644
20 --- a/dev-libs/libsecp256k1/Manifest
21 +++ b/dev-libs/libsecp256k1/Manifest
22 @@ -1 +1,2 @@
23 DIST libsecp256k1-v0.1_pre20190401.tgz 166663 BLAKE2B 68c9fc3fda6af56452f32edeae5dcb5a92f68bc3fb39a397c532951c6392347df14ea0347bbe05cab43158512e0d9f5ea87bd8f69bece1b04440860ebb8065ee SHA512 8c4945e93cb5ff241482ba4426b25162a7ae3b26860edc10c91d06b1c396887202ad971f4d38e035828352531b87fc29087a12b675e43da44f23c9ea3b6c0cc8
24 +DIST libsecp256k1-v0.1_pre20201028.tgz 200051 BLAKE2B 90d636049b411e02703feb2661006900a55f952f60e76e2b7147a5afe8e391a06a80d6ae1489b1e7f2382176c7ea831526465a85bca09156dc6d37b417fcb33b SHA512 54a0fa21b64dd6836e4227de51f3539afe06e0e2f352683397d6adb5dd0508af443d2e25f91e90e1ae366b261965fe7d438292314705baee799cf37421644958
25
26 diff --git a/dev-libs/libsecp256k1/libsecp256k1-0.1_pre20201028.ebuild b/dev-libs/libsecp256k1/libsecp256k1-0.1_pre20201028.ebuild
27 new file mode 100644
28 index 00000000000..384c9ff6f59
29 --- /dev/null
30 +++ b/dev-libs/libsecp256k1/libsecp256k1-0.1_pre20201028.ebuild
31 @@ -0,0 +1,75 @@
32 +# Copyright 1999-2021 Gentoo Authors
33 +# Distributed under the terms of the GNU General Public License v2
34 +
35 +EAPI=7
36 +
37 +inherit autotools
38 +
39 +MyPN=secp256k1
40 +DESCRIPTION="Optimized C library for EC operations on curve secp256k1"
41 +HOMEPAGE="https://github.com/bitcoin-core/secp256k1"
42 +COMMITHASH="3967d96bf184519eb98b766af665b4d4b072563e"
43 +SRC_URI="https://github.com/bitcoin-core/${MyPN}/archive/${COMMITHASH}.tar.gz -> ${PN}-v${PV}.tgz"
44 +
45 +LICENSE="MIT"
46 +SLOT="0"
47 +KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
48 +IUSE="+asm ecdh +experimental +extrakeys gmp lowmem precompute-ecmult +schnorr +recovery test test-openssl valgrind"
49 +RESTRICT="!test? ( test )"
50 +
51 +REQUIRED_USE="
52 + asm? ( || ( amd64 arm ) arm? ( experimental ) )
53 + extrakeys? ( experimental )
54 + ?? ( lowmem precompute-ecmult )
55 + schnorr? ( experimental extrakeys )
56 + test-openssl? ( test )
57 +"
58 +RDEPEND="
59 + gmp? ( dev-libs/gmp:0= )
60 +"
61 +DEPEND="${RDEPEND}
62 + virtual/pkgconfig
63 + test-openssl? ( dev-libs/openssl:0 )
64 + valgrind? ( dev-util/valgrind )
65 +"
66 +
67 +S="${WORKDIR}/${MyPN}-${COMMITHASH}"
68 +
69 +src_prepare() {
70 + default
71 + eautoreconf
72 +}
73 +
74 +src_configure() {
75 + local asm_opt
76 + if use asm; then
77 + if use arm; then
78 + asm_opt=arm
79 + else
80 + asm_opt=auto
81 + fi
82 + else
83 + asm_opt=no
84 + fi
85 + econf \
86 + --disable-benchmark \
87 + $(use_enable experimental) \
88 + $(use_enable test tests) \
89 + $(use_enable test exhaustive-tests) \
90 + $(use_enable test-openssl openssl-tests) \
91 + $(use_enable ecdh module-ecdh) \
92 + $(use_enable extrakeys module-extrakeys) \
93 + --with-asm=$asm_opt \
94 + --with-bignum=$(usex gmp gmp no) \
95 + $(use_enable recovery module-recovery) \
96 + $(use_enable schnorr module-schnorrsig) \
97 + $(usex lowmem '--with-ecmult-window=2 --with-ecmult-gen-precision=2' '') \
98 + $(usex precompute-ecmult '--with-ecmult-window=24 --with-ecmult-gen-precision=8' '') \
99 + $(use_with valgrind) \
100 + --disable-static
101 +}
102 +
103 +src_install() {
104 + default
105 + find "${D}" -name '*.la' -delete || die
106 +}
107
108 diff --git a/dev-libs/libsecp256k1/metadata.xml b/dev-libs/libsecp256k1/metadata.xml
109 index c5a0de90e4c..04c706ec1ca 100644
110 --- a/dev-libs/libsecp256k1/metadata.xml
111 +++ b/dev-libs/libsecp256k1/metadata.xml
112 @@ -14,8 +14,13 @@
113 <flag name="ecdh">Enable ECDH shared secret computation</flag>
114 <flag name="endomorphism">Enable endomorphism</flag>
115 <flag name="experimental">Allow experimental USE flags</flag>
116 + <flag name="extrakeys">Enable extrakeys module</flag>
117 + <flag name="lowmem">Reduce runtime memory usage at the expense of performance (ecmult window size 2, gen precision 2)</flag>
118 + <flag name="precompute-ecmult">Use over 512 MB memory at runtime for better performance (ecmult window size 24, gen precision 8)</flag>
119 <flag name="recovery">Enable ECDSA pubkey recovery module</flag>
120 + <flag name="schnorr">Enable Schnorr signature module</flag>
121 <flag name="test-openssl">Enable OpenSSL comparison tests</flag>
122 + <flag name="valgrind">Compile in valgrind memory hints</flag>
123 </use>
124 <upstream>
125 <remote-id type="github">bitcoin/secp256k1</remote-id>