]> git.pld-linux.org Git - packages/libcomps.git/blame - libcomps.spec
rebuild with python 3.10
[packages/libcomps.git] / libcomps.spec
CommitLineData
26ca1204
ER
1#
2# TODO
3# - fix missing -lm
4# - convince upstream to fix SONAME: libcomps.so.0.1.6
5#
6# Conditional build:
ab202ab9 7%bcond_without doc # don't build (doxygen and sphinx) docs
26ca1204
ER
8%bcond_without python2 # CPython 2.x module
9%bcond_without python3 # CPython 3.x module
10
11Summary: Comps XML file manipulation library
ab202ab9 12Summary(pl.UTF-8): Biblioteka operacji na plikach Comps XML
26ca1204 13Name: libcomps
1a3c5528 14Version: 0.1.15
acb7475d 15Release: 3
26ca1204 16License: GPL v2+
ab202ab9 17Group: Libraries
f17fff53
JB
18#Source0Download: https://github.com/rpm-software-management/libcomps/releases
19Source0: https://github.com/rpm-software-management/libcomps/archive/%{name}-%{version}.tar.gz
1a3c5528 20# Source0-md5: 5e899d213a28496f3b37236b47293bdf
2826f3d1 21Patch0: %{name}-build.patch
7210da54 22Patch1: python-install-dir.patch
f17fff53 23URL: https://github.com/rpm-software-management/libcomps
26ca1204 24BuildRequires: check-devel
3d9fc461 25BuildRequires: cmake >= 2.6
26ca1204 26%{?with_doc:BuildRequires: doxygen}
ab202ab9
JB
27BuildRequires: expat-devel >= 1.95
28BuildRequires: libxml2-devel >= 2.0
7210da54
JK
29%if %{with python2}
30BuildRequires: python-devel
31BuildRequires: python-modules
32%{?with_doc:BuildRequires: sphinx-pdg-2}
33%endif
34%if %{with python3}
35BuildRequires: python3-devel
36BuildRequires: python3-modules
3d9fc461 37%{?with_doc:BuildRequires: sphinx-pdg}
7210da54
JK
38%endif
39BuildRequires: rpm-pythonprov
26ca1204
ER
40BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
41
26ca1204
ER
42%description
43Libcomps is library for structure-like manipulation with content of
44comps XML files. Supports read/write XML file, structure(s)
45modification.
46
ab202ab9
JB
47%description -l pl.UTF-8
48Libcomps to bibliotek do operacji strukturalnych na treści plików
49comps XML. Obsługiwany jest odczyt i zapis pliku XML oraz modyfikacja
50struktury.
51
26ca1204
ER
52%package devel
53Summary: Development files for libcomps library
ab202ab9 54Summary(pl.UTF-8): Pliki programistyczne biblioteki libcomps
26ca1204
ER
55Group: Development/Libraries
56Requires: %{name} = %{version}-%{release}
ab202ab9
JB
57Requires: expat-devel >= 1.95
58Requires: libxml2-devel >= 2.0
26ca1204
ER
59
60%description devel
61Development files for libcomps library
62
ab202ab9
JB
63%description devel -l pl.UTF-8
64Pliki programistyczne biblioteki libcomps.
65
26ca1204 66%package -n python-libcomps
ab202ab9
JB
67Summary: Python 2.x bindings for libcomps library
68Summary(pl.UTF-8): Wiązania Pythona 2.x do biblioteki libcomps
69Group: Libraries/Python
26ca1204
ER
70Requires: %{name} = %{version}-%{release}
71
72%description -n python-libcomps
ab202ab9
JB
73Python 2.x bindings for libcomps library.
74
75%description -n python-libcomps -l pl.UTF-8
76Wiązania Pythona 2.x do biblioteki libcomps.
26ca1204
ER
77
78%package -n python3-libcomps
ab202ab9
JB
79Summary: Python 3.x bindings for libcomps library
80Summary(pl.UTF-8): Wiązania Pythona 3.x do biblioteki libcomps
81Group: Libraries/Python
26ca1204
ER
82Requires: %{name} = %{version}-%{release}
83
84%description -n python3-libcomps
ab202ab9
JB
85Python 3.x bindings for libcomps library.
86
87%description -n python3-libcomps -l pl.UTF-8
88Wiązania Pythona 3.x do biblioteki libcomps.
26ca1204
ER
89
90%prep
91%setup -qn %{name}-%{name}-%{version}
ab202ab9 92%patch0 -p1
7210da54 93%patch1 -p1
26ca1204
ER
94
95%build
ab202ab9
JB
96install -d build
97cd build
98%cmake ../libcomps \
1a3c5528 99 -DENABLE_TESTS:BOOL=NO \
26ca1204 100 -DPYTHON_DESIRED:STRING=2 \
7210da54
JK
101 -DPYTHON_INSTALL_DIR="%{py_sitedir}" \
102 -DSPHINX_EXECUTABLE=/usr/bin/sphinx-build-2 \
3d9fc461 103 -DCMAKE_CXX_COMPILER_WORKS=1 \
ab202ab9 104 -DCMAKE_CXX_COMPILER="%{__cc}"
26ca1204
ER
105
106%{__make}
107%{__make} docs
108%{__make} pydocs
ab202ab9 109cd ..
26ca1204
ER
110
111%if %{with python3}
ab202ab9
JB
112install -d build-py3
113cd build-py3
114%cmake ../libcomps \
1a3c5528 115 -DENABLE_TESTS:BOOL=NO \
26ca1204 116 -DPYTHON_DESIRED:STRING=3 \
7210da54
JK
117 -DPYTHON_INSTALL_DIR="%{py3_sitedir}" \
118 -DSPHINX_EXECUTABLE=/usr/bin/sphinx-build-3 \
3d9fc461 119 -DCMAKE_CXX_COMPILER_WORKS=1 \
ab202ab9
JB
120 -DCMAKE_CXX_COMPILER="%{__cc}"
121
26ca1204 122%{__make}
7210da54 123%{__make} pydocs
ab202ab9 124cd ..
26ca1204
ER
125%endif
126
127%if %{with tests}
ab202ab9 128%{__make} -C build test
26ca1204 129%if %{with python3}
ab202ab9 130%{__make} -C build-py3 pytest
26ca1204
ER
131%endif
132%endif
133
134%install
135rm -rf $RPM_BUILD_ROOT
ab202ab9 136%{__make} -C build install \
26ca1204
ER
137 DESTDIR=$RPM_BUILD_ROOT
138
139%py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
140%py_comp $RPM_BUILD_ROOT%{py_sitedir}
141%py_postclean
142
143%if %{with python3}
ab202ab9 144%{__make} -C build-py3 install \
26ca1204
ER
145 DESTDIR=$RPM_BUILD_ROOT
146
147%py3_ocomp $RPM_BUILD_ROOT%{py3_sitedir}
148%py3_comp $RPM_BUILD_ROOT%{py3_sitedir}
26ca1204
ER
149%endif
150
ab202ab9
JB
151install -d $RPM_BUILD_ROOT%{_pkgconfigdir}
152%{__sed} -e 's,^prefix=.*,prefix=%{_prefix},' \
153 -e 's,@LIB_SUFFIX@,%{_lib},' \
154 -e 's,@VERSION@,%{version},' \
155 libcomps.pc.in > $RPM_BUILD_ROOT%{_pkgconfigdir}/libcomps.pc
156
26ca1204
ER
157/sbin/ldconfig -n $RPM_BUILD_ROOT%{_libdir}
158
159%clean
160rm -rf $RPM_BUILD_ROOT
161
162%post -p /sbin/ldconfig
163%postun -p /sbin/ldconfig
164
165%files
166%defattr(644,root,root,755)
167%doc README.md COPYING
1a3c5528 168%attr(755,root,root) %{_libdir}/libcomps.so.0
26ca1204
ER
169
170%files devel
171%defattr(644,root,root,755)
ab202ab9
JB
172%doc build/docs/libcomps-doc/html/*
173%attr(755,root,root) %{_libdir}/libcomps.so
26ca1204 174%{_includedir}/libcomps
ab202ab9 175%{_pkgconfigdir}/libcomps.pc
26ca1204 176
7210da54 177%if %{with python2}
26ca1204
ER
178%files -n python-libcomps
179%defattr(644,root,root,755)
2efce5b5 180%doc build/src/python/docs/html/{*.html,*.js,_static}
26ca1204
ER
181%dir %{py_sitedir}/libcomps
182%{py_sitedir}/libcomps/__init__.py[co]
183%attr(755,root,root) %{py_sitedir}/libcomps/_libpycomps.so
1a3c5528 184%{py_sitedir}/libcomps-*-py*.egg-info
7210da54 185%endif
26ca1204
ER
186
187%if %{with python3}
188%files -n python3-libcomps
2efce5b5 189%doc build-py3/src/python/docs/html/{*.html,*.js,_static}
26ca1204
ER
190%defattr(644,root,root,755)
191%dir %{py3_sitedir}/libcomps
192%{py3_sitedir}/libcomps/__init__.py
193%attr(755,root,root) %{py3_sitedir}/libcomps/_libpycomps.so
194%{py3_sitedir}/libcomps/__pycache__
1a3c5528 195%{py3_sitedir}/libcomps-*-py*.egg-info
26ca1204 196%endif
This page took 0.092058 seconds and 4 git commands to generate.