# - fix build without libxml2-devel (python library uses old headers)
#
# Conditional build:
-%bcond_without apidocs # do not build and package API docs
+%bcond_without apidocs # API documentation
+%bcond_with ftp # FTP support
+%bcond_without legacy # legacy API support
%bcond_without python2 # CPython 2.x module
%bcond_without python3 # CPython 3.x module
%bcond_without static_libs # static library
Summary(pl.UTF-8): Biblioteka libXML wersja 2
Summary(pt_BR.UTF-8): Biblioteca libXML versão 2
Name: libxml2
-Version: 2.9.9
+Version: 2.11.5
Release: 1
Epoch: 1
License: MIT
Group: Libraries
-Source0: ftp://xmlsoft.org/libxml2/%{name}-%{version}.tar.gz
-# Source0-md5: c04a5a0a042eaa157e8e8c9eabe76bd6
-Patch0: %{name}-man_fixes.patch
-Patch1: %{name}-open.gz.patch
-Patch2: %{name}-largefile.patch
-
-Patch4: %{name}-libx32.patch
-# Patch5-md5: be948499ae913253ad06ae2b0d0c2f12
+#Source0: ftp://xmlsoft.org/libxml2/%{name}-%{version}.tar.gz
+Source0: https://download.gnome.org/sources/libxml2/2.11/%{name}-%{version}.tar.xz
+# Source0-md5: b2e7332289f5784087448a0717f45ac3
+Patch0: %{name}-open.gz.patch
+Patch1: %{name}-largefile.patch
+Patch2: %{name}-libx32.patch
+Patch3: %{name}-python-setup.patch
+# Fedora patches
+# https://bugzilla.gnome.org/show_bug.cgi?id=789714
+Patch11: %{name}-python3-unicode-errors.patch
URL: http://xmlsoft.org/
BuildRequires: autoconf >= 2.68
-BuildRequires: automake >= 1.4
+BuildRequires: automake >= 1:1.16.3
BuildRequires: libtool >= 2:2.0
+BuildRequires: pkgconfig
%if %{with python2}
-BuildRequires: python-devel >= 2.0
-BuildRequires: python-modules >= 2.0
+BuildRequires: python-devel >= 1:2.5
+BuildRequires: python-modules >= 1:2.5
+BuildRequires: python-setuptools
BuildRequires: rpm-pythonprov
%endif
%if %{with python3}
BuildRequires: python3-devel >= 1:3.2
BuildRequires: python3-modules >= 1:3.2
+BuildRequires: python3-setuptools
BuildRequires: rpm-pythonprov
%endif
+BuildRequires: rpm-build >= 4.6
BuildRequires: rpmbuild(macros) >= 1.714
+BuildRequires: tar >= 1:1.22
+BuildRequires: xz
BuildRequires: xz-devel
%{?with_zlib:BuildRequires: zlib-devel >= 1.2.3.3}
# history support in xmllint is disabled by default
Summary(pl.UTF-8): Dokumentacja API libxml2
Group: Documentation
Requires: gtk-doc-common
-%if "%{_rpmversion}" >= "5"
BuildArch: noarch
-%endif
%description apidocs
libxml2 API documentation.
Group: Libraries/Python
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: python-libs
-Obsoletes: libxml2-python
+Obsoletes: libxml2-python < 1:2.6
%description -n python-%{name}
This is the libxml2 module for Python 2.x, providing access to the
%prep
%setup -q
-%patch0 -p1
%if %{with zlib}
-%patch1 -p1
+%patch0 -p1
%endif
+%patch1 -p1
%patch2 -p1
-
-%patch4 -p1
+%patch3 -p1
+%patch11 -p1
%build
%{__libtoolize}
%{__automake}
%configure \
--disable-silent-rules \
- %{!?with_static_libs:--disable-static=no} \
- --without-python \
- %{!?with_zlib:--without-zlib} \
+ %{?with_static_libs:--enable-static} \
+ %{?with_ftp:--with-ftp} \
+ %{?with_legacy:--with-legacy} \
--with-lzma \
- --with%{!?with_mem_debug:out}-mem-debug
+ --with-mem-debug%{!?with_mem_debug:=no} \
+ --without-python \
+ %{!?with_zlib:--without-zlib}
%{__make}
cd ..
%endif
-
%if %{with python3}
cd python
%py3_build
%{__make} install \
DESTDIR=$RPM_BUILD_ROOT \
- devhelpdir=%{_gtkdocdir}/libxml2 \
- m4datadir=%{_aclocaldir} \
- pkgconfigdir=%{_pkgconfigdir}
+ devhelpdir=%{_gtkdocdir}/libxml2
%if %{with python2}
cd python
cd ..
%endif
-# move html doc to -devel package
-install -d $RPM_BUILD_ROOT%{_docdir}/%{name}-devel-%{version}
-%{__mv} $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/html \
- $RPM_BUILD_ROOT%{_docdir}/%{name}-devel-%{version}
-%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
+install -d $RPM_BUILD_ROOT%{_examplesdir}
+%{__mv} $RPM_BUILD_ROOT%{_docdir}/libxml2/examples $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
# install catalog file
install -d $RPM_BUILD_ROOT%{_sysconfdir}/xml
%files
%defattr(644,root,root,755)
-%doc AUTHORS ChangeLog Copyright NEWS README TODO
+%doc Copyright NEWS README.md
%attr(755,root,root) %{_libdir}/libxml2.so.*.*.*
%attr(755,root,root) %ghost %{_libdir}/libxml2.so.2
-%{_mandir}/man3/libxml.3*
-
%dir %{_sysconfdir}/xml
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xml/catalog
%files devel
%defattr(644,root,root,755)
-%doc %{_docdir}/%{name}-devel-%{version}
%attr(755,root,root) %{_bindir}/xml2-config
%attr(755,root,root) %{_libdir}/libxml2.so
%{_libdir}/libxml2.la
-%attr(755,root,root) %{_libdir}/xml2Conf.sh
%{_libdir}/cmake/libxml2
%{_pkgconfigdir}/libxml-2.0.pc
%{_aclocaldir}/libxml.m4
%if %{with apidocs}
%files apidocs
%defattr(644,root,root,755)
+%{_docdir}/%{name}
%{_gtkdocdir}/libxml2
+%{_examplesdir}/%{name}-%{version}
%endif
%files progs
%attr(755,root,root) %{py_sitedir}/libxml2mod.so
%{py_sitedir}/drv_libxml2.py[co]
%{py_sitedir}/libxml2.py[co]
-%if "%{py_ver}" > "2.4"
-%{py_sitedir}/libxml2_python-*.egg-info
-%endif
+%{py_sitedir}/libxml2_python-%{version}-py*.egg-info
%endif
%if %{with python3}