| %global with_python3 1 |
| |
| Summary: Library providing XML and HTML support |
| Name: libxml2 |
| Version: 2.9.12 |
| Release: 1%{?dist}%{?extra_release} |
| License: MIT |
| Group: Development/Libraries |
| Source: ftp://xmlsoft.org/libxml2/libxml2-%{version}.tar.gz |
| BuildRoot: %{_tmppath}/%{name}-%{version}-root |
| BuildRequires: python-devel |
| %if 0%{?with_python3} |
| BuildRequires: python3-devel |
| %endif # with_python3 |
| BuildRequires: zlib-devel |
| BuildRequires: pkgconfig |
| BuildRequires: xz-devel |
| URL: http://xmlsoft.org/ |
| |
| %description |
| This library allows to manipulate XML files. It includes support |
| to read, modify and write XML and HTML files. There is DTDs support |
| this includes parsing and validation even with complex DtDs, either |
| at parse time or later once the document has been modified. The output |
| can be a simple SAX stream or and in-memory DOM like representations. |
| In this case one can use the built-in XPath and XPointer implementation |
| to select sub nodes or ranges. A flexible Input/Output mechanism is |
| available, with existing HTTP and FTP modules and combined to an |
| URI library. |
| |
| %package devel |
| Summary: Libraries, includes, etc. to develop XML and HTML applications |
| Group: Development/Libraries |
| Requires: libxml2 = %{version}-%{release} |
| Requires: zlib-devel |
| Requires: xz-devel |
| Requires: pkgconfig |
| |
| %description devel |
| Libraries, include files, etc you can use to develop XML applications. |
| This library allows to manipulate XML files. It includes support |
| to read, modify and write XML and HTML files. There is DTDs support |
| this includes parsing and validation even with complex DtDs, either |
| at parse time or later once the document has been modified. The output |
| can be a simple SAX stream or and in-memory DOM like representations. |
| In this case one can use the built-in XPath and XPointer implementation |
| to select sub nodes or ranges. A flexible Input/Output mechanism is |
| available, with existing HTTP and FTP modules and combined to an |
| URI library. |
| |
| %package static |
| Summary: Static library for libxml2 |
| Group: Development/Libraries |
| Requires: libxml2 = %{version}-%{release} |
| |
| %description static |
| Static library for libxml2 provided for specific uses or shaving a few |
| microseconds when parsing, do not link to them for generic purpose packages. |
| |
| %package -n python-%{name} |
| %{?python_provide:%python_provide python-%{name}} |
| Summary: Python bindings for the libxml2 library |
| Group: Development/Libraries |
| Requires: libxml2 = %{version}-%{release} |
| Obsoletes: %{name}-python < %{version}-%{release} |
| Provides: %{name}-python = %{version}-%{release} |
| |
| %description -n python-%{name} |
| The libxml2-python package contains a Python 2 module that permits applications |
| written in the Python programming language, version 2, to use the interface |
| supplied by the libxml2 library to manipulate XML files. |
| |
| This library allows to manipulate XML files. It includes support |
| to read, modify and write XML and HTML files. There is DTDs support |
| this includes parsing and validation even with complex DTDs, either |
| at parse time or later once the document has been modified. |
| |
| %if 0%{?with_python3} |
| %package -n python3-%{name} |
| Summary: Python 3 bindings for the libxml2 library |
| Group: Development/Libraries |
| Requires: libxml2 = %{version}-%{release} |
| Obsoletes: %{name}-python3 < %{version}-%{release} |
| Provides: %{name}-python3 = %{version}-%{release} |
| |
| %description -n python3-%{name} |
| The libxml2-python3 package contains a Python 3 module that permits |
| applications written in the Python programming language, version 3, to use the |
| interface supplied by the libxml2 library to manipulate XML files. |
| |
| This library allows to manipulate XML files. It includes support |
| to read, modify and write XML and HTML files. There is DTDs support |
| this includes parsing and validation even with complex DTDs, either |
| at parse time or later once the document has been modified. |
| %endif # with_python3 |
| |
| %prep |
| %setup -q |
| |
| mkdir py3doc |
| cp doc/*.py py3doc |
| sed -i 's|#!/usr/bin/python |#!%{__python3} |' py3doc/*.py |
| |
| %build |
| %configure |
| make %{_smp_mflags} |
| |
| find doc -type f -exec chmod 0644 \{\} \; |
| |
| %install |
| rm -fr %{buildroot} |
| |
| make install DESTDIR=%{buildroot} |
| |
| %if 0%{?with_python3} |
| make clean |
| %configure --with-python=%{__python3} |
| make install DESTDIR=%{buildroot} |
| %endif # with_python3 |
| |
| |
| rm -f $RPM_BUILD_ROOT%{_libdir}/*.la |
| rm -f $RPM_BUILD_ROOT%{_libdir}/python*/site-packages/*.a |
| rm -f $RPM_BUILD_ROOT%{_libdir}/python*/site-packages/*.la |
| rm -rf $RPM_BUILD_ROOT%{_datadir}/doc/libxml2-%{version}/* |
| rm -rf $RPM_BUILD_ROOT%{_datadir}/doc/libxml2-python-%{version}/* |
| (cd doc/examples ; make clean ; rm -rf .deps Makefile) |
| gzip -9 -c doc/libxml2-api.xml > doc/libxml2-api.xml.gz |
| |
| %check |
| #disabling python tests from rpm build as broken in Fedora 30 |
| make PYTHON_SUBDIR="" runtests |
| |
| %clean |
| rm -fr %{buildroot} |
| |
| %post -p /sbin/ldconfig |
| |
| %postun -p /sbin/ldconfig |
| |
| %files |
| %defattr(-, root, root) |
| |
| %doc AUTHORS NEWS README Copyright TODO |
| %doc %{_mandir}/man1/xmllint.1* |
| %doc %{_mandir}/man1/xmlcatalog.1* |
| %doc %{_mandir}/man3/libxml.3* |
| |
| %{_libdir}/lib*.so.* |
| %{_bindir}/xmllint |
| %{_bindir}/xmlcatalog |
| |
| %files devel |
| %defattr(-, root, root) |
| |
| %doc %{_mandir}/man1/xml2-config.1* |
| %doc AUTHORS NEWS README Copyright |
| %doc doc/*.html doc/html doc/*.gif doc/*.png |
| %doc doc/tutorial doc/libxml2-api.xml.gz |
| %doc doc/examples |
| %doc %dir %{_datadir}/gtk-doc/html/libxml2 |
| %doc %{_datadir}/gtk-doc/html/libxml2/*.devhelp |
| %doc %{_datadir}/gtk-doc/html/libxml2/*.html |
| %doc %{_datadir}/gtk-doc/html/libxml2/*.png |
| %doc %{_datadir}/gtk-doc/html/libxml2/*.css |
| |
| %{_libdir}/lib*.so |
| %{_libdir}/*.sh |
| %{_includedir}/* |
| %{_bindir}/xml2-config |
| %{_datadir}/aclocal/libxml.m4 |
| %{_libdir}/pkgconfig/libxml-2.0.pc |
| %{_libdir}/cmake/libxml2/libxml2-config.cmake |
| |
| %files static |
| %defattr(-, root, root) |
| |
| %{_libdir}/*a |
| |
| %files -n python-%{name} |
| %defattr(-, root, root) |
| |
| %{_libdir}/python2*/site-packages/libxml2.py* |
| %{_libdir}/python2*/site-packages/drv_libxml2.py* |
| %{_libdir}/python2*/site-packages/libxml2mod* |
| %doc python/TODO |
| %doc python/libxml2class.txt |
| %doc python/tests/*.py |
| %doc doc/*.py |
| %doc doc/python.html |
| |
| %if 0%{?with_python3} |
| %files -n python3-%{name} |
| %defattr(-, root, root) |
| |
| %{_libdir}/python3*/site-packages/libxml2.py* |
| %{_libdir}/python3*/site-packages/drv_libxml2.py* |
| %{_libdir}/python3*/site-packages/__pycache__/*py* |
| %{_libdir}/python3*/site-packages/libxml2mod* |
| %doc python/TODO |
| %doc python/libxml2class.txt |
| %doc py3doc/*.py |
| %doc doc/python.html |
| %endif # with_python3 |
| |
| %changelog |
| * Tue Aug 3 2021 Daniel Veillard <veillard@redhat.com> |
| - upstream release 2.9.12 see http://xmlsoft.org/news.html |
| |