]> git.pld-linux.org Git - packages/libxml2.git/blame - libxml2.spec
upstream fix for lxml's api abuse; rel 2
[packages/libxml2.git] / libxml2.spec
CommitLineData
e8966c4b 1# TODO:
2# - fix build without libxml2-devel (python library uses old headers)
7b503906
JB
3#
4# Conditional build:
3ba0dd16 5%bcond_without apidocs # do not build and package API docs
a627f64a
JB
6%bcond_without python2 # CPython 2.x module
7%bcond_without python3 # CPython 3.x module
8%bcond_without static_libs # static library
9%bcond_without zlib # zlib support
10%bcond_with mem_debug # libxml2 memory debuging
11%bcond_without tests # "make check" call
3ba0dd16 12
8bda37cb 13Summary: libXML library version 2
c6cb7fae
ER
14Summary(es.UTF-8): Biblioteca libXML version 2
15Summary(pl.UTF-8): Biblioteka libXML wersja 2
16Summary(pt_BR.UTF-8): Biblioteca libXML versão 2
9146e4ca 17Name: libxml2
cae1140f 18Version: 2.9.12
0e4f0baf 19Release: 2
32bd2aad 20Epoch: 1
78f6a9a3 21License: MIT
9146e4ca 22Group: Libraries
f555f133 23Source0: ftp://xmlsoft.org/libxml2/%{name}-%{version}.tar.gz
cae1140f 24# Source0-md5: f433a39be087a9f0b197eb2307ad9f75
74971558
JB
25Patch0: %{name}-man_fixes.patch
26Patch1: %{name}-open.gz.patch
27Patch2: %{name}-largefile.patch
2247840c 28Patch3: %{name}-libx32.patch
0e4f0baf 29Patch4: lxml-api-abuse.patch
2247840c
JB
30# Fedora patches
31# https://bugzilla.gnome.org/show_bug.cgi?id=789714
32Patch11: %{name}-python3-unicode-errors.patch
9146e4ca 33URL: http://xmlsoft.org/
e21aa31e 34BuildRequires: autoconf >= 2.68
30f31f4d 35BuildRequires: automake >= 1.4
e21aa31e 36BuildRequires: libtool >= 2:2.0
1317db76 37%if %{with python2}
a627f64a
JB
38BuildRequires: python-devel >= 2.0
39BuildRequires: python-modules >= 2.0
1317db76
AM
40BuildRequires: rpm-pythonprov
41%endif
42%if %{with python3}
a627f64a 43BuildRequires: python3-devel >= 1:3.2
a627f64a 44BuildRequires: python3-modules >= 1:3.2
1317db76
AM
45BuildRequires: rpm-pythonprov
46%endif
c95aad23 47BuildRequires: rpmbuild(macros) >= 1.714
7658de52 48BuildRequires: xz-devel
b176c2d0 49%{?with_zlib:BuildRequires: zlib-devel >= 1.2.3.3}
d00368fa
JB
50# history support in xmllint is disabled by default
51#BuildRequires: ncurses-devel
52#BuildRequires: readline-devel >= 4.2
b176c2d0 53Requires: zlib >= 1.2.3.3
e8966c4b 54Obsoletes: xml-common
9146e4ca
AM
55BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
56
9146e4ca
AM
57%description
58This library allows you to manipulate XML files.
59
257f3917
JR
60%description -l es.UTF-8
61Esta biblioteca permite manipulación de archivos XML.
326c44e7 62
257f3917
JR
63%description -l pl.UTF-8
64Biblioteka libxml2 umożliwia manipulowanie zawartością plików XML.
9146e4ca 65
257f3917
JR
66%description -l pt_BR.UTF-8
67Esta biblioteca permite a manipulação de arquivos XML.
326c44e7 68
9146e4ca
AM
69%package devel
70Summary: Header files etc to develop libxml2 applications
c6cb7fae
ER
71Summary(es.UTF-8): Biblioteca y archivos de inclusión para desarrollo de aplicaciones libXML
72Summary(pl.UTF-8): Pliki nagłówkowe i inne do libxml2
73Summary(pt_BR.UTF-8): Bibliotecas e arquivos de inclusão para desenvolvimento de aplicações que usem a biblioteca libxml
9146e4ca 74Group: Development/Libraries
4f124b4c 75Requires: %{name} = %{epoch}:%{version}-%{release}
7f96f97f 76Requires: xz-devel
5ff229cc 77Requires: zlib-devel
9146e4ca
AM
78
79%description devel
80Header files etc you can use to develop libxml2 applications.
81
257f3917
JR
82%description devel -l es.UTF-8
83Biblioteca y archivos de inclusión para desarrollo de aplicaciones
326c44e7 84libXML.
85
257f3917
JR
86%description devel -l pl.UTF-8
87Pakiet ten zawiera pliki nagłówkowe i inne do libxml2 niezbędne przy
88tworzeniu aplikacji opartych o tę bibliotekę.
9146e4ca 89
257f3917
JR
90%description devel -l pt_BR.UTF-8
91Bibliotecas e arquivos de inclusão para desenvolvimento de aplicações
326c44e7 92que usem a biblioteca libxml.
93
9146e4ca
AM
94%package static
95Summary: Static libxml2 libraries
c6cb7fae
ER
96Summary(es.UTF-8): Static libraries to develop libxml applications
97Summary(pl.UTF-8): Biblioteka statyczna libxml2
98Summary(pt_BR.UTF-8): Bibliotecas estáticas para desenvolvimento de aplicações que usem a biblioteca libxml
9146e4ca 99Group: Development/Libraries
4f124b4c 100Requires: %{name}-devel = %{epoch}:%{version}-%{release}
9146e4ca
AM
101
102%description static
103Static libxml2 libraries.
104
257f3917 105%description static -l es.UTF-8
326c44e7 106Static libraries, you can use to develop libxml applications.
107
257f3917 108%description static -l pl.UTF-8
9146e4ca
AM
109Biblioteka statyczna libxml2.
110
257f3917
JR
111%description static -l pt_BR.UTF-8
112Bibliotecas estáticas para desenvolvimento de aplicações que usem a
326c44e7 113biblioteca libxml.
114
e5fe7879
MB
115%package apidocs
116Summary: libxml2 API documentation
117Summary(pl.UTF-8): Dokumentacja API libxml2
118Group: Documentation
119Requires: gtk-doc-common
72f37f9b 120BuildArch: noarch
e5fe7879
MB
121
122%description apidocs
123libxml2 API documentation.
124
125%description apidocs -l pl.UTF-8
126Dokumentacja API libxml2.
127
fef91692 128%package progs
129Summary: XML files parser
c6cb7fae 130Summary(pl.UTF-8): Analizator składniowy plików XML
fef91692 131Group: Applications/Text
4f124b4c 132Requires: %{name} = %{epoch}:%{version}-%{release}
fef91692 133
134%description progs
135XML files parser.
136
257f3917
JR
137%description progs -l pl.UTF-8
138Analizator składniowy plików XML.
fef91692 139
78f6a9a3 140%package -n python-%{name}
a627f64a
JB
141Summary: libxml2 module for Python 2.x
142Summary(pl.UTF-8): Moduł libxml2 dla Pythona 2.x
db6d9c9b 143Group: Libraries/Python
4f124b4c 144Requires: %{name} = %{epoch}:%{version}-%{release}
1317db76 145Requires: python-libs
560a3de6 146Obsoletes: libxml2-python
78f6a9a3 147
148%description -n python-%{name}
a627f64a
JB
149This is the libxml2 module for Python 2.x, providing access to the
150libxml2 library.
78f6a9a3 151
257f3917 152%description -n python-%{name} -l pl.UTF-8
72f37f9b
ER
153Ten pakiet zawiera moduł libxml2 dla Pythona 2.x, zapewniający dostęp
154do biblioteki libxml2.
78f6a9a3 155
1317db76 156%package -n python3-%{name}
a627f64a
JB
157Summary: libxml2 module for Python 3.x
158Summary(pl.UTF-8): Moduł libxml2 dla Pythona 3.x
1317db76
AM
159Group: Libraries/Python
160Requires: %{name} = %{epoch}:%{version}-%{release}
161Requires: python3-libs
162
163%description -n python3-%{name}
a627f64a
JB
164This is the libxml2 module for Python 3.x, providing access to the
165libxml2 library.
1317db76
AM
166
167%description -n python3-%{name} -l pl.UTF-8
72f37f9b
ER
168Ten pakiet zawiera moduł libxml2 dla Pythona 3.x, zapewniający dostęp
169do biblioteki libxml2.
1317db76 170
9146e4ca
AM
171%prep
172%setup -q
6f41977c 173%patch0 -p1
0b339d08 174%if %{with zlib}
74971558 175%patch1 -p1
0b339d08 176%endif
74971558 177%patch2 -p1
2247840c 178%patch3 -p1
0e4f0baf 179%patch4 -p1
2247840c 180%patch11 -p1
ccf06610 181
9146e4ca 182%build
c3e0f8bb 183%{__libtoolize}
194fa592 184%{__aclocal}
b65cf538 185%{__autoconf}
7b503906 186%{__autoheader}
b65cf538 187%{__automake}
e0ab6350 188%configure \
74971558 189 --disable-silent-rules \
e8f9d9ce 190 %{!?with_static_libs:--disable-static} \
1317db76 191 --without-python \
74971558 192 %{!?with_zlib:--without-zlib} \
7658de52 193 --with-lzma \
bb6f7bb6 194 --with%{!?with_mem_debug:out}-mem-debug
9c79f44a 195
9146e4ca
AM
196%{__make}
197
1317db76
AM
198%if %{with python2}
199cd python
c95aad23 200%py_build
1317db76
AM
201cd ..
202%endif
203
204
205%if %{with python3}
206cd python
c95aad23 207%py3_build
1317db76
AM
208cd ..
209%endif
210
211%if %{with tests}
212%{__make} check
213%endif
214
9146e4ca
AM
215%install
216rm -rf $RPM_BUILD_ROOT
217
5d7e8892
JB
218%{__make} install \
219 DESTDIR=$RPM_BUILD_ROOT \
7658de52 220 devhelpdir=%{_gtkdocdir}/libxml2 \
5d7e8892
JB
221 m4datadir=%{_aclocaldir} \
222 pkgconfigdir=%{_pkgconfigdir}
9146e4ca 223
1317db76
AM
224%if %{with python2}
225cd python
c95aad23 226%py_install
97e76e01 227
1317db76 228%py_postclean
64256ca4 229cd ..
4b15d29d 230%endif
1317db76
AM
231
232%if %{with python3}
233cd python
c95aad23 234%py3_install
1317db76 235cd ..
97e76e01 236%endif
4b15d29d 237
238# move html doc to -devel package
239install -d $RPM_BUILD_ROOT%{_docdir}/%{name}-devel-%{version}
a627f64a 240%{__mv} $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/html \
4b15d29d 241 $RPM_BUILD_ROOT%{_docdir}/%{name}-devel-%{version}
a627f64a 242%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
4b15d29d 243
9cad6a31 244# install catalog file
245install -d $RPM_BUILD_ROOT%{_sysconfdir}/xml
246LD_LIBRARY_PATH=.libs ./xmlcatalog --create \
247 > $RPM_BUILD_ROOT%{_sysconfdir}/xml/catalog
248
9146e4ca 249%clean
7939e1ec 250rm -rf $RPM_BUILD_ROOT
9146e4ca 251
e8d2b5b5 252%post -p /sbin/ldconfig
253%postun -p /sbin/ldconfig
9146e4ca
AM
254
255%files
256%defattr(644,root,root,755)
d73bc3df 257%doc AUTHORS ChangeLog Copyright NEWS README TODO
ccba1061
JB
258%attr(755,root,root) %{_libdir}/libxml2.so.*.*.*
259%attr(755,root,root) %ghost %{_libdir}/libxml2.so.2
260%{_mandir}/man3/libxml.3*
9146e4ca 261
9cad6a31 262%dir %{_sysconfdir}/xml
5a57b590 263%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xml/catalog
9cad6a31 264
9146e4ca
AM
265%files devel
266%defattr(644,root,root,755)
4b15d29d 267%doc %{_docdir}/%{name}-devel-%{version}
f0e239fb 268%attr(755,root,root) %{_bindir}/xml2-config
ccba1061
JB
269%attr(755,root,root) %{_libdir}/libxml2.so
270%{_libdir}/libxml2.la
74971558 271%attr(755,root,root) %{_libdir}/xml2Conf.sh
1317db76 272%{_libdir}/cmake/libxml2
ccba1061
JB
273%{_pkgconfigdir}/libxml-2.0.pc
274%{_aclocaldir}/libxml.m4
326f70c8 275%{_includedir}/libxml2
fef91692 276%{_mandir}/man1/xml2-config.1*
9146e4ca 277
e0ab6350 278%if %{with static_libs}
9146e4ca
AM
279%files static
280%defattr(644,root,root,755)
ccba1061 281%{_libdir}/libxml2.a
e0ab6350 282%endif
fef91692 283
3ba0dd16 284%if %{with apidocs}
e5fe7879
MB
285%files apidocs
286%defattr(644,root,root,755)
287%{_gtkdocdir}/libxml2
3ba0dd16 288%endif
e5fe7879 289
fef91692 290%files progs
291%defattr(644,root,root,755)
6f41977c 292%attr(755,root,root) %{_bindir}/xmlcatalog
fef91692 293%attr(755,root,root) %{_bindir}/xmllint
6f41977c 294%{_mandir}/man1/xmlcatalog.1*
fef91692 295%{_mandir}/man1/xmllint.1*
78f6a9a3 296
1317db76 297%if %{with python2}
78f6a9a3 298%files -n python-%{name}
299%defattr(644,root,root,755)
ccba1061 300%attr(755,root,root) %{py_sitedir}/libxml2mod.so
30f31f4d
JB
301%{py_sitedir}/drv_libxml2.py[co]
302%{py_sitedir}/libxml2.py[co]
97e76e01 303%if "%{py_ver}" > "2.4"
2247840c 304%{py_sitedir}/libxml2_python-%{version}-py*.egg-info
97e76e01 305%endif
1317db76
AM
306%endif
307
308%if %{with python3}
309%files -n python3-%{name}
310%defattr(644,root,root,755)
311%{py3_sitedir}/__pycache__/*.py[co]
312%{py3_sitedir}/drv_libxml2.py
313%{py3_sitedir}/libxml2.py
314%{py3_sitedir}/libxml2_python-%{version}-py*.egg-info
315%attr(755,root,root) %{py3_sitedir}/libxml2mod.cpython-*.so
696b50a8 316%endif
This page took 0.639467 seconds and 4 git commands to generate.