dev-libs/botan: version bump

Package-Manager: portage-2.3.0
This commit is contained in:
Alon Bar-Lev
2017-01-22 22:45:17 +02:00
parent c0b17d27c4
commit fa1de8635f
5 changed files with 157 additions and 36 deletions

View File

@@ -1,2 +1,3 @@
DIST Botan-1.10.14.tgz 2710757 SHA256 10ed0b394db165733ac9557d8656356b7e9744d38c61c2b9c44cba6d84ff4c1c SHA512 ae524653a99b02d6d8d7bb2b88a446c066fe1044d8fd2708ea2a4cd5aafbe2b0d165d2ce1730669a4df18013cf5b6540bb5944bafea512b4957e3417de512e95 WHIRLPOOL 51aa1d68757ad515f65c255c585be8050efed085800340d43fa068b48647ef8c50fc9e284ac16d0cef3d874f5fa44f143210dcc004561807e1d1b307d89cff9d
DIST Botan-2.0.0.tgz 4989901 SHA256 031659cca0f80869e9d97a20917edbe2164cedbc079e8c53e0e7bd9bea15371a SHA512 4cb6992b5998ead175c10a9f193b0cde208b81a99bf30412a3b8386e7c91de2ff5d8191fd49893f02643519721bcf16c58db3cbee3eccbeb566f4456d310cf8f WHIRLPOOL ba180e5be87c9212fdf2e9252eb6d477bf608f976476b75e31e393ec19d94dada876b5dda9881f4cbe6dd7fec642a8a2b2a728bc90e07c44661237a067ae09ce
DIST Botan-1.10.15.tgz 2711022 SHA256 c0cc8ffd470fda4b257c3ef9faf5cf93751f4c283dfba878148acafedfab70fe SHA512 c3b93f44ad0de9758af11557833ee570aa0724c8b57c9a576b56ab439a7819e0f71a10857ad367b486716164dd4ff551cab2036ecbbbedd75db4b8dc93416bc8 WHIRLPOOL 834cad8b38787581d8d967b2fa6ffb6164e2bf8a124d993733a7d55202439ec543c18cb6cb03721c0e8eb67cbe2a486b8199b3b8784645e0033be298f36640b9
DIST Botan-2.0.1.tgz 4995413 SHA256 a138ed316d11450a8405451b9c9664b8e640a9b7ad84d3f3ad34e8071f364e0b SHA512 c5062ce92a6e6e333b4e6af095ed54d0c4ffacefc6ac87ec651dd1e0937793c9956b7c9c0d3acf49f059505526584168364e01c55ab72c953ad255e8396aed35 WHIRLPOOL 36cec762b05b761d77fc0421379e7c78172c67d1d8c9da4349df34f68d7d1a4fd5cca394ba4bd7c2e1a13a218a6a349b2216bfd7868e93549e37e5cf7ddc7dc1

View File

@@ -0,0 +1,150 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="6"
PYTHON_COMPAT=( python{2_7,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 python bzip2 gmp ssl static-libs threads zlib"
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? ( >=dev-libs/openssl-0.9.8g:*[bindist=] )"
DEPEND="${RDEPEND}
doc? ( dev-python/sphinx )"
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
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
}

View File

@@ -14,7 +14,7 @@ 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/2"
SLOT="2/0"
LICENSE="BSD"
IUSE="bindist doc boost python bzip2 libressl lzma sqlite ssl static-libs zlib"
@@ -32,12 +32,9 @@ RDEPEND="bzip2? ( >=app-arch/bzip2-1.0.5 )
libressl? ( dev-libs/libressl )
)"
DEPEND="${RDEPEND}
dev-lang/python:*
doc? ( dev-python/sphinx )"
PATCHES=(
"${FILESDIR}/${P}-build.patch"
)
pkg_pretend() {
# Botan 1.11 requires -std=c++11
if [[ ${MERGE_TYPE} != binary ]]; then
@@ -120,9 +117,5 @@ src_install() {
rm "${ED}usr/$(get_libdir)/libbotan"*.a || die 'remove of static libs failed'
fi
# Add compatibility symlinks.
[[ -e "${ED}usr/$(get_libdir)/pkgconfig/botan.pc" ]] && die "Compatibility code no longer needed"
dosym botan-2.pc /usr/$(get_libdir)/pkgconfig/botan.pc
use python && python_foreach_impl python_optimize
}

View File

@@ -1,26 +0,0 @@
From 0d8cbe137261b4f841a05eec5dd5659c8f510de0 Mon Sep 17 00:00:00 2001
From: Alon Bar-Lev <alon.barlev@gmail.com>
Date: Mon, 9 Jan 2017 20:59:28 +0200
Subject: [PATCH] build: pkg-config: fix include directory
Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
---
src/build-data/botan.pc.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/build-data/botan.pc.in b/src/build-data/botan.pc.in
index 85943ab..753b8cd 100644
--- a/src/build-data/botan.pc.in
+++ b/src/build-data/botan.pc.in
@@ -1,7 +1,7 @@
prefix=%{prefix}
exec_prefix=${prefix}
libdir=${prefix}/%{libdir}
-includedir=${prefix}/include/botan-%{version_major}
+includedir=${prefix}/include/botan-%{version_major}.%{version_minor}
Name: Botan
Description: Crypto and TLS for C++11
--
2.10.2

View File

@@ -17,4 +17,7 @@
<use>
<flag name="boost">use <pkg>dev-libs/boost</pkg></flag>
</use>
<slots>
<subslots>botan soname version</subslots>
</slots>
</pkgmetadata>