3 %bcond_without apidocs # Doxygen API documentation
4 %bcond_without python # Python binding
5 %bcond_without static_libs # static libraries
7 Summary: Library and tools for interacting with the Linux GPIO character device
8 Summary(pl.UTF-8): Biblioteka i narzędzia do obsługi linuksowych urządzeń znakowych GPIO
14 Source0: https://www.kernel.org/pub/software/libs/libgpiod/%{name}-%{version}.tar.xz
15 # Source0-md5: 585b4bb431f99c4ba9b3ee58b9d494c1
16 URL: https://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git/
17 %{?with_apidocs:BuildRequires: doxygen}
18 BuildRequires: libstdc++-devel >= 6:4.7
19 BuildRequires: linux-libc-headers >= 6:4.8
20 %{?with_python:BuildRequires: python3-devel >= 1:3.2}
21 BuildRequires: tar >= 1:1.22
23 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
26 Since Linux 4.8 the GPIO sysfs interface is deprecated. User space
27 should use the character device instead. This library encapsulates the
28 ioctl calls and data structures behind a straightforward API.
30 %description -l pl.UTF-8
31 Od wersja Linuksa 4.8 interfejs sysfs do GPIO jest przestarzały.
32 Przestrzeń użytkownika powinna zamiast niego używać urządzenia
33 znakowego. Ta biblioteka kryje wywołania ioctl i struktury danych za
37 Summary: Header files for libgpiod library
38 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki libgpiod
39 Group: Development/Libraries
40 Requires: %{name} = %{version}-%{release}
43 Header files for libgpiod library.
45 %description devel -l pl.UTF-8
46 Pliki nagłówkowe biblioteki libgpiod.
49 Summary: Static libgpiod library
50 Summary(pl.UTF-8): Statyczna biblioteka libgpiod
51 Group: Development/Libraries
52 Requires: %{name}-devel = %{version}-%{release}
55 Static libgpiod library.
57 %description static -l pl.UTF-8
58 Statyczna biblioteka libgpiod.
61 Summary: C++ binding for libgpiod library
62 Summary(pl.UTF-8): Interfejs C++ do biblioteki libgpiod
64 Requires: %{name} = %{version}-%{release}
67 High-level, object-oriented C++ binding for libgpiod library.
69 %description cxx -l pl.UTF-8
70 Wysokopoziomowy, zorientowany obiektowo interfejs C++ do biblioteki
74 Summary: Header files for libgpiodcxx library
75 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki libgpiodcxx
76 Group: Development/Libraries
77 Requires: %{name}-cxx = %{version}-%{release}
78 Requires: %{name}-devel = %{version}-%{release}
79 Requires: libstdc++-devel >= 6:4.7
81 %description cxx-devel
82 Header files for libgpiodcxx library.
84 %description cxx-devel -l pl.UTF-8
85 Pliki nagłówkowe biblioteki libgpiodcxx.
88 Summary: Static libgpiodcxx library
89 Summary(pl.UTF-8): Statyczna biblioteka libgpiodcxx
90 Group: Development/Libraries
91 Requires: %{name}-cxx-devel = %{version}-%{release}
93 %description cxx-static
94 Static libgpiodcxx library.
96 %description cxx-static -l pl.UTF-8
97 Statyczna biblioteka libgpiodcxx.
99 %package -n python3-gpiod
100 Summary: Pythona binding for libgpiod library
101 Summary(pl.UTF-8): Interfejs Pythona do biblioteki libgpiod
102 Group: Libraries/Python
103 Requires: %{name} = %{version}-%{release}
105 %description -n python3-gpiod
106 High-level, object-oriented Python binding for libgpiod library.
108 %description -n python3-gpiod -l pl.UTF-8
109 Wysokopoziomowy, zorientowany obiektowo interfejs Pythona do
113 Summary: API documentation for libgpiod library
114 Summary(pl.UTF-8): Dokumentacja API biblioteki libgpiod
116 %if "%{_rpmversion}" >= "5"
121 API documentation for libgpiod library.
123 %description apidocs -l pl.UTF-8
124 Dokumentacja API biblioteki libgpiod.
131 %{!?with_static_libs:--disable-static} \
132 --enable-bindings-cxx \
133 %{?with_python:--enable-bindings-python} \
134 --disable-silent-rules \
143 rm -rf $RPM_BUILD_ROOT
146 DESTDIR=$RPM_BUILD_ROOT
148 # obsoleted by pkg-config
149 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libgpiod*.la
151 %{__rm} $RPM_BUILD_ROOT%{py3_sitedir}/gpiod.la \
152 %{?with_static_libs:$RPM_BUILD_ROOT%{py3_sitedir}/gpiod.a}
156 rm -rf $RPM_BUILD_ROOT
158 %post -p /sbin/ldconfig
159 %postun -p /sbin/ldconfig
161 %post cxx -p /sbin/ldconfig
162 %postun cxx -p /sbin/ldconfig
165 %defattr(644,root,root,755)
167 %attr(755,root,root) %{_bindir}/gpiodetect
168 %attr(755,root,root) %{_bindir}/gpiofind
169 %attr(755,root,root) %{_bindir}/gpioget
170 %attr(755,root,root) %{_bindir}/gpioinfo
171 %attr(755,root,root) %{_bindir}/gpiomon
172 %attr(755,root,root) %{_bindir}/gpioset
173 %attr(755,root,root) %{_libdir}/libgpiod.so.*.*.*
174 %attr(755,root,root) %ghost %{_libdir}/libgpiod.so.2
175 %{_mandir}/man1/gpiodetect.1*
176 %{_mandir}/man1/gpiofind.1*
177 %{_mandir}/man1/gpioget.1*
178 %{_mandir}/man1/gpioinfo.1*
179 %{_mandir}/man1/gpiomon.1*
180 %{_mandir}/man1/gpioset.1*
183 %defattr(644,root,root,755)
184 %attr(755,root,root) %{_libdir}/libgpiod.so
185 %{_includedir}/gpiod.h
186 %{_pkgconfigdir}/libgpiod.pc
188 %if %{with static_libs}
190 %defattr(644,root,root,755)
191 %{_libdir}/libgpiod.a
195 %defattr(644,root,root,755)
196 %attr(755,root,root) %{_libdir}/libgpiodcxx.so.*.*.*
197 %attr(755,root,root) %ghost %{_libdir}/libgpiodcxx.so.1
200 %defattr(644,root,root,755)
201 %attr(755,root,root) %{_libdir}/libgpiodcxx.so
202 %{_includedir}/gpiod.hpp
203 %{_pkgconfigdir}/libgpiodcxx.pc
205 %if %{with static_libs}
207 %defattr(644,root,root,755)
208 %{_libdir}/libgpiodcxx.a
212 %files -n python3-gpiod
213 %defattr(644,root,root,755)
214 %attr(755,root,root) %{py3_sitedir}/gpiod.so
219 %defattr(644,root,root,755)