From 6607bcf30da447e75d7055e1e1ba8de0c2f509d028889d3096ce2435bb4caada Mon Sep 17 00:00:00 2001 From: Philipp Thomas Date: Mon, 19 Feb 2018 13:39:26 +0000 Subject: [PATCH] Accepting request 578006 from home:sleep_walker:branches:devel:libraries:c_c++ - drop explicit package requirements - split binary package and documentation from dynamic library package - merge back Botan2 package to Botan with changelog history - drop Botan patches aarch64-support.patch - doesn't seem to be required anymore Botan-fix_install_paths.patch - doesn't seem to be required no-cpuid-header.patch - SLE11 not target anymore Botan-fix_pkgconfig.patch - this seem to be wrong Botan-no-buildtime.patch - not needed anymore dont-set-mach-value.diff - doesn't apply, unclear and undocumented why it is there Botan-inttypes.patch - not required Botan-ull_constants.patch.bz2 - no reason anymore - change group of libbotan-%{version_suffix} to 'System/Libraries' as requested on review - Don't drop -fstack-clash-protection for openSUSE 42.3 - we just need the Update repository present. - Rename libbotan-devel to libbotan2-devel. We can't have clashing packages in the archive because Botan1 and Botan2 provide the same -devel binary. Botan2 is also no API compatible with Botan. - fix expected version after bump in baselibs.conf too - fix unknown flag -fstack-clash-protection for openSUSE 42.3 - rename to Botan2 - drop Botan2-INT_MAX.patch as not needed anymore - Bump to libbotan 2.4 Changes and new features: OBS-URL: https://build.opensuse.org/request/show/578006 OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/Botan?expand=0&rev=75 --- Botan-1.10.17.tgz | 3 - Botan-1.10.17.tgz.asc | 11 -- Botan-2.4.0.tgz | 3 + Botan-2.4.0.tgz.asc | 11 ++ Botan-fix_install_paths.patch | 61 ------- Botan-fix_pkgconfig.patch | 10 -- Botan-inttypes.patch | 51 ------ Botan-no-buildtime.patch | 15 -- Botan-ull_constants.patch.bz2 | 3 - Botan.changes | 305 ++++++++++++++++++++++++++++++++++ Botan.spec | 94 +++++------ aarch64-support.patch | 11 -- baselibs.conf | 4 +- dont-set-mach-value.diff | 17 -- no-cpuid-header.patch | 13 -- 15 files changed, 365 insertions(+), 247 deletions(-) delete mode 100644 Botan-1.10.17.tgz delete mode 100644 Botan-1.10.17.tgz.asc create mode 100644 Botan-2.4.0.tgz create mode 100644 Botan-2.4.0.tgz.asc delete mode 100644 Botan-fix_install_paths.patch delete mode 100644 Botan-fix_pkgconfig.patch delete mode 100644 Botan-inttypes.patch delete mode 100644 Botan-no-buildtime.patch delete mode 100644 Botan-ull_constants.patch.bz2 delete mode 100644 aarch64-support.patch delete mode 100644 dont-set-mach-value.diff delete mode 100644 no-cpuid-header.patch diff --git a/Botan-1.10.17.tgz b/Botan-1.10.17.tgz deleted file mode 100644 index 21f22ce..0000000 --- a/Botan-1.10.17.tgz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6847ffb64b8d2f939dccfecc17bd2c80385d08f7621e2c56d3a335118e823613 -size 2706678 diff --git a/Botan-1.10.17.tgz.asc b/Botan-1.10.17.tgz.asc deleted file mode 100644 index 513150f..0000000 --- a/Botan-1.10.17.tgz.asc +++ /dev/null @@ -1,11 +0,0 @@ ------BEGIN PGP SIGNATURE----- - -iQEzBAABCAAdFiEEYh2vZBHhhRxM+aLhYhHr8e+637wFAlnSZaQACgkQYhHr8e+6 -37xtgwf+KcmgrrfzAF6HLJJwOvMom+SnpHShvoMPqfmXwhvKELCQ8TypARF7Zbjw -e6M6Nvb/u2PhEoEX4p2vYPLxxtz+la5xXBa+UDbSO9nppFe0z6qIyR793gYWaUUT -vBonBeComOtn5vYEQ6Xj+X8JjH3xK1oKX+jNWHLKHcMUoNdRdu3dYS9Tkbvyy9DY -yjUrOE9/N8ATjSN9dEC0Xa29CMhgYxquIz6FuMspPxJHHD5/GrP+h5LfnR76vkaK -CBilE9VEYoLSTDQyHb6g0/Fz1l+YM159oe2SmFdOGBzI02EkYGBXxYc9fSpw92oH -rokKA1Q23WpaK0bzduvduBreYtIpsw== -=1D+U ------END PGP SIGNATURE----- diff --git a/Botan-2.4.0.tgz b/Botan-2.4.0.tgz new file mode 100644 index 0000000..9d35abd --- /dev/null +++ b/Botan-2.4.0.tgz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ed9464e2a5cfee4cd3d9bd7a8f80673b45c8a0718db2181a73f5465a606608a5 +size 6530714 diff --git a/Botan-2.4.0.tgz.asc b/Botan-2.4.0.tgz.asc new file mode 100644 index 0000000..ab2319d --- /dev/null +++ b/Botan-2.4.0.tgz.asc @@ -0,0 +1,11 @@ +-----BEGIN PGP SIGNATURE----- + +iQEzBAABCAAdFiEEYh2vZBHhhRxM+aLhYhHr8e+637wFAlpTjj0ACgkQYhHr8e+6 +37y8gQf/Z9fXByA70qe3CRKpdO3WYiHTg4ff0YyRPCN5Ud5Sp5nWncyNpdDGgD/l +HjBL6nAydp1g/3M2JLpIuepkqwP8iZLw3ZA+3eDhlnbNAY0sw+0SGpqVrv5zE57j +F69c+ZYqXkabFNBGZHtTilevYyW29G8i0dbCyzYxX2JOAu0JoRs2IYDRYUl60Fz9 +TYCBZjcOGFw7FdE33dR4paRziSOMJV0RsnMRquM0P/CvFn6k/UG2Wx/s+UrhD2Oy +f5t/N5cs8jahQaOYXft0V+Bgv8JyA8mHerxSioI7z10dIYQykAnpkX3x1k8vbJRn +LKIAvJaMDKGMNw4xarWLUqqtShMwUw== +=DSh9 +-----END PGP SIGNATURE----- diff --git a/Botan-fix_install_paths.patch b/Botan-fix_install_paths.patch deleted file mode 100644 index bde6fa6..0000000 --- a/Botan-fix_install_paths.patch +++ /dev/null @@ -1,61 +0,0 @@ -Index: src/build-data/makefile/unix.in -=================================================================== ---- src/build-data/makefile/unix.in.orig 2011-06-21 17:33:59.550471797 +0200 -+++ src/build-data/makefile/unix.in 2011-06-21 17:35:52.643901474 +0200 -@@ -12,12 +12,12 @@ VERSION = %{version} - SERIES = %{version_major}.%{version_minor} - - # Installation Settings --DESTDIR = %{prefix} -+DESTDIR = - --BINDIR = $(DESTDIR)/bin --LIBDIR = $(DESTDIR)/%{libdir} --HEADERDIR = $(DESTDIR)/%{includedir}/botan-$(SERIES)/botan --DOCDIR = $(DESTDIR)/%{docdir}/botan-$(VERSION) -+BINDIR = $(DESTDIR)%{prefix}/bin -+LIBDIR = $(DESTDIR)%{libdir} -+HEADERDIR = $(DESTDIR)%{includedir}/botan-$(SERIES)/botan -+DOCDIR = $(DESTDIR)%{docdir}/Botan-$(VERSION) - PKGCONF_DIR = $(LIBDIR)/pkgconfig - - CONFIG_SCRIPT = %{botan_config} -Index: src/build-data/makefile/unix_shr.in -=================================================================== ---- src/build-data/makefile/unix_shr.in.orig 2011-06-21 17:33:59.550471797 +0200 -+++ src/build-data/makefile/unix_shr.in 2011-06-21 17:35:50.812926900 +0200 -@@ -14,12 +14,12 @@ VERSION = %{version} - SERIES = %{version_major}.%{version_minor} - - # Installation Settings --DESTDIR = %{prefix} -+DESTDIR = - --BINDIR = $(DESTDIR)/bin --LIBDIR = $(DESTDIR)/%{libdir} --HEADERDIR = $(DESTDIR)/%{includedir}/botan-$(SERIES)/botan --DOCDIR = $(DESTDIR)/%{docdir}/botan-$(VERSION) -+BINDIR = $(DESTDIR)%{prefix}/bin -+LIBDIR = $(DESTDIR)%{libdir} -+HEADERDIR = $(DESTDIR)%{includedir}/botan-$(SERIES)/botan -+DOCDIR = $(DESTDIR)%{docdir}/Botan-$(VERSION) - PKGCONF_DIR = $(LIBDIR)/pkgconfig - - CONFIG_SCRIPT = %{botan_config} ---- src/build-data/botan-config.in.orig 2016-05-13 00:45:07.618245779 +0200 -+++ src/build-data/botan-config.in 2016-05-13 00:45:38.386439746 +0200 -@@ -32,12 +32,12 @@ while test $# -gt 0; do - exit 0 - ;; - --cflags) -- echo -I$prefix/$includedir -+ echo -I$includedir - ;; - --libs) - if [ $prefix != "/usr" ] - then -- echo -L$prefix/$libdir -lbotan-%{version_major}.%{version_minor} %{link_to} -+ echo -L$libdir -lbotan-%{version_major}.%{version_minor} %{link_to} - else - echo -lbotan-%{version_major}.%{version_minor} %{link_to} - fi diff --git a/Botan-fix_pkgconfig.patch b/Botan-fix_pkgconfig.patch deleted file mode 100644 index 7dfcb6e..0000000 --- a/Botan-fix_pkgconfig.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- src/build-data/botan.pc.in.orig 2016-05-13 00:48:09.219402555 +0200 -+++ src/build-data/botan.pc.in 2016-05-13 00:48:57.479714720 +0200 -@@ -1,6 +1,6 @@ - prefix=%{prefix} - exec_prefix=${prefix} --libdir=${prefix}/%{libdir} -+libdir=%{libdir} - includedir=${prefix}/include/botan-%{version_major}.%{version_minor} - - Name: Botan diff --git a/Botan-inttypes.patch b/Botan-inttypes.patch deleted file mode 100644 index 63b54b8..0000000 --- a/Botan-inttypes.patch +++ /dev/null @@ -1,51 +0,0 @@ -Index: src/utils/types.h -=================================================================== ---- src/utils/types.h.orig 2011-06-20 15:52:09.000000000 +0200 -+++ src/utils/types.h 2011-06-21 16:48:39.324325773 +0200 -@@ -9,8 +9,8 @@ - #define BOTAN_TYPES_H__ - - #include --#include -- -+#include -+#include - /** - * The primary namespace for the botan library - */ -@@ -19,22 +19,22 @@ namespace Botan { - /** - * Typedef representing an unsigned 8-bit quantity - */ --typedef unsigned char byte; -+typedef uint8_t byte; - - /** - * Typedef representing an unsigned 16-bit quantity - */ --typedef unsigned short u16bit; -+typedef uint16_t u16bit; - - /** - * Typedef representing an unsigned 32-bit quantity - */ --typedef unsigned int u32bit; -+typedef uint32_t u32bit; - - /** - * Typedef representing a signed 32-bit quantity - */ --typedef signed int s32bit; -+typedef int32_t s32bit; - - /** - * Typedef representing an unsigned 64-bit quantity -@@ -44,7 +44,7 @@ typedef signed int s32bit; - #elif defined(__KCC) - typedef unsigned __long_long u64bit; - #elif defined(__GNUG__) -- __extension__ typedef unsigned long long u64bit; -+ __extension__ typedef uint64_t u64bit; - #else - typedef unsigned long long u64bit; - #endif diff --git a/Botan-no-buildtime.patch b/Botan-no-buildtime.patch deleted file mode 100644 index 1ffe926..0000000 --- a/Botan-no-buildtime.patch +++ /dev/null @@ -1,15 +0,0 @@ -Index: src/build-data/buildh.in -=================================================================== ---- src/build-data/buildh.in.orig 2011-06-20 15:52:09.000000000 +0200 -+++ src/build-data/buildh.in 2011-06-21 14:54:51.287402063 +0200 -@@ -3,8 +3,8 @@ - #define BOTAN_BUILD_CONFIG_H__ - - /* --* This file was automatically generated %{timestamp} UTC by --* %{user}@%{hostname} running '%{command_line}' -+* This file was automatically generated by -+* %{user} running '%{command_line}' - * - * Target - * - Compiler: %{cc} %{lib_opt} %{mach_opt} diff --git a/Botan-ull_constants.patch.bz2 b/Botan-ull_constants.patch.bz2 deleted file mode 100644 index aa8a999..0000000 --- a/Botan-ull_constants.patch.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:507d8a827c6fcdfa05cba39af5fd7a8a868b062cf10bce0860d63c2592654d46 -size 4718 diff --git a/Botan.changes b/Botan.changes index 1f1834f..ae1f193 100644 --- a/Botan.changes +++ b/Botan.changes @@ -1,3 +1,308 @@ +------------------------------------------------------------------- +Fri Feb 16 16:07:40 UTC 2018 - sleep_walker@opensuse.org + +- drop explicit package requirements +- split binary package and documentation from dynamic library package +- merge back Botan2 package to Botan with changelog history +- drop Botan patches + aarch64-support.patch - doesn't seem to be required anymore + Botan-fix_install_paths.patch - doesn't seem to be required + no-cpuid-header.patch - SLE11 not target anymore + Botan-fix_pkgconfig.patch - this seem to be wrong + Botan-no-buildtime.patch - not needed anymore + dont-set-mach-value.diff - doesn't apply, unclear and undocumented why it is there + Botan-inttypes.patch - not required + Botan-ull_constants.patch.bz2 - no reason anymore + +------------------------------------------------------------------- +Wed Feb 14 10:29:44 UTC 2018 - sleep_walker@opensuse.org + +- change group of libbotan-%{version_suffix} to 'System/Libraries' as + requested on review + +------------------------------------------------------------------- +Mon Feb 12 07:45:50 UTC 2018 - adam.majer@suse.de + +- Don't drop -fstack-clash-protection for openSUSE 42.3 - we just + need the Update repository present. + +------------------------------------------------------------------- +Mon Feb 12 06:38:47 UTC 2018 - adam.majer@suse.de + +- Rename libbotan-devel to libbotan2-devel. We can't have clashing + packages in the archive because Botan1 and Botan2 provide the + same -devel binary. Botan2 is also no API compatible with Botan. + +------------------------------------------------------------------- +Sun Feb 11 10:33:35 UTC 2018 - sleep_walker@opensuse.org + +- fix expected version after bump in baselibs.conf too + +------------------------------------------------------------------- +Thu Feb 8 14:11:08 UTC 2018 - sleep_walker@opensuse.org + +- fix unknown flag -fstack-clash-protection for openSUSE 42.3 +- rename to Botan2 +- drop Botan2-INT_MAX.patch as not needed anymore +- Bump to libbotan 2.4 + + Changes and new features: + + * Several build improvements requested by downstream packagers, + including the ability to disable building the static library. All + makefile constructs that were specific to nmake or GNU make have + been eliminated, thus the option ``--makefile-style`` which was + previously used to select the makefile type has also been + removed. (GH #1230 #1237 #1300 #1318 #1319 #1324 #1325 #1346) + + * Support for negotiating the DH group as specified in RFC 7919 is + now available in TLS (GH #1263) + + * Support for ARIA-GCM ciphersuites are now available in TLS. They + are disabled by default. (GH #1284) + + * Add support for generating and verifying X.509 objects + (certificates, CRLs, etc) using RSA-PSS signatures (GH #1270 and + #1368) + + * Add support for AES key wrapping with padding, as specified in RFC + 5649 and NIST SP 800-38F (GH #1301) + + * OCSP requests made during certificate verification had the + potential to hang forever. Now the sockets are non-blocking and a + timeout is enforced. (GH #1360 fixing GH #1326) + + * Add ``Public_Key::fingerprint_public`` which allows fingerprinting + the public key. + The previously available ``Private_Key::fingerprint`` is + deprecated, now ``Private_Key::fingerprint_private`` should be + used if this is required. (GH #1357) + + * ECC certificates generated by Botan used an invalid encoding for + the parameters field, which was rejected by some certificate + validation libraries notably BouncyCastle. (GH #1367) + + * Loading an ECC key which used OID encoding for the domain + parameters, then saving it, would result in a key using the + explicit parameters encoding. Now the OID encoding is + retained. (GH #1365) + + * Correct various problems in certificate path validation that arose + when multiple paths could be constructed leading to a trusted root + but due to other constraints only some of them validated. (GH + #1363) + + * It is now possible for certificate validation to return warning + indicators, such as that the distinguished name is not within + allowed limits or that a certificate with a negative serial number + was observed. (GH #1363 #1359) + + * XMSS signatures now are multi-threaded for improved performance + (GH #1267) + + * Fix a bug that caused the TLS peer cert list to be empty on a + resumed session. (GH #1303 #1342) + + * Increase the maximum HMAC key length from 512 bytes to 4096 + bytes. This allows using a DH key exchange in TLS with a group + greater than 4096 bits. (GH #1316) + + * Fix a bug in the TLS server where, on receiving an SSLv3 client + hello, it would attempt to negotiate TLS v1.2. Now a + protocol_version alert is sent. Found with tlsfuzzer. (GH #1316) + + * Fix several bugs related to sending the wrong TLS alert type in + various error scenarios, caught with tlsfuzzer. + + * Add support for a ``tls_http_server`` command line utility which + responds to simple GET requests. This is useful for testing + against a browser, or various TLS test tools which expect the + underlying protocol to be HTTP. (GH #1315) + + * Add an interface for generic PSK data stores, as well as an + implementation which encrypts stored values with AES key + wrapping. (GH #1302) + + * Optimize GCM mode on systems both with and without carryless + multiply support. This includes a new base case implementation + (still constant time), a new SSSE3 implementation for systems with + SSSE3 but not clmul, and better algorithms for systems with clmul + and pmull. (GH #1253 #1263) + + * Various optimizations for OCB, CFB, CTR, SM3, SM4, GMAC, BLAKE2b, + Blowfish, Twofish, CAST-128, and CRC24 (GH #1281) + + * Salsa20 now supports the seek operation. + + * Add ``EC_Group::known_named_groups`` (GH #1339) + + * Symmetric algorithms (block ciphers, stream ciphers, MACs) now + verify that a key was set before accepting data. Previously + attempting to use an unkeyed object would instead result in either + a crash or invalid outputs. (GH #1279) + + * The X509 certificate, CRL and PKCS10 types have been heavily + refactored internally. Previously all data of these types was + serialized to strings, then in the event a more complicated data + structure (such as X509_DN) was needed, it would be recreated from + the string representation. However the round trip process was not + perfect and could cause fields to become lost. This approach is no + longer used, fixing several bugs (GH #1010 #1089 #1242 #1252). The + internal data is now stored in a ``shared_ptr``, so copying such + objects is now very cheap. (GH #884) + + * ASN.1 string objects previously held their contents as ISO 8859-1 + codepoints. However this led to certificates which contained + strings outside of this character set (eg in Cyrillic, Greek, or + Chinese) being rejected. Now the strings are always converted to + UTF-8, which allows representing any character. In addition, UCS-4 + strings are now supported. (GH #1113 #1250 #1287 #1289) + + * It is now possible to create an uninitialized X509_Certificate + object. Such an object will throw if any attempt to access its + members is made. (GH #1335) + + * In BER decoder, avoid unbounded stack recursion when parsing + nested indefinite length values. Now at most 16 nested indefinite + length values are accepted, anything deeper resulting in a + decoding error. (GH #1304 OSS-Fuzz 4353). + + * A new ASN.1 printer API allows generating a string representation + of arbitrary BER data. This is used in the ``asn1print`` command + line utility and may be useful in other applications, for instance + for debugging. + + * New functions for bit rotations that distinguish rotating by a + compile-time constant vs a runtime variable rotation. This allows + better optimizations in both cases. Notably performance of + CAST-128 and CAST-256 are substantially improved. (GH #1247) + + * TLS CBC ciphersuites now are implemented using the standard CBC + code, instead of reimplementing CBC inside the TLS stack. This + allows for parallel decryption of TLS CBC ciphertexts, and + improves performance especially when using AES hardware + support. (GH #1269) + + * Add callbacks to make it possible for an application using TLS to + provide custom implementations of signature schemes, eg when + offloading the computations to another device. (GH #1332) + + * Use a direct calculation for calendar computations instead of + relying on non-portable operating system interfaces. (GH #1336) + + * Fix a bug in the amalgamation generation which could cause build + failures on some systems including macOS. (GH #1264 #1265) + + * A particular code sequence in TLS handshake would always (with an + ECC ciphersuite) result in an exception being thrown and then + caught. This has changed so no exception is thrown. (GH #1275) + + * The code for byteswapping has been improved for ARMv7 and for + Windows x86-64 systems using MSVC. (GH #1274) + + * The GMAC class no longer derives from GHASH. This should not cause + any noticeable change for applications. (GH #1253) + + * The base implementation of AES now uses a single 4K table, instead + of 4 such tables. This offers a significant improvement against + cache-based side channels without hurting performance too much. In + addition the table is now guaranteed to be aligned on a cache + line, which ensures the additional countermeasure of reading each + cache line works as expected. (GH #1255) + + * In TLS client resumption, avoid sending a OCSP stapling + request. This caused resumption failures with some servers. (GH + #1276) + + * The overhead of making a call through the FFI layer has been + reduced. + + * The IDs for SHA-3 PKCSv1.5 signatures added in 2.3.0 were + incorrect. They have been changed to use the correct encoding, and + a test added to ensure such errors do not recur. + + * Counter mode allows setting a configurable width of the + counter. Previously it was allowed for a counter of even 8 bits + wide, which would mean the keystream would repeat after just 256 + blocks. Now it requires the width be at least 32 bits. The only + way this feature could be used was by manually constructing a + ``CTR_BE`` object and setting the second parameter to something in + the range of 1 to 3. + + * A new mechanism for formatting ASN.1 data is included in + ``asn1_print.h``. This is the same functionality used by the + command line ``asn1print`` util, now cleaned up and moved to the + library. + + * Add ``Pipe::append_filter``. This is like the existing + (deprecated) ``Pipe::append``, the difference being that + ``append_filter`` only allows modification before the first call + to ``start_msg``. (GH #1306 #1307) + + * The size of ASN1_Tag is increased to 32 bits. This avoids a + problem with UbSan (GH #751) + + * Fix a bug affecting bzip2 compression. In certain circumstances, + compression would fail with ``BZ_SEQUENCE_ERROR`` due to calling + bzlib in an way it does not support. (GH #1308 #1309) + + * In 2.3.0, final annotations were added to many classes including + the TLS policies (like ``Strict_Policy`` and + ``BSI_TR_02102_2``). However it is reasonable and useful for an + application to derive from one of these policies, so as to create + an application specific policy that is based on a library-provided + policy, but with a few tweaks. So the final annotations have been + removed on these classes. (GH #1292) + + * A new option ``--with-pdf`` enables building a PDF copy of the + handbook. (GH #1337) + + * A new option ``--with-rst2man`` enables building a man page for + the command line util using Docutils rst2man. (GH #1349) + + * Support for NEON is now enabled under Clang. + + * Now the compiler version is detected using the preprocessor, + instead of trying to parse the output of the compiler's version + string, which was subject to problems with localization. (GH + #1358) + + * By default the gzip compressor will not include a timestamp in the + header. The timestamp can be set by passing it to the + ``Gzip_Compression`` constructor. + + * Resolve a performance regression on Windows involving the system + stats entropy source. (GH #1369) + + * Add an OID for RIPEMD-160 + + * Fixes for CMake build (GH #1251) + + * Avoid some signed overflow warnings (GH #1220 #1245) + + * As upstream support for Native Client has been deprecated by + Google, support is now also deprecated in Botan and will be + removed in a future release. + + * The Perl-XS wrapper has not been maintained in many years. It is + now deprecated, and if no attempts are made to revive it, it will + be removed in a future release. + + * Support for building on IRIX has been removed. + +------------------------------------------------------------------- +Thu Jan 11 12:55:50 UTC 2018 - i@marguerite.su + +- add Botan2-INT_MAX.patch + * Fix “INT_MAX was not declared in this scope” + in openSUSE Leap 42.1 + +------------------------------------------------------------------- +Mon Jan 8 11:25:54 UTC 2018 - i@marguerite.su + +- fix build. python3 configure itself is useless, + we should make package python3 too. + ------------------------------------------------------------------- Wed Nov 1 14:26:47 UTC 2017 - mimi.vx@gmail.com diff --git a/Botan.spec b/Botan.spec index 4b41471..bbfc828 100644 --- a/Botan.spec +++ b/Botan.spec @@ -1,7 +1,7 @@ # # spec file for package Botan # -# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -16,44 +16,29 @@ # -%define version_suffix 1_10-1 -%define short_version 1.10 +%define version_suffix 2-4 +%define short_version 2 Name: Botan -Version: 1.10.17 +Version: 2.4.0 Release: 0 Summary: A C++ Crypto Library License: BSD-2-Clause Group: Development/Libraries/C and C++ Url: http://botan.randombit.net -Source0: http://botan.randombit.net/releases/%{name}-%{version}.tgz -Source1: http://botan.randombit.net/releases/%{name}-%{version}.tgz.asc +Source0: http://botan.randombit.net/releases/Botan-%{version}.tgz +Source1: http://botan.randombit.net/releases/Botan-%{version}.tgz.asc Source2: %{name}.keyring Source3: baselibs.conf -Patch0: Botan-inttypes.patch -Patch1: Botan-ull_constants.patch.bz2 -Patch2: Botan-fix_install_paths.patch -Patch4: Botan-no-buildtime.patch -Patch6: Botan-fix_pkgconfig.patch -Patch7: dont-set-mach-value.diff -Patch8: aarch64-support.patch -Patch10: no-cpuid-header.patch BuildRequires: bzip2 >= 1.0.2 BuildRequires: gcc-c++ +# FIXME: is this dependency correct? BuildRequires: gmp-devel >= 4.1 +#Requires: gmp >= 4.1 BuildRequires: libbz2-devel -# Botan 1.x doesn't build with OpenSSL 1.1, so explicitly require OpenSSL 1.0.x -%if %{suse_version} < 1330 BuildRequires: openssl-devel -%else -BuildRequires: libopenssl-1_0_0-devel -%endif -BuildRequires: pkg-config +BuildRequires: pkgconfig BuildRequires: python3 BuildRequires: zlib-devel -Requires: bzip2 >= 1.0.2 -Requires: gmp >= 4.1 -Requires: zlib -BuildRoot: %{_tmppath}/%{name}-%{version}-build %description Botan is a C++ library that provides support for many common @@ -61,9 +46,9 @@ cryptographic operations, including encryption, authentication, and X.509v3 certificates and CRLs. A wide variety of algorithms is supported, including RSA, DSA, DES, AES, MD5, and SHA-1. -%package -n libbotan-%{version_suffix} +%package -n libbotan-%{version_suffix} Summary: A C++ Crypto Library -Group: Development/Libraries/C and C++ +Group: System/Libraries %description -n libbotan-%{version_suffix} Botan is a C++ library that provides support for many common @@ -71,68 +56,77 @@ cryptographic operations, including encryption, authentication, and X.509v3 certificates and CRLs. A wide variety of algorithms is supported, including RSA, DSA, DES, AES, MD5, and SHA-1. -%package -n libbotan-devel -%define botan_docdir %{_docdir}/%{name}-%{version} +%package -n libbotan-devel Summary: Development files for Botan Group: Development/Libraries/C and C++ -Requires: gmp-devel >= 4.1 Requires: libbotan-%{version_suffix} = %{version} Requires: libbz2-devel Provides: Botan-devel = %{version} Obsoletes: Botan-devel < %{version} -%description -n libbotan-devel +%description -n libbotan-devel This package contains the header files and libraries needed to develop programs that use the Botan library. +%package -n python3-botan +Summary: Botan python bindings +Group: Development/Languages/Python +Requires: python3 + +%description -n python3-botan +This package contains the python bindings to libbotan's C98 interface. + +%package doc +%define botan_docdir %{_docdir}/botan-%{version} +Summary: Documentation of Botan +Group: Development/Libraries/C and C++ + +%description doc +Documentation of Botan package. + %prep -%setup -q -%patch0 -%patch1 -%patch2 -%patch4 -%patch6 -%patch7 -p1 -%patch8 -p1 -%if 0%{?suse_version} == 1110 -%patch10 -p1 -%endif +%setup -q -n Botan-%{version} %build export RPM_OPT_FLAGS - python3 ./configure.py \ --prefix=%{_prefix} \ + --bindir=%{_bindir} \ --libdir=%{_libdir} \ --docdir=%{_defaultdocdir} \ --includedir=%{_includedir} \ --with-bzip2 \ --with-zlib \ - --with-gnump \ --with-openssl \ - --with-tr1-implementation=system \ --cpu=%{_target_cpu} make %{?_smp_mflags} WARN_FLAGS="%{optflags}" %install -make DESTDIR=%{buildroot} install %{?_smp_mflags} +sed -i 's/env python/env python3/' src/scripts/install.py +%make_install rm -f %{buildroot}/%{_libdir}/libbotan*.a +chmod +x %{buildroot}%{python3_sitearch}/botan2.py +sed -i '1s@^#!/.*@#!%{_bindir}/python3@' %{buildroot}%{python3_sitearch}/botan2.py %post -n libbotan-%{version_suffix} -p /sbin/ldconfig - %postun -n libbotan-%{version_suffix} -p /sbin/ldconfig -%files -n libbotan-%{version_suffix} -%defattr(-,root,root) +%files +%{_bindir}/botan + +%files doc %docdir %{botan_docdir} %{botan_docdir} + +%files -n libbotan-%{version_suffix} %{_libdir}/libbotan-%{short_version}.so.* %files -n libbotan-devel -%defattr(-,root,root) %{_libdir}/libbotan-%{short_version}.so %{_libdir}/pkgconfig/botan-%{short_version}.pc %{_includedir}/botan-%{short_version} -%{_bindir}/botan-config-%{short_version} + +%files -n python3-botan +%{python3_sitearch}/botan2.py %changelog diff --git a/aarch64-support.patch b/aarch64-support.patch deleted file mode 100644 index 6c8e555..0000000 --- a/aarch64-support.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff --git a/src/build-data/arch/aarch64.txt b/src/build-data/arch/aarch64.txt -index 863b000c5..9ea51c936 100644 ---- a/src/build-data/arch/aarch64.txt -+++ b/src/build-data/arch/aarch64.txt -@@ -2,5 +2,6 @@ endian little - - - arm64 # For Debian -+armv8 # For SUSE - - diff --git a/baselibs.conf b/baselibs.conf index 25f44da..74339b5 100644 --- a/baselibs.conf +++ b/baselibs.conf @@ -1,4 +1,4 @@ -libbotan-1_10-1 +libbotan-2-4 libbotan-devel requires -libbotan- = - requires "libbotan-1_10-1- = " + requires "libbotan-2-4- = " diff --git a/dont-set-mach-value.diff b/dont-set-mach-value.diff deleted file mode 100644 index 258c975..0000000 --- a/dont-set-mach-value.diff +++ /dev/null @@ -1,17 +0,0 @@ ---- - configure.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -Index: Botan-1.10.14/configure.py -=================================================================== ---- Botan-1.10.14.orig/configure.py 2016-11-28 11:52:20.000000000 +0100 -+++ Botan-1.10.14/configure.py 2016-12-28 10:59:39.592584921 +0100 -@@ -1140,7 +1140,7 @@ def create_template_vars(build_config, o - options.cpu, options.debug_build), - - 'lib_opt': cc.library_opt_flags(options), -- 'mach_opt': cc.mach_opts(options.arch, options.cpu), -+ 'mach_opt': '', - 'check_opt': '' if options.no_optimizations else cc.check_opt_flags, - 'lang_flags': cc.lang_flags + options.extra_flags, - 'warn_flags': warning_flags(cc.warning_flags, diff --git a/no-cpuid-header.patch b/no-cpuid-header.patch deleted file mode 100644 index 5285208..0000000 --- a/no-cpuid-header.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/src/utils/cpuid.cpp b/src/utils/cpuid.cpp -index f6581f09c..ae087fac3 100644 ---- a/src/utils/cpuid.cpp -+++ b/src/utils/cpuid.cpp -@@ -36,7 +36,7 @@ - #include - #define CALL_CPUID(type, out) do { __cpuid(out, type); } while(0) - --#elif defined(BOTAN_BUILD_COMPILER_IS_GCC) && (BOTAN_GCC_VERSION >= 430) -+#elif defined(BOTAN_BUILD_COMPILER_IS_GCC) && 0 - - // Only available starting in GCC 4.3 - #include