diff options
author | Alon Bar-Lev <alonbl@gentoo.org> | 2016-12-01 22:11:29 +0200 |
---|---|---|
committer | Alon Bar-Lev <alonbl@gentoo.org> | 2016-12-01 22:13:12 +0200 |
commit | c31efdd2b1cd740923f9d3d2c14870309df3cf20 (patch) | |
tree | b94760099004c94e35d20ef92eddcfe6f31bb51e /dev-libs | |
parent | dev-php/pecl-pam: Drop old (diff) | |
download | gentoo-c31efdd2b1cd740923f9d3d2c14870309df3cf20.tar.gz gentoo-c31efdd2b1cd740923f9d3d2c14870309df3cf20.tar.bz2 gentoo-c31efdd2b1cd740923f9d3d2c14870309df3cf20.zip |
dev-libs/botan: version bump
Package-Manager: portage-2.3.0
Diffstat (limited to 'dev-libs')
-rw-r--r-- | dev-libs/botan/Manifest | 1 | ||||
-rw-r--r-- | dev-libs/botan/botan-1.11.34.ebuild | 140 | ||||
-rw-r--r-- | dev-libs/botan/files/botan-1.11.34-rng.patch | 30 |
3 files changed, 171 insertions, 0 deletions
diff --git a/dev-libs/botan/Manifest b/dev-libs/botan/Manifest index d5f888500672..b9053b3e50cd 100644 --- a/dev-libs/botan/Manifest +++ b/dev-libs/botan/Manifest @@ -2,3 +2,4 @@ DIST Botan-1.10.12.tgz 2707397 SHA256 affc3a79919577943f896e64d3e4a4dcc4970c5bf8 DIST Botan-1.10.13.tgz 2710181 SHA256 23ec973d4b4a4fe04f490d409e08ac5638afe3aa09acd7f520daaff38ba19b90 SHA512 a09d2cb5dda21bf384b81675025f249abdfe232c95dc3383f0baebc2bf1603b2ed1e2aec9a81aae95df592ec2eeae8906c63474a6da42ad3701669a5d8f14656 WHIRLPOOL 4161d689205f02ed8b97bb371be47829d11dee744a024e24bb834264cfa6143c8a9fb7df969410975e4bf2b708063e3c05b6106c4dbe7f5566e3331ee5e901a9 DIST Botan-1.10.14.tgz 2710757 SHA256 10ed0b394db165733ac9557d8656356b7e9744d38c61c2b9c44cba6d84ff4c1c SHA512 ae524653a99b02d6d8d7bb2b88a446c066fe1044d8fd2708ea2a4cd5aafbe2b0d165d2ce1730669a4df18013cf5b6540bb5944bafea512b4957e3417de512e95 WHIRLPOOL 51aa1d68757ad515f65c255c585be8050efed085800340d43fa068b48647ef8c50fc9e284ac16d0cef3d874f5fa44f143210dcc004561807e1d1b307d89cff9d DIST Botan-1.11.33.tgz 4329671 SHA256 d65f95399dc5710aea90d682d65e554fed4571115f1382416e9142370a47e949 SHA512 49bb4485663897dd07bb7982771befacc50bfabef5806dc802cbd4d39f5d641b08a264824b5b1b96421e810811353deea15e728c5d08ce2932cf0e4602ae099d WHIRLPOOL 86154158915e29eef7753797df037d560078bda4ecfaafffba1064a238618b1ec10e0712b85cd64537ca3dfbac5ce38bf1323456d30b2bd5a51c0dae7f81d339 +DIST Botan-1.11.34.tgz 4908624 SHA256 59ad548f8ddb967737f102b252bab30ca0b49f039f204502394cf506ae731f16 SHA512 c3dad24872f726c62fd302cf05e4a67985e8d6e00b6bdfc9852abe2204329f794b656e9ee89470b76ea16426371ef5b1729626c36d9a2b89e1939172382f192c WHIRLPOOL ba1db76068ae8e55169cba19597be159de1999555ff64ba95a7b80a38ed25d6170be9c2586ca680323340774784fad96b9ca83ff0b17a5b162ba11014e2641a4 diff --git a/dev-libs/botan/botan-1.11.34.ebuild b/dev-libs/botan/botan-1.11.34.ebuild new file mode 100644 index 000000000000..87dc9d56708a --- /dev/null +++ b/dev-libs/botan/botan-1.11.34.ebuild @@ -0,0 +1,140 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="6" +PYTHON_COMPAT=( python{2_7,3_4,3_5} ) + +inherit eutils multilib python-r1 toolchain-funcs + +MY_PN="Botan" +MY_P="${MY_PN}-${PV}" +DESCRIPTION="A C++ crypto library" +HOMEPAGE="http://botan.randombit.net/" +SRC_URI="http://botan.randombit.net/releases/${MY_P}.tgz" + +KEYWORDS="~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~ppc-macos" +SLOT="0" +LICENSE="BSD" +IUSE="bindist doc boost python bzip2 libressl lzma sqlite ssl static-libs zlib" + +S="${WORKDIR}/${MY_P}" + +REQUIRED_USE="python? ( boost )" + +RDEPEND="bzip2? ( >=app-arch/bzip2-1.0.5 ) + zlib? ( >=sys-libs/zlib-1.2.3 ) + boost? ( ${PYTHON_DEPS} >=dev-libs/boost-1.48[python?,${PYTHON_USEDEP}] ) + lzma? ( app-arch/xz-utils ) + sqlite? ( dev-db/sqlite:3 ) + ssl? ( + !libressl? ( >=dev-libs/openssl-0.9.8g:0[bindist=] ) + libressl? ( dev-libs/libressl ) + )" +DEPEND="${RDEPEND} + doc? ( dev-python/sphinx )" + +PATCHES=( + "${FILESDIR}/${P}-rng.patch" +) + +pkg_pretend() { + # Botan 1.11 requires -std=c++11 + if [[ ${MERGE_TYPE} != binary ]]; then + [[ $(gcc-major-version) -lt 4 ]] || \ + ( [[ $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 7 ]] ) \ + && die "Sorry, but gcc 4.7 or higher is required." + fi +} + +src_prepare() { + default + sed \ + -e "/^install:/s/ docs//" \ + -i src/build-data/makefile/gmake.in || die "sed failed" + use python && python_copy_sources +} + +src_configure() { + local disable_modules=( proc_walk unix_procs ) + use boost || disable_modules+=( "boost" ) + use bindist && disable_modules+=( "ecdsa" ) + use python || disable_modules+=( "ffi" ) + elog "Disabling modules: ${disable_modules[@]}" + + # Enable v9 instructions for sparc64 + if [[ "${PROFILE_ARCH}" = "sparc64" ]]; then + CHOSTARCH="sparc32-v9" + else + CHOSTARCH="${CHOST%%-*}" + fi + + local myos= + case ${CHOST} in + *-darwin*) myos=darwin ;; + *) myos=linux ;; + esac + + local pythonvers=() + if use python; then + append() { + pythonvers+=( ${EPYTHON/python/} ) + } + python_foreach_impl append + fi + + ./configure.py \ + --prefix="${EPREFIX}/usr" \ + --destdir="${D}/${EPREFIX}/usr" \ + --libdir=$(get_libdir) \ + --docdir=share/doc \ + --cc=gcc \ + --os=${myos} \ + --cpu=${CHOSTARCH} \ + --with-endian="$(tc-endian)" \ + --without-sphinx \ + $(use_with bzip2) \ + $(use_with lzma) \ + $(use_with sqlite sqlite3) \ + $(use_with ssl openssl) \ + $(use_with zlib) \ + $(use_with boost) \ + --with-python-version=$(IFS=","; echo "${pythonvers[*]}" ) \ + --disable-modules=$(IFS=","; echo "${disable_modules[*]}" ) \ + || die "configure.py failed" +} + +src_compile() { + emake CXX="$(tc-getCXX) -pthread" AR="$(tc-getAR) crs" LIB_OPT="-c ${CXXFLAGS}" + if use doc; then + einfo "Generation of documentation" + sphinx-build doc doc_output + fi +} + +src_test() { + LD_LIBRARY_PATH="${S}" ./botan-test || die "Validation tests failed" +} + +src_install() { + emake install + + if ! use static-libs; then + rm "${ED}usr/$(get_libdir)/libbotan"*.a || die 'remove of static libs failed' + fi + + # Add compatibility symlinks. + [[ -e "${ED}usr/bin/botan-config" ]] && die "Compatibility code no longer needed" + [[ -e "${ED}usr/$(get_libdir)/pkgconfig/botan.pc" ]] && die "Compatibility code no longer needed" + dosym botan-config-1.11 /usr/bin/botan-config + dosym botan-1.11.pc /usr/$(get_libdir)/pkgconfig/botan.pc + + use python && python_foreach_impl python_optimize + + if use doc; then + pushd doc_output > /dev/null + insinto /usr/share/doc/${PF}/html + doins -r [a-z]* _static + popd > /dev/null + fi +} diff --git a/dev-libs/botan/files/botan-1.11.34-rng.patch b/dev-libs/botan/files/botan-1.11.34-rng.patch new file mode 100644 index 000000000000..da814f11b8c5 --- /dev/null +++ b/dev-libs/botan/files/botan-1.11.34-rng.patch @@ -0,0 +1,30 @@ +From 2b72637f06ad35bd5458372a964bf30a0b4f7cf9 Mon Sep 17 00:00:00 2001 +From: Alon Bar-Lev <alon.barlev@gmail.com> +Date: Thu, 1 Dec 2016 21:55:17 +0200 +Subject: [PATCH] system_rng: workaround read only urandom + +Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com> +--- + src/lib/rng/system_rng/system_rng.cpp | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/src/lib/rng/system_rng/system_rng.cpp b/src/lib/rng/system_rng/system_rng.cpp +index eaba382..12b0876 100644 +--- a/src/lib/rng/system_rng/system_rng.cpp ++++ b/src/lib/rng/system_rng/system_rng.cpp +@@ -135,8 +135,11 @@ void System_RNG_Impl::add_entropy(const uint8_t input[], size_t len) + * by the OS or sysadmin that additional entropy is not wanted + * in the system pool, so we accept that and return here, + * since there is no corrective action possible. ++ * ++ * In Linux EBADF or EPERM is returned if m_fd is not opened for ++ * writing. + */ +- if(errno == EPERM) ++ if(errno == EPERM || errno == EBADF) + return; + + // maybe just ignore any failure here and return? +-- +2.7.3 + |