File xerces-c.spec of Package xerces-c.21243

#
# spec file for package xerces-c
#
# Copyright (c) 2016 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/
#


Name:           xerces-c
Version:        3.1.4
Release:        0
Summary:        A Validating XML Parser
License:        Apache-2.0
Group:          Productivity/Publishing/XML
Url:            http://xerces.apache.org/xerces-c/
Source0:        http://www.apache.org/dist/xerces/c/3/sources/%{name}-%{version}.tar.gz
Source1:        http://www.apache.org/dist/xerces/c/3/sources/%{name}-%{version}.tar.gz.asc
Source2:        %{name}.keyring
Source3:        baselibs.conf
Patch0:         xerces-c-CVE-2017-12627.patch
# PATCH-FIX-SLE bsc#1159552 danilo.spinella@suse.com -- the XML parser contains a use-after-free
# triggered during the scanning of external DTDs potentially leading to DOS
Patch1:         xerces-c-CVE-2018-1311.patch
BuildRequires:  fdupes
BuildRequires:  gcc-c++
BuildRequires:  pkgconfig
BuildRequires:  pkgconfig(icu-i18n)
BuildRequires:  pkgconfig(libcurl)
BuildRoot:      %{_tmppath}/%{name}-%{version}-build

%description
Xerces-C is a validating XML parser written in a portable subset of
C++. Xerces-C makes it easy to give your application the ability to
read and write XML data. A shared library is provided for parsing,
generating, manipulating, and validating XML documents. Xerces-C is
faithful to the XML 1.0 recommendation and associated standards ( DOM
1.0, DOM 2.0. SAX 1.0, SAX 2.0, Namespaces).

%package doc
Summary:        Documentation for %{name}
Group:          Documentation/Other

%description doc
Xerces-C is a validating XML parser written in a portable subset of
C++. Xerces-C makes it easy to give your application the ability to
read and write XML data. A shared library is provided for parsing,
generating, manipulating, and validating XML documents. Xerces-C is
faithful to the XML 1.0 recommendation and associated standards ( DOM
1.0, DOM 2.0. SAX 1.0, SAX 2.0, Namespaces).

This package contains just documentation.

%package -n libxerces-c-3_1
Summary:        Shared libraries for Xerces-c - a validating XML parser
Group:          Productivity/Publishing/XML
Provides:       Xerces-c = %{version}
Obsoletes:      Xerces-c < %{version}

%description -n libxerces-c-3_1
Xerces-C is a validating XML parser written in a portable subset of
C++. Xerces-C makes it easy to give your application the ability to
read and write XML data. A shared library is provided for parsing,
generating, manipulating, and validating XML documents. Xerces-C is
faithful to the XML 1.0 recommendation and associated standards ( DOM
1.0, DOM 2.0. SAX 1.0, SAX 2.0, Namespaces).

This package contains shared libraries.

%package -n libxerces-c-devel
Summary:        A validating XML parser - Development Files
Group:          Development/Libraries/C and C++
Requires:       libxerces-c-3_1 = %{version}
Provides:       Xerces-c-devel = %{version}
Obsoletes:      Xerces-c-devel < %{version}
Provides:       libXerces-c-devel = %{version}
Obsoletes:      libXerces-c-devel < %{version}

%description -n libxerces-c-devel
Xerces-C is a validating XML parser written in a portable subset of
C++. Xerces-C makes it easy to give your application the ability to
read and write XML data. A shared library is provided for parsing,
generating, manipulating, and validating XML documents.

This package includes files needed for development with Xerces-c

%prep
%setup -q -n xerces-c-%{version}
%patch0 -p1
%patch1 -p1

%build
find . -type d -name .svn -exec rm -Rf "{}" "+"
%configure \
%ifnarch x86_64
    --disable-sse2 \
%endif
    --enable-netaccessor-curl \
    --disable-static \
    --disable-pretty-make
make %{?_smp_mflags}

%install
make %{?_smp_mflags} DESTDIR=%{buildroot} install
find %{buildroot} -type f -name "*.la" -delete -print
%fdupes -s doc

%post -n libxerces-c-3_1 -p /sbin/ldconfig
%postun -n libxerces-c-3_1 -p /sbin/ldconfig

%files
%defattr(-,root,root)
%doc CREDITS KEYS LICENSE NOTICE README
%{_bindir}/*

%files doc
%defattr(-,root,root)
%doc CREDITS KEYS LICENSE NOTICE README
%doc doc/*

%files -n libxerces-c-3_1
%defattr(-,root,root)
%{_libdir}/libxerces-c-3.1.so

%files -n libxerces-c-devel
%defattr(-,root,root)
%{_includedir}/xercesc
%{_libdir}/libxerces-c.so
%{_libdir}/pkgconfig/xerces-c.pc

%changelog
openSUSE Build Service is sponsored by