summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlon Bar-Lev <alonbl@gentoo.org>2017-10-04 02:10:49 +0300
committerAlon Bar-Lev <alonbl@gentoo.org>2017-10-04 02:10:49 +0300
commit50bba930bd38a3ec3aaa0ddcc92f2f2e30716716 (patch)
treeeb44f57bb3f621a0887735cfb79be37539f17d80 /dev-libs/botan
parentdev-ruby/hiera: add 3.4.2 (diff)
downloadgentoo-50bba930bd38a3ec3aaa0ddcc92f2f2e30716716.tar.gz
gentoo-50bba930bd38a3ec3aaa0ddcc92f2f2e30716716.tar.bz2
gentoo-50bba930bd38a3ec3aaa0ddcc92f2f2e30716716.zip
dev-libs/botan: version bump
Gentoo-Bug: 632104 Package-Manager: Portage-2.3.8, Repoman-2.3.1
Diffstat (limited to 'dev-libs/botan')
-rw-r--r--dev-libs/botan/Manifest1
-rw-r--r--dev-libs/botan/botan-1.10.17.ebuild158
-rw-r--r--dev-libs/botan/files/botan-1.10.17-build.patch25
3 files changed, 184 insertions, 0 deletions
diff --git a/dev-libs/botan/Manifest b/dev-libs/botan/Manifest
index 0e8604021dc1..b47def0f45d7 100644
--- a/dev-libs/botan/Manifest
+++ b/dev-libs/botan/Manifest
@@ -1,3 +1,4 @@
DIST Botan-1.10.15.tgz 2711022 SHA256 c0cc8ffd470fda4b257c3ef9faf5cf93751f4c283dfba878148acafedfab70fe SHA512 c3b93f44ad0de9758af11557833ee570aa0724c8b57c9a576b56ab439a7819e0f71a10857ad367b486716164dd4ff551cab2036ecbbbedd75db4b8dc93416bc8 WHIRLPOOL 834cad8b38787581d8d967b2fa6ffb6164e2bf8a124d993733a7d55202439ec543c18cb6cb03721c0e8eb67cbe2a486b8199b3b8784645e0033be298f36640b9
DIST Botan-1.10.16.tgz 2711177 SHA256 6c5472401d06527e87adcb53dd270f3c9b1fb688703b04dd7a7cfb86289efe52 SHA512 967137c89484630806e828c3902fe27c28dae17e6a3aeae7c542093de356545be4fcbe4325afd9fb40093a10ac409244e4e6503364858facb59057a5dfd61c03 WHIRLPOOL 86ec99dbadcdf1ff27d1b11a133a15be8385f32cf7f456afa9ca0756e3e0c8e640fff3e5d2753d508cf1136268ae5912b3c610a75d30cf07f206896fb8b5e6a8
+DIST Botan-1.10.17.tgz 2706678 SHA256 6847ffb64b8d2f939dccfecc17bd2c80385d08f7621e2c56d3a335118e823613 SHA512 a47cab3af113652247c8efc8b0f043eb62175eaa8554833d5fc3016ea94dbdd8aa722ab9b5226cc5f133afbcc088d54362111630eaa4594812c39925cc3c8649 WHIRLPOOL b2d82fb18ad7f69e26325c797cee939f65211e3b09c7058881633d410acd88e1839960c4be65637b00714b19d06a1c181704a5d184c1890cd7ee75b0e90a301b
DIST Botan-2.1.0.tgz 5073684 SHA256 460f2d7205aed113f898df4947b1f66ccf8d080eec7dac229ef0b754c9ad6294 SHA512 af9ea35baf431500d380a360525e20e67dd17fdeaa442726019d544e9e423c301196cc17b09a3831f956ca9e62d7e99797f129b26fac10a653dd04e3ad1f4f4f WHIRLPOOL 75289db8f2a6bd075562acc1fd1a8297ad74369022941af7b08878dd94cc28494193a3937aae377c856d2957bf1ac3b564c0cd0ceae0701beab308c082c07fe6
diff --git a/dev-libs/botan/botan-1.10.17.ebuild b/dev-libs/botan/botan-1.10.17.ebuild
new file mode 100644
index 000000000000..2b3ca7f0737e
--- /dev/null
+++ b/dev-libs/botan/botan-1.10.17.ebuild
@@ -0,0 +1,158 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+PYTHON_COMPAT=( python{2_7,3_4,3_5} )
+
+inherit 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 python bzip2 gmp libressl ssl static-libs threads zlib"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+S="${WORKDIR}/${MY_P}"
+
+RDEPEND="bzip2? ( >=app-arch/bzip2-1.0.5 )
+ zlib? ( >=sys-libs/zlib-1.2.3 )
+ python? ( ${PYTHON_DEPS} >=dev-libs/boost-1.48[python,${PYTHON_USEDEP}] )
+ gmp? ( >=dev-libs/gmp-4.2.2:* )
+ ssl? (
+ !libressl? ( dev-libs/openssl:0=[bindist=] )
+ libressl? ( dev-libs/libressl:0= )
+ )"
+DEPEND="${RDEPEND}
+ doc? ( dev-python/sphinx )"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-1.10.15-c++11.patch"
+ "${FILESDIR}/${P}-build.patch"
+)
+
+src_prepare() {
+ default
+
+ sed -e "s/-Wl,-soname,\$@ //" -i src/build-data/makefile/python.in || die "sed failed"
+ sed \
+ -e "/DOCDIR/d" \
+ -e "/^install:/s/ docs//" \
+ -i src/build-data/makefile/unix_shr.in || die "sed failed"
+
+ # Fix ImportError with Python 3.
+ sed -e "s/_botan/.&/" -i src/wrap/python/__init__.py || die "sed failed"
+
+ use python && python_copy_sources
+}
+
+src_configure() {
+ local disable_modules="proc_walk,unix_procs"
+ use threads || disable_modules+=",pthreads"
+ use bindist && disable_modules+=",ecdsa"
+ 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
+
+ # foobared buildsystem, --prefix translates into DESTDIR, see also make
+ # install in src_install, we need the correct live-system prefix here on
+ # Darwin for a shared lib with correct install_name
+ ./configure.py \
+ --prefix="${EPREFIX}/usr" \
+ --libdir=$(get_libdir) \
+ --docdir=share/doc \
+ --cc=gcc \
+ --os=${myos} \
+ --cpu=${CHOSTARCH} \
+ --with-endian="$(tc-endian)" \
+ --without-sphinx \
+ --with-tr1=system \
+ $(use_with bzip2) \
+ $(use_with gmp gnump) \
+ $(use_with python boost-python) \
+ $(use_with ssl openssl) \
+ $(use_with zlib) \
+ --disable-modules=${disable_modules} \
+ || die "configure.py failed"
+}
+
+src_compile() {
+ emake CXX="$(tc-getCXX)" AR="$(tc-getAR) crs" LIB_OPT="${CXXFLAGS}" MACH_OPT=""
+
+ if use python; then
+ building() {
+ rm -fr build/python
+ ln -s "${BUILD_DIR}" build/python
+ cp Makefile.python build/python
+ sed -i \
+ -e "s/-lboost_python/-lboost_python-$(echo ${EPYTHON} | sed 's/python//')/" \
+ build/python/Makefile.python
+ emake -f build/python/Makefile.python \
+ CXX="$(tc-getCXX)" \
+ CFLAGS="${CXXFLAGS}" \
+ LDFLAGS="${LDFLAGS}" \
+ PYTHON_ROOT="/usr/$(get_libdir)" \
+ PYTHON_INC="-I$(python_get_includedir)"
+ }
+ python_foreach_impl building
+ fi
+
+ if use doc; then
+ einfo "Generation of documentation"
+ sphinx-build doc doc_output || die
+ fi
+}
+
+src_test() {
+ chmod -R ugo+rX "${S}"
+ emake CXX="$(tc-getCXX)" CHECK_OPT="${CXXFLAGS}" check
+ LD_LIBRARY_PATH="${S}" ./check --validate || die "Validation tests failed"
+}
+
+src_install() {
+ emake DESTDIR="${ED}usr" 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.10 /usr/bin/botan-config
+ dosym botan-1.10.pc /usr/$(get_libdir)/pkgconfig/botan.pc
+
+ if use python; then
+ installation() {
+ rm -fr build/python
+ ln -s "${BUILD_DIR}" build/python
+ emake -f Makefile.python \
+ PYTHON_SITE_PACKAGE_DIR="${ED}$(python_get_sitedir)" \
+ install
+ }
+ python_foreach_impl installation
+ fi
+
+ 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.10.17-build.patch b/dev-libs/botan/files/botan-1.10.17-build.patch
new file mode 100644
index 000000000000..43877972211a
--- /dev/null
+++ b/dev-libs/botan/files/botan-1.10.17-build.patch
@@ -0,0 +1,25 @@
+From c7963d28d03e5f65f4021a5b764dc4bff9417eda Mon Sep 17 00:00:00 2001
+From: Alon Bar-Lev <alon.barlev@gmail.com>
+Date: Wed, 4 Oct 2017 01:50:33 +0300
+Subject: [PATCH] gost_3411: use correct type for build to pass
+
+---
+ src/hash/gost_3411/gost_3411.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/hash/gost_3411/gost_3411.cpp b/src/hash/gost_3411/gost_3411.cpp
+index 97aa399..7ca22dc 100644
+--- a/src/hash/gost_3411/gost_3411.cpp
++++ b/src/hash/gost_3411/gost_3411.cpp
+@@ -91,7 +91,7 @@ void GOST_34_11::compress_n(const byte input[], size_t blocks)
+ // P transformation
+ for(size_t k = 0; k != 4; ++k)
+ {
+- const uint64_t UVk = U[k] ^ V[k];
++ const u64bit UVk = U[k] ^ V[k];
+ for(size_t l = 0; l != 8; ++l)
+ key[4*l+k] = get_byte(l, UVk);
+ }
+--
+2.13.6
+