File xmltooling.spec of Package xmltooling.15367
#
# spec file for package xmltooling
#
# 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
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
%define opensaml_version 2.6.1
%define pkgdocdir %{_docdir}/%{name}
Name: xmltooling
Version: 1.6.4
Release: 0
Summary: OpenSAML XML library
License: Apache-2.0
Group: Development/Libraries/C and C++
Url: https://wiki.shibboleth.net/confluence/display/OpenSAML/XMLTooling-C
Source0: http://shibboleth.net/downloads/c++-opensaml/%{opensaml_version}/%{name}-%{version}.tar.bz2
Source1: http://shibboleth.net/downloads/c++-opensaml/%{opensaml_version}/%{name}-%{version}.tar.bz2.asc
Source2: %{name}.keyring
Patch0: xmltooling-1.5.5-doxygen_timestamp.patch
Patch1: 0001-CPPXT-110-OpenSSL-1.1-makes-X509_STORE_CTX-and-X509_.patch
Patch2: 0002-CPPXT-110-Add-new-OpenSSL-support-files-to-Unix-buil.patch
Patch3: 0003-CPPXT-110-OpenSSL-1.1-makes-DSA-opaque.patch
Patch4: 0004-CPPXT-110-OpenSSL-1.1-makes-EVP_PKEY-opaque.patch
Patch5: 0005-CPPXT-110-OpenSSL-1.1-removes-BIO_s_file_internal.patch
Patch6: 0006-CPPXT-110-OpenSSL-1.1-internalizes-locking.patch
Patch7: 0007-Unwind-previous.patch
Patch8: 0008-CPPXT-110-Checkin-prototypical-vcxproj.user-file-for.patch
Patch9: 0009-CPPXT-110-Start-to-add-tests-to-exercise-XSEC-paths-.patch
Patch10: 0010-CPPXT-110-Start-to-add-tests-to-exercise-XSEC-paths-.patch
Patch11: 0011-CPPXT-110-Clean-up-some-collateral-damage-from-previ.patch
Patch12: 0012-CPPXT-110-Add-test-path-for-RSA-loadXXXBigNums.patch
Patch13: 0013-CPPXT-110-Used-Named-curves-for-EC-testing.patch
Patch14: 0014-CPPXT-110-test-for-code-changes-to-OpenSSLCryptoKeyD.patch
Patch15: 0015-CPPXT-110-test-for-code-changes-to-OpenSSLCryptoKeyE.patch
Patch16: 0016-CPPXT-110-Round-trip-verify-test-for-OpenSSLCryptoKe.patch
Patch17: 0017-CPPXT-110-Inverted-parameters-to-TSM_ASSERT-in-DSA-t.patch
Patch18: 0018-CPPXT-110-Test-for-OpenSSL-part-of-ExplicitKeyTrustE.patch
Patch19: 0019-CPPXT-110-OpenSSL-1.1-makes-X509_STORE_CTX-and-X509_.patch
Patch20: 0020-CPPXT-110-Add-new-OpenSSL-support-files-to-Unix-buil.patch
Patch21: 0021-CPPXT-110-OpenSSL-1.1-makes-DSA-opaque.patch
Patch22: 0022-CPPXT-110-OpenSSL-1.1-makes-EVP_PKEY-opaque.patch
Patch23: 0023-CPPXT-110-OpenSSL-1.1-removes-BIO_s_file_internal.patch
Patch24: 0024-CPPXT-110-OpenSSL-1.1-internalizes-locking.patch
Patch25: 0025-CPPXT-110-OpenSSL-1.1-Fix-some-signatures-and-names.patch
Patch26: 0026-CPPXT-110-OpenSSL-1.1-library-names-have-changes.patch
Patch27: 0027-Commit-a-xmltoolingtest.vcxproj.user.patch
Patch28: 0028-CPPXT-110-OpenSSL-1.1-OpenSSL1.1-changes-to-newly-in.patch
Patch29: 0029-CPPXT-110-OpenSSL-1.1-Cleanup-tests.patch
Patch30: 0030-CPPXT-110-OpenSSL-1.1-New-build-mechanisms.patch
Patch31: 0031-Missed-file-for-OpenSSL1.1-support.patch
Patch32: xmltooling-1.6.4-CVE-2019-9628.patch
Patch33: xmltooling-1.6.4-fix_build_openssl_111.patch
BuildRequires: automake
BuildRequires: curl-devel >= 7.10.6
BuildRequires: doxygen
BuildRequires: gcc-c++
BuildRequires: liblog4shib-devel >= 1.0.4
BuildRequires: libtool
BuildRequires: libxerces-c-devel >= 3.1
BuildRequires: libxml-security-c-devel >= 1.7.3
BuildRequires: openssl-devel
BuildRequires: pkgconfig
%if 0%{?suse_version} > 1325
BuildRequires: libboost_headers-devel
%else
BuildRequires: boost-devel >= 1.32.0
%endif
%description
The XMLTooling library contains generic XML parsing and processing
classes based on the Xerces-C DOM. It adds more powerful facilities
for declaring element- and type-specific API and implementation
classes to add value around the DOM, as well as signing and encryption
support.
%package -n libxmltooling7
Summary: OpenSAML XMLTooling library
Group: System/Libraries
Provides: xmltooling = %{version}-%{release}
Obsoletes: xmltooling < %{version}-%{release}
%description -n libxmltooling7
The XMLTooling library contains generic XML parsing and processing
classes based on the Xerces-C DOM. It adds more powerful facilities
for declaring element- and type-specific API and implementation
classes to add value around the DOM, as well as signing and encryption
support.
This package contains just the shared library.
%package -n libxmltooling-devel
Summary: XMLTooling development Headers
Group: Development/Libraries/C and C++
Requires: curl-devel >= 7.10.6
Requires: liblog4shib-devel >= 1.0.4
Requires: libxerces-c-devel >= 3.1
Requires: libxml-security-c-devel >= 1.7.3
Requires: libxmltooling7 = %{version}-%{release}
Requires: openssl-devel
Provides: xmltooling-devel = %{version}-%{release}
Obsoletes: xmltooling-devel < %{version}-%{release}
%if 0%{?suse_version} > 1325
Requires: libboost_headers-devel
%else
Requires: boost-devel >= 1.32.0
%endif
%description -n libxmltooling-devel
The XMLTooling library contains generic XML parsing and processing
classes based on the Xerces-C DOM. It adds more powerful facilities
for declaring element- and type-specific API and implementation
classes to add value around the DOM, as well as signing and encryption
support.
This package includes files needed for development with XMLTooling.
%package -n xmltooling-schemas
Summary: XMLTooling schemas and catalog
Group: Development/Libraries/C and C++
%description -n xmltooling-schemas
The XMLTooling library contains generic XML parsing and processing
classes based on the Xerces-C DOM. It adds more powerful facilities
for declaring element- and type-specific API and implementation
classes to add value around the DOM, as well as signing and encryption
support.
This package includes XML schemas and related files.
%prep
%setup -q
%autopatch -p1
%build
autoreconf -fiv
%configure
make %{?_smp_mflags}
%install
make install DESTDIR=%{buildroot} pkgdocdir=%{pkgdocdir}
# Don't package unit tester if present.
rm -f %{buildroot}/%{_bindir}/xmltoolingtest
%check
make %{?_smp_mflags} check
%post -n libxmltooling7 -p /sbin/ldconfig
%postun -n libxmltooling7 -p /sbin/ldconfig
%files -n libxmltooling7
%{_libdir}/*.so.*
%files -n xmltooling-schemas
%dir %{_datadir}/xml/xmltooling
%{_datadir}/xml/xmltooling/*
%files -n libxmltooling-devel
%{_includedir}/*
%{_libdir}/*.so
%{_libdir}/pkgconfig/xmltooling.pc
%doc %{pkgdocdir}
%changelog