[botan] Update to 1.10.5.
Thomas Moschny
thm at fedoraproject.org
Fri Jul 26 03:04:20 UTC 2013
commit a180054edb5c62194bdd0891457a9837a81f2018
Author: Thomas Moschny <thm at fedoraproject.org>
Date: Fri Jul 26 04:32:34 2013 +0200
Update to 1.10.5.
- Modernize spec file.
- New -doc subpackage containing HTML documentation.
- Package Python binding.
.gitignore | 1 +
README.fedora | 21 +++++-----
botan-1.8.14-soname.patch | 19 ---------
botan.spec | 97 ++++++++++++++++++++++++++++++++++-----------
repack.sh | 21 ++++++----
sources | 2 +-
6 files changed, 97 insertions(+), 64 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index c755cb4..38d1d01 100644
--- a/.gitignore
+++ b/.gitignore
@@ -5,3 +5,4 @@
/Botan-1.8.12.stripped.tbz
/Botan-1.8.13.stripped.tbz
/Botan-1.8.14.stripped.tbz
+/Botan-1.10.5.stripped.tbz
diff --git a/README.fedora b/README.fedora
index f3b8795..1a10d12 100644
--- a/README.fedora
+++ b/README.fedora
@@ -1,14 +1,13 @@
For legal reasons, the following modules have been completely removed
from the Botan package in Fedora:
- * Block Ciphers
- * IDEA [src/block/idea]
- * RC6 [src/block/rc6]
- * RC5 [src/block/rc5]
- * Public Key Base
- * ECC Public Key [src/pubkey/ecc_key]
- * ECC Domain Parameters [src/pubkey/ec_dompar]
- * ECDSA [src/pubkey/ecdsa]
- * ECKAEG [src/pubkey/eckaeg]
- * Math
- * GF(p) Math [src/math/gfpmath]
+* IDEA Block Cipher [src/block/idea, src/block/idea_sse2]
+* RC5 Block Cipher [src/block/rc5]
+* RC6 Block Cipher [src/block/rc6]
+* GF(p) Math [src/math/ec_gfp]
+* ECC Domain Parameters [src/pubkey/ec_group]
+* ECC Public Key [src/pubkey/ecc_key]
+* ECDH [src/pubkey/ecdh]
+* ECDSA [src/pubkey/ecdsa]
+* GOST 34.10 [src/pubkey/gost_3410]
+* SRP-6 [src/constructs/srp6]
diff --git a/botan.spec b/botan.spec
index 152464a..babc333 100644
--- a/botan.spec
+++ b/botan.spec
@@ -1,6 +1,8 @@
+%global major_version 1.10
+
Name: botan
-Version: 1.8.14
-Release: 2%{?dist}
+Version: %{major_version}.5
+Release: 1%{?dist}
Summary: Crypto library written in C++
Group: System Environment/Libraries
@@ -10,18 +12,20 @@ URL: http://botan.randombit.net/
# here: http://files.randombit.net/botan/Botan-%%{version}.tbz
Source0: Botan-%{version}.stripped.tbz
Source1: README.fedora
-# soname was changed unintentionally upstream, revert it.
-Patch0: botan-1.8.14-soname.patch
-BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: gcc-c++
BuildRequires: python
+BuildRequires: python-sphinx
+BuildRequires: python-devel
+BuildRequires: boost-python-devel
BuildRequires: bzip2-devel
BuildRequires: zlib-devel
BuildRequires: gmp-devel
BuildRequires: openssl-devel
+# do not check .so files in the python_sitelib directory
+%global __provides_exclude_from ^(%{python_sitearch}/.*\\.so)$
%description
Botan is a BSD-licensed crypto library written in C++. It provides a
@@ -35,24 +39,47 @@ flavor of the library.
%package devel
Summary: Development files for %{name}
Group: Development/Libraries
-Requires: %{name} = %{version}-%{release}
+Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: pkgconfig
Requires: bzip2-devel
Requires: zlib-devel
Requires: gmp-devel
Requires: openssl-devel
-
%description devel
The %{name}-devel package contains libraries and header files for
developing applications that use %{name}.
+%package doc
+Summary: Documentation for %{name}
+Group: Documentation
+BuildArch: noarch
+
+%description doc
+%{summary}
+
+This package contains HTML documentation for %{name}.
+
+
+%package -n python-%{name}
+Summary: Python bindings for %{name}
+Group: System Environment/Libraries
+
+%description -n python-%{name}
+%{summary}
+
+This package contains the Python binding for %{name}.
+
+Note: The Python binding should be considered alpha software, and the
+interfaces may change in the future.
+
+
%prep
%setup -q -n Botan-%{version}
-%patch0 -p0
cp -av %{SOURCE1} .
+
%build
# we have the necessary prerequisites, so enable optional modules
%define enable_modules gnump,bzip2,zlib,openssl
@@ -67,23 +94,31 @@ cp -av %{SOURCE1} .
--os=linux \
--cpu=%{_arch} \
--enable-modules=%{enable_modules} \
- --disable-modules=%{disable_modules}
+ --disable-modules=%{disable_modules} \
+ --with-boost-python \
+ --with-python-version=%{python_version}
# (ab)using CXX as an easy way to inject our CXXFLAGS
make CXX="g++ ${CXXFLAGS:-%{optflags}}" %{?_smp_mflags}
+make -f Makefile.python \
+ CXX="g++ ${CXXFLAGS:-%{optflags}}" %{?_smp_mflags}
%install
-rm -rf %{buildroot}
make install \
DESTDIR=%{buildroot}%{_prefix} \
DOCDIR=_doc \
INSTALL_CMD_EXEC="install -p -m 755" \
- INSTALL_CMD_DATA="install -p -m 644" \
+ INSTALL_CMD_DATA="install -p -m 644"
+make -f Makefile.python install \
+ PYTHON_SITE_PACKAGE_DIR=%{buildroot}%{python_sitearch}
-%clean
-rm -rf %{buildroot}
+# fixups
+find doc/examples -type f -exec chmod -x {} \;
+mv doc/examples/python doc/python-examples
+rm _doc/manual/.buildinfo
+rm -r _doc/manual/.doctrees
%post -p /sbin/ldconfig
@@ -93,22 +128,30 @@ rm -rf %{buildroot}
%files
-%defattr(-,root,root,-)
-%{_libdir}/libbotan*-*.so
-%doc _doc/readme.txt _doc/log.txt _doc/thanks.txt _doc/credits.txt
-%doc _doc/license.txt _doc/fips140.tex _doc/pgpkeys.asc
+%doc _doc/readme.txt
+%doc doc/license.txt
%doc README.fedora
+%{_libdir}/libbotan-%{major_version}.so.*
%files devel
-%defattr(-,root,root,-)
%doc doc/examples
-%doc _doc/api* _doc/tutorial*
-%{_bindir}/botan-config
+%{_bindir}/botan-config-%{major_version}
%{_includedir}/*
-%exclude %{_libdir}/libbotan.a
-%{_libdir}/libbotan.so
-%{_libdir}/pkgconfig/botan-1.8.pc
+%exclude %{_libdir}/libbotan-%{major_version}.a
+%{_libdir}/libbotan-%{major_version}.so
+%{_libdir}/pkgconfig/botan-%{major_version}.pc
+
+
+%files doc
+%doc _doc/manual
+%doc _doc/readme.txt
+%doc doc/license.txt
+
+
+%files -n python-%{name}
+%doc doc/python-examples
+%{python_sitearch}/%{name}
%check
@@ -116,12 +159,18 @@ make CXX="g++ ${CXXFLAGS:-%{optflags}}" %{?_smp_mflags} check
# these checks would fail
mv checks/validate.dat{,.orig}
-awk '/\[.*\]/{f=0} /\[(RC5.*|RC6|IDEA)\]/{f=1} (f && !/^#/){sub(/^/,"#")} {print}' \
+awk '/\[.*\]/{f=0} /\[(RC5.*|RC6|IDEA.*)\]/{f=1} (f && !/^#/){sub(/^/,"#")} {print}' \
checks/validate.dat.orig > checks/validate.dat
LD_LIBRARY_PATH=%{buildroot}%{_libdir} ./check --validate
%changelog
+* Fri Jul 26 2013 Thomas Moschny <thomas.moschny at gmx.de> - 1.10.5-1
+- Update to 1.10.5.
+- Modernize spec file.
+- New -doc subpackage containing HTML documentation.
+- Package Python binding.
+
* Wed Feb 13 2013 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 1.8.14-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
diff --git a/repack.sh b/repack.sh
index 9bd4162..c74ea1b 100755
--- a/repack.sh
+++ b/repack.sh
@@ -1,6 +1,6 @@
#! /bin/bash
-version=1.8.14
+version=1.10.5
name=Botan-${version}
suffix=.tbz
newsuffix=.stripped.tbz
@@ -11,13 +11,16 @@ tmpfile=$(mktemp)
${compr} -cd ${name}${suffix} > ${tmpfile}
-tar --delete --file=${tmpfile} ./Botan-${version}/src/block/idea
-tar --delete --file=${tmpfile} ./Botan-${version}/src/block/rc6
-tar --delete --file=${tmpfile} ./Botan-${version}/src/block/rc5
-tar --delete --file=${tmpfile} ./Botan-${version}/src/math/gfpmath
-tar --delete --file=${tmpfile} ./Botan-${version}/src/pubkey/ec_dompar
-tar --delete --file=${tmpfile} ./Botan-${version}/src/pubkey/ecc_key
-tar --delete --file=${tmpfile} ./Botan-${version}/src/pubkey/ecdsa
-tar --delete --file=${tmpfile} ./Botan-${version}/src/pubkey/eckaeg
+tar --delete --file=${tmpfile} Botan-${version}/src/block/idea
+tar --delete --file=${tmpfile} Botan-${version}/src/block/idea_sse2
+tar --delete --file=${tmpfile} Botan-${version}/src/block/rc6
+tar --delete --file=${tmpfile} Botan-${version}/src/block/rc5
+tar --delete --file=${tmpfile} Botan-${version}/src/math/ec_gfp
+tar --delete --file=${tmpfile} Botan-${version}/src/pubkey/ecc_key
+tar --delete --file=${tmpfile} Botan-${version}/src/pubkey/ecdh
+tar --delete --file=${tmpfile} Botan-${version}/src/pubkey/ecdsa
+tar --delete --file=${tmpfile} Botan-${version}/src/pubkey/ec_group
+tar --delete --file=${tmpfile} Botan-${version}/src/pubkey/gost_3410
+tar --delete --file=${tmpfile} Botan-${version}/src/constructs/srp6
${compr} -c ${tmpfile} > ${name}${newsuffix}
diff --git a/sources b/sources
index 219b46d..f334e98 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-4b5ce78b1cfc0735eb7ec4f6903068ca Botan-1.8.14.stripped.tbz
+dcc2a74f56c617add323df4ae175c1a5 Botan-1.10.5.stripped.tbz
More information about the scm-commits
mailing list