You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/dev-libs/libsecp256k1/libsecp256k1-0.1_pre2020102...

76 lines
1.9 KiB

# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit autotools
MyPN=secp256k1
DESCRIPTION="Optimized C library for EC operations on curve secp256k1"
HOMEPAGE="https://github.com/bitcoin-core/secp256k1"
COMMITHASH="3967d96bf184519eb98b766af665b4d4b072563e"
SRC_URI="https://github.com/bitcoin-core/${MyPN}/archive/${COMMITHASH}.tar.gz -> ${PN}-v${PV}.tgz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 x86 ~amd64-linux ~x86-linux"
IUSE="+asm ecdh +experimental +extrakeys gmp lowmem precompute-ecmult +schnorr +recovery test test-openssl valgrind"
RESTRICT="!test? ( test )"
REQUIRED_USE="
asm? ( || ( amd64 arm ) arm? ( experimental ) )
extrakeys? ( experimental )
?? ( lowmem precompute-ecmult )
schnorr? ( experimental extrakeys )
test-openssl? ( test )
"
RDEPEND="
gmp? ( dev-libs/gmp:0= )
"
DEPEND="${RDEPEND}
virtual/pkgconfig
test-openssl? ( dev-libs/openssl:0 )
valgrind? ( dev-util/valgrind )
"
S="${WORKDIR}/${MyPN}-${COMMITHASH}"
src_prepare() {
default
eautoreconf
}
src_configure() {
local asm_opt
if use asm; then
if use arm; then
asm_opt=arm
else
asm_opt=auto
fi
else
asm_opt=no
fi
econf \
--disable-benchmark \
$(use_enable experimental) \
$(use_enable test tests) \
$(use_enable test exhaustive-tests) \
$(use_enable test-openssl openssl-tests) \
$(use_enable ecdh module-ecdh) \
$(use_enable extrakeys module-extrakeys) \
--with-asm=${asm_opt} \
--with-bignum=$(usex gmp gmp no) \
$(use_enable recovery module-recovery) \
$(use_enable schnorr module-schnorrsig) \
$(usex lowmem '--with-ecmult-window=2 --with-ecmult-gen-precision=2' '') \
$(usex precompute-ecmult '--with-ecmult-window=24 --with-ecmult-gen-precision=8' '') \
$(use_with valgrind) \
--disable-static
}
src_install() {
default
find "${D}" -name '*.la' -delete || die
}