Index: third_party/libxml/src/libxml.spec.in |
diff --git a/third_party/libxml/src/libxml.spec.in b/third_party/libxml/src/libxml.spec.in |
index 688811a8deb879886b08c67282a215c098867b86..9029a1806de5ac26b58ed73ef6d7f435cad9f767 100644 |
--- a/third_party/libxml/src/libxml.spec.in |
+++ b/third_party/libxml/src/libxml.spec.in |
@@ -1,22 +1,30 @@ |
+%global with_python3 1 |
+ |
Summary: Library providing XML and HTML support |
Name: libxml2 |
Version: @VERSION@ |
-Release: 1 |
+Release: 1%{?dist}%{?extra_release} |
License: MIT |
Group: Development/Libraries |
Source: ftp://xmlsoft.org/libxml2/libxml2-%{version}.tar.gz |
-BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root |
-BuildRequires: python python-devel zlib-devel pkgconfig |
+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 |
+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 subnodes or ranges. A flexible Input/Output mechanism is |
+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. |
@@ -25,65 +33,103 @@ 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 |
+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 subnodes or ranges. A flexible Input/Output mechanism is |
+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 python |
Summary: Python bindings for the libxml2 library |
Group: Development/Libraries |
Requires: libxml2 = %{version}-%{release} |
-Requires: python |
%description python |
-The libxml2-python package contains a module that permits applications |
-written in the Python programming language to use the interface |
+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 |
+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 python3 |
+Summary: Python 3 bindings for the libxml2 library |
+Group: Development/Libraries |
+Requires: libxml2 = %{version}-%{release} |
+ |
+%description python3 |
+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 |
%build |
%configure |
make %{_smp_mflags} |
-gzip -9 ChangeLog |
%install |
rm -fr %{buildroot} |
-%makeinstall |
-(cd doc/examples ; make clean ; rm -rf .deps Makefile) |
-gzip -9 doc/libxml2-api.xml |
+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 |
+make runtests |
%clean |
rm -fr %{buildroot} |
-%post |
-/sbin/ldconfig |
+%post -p /sbin/ldconfig |
-%postun |
-/sbin/ldconfig |
+%postun -p /sbin/ldconfig |
%files |
%defattr(-, root, root) |
-%doc AUTHORS ChangeLog.gz NEWS README Copyright TODO |
+%doc AUTHORS NEWS README Copyright TODO |
%doc %{_mandir}/man1/xmllint.1* |
%doc %{_mandir}/man1/xmlcatalog.1* |
%doc %{_mandir}/man3/libxml.3* |
@@ -96,7 +142,7 @@ rm -fr %{buildroot} |
%defattr(-, root, root) |
%doc %{_mandir}/man1/xml2-config.1* |
-%doc AUTHORS ChangeLog.gz NEWS README Copyright |
+%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 |
@@ -107,24 +153,45 @@ rm -fr %{buildroot} |
%doc %{_datadir}/gtk-doc/html/libxml2/*.css |
%{_libdir}/lib*.so |
-%{_libdir}/*a |
%{_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 python |
%defattr(-, root, root) |
-%doc AUTHORS ChangeLog.gz NEWS README Copyright |
-%{_libdir}/python*/site-packages/libxml2.py* |
-%{_libdir}/python*/site-packages/drv_libxml2.py* |
-%{_libdir}/python*/site-packages/libxml2mod* |
+%{_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 python3 |
+%defattr(-, root, root) |
+ |
+%{_libdir}/python3*/site-packages/libxml2.py* |
+%{_libdir}/python3*/site-packages/drv_libxml2.py* |
+%{_libdir}/python3*/site-packages/__pycache__/libxml2.cpython-34.py* |
+%{_libdir}/python3*/site-packages/__pycache__/drv_libxml2.cpython-34.py* |
+%{_libdir}/python3*/site-packages/libxml2mod* |
%doc python/TODO |
%doc python/libxml2class.txt |
%doc python/tests/*.py |
%doc doc/*.py |
%doc doc/python.html |
+%endif # with_python3 |
%changelog |
* @RELDATE@ Daniel Veillard <veillard@redhat.com> |