123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208 |
- %global with_python3 1
- Summary: Library providing XML and HTML support
- Name: libxml2
- Version: 2.9.13
- Release: 1%{?dist}%{?extra_release}
- License: MIT
- Group: Development/Libraries
- Source: https://download.gnome.org/sources/libxml2/2.9/libxml2-%{version}.tar.xz
- 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: https://gitlab.gnome.org/GNOME/libxml2
- %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/env python|#!/usr/bin/env %{__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 NEWS README.md Copyright TODO
- %doc %{_mandir}/man1/xmllint.1*
- %doc %{_mandir}/man1/xmlcatalog.1*
- %{_libdir}/lib*.so.*
- %{_bindir}/xmllint
- %{_bindir}/xmlcatalog
- %files devel
- %defattr(-, root, root)
- %doc %{_mandir}/man1/xml2-config.1*
- %doc NEWS README.md 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
- * Thu Aug 11 2022 Daniel Veillard <veillard@redhat.com>
- - upstream release 2.9.13
|