]> git.pld-linux.org Git - packages/libinput.git/blobdiff - libinput.spec
- updated meson version and macros
[packages/libinput.git] / libinput.spec
index 0963cf994c74563371eeabc195fc5f36dcb05e4d..1be97a0e67dc41aa137a5f4703673bf0eb3a2314 100644 (file)
@@ -1,29 +1,51 @@
+# TODO:
+# - package user docs from build/Documentation
 #
 # Conditional build:
 #
 # Conditional build:
-%bcond_with    gui             # event-gui (noinst as of 0.4.0)
-%bcond_with    static_libs     # static library
+%bcond_without gui             # libinput-debug-gui
+%bcond_without libunwind       # libunwind debugging support
+%bcond_without doc             # documentation
+%bcond_without tests           # tests
 
 
+%ifnarch %{ix86} %{x8664} %{arm} hppa ia64 mips ppc ppc64 sh
+%undefine      with_libunwind
+%endif
 Summary:       Input device library
 Summary(pl.UTF-8):     Biblioteka urządzeń wejściowych
 Name:          libinput
 Summary:       Input device library
 Summary(pl.UTF-8):     Biblioteka urządzeń wejściowych
 Name:          libinput
-Version:       1.4.0
+Version:       1.16.1
 Release:       1
 License:       MIT
 Group:         Libraries
 Source0:       https://www.freedesktop.org/software/libinput/%{name}-%{version}.tar.xz
 Release:       1
 License:       MIT
 Group:         Libraries
 Source0:       https://www.freedesktop.org/software/libinput/%{name}-%{version}.tar.xz
-# Source0-md5: 643d21c63d5dcc2d73de3d573e9f7538
+# Source0-md5: 51454993fcc576f4480aba8c1c3232ac
 URL:           https://www.freedesktop.org/wiki/Software/libinput/
 URL:           https://www.freedesktop.org/wiki/Software/libinput/
-%{?with_gui:BuildRequires:     cairo-devel}
 BuildRequires: check-devel >= 0.9.10
 BuildRequires: check-devel >= 0.9.10
-BuildRequires: doxygen >= 1.6.0
-%{?with_gui:BuildRequires:     glib2-devel >= 2.0}
-BuildRequires: graphviz >= 2.26.0
-%{?with_gui:BuildRequires:     gtk+3-devel >= 3.0}
-BuildRequires: libevdev-devel >= 0.4
-BuildRequires: libwacom-devel >= 0.12
+BuildRequires: libevdev-devel >= 1.3
+%{?with_libunwind:BuildRequires:       libunwind-devel}
+BuildRequires: libwacom-devel >= 0.20
+BuildRequires: meson >= 0.45.0
 BuildRequires: mtdev-devel >= 1.1.0
 BuildRequires: mtdev-devel >= 1.1.0
+BuildRequires: ninja >= 1.5
 BuildRequires: pkgconfig
 BuildRequires: pkgconfig
+BuildRequires: rpmbuild(macros) >= 1.736
 BuildRequires: udev-devel
 BuildRequires: udev-devel
+BuildRequires: valgrind
+%if %{with gui}
+BuildRequires: cairo-devel
+BuildRequires: glib2-devel >= 2.0
+BuildRequires: gtk+3-devel >= 3.20
+%endif
+%if %{with doc}
+BuildRequires: doxygen >= 1.8.3
+BuildRequires: graphviz >= 2.26.0
+BuildRequires: python3-recommonmark
+BuildRequires: python3-sphinx_rtd_theme
+BuildRequires: sphinx-pdg-3
+%endif
+Requires:      libevdev >= 1.3
+Requires:      libwacom >= 0.20
+Requires:      mtdev >= 1.1.0
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %description
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %description
@@ -45,6 +67,19 @@ przetwarzanie zdarzeń urządzeń wejściowych oraz abstrakcję,
 minimalizując ilość własnego kodu, który musi napisać użytkownik
 biblioteki, aby zapewnić oczekiwaną funkcjonalność.
 
 minimalizując ilość własnego kodu, który musi napisać użytkownik
 biblioteki, aby zapewnić oczekiwaną funkcjonalność.
 
+%package gui
+Summary:       Debugging GUI for libinput
+Summary(pl.UTF-8):     Graficzny interfejs diagnostyczny do libinput
+Group:         X11/Applications
+Requires:      %{name} = %{version}-%{release}
+Requires:      gtk+3 >= 3.20
+
+%description gui
+Debugging GUI for libinput.
+
+%description gui -l pl.UTF-8
+Graficzny interfejs diagnostyczny do libinput.
+
 %package devel
 Summary:       Development files for libinput
 Summary(pl.UTF-8):     Pliki programistyczne biblioteki libinput
 %package devel
 Summary:       Development files for libinput
 Summary(pl.UTF-8):     Pliki programistyczne biblioteki libinput
@@ -76,7 +111,7 @@ Statyczna biblioteka libinput.
 Summary:       API documentation for libinput library
 Summary(pl.UTF-8):     Dokumentacja API biblioteki libinput
 Group:         Documentation
 Summary:       API documentation for libinput library
 Summary(pl.UTF-8):     Dokumentacja API biblioteki libinput
 Group:         Documentation
-%if "%{_rpmversion}" >= "5"
+%if "%{_rpmversion}" >= "4.6"
 BuildArch:     noarch
 %endif
 
 BuildArch:     noarch
 %endif
 
@@ -86,25 +121,43 @@ API documentation for libinput library.
 %description apidocs -l pl.UTF-8
 Dokumentacja API biblioteki libinput.
 
 %description apidocs -l pl.UTF-8
 Dokumentacja API biblioteki libinput.
 
+%package -n zsh-completion-%{name}
+Summary:       Zsh completion for libinput command
+Summary(pl.UTF-8):     Dopełnianie parametrów w zsh dla polecenia libinput
+Group:         Applications/Shells
+Requires:      %{name} = %{epoch}:%{version}-%{release}
+Requires:      zsh
+
+%description -n zsh-completion-%{name}
+Zsh completion for libinput command.
+
+%description -n zsh-completion-%{name} -l pl.UTF-8
+Dopełnianie parametrów w zsh dla polecenia libinput.
+
 %prep
 %setup -q
 
 %prep
 %setup -q
 
+%{__sed} -i -e '1s,/usr/bin/env python3,%{__python3},' \
+       tools/libinput-measure-{fuzz,touchpad-pressure,touch-size,touchpad-tap}.py \
+       tools/libinput-{replay,analyze-per-slot-delta.py,measure-touchpad-size.py}
+
 %build
 %build
-%configure \
-       --disable-silent-rules \
-       %{?with_static_libs:--enable-static} \
-       --with-udev-dir=/lib/udev
+%meson build \
+       -Ddebug-gui=%{__true_false gui} \
+       -Ddocumentation=%{__true_false doc} \
+       -Dudev-dir=/lib/udev \
+       -Dzshcompletiondir=%{zsh_compdir}
+
+%ninja_build -C build
 
 
-%{__make}
+%{?with_tests:%ninja_test -C build}
 
 %install
 rm -rf $RPM_BUILD_ROOT
 
 
 %install
 rm -rf $RPM_BUILD_ROOT
 
-%{__make} install \
-       DESTDIR=$RPM_BUILD_ROOT
+%ninja_install -C build
 
 
-# obsoleted by pkg-config
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/lib*.la
+%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/libinput-test-suite.1
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -114,18 +167,56 @@ rm -rf $RPM_BUILD_ROOT
 
 %files
 %defattr(644,root,root,755)
 
 %files
 %defattr(644,root,root,755)
-%doc COPYING README.txt
-%attr(755,root,root) %{_bindir}/libinput-debug-events
-%attr(755,root,root) %{_bindir}/libinput-list-devices
+%doc COPYING README.md
+%attr(755,root,root) %{_bindir}/libinput
 %attr(755,root,root) %{_libdir}/libinput.so.*.*.*
 %attr(755,root,root) %ghost %{_libdir}/libinput.so.10
 %attr(755,root,root) %{_libdir}/libinput.so.*.*.*
 %attr(755,root,root) %ghost %{_libdir}/libinput.so.10
+%dir %{_libexecdir}/libinput
+%attr(755,root,root) %{_libexecdir}/libinput/libinput-analyze
+%attr(755,root,root) %{_libexecdir}/libinput/libinput-analyze-per-slot-delta
+%attr(755,root,root) %{_libexecdir}/libinput/libinput-debug-events
+%attr(755,root,root) %{_libexecdir}/libinput/libinput-debug-tablet
+%attr(755,root,root) %{_libexecdir}/libinput/libinput-list-devices
+%attr(755,root,root) %{_libexecdir}/libinput/libinput-measure
+%attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-fuzz
+%attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-touchpad-pressure
+%attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-touchpad-size
+%attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-touchpad-tap
+%attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-touch-size
+%attr(755,root,root) %{_libexecdir}/libinput/libinput-quirks
+%attr(755,root,root) %{_libexecdir}/libinput/libinput-record
+%attr(755,root,root) %{_libexecdir}/libinput/libinput-replay
 %attr(755,root,root) /lib/udev/libinput-device-group
 %attr(755,root,root) /lib/udev/libinput-device-group
-%attr(755,root,root) /lib/udev/libinput-model-quirks
+%attr(755,root,root) /lib/udev/libinput-fuzz-extract
+%attr(755,root,root) /lib/udev/libinput-fuzz-to-zero
 /lib/udev/rules.d/80-libinput-device-groups.rules
 /lib/udev/rules.d/80-libinput-device-groups.rules
-/lib/udev/hwdb.d/90-libinput-model-quirks.hwdb
-/lib/udev/rules.d/90-libinput-model-quirks.rules
+/lib/udev/rules.d/90-libinput-fuzz-override.rules
+%dir %{_datadir}/libinput
+%{_datadir}/libinput/*.quirks
+%{_mandir}/man1/libinput.1*
+%{_mandir}/man1/libinput-analyze.1*
+%{_mandir}/man1/libinput-analyze-per-slot-delta.1*
 %{_mandir}/man1/libinput-debug-events.1*
 %{_mandir}/man1/libinput-debug-events.1*
+%{_mandir}/man1/libinput-debug-tablet.1*
 %{_mandir}/man1/libinput-list-devices.1*
 %{_mandir}/man1/libinput-list-devices.1*
+%{_mandir}/man1/libinput-measure.1*
+%{_mandir}/man1/libinput-measure-fuzz.1*
+%{_mandir}/man1/libinput-measure-touchpad-pressure.1*
+%{_mandir}/man1/libinput-measure-touchpad-size.1*
+%{_mandir}/man1/libinput-measure-touchpad-tap.1*
+%{_mandir}/man1/libinput-measure-touch-size.1*
+%{_mandir}/man1/libinput-quirks.1*
+%{_mandir}/man1/libinput-quirks-list.1*
+%{_mandir}/man1/libinput-quirks-validate.1*
+%{_mandir}/man1/libinput-record.1*
+%{_mandir}/man1/libinput-replay.1*
+
+%if %{with gui}
+%files gui
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/libinput/libinput-debug-gui
+%{_mandir}/man1/libinput-debug-gui.1*
+%endif
 
 %files devel
 %defattr(644,root,root,755)
 
 %files devel
 %defattr(644,root,root,755)
@@ -133,12 +224,12 @@ rm -rf $RPM_BUILD_ROOT
 %{_includedir}/libinput.h
 %{_pkgconfigdir}/libinput.pc
 
 %{_includedir}/libinput.h
 %{_pkgconfigdir}/libinput.pc
 
-%if %{with static_libs}
-%files static
+%if %{with doc}
+%files apidocs
 %defattr(644,root,root,755)
 %defattr(644,root,root,755)
-%{_libdir}/libinput.a
+%doc build/api/*
 %endif
 
 %endif
 
-%files apidocs
+%files -n zsh-completion-%{name}
 %defattr(644,root,root,755)
 %defattr(644,root,root,755)
-%doc doc/html/*
+%{zsh_compdir}/_libinput
This page took 0.475286 seconds and 4 git commands to generate.