Blame libxml.spec.in

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