summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlon Bar-Lev <alonbl@gentoo.org>2016-06-04 22:32:25 +0300
committerAlon Bar-Lev <alonbl@gentoo.org>2016-06-04 22:36:37 +0300
commita4814d9d4e48cb7a906a91364b907bdb91b52ae6 (patch)
tree84db5366be01918706a9ce0bfb671fa2610235d8 /dev-libs/botan
parentdev-libs/nettle: cleanup (diff)
downloadgentoo-a4814d9d4e48cb7a906a91364b907bdb91b52ae6.tar.gz
gentoo-a4814d9d4e48cb7a906a91364b907bdb91b52ae6.tar.bz2
gentoo-a4814d9d4e48cb7a906a91364b907bdb91b52ae6.zip
dev-libs/botan: version bump
Bug: 581324 Package-Manager: portage-2.2.28
Diffstat (limited to 'dev-libs/botan')
-rw-r--r--dev-libs/botan/Manifest1
-rw-r--r--dev-libs/botan/botan-1.11.29.ebuild136
2 files changed, 137 insertions, 0 deletions
diff --git a/dev-libs/botan/Manifest b/dev-libs/botan/Manifest
index 7bf8dab38eda..cef8c0483596 100644
--- a/dev-libs/botan/Manifest
+++ b/dev-libs/botan/Manifest
@@ -1,2 +1,3 @@
DIST Botan-1.10.12.tgz 2707397 SHA256 affc3a79919577943f896e64d3e4a4dcc4970c5bf80cc98c7f3a3144745eac27 SHA512 074ed9c89d715ada53a3366139da3f0f2fd7ee01941d301b0a9c1a897927ed88c0ade32f66768091664e6b652b7921b3b4c513106ee6ce1942dece3a25216bf5 WHIRLPOOL bfe7029e5ebf660434b14cd49e0c9f4612e9ee88ad50803edfa589754bede01dc39d71542b62eaaa0f7e85dbf623b4b11a90528bcb903c2333103685ce91401f
DIST Botan-1.11.28.tgz 3144767 SHA256 a414c96f45b2707d4750d299ca03ec3fce5ada62ada1ba5cd012a9ace61f5932 SHA512 179e4a05ae073b948523abe13f6f93ec391f3b4585d784349baf9cc0d4152c76bccfde7604a4bf89740b6fc77c7f651c0dd767c39f85f9fab378c7e0e15a442c WHIRLPOOL 0f6f101d9ccbe92a17614f82f13609f2f112ab46a395a195a268b03a95a69d263f2d3d9b88f7092d02ddc74fabeab46057c235383e6b118da08f05870adaa4c1
+DIST Botan-1.11.29.tgz 3137027 SHA256 e604eca7f0a733f6ef23ddd9209d82589728a4befd48dff3532740130ebaeb94 SHA512 c6ad6cf3d68c3524b9532e9f52e74d89cc2abfd093f1a46a44efa94a87b0fa50278f11dc5953225160d090cf8ae1c372f54c23b5dffd1f3dae79e210195cfd72 WHIRLPOOL f97f0a013c5ed3c7ec7403b8ae584b7396b91a8fcf9181d7e53f17cbd172301c1c228378e58d851fd591f2be9584b18e3eba05e5c5709750a3cf6cc6538f1bc7
diff --git a/dev-libs/botan/botan-1.11.29.ebuild b/dev-libs/botan/botan-1.11.29.ebuild
new file mode 100644
index 000000000000..0b974916e136
--- /dev/null
+++ b/dev-libs/botan/botan-1.11.29.ebuild
@@ -0,0 +1,136 @@
+# 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_3,3_4} )
+
+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 )"
+
+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
+}