mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2025-12-23 09:47:30 -08:00
Result of running the command: grep --include="*.ebuild" -r . -e 'KEYWORDS=.*[" ]sparc' -l | xargs ekeyword ~sparc Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org>
89 lines
2.3 KiB
Bash
89 lines
2.3 KiB
Bash
# Copyright 1999-2025 Gentoo Authors
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
|
|
EAPI=8
|
|
|
|
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/crypto++.asc
|
|
inherit flag-o-matic toolchain-funcs verify-sig
|
|
|
|
DESCRIPTION="C++ class library of cryptographic schemes"
|
|
HOMEPAGE="https://cryptopp.com"
|
|
SRC_URI="
|
|
https://www.cryptopp.com/cryptopp${PV//.}.zip
|
|
https://github.com/weidai11/cryptopp/releases/download/CRYPTOPP_${PV//./_}/cryptopp${PV//.}.zip
|
|
verify-sig? (
|
|
https://cryptopp.com/cryptopp${PV//.}.zip.sig
|
|
https://github.com/weidai11/cryptopp/releases/download/CRYPTOPP_${PV//./_}/cryptopp${PV//.}.zip.sig
|
|
)
|
|
"
|
|
|
|
S="${WORKDIR}"
|
|
|
|
LICENSE="Boost-1.0"
|
|
# ABI notes:
|
|
# - Bumped to 8.5 in 8.5.0 out of caution
|
|
# subslot is so version (was broken in 8.3.0, check on bumps!)
|
|
# Seems to be broken in 8.6 again too
|
|
#
|
|
# - See https://cryptopp.com/#news, but releases usually say
|
|
# "recompile of programs required". Even if it doesn't,
|
|
# verify with abidiff!
|
|
SLOT="0/${PV}"
|
|
KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86 ~x64-macos"
|
|
IUSE="+asm openmp static-libs"
|
|
|
|
BDEPEND="
|
|
app-arch/unzip
|
|
verify-sig? ( sec-keys/openpgp-keys-crypto++ )
|
|
"
|
|
|
|
config_uncomment() {
|
|
sed -i -e "s://\s*\(#define\s*$1\):\1:" config.h || die
|
|
}
|
|
|
|
pkg_pretend() {
|
|
[[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
|
|
}
|
|
|
|
pkg_setup() {
|
|
[[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
|
|
}
|
|
|
|
src_prepare() {
|
|
default
|
|
|
|
use asm || config_uncomment CRYPTOPP_DISABLE_ASM
|
|
|
|
# ASM isn't Darwin/Mach-O ready, #479554, buildsys doesn't grok CPPFLAGS
|
|
[[ ${CHOST} == *-darwin* ]] && config_uncomment CRYPTOPP_DISABLE_ASM
|
|
}
|
|
|
|
src_configure() {
|
|
export CXX="$(tc-getCXX)"
|
|
export LIBDIR="${EPREFIX}/usr/$(get_libdir)"
|
|
export PREFIX="${EPREFIX}/usr"
|
|
tc-export AR RANLIB
|
|
|
|
# https://github.com/cryfs/cryfs/issues/369#issuecomment-1030678487
|
|
use openmp && append-flags -fopenmp
|
|
|
|
# Long history of correctness bugs:
|
|
# https://github.com/weidai11/cryptopp/issues/1134
|
|
# https://github.com/weidai11/cryptopp/issues/1141
|
|
# https://github.com/weidai11/cryptopp/pull/1147
|
|
append-flags -fno-strict-aliasing
|
|
filter-lto
|
|
|
|
default
|
|
}
|
|
|
|
src_compile() {
|
|
emake -f GNUmakefile LDCONF=true all shared libcryptopp.pc
|
|
}
|
|
|
|
src_install() {
|
|
emake DESTDIR="${D}" LDCONF=true install
|
|
|
|
use static-libs || rm -f "${ED}"/usr/$(get_libdir)/*.a
|
|
}
|