]> git.pld-linux.org Git - packages/libnifalcon.git/blob - libnifalcon.spec
56ce6abeaa27d54bb7aef74a78136bd65849380a
[packages/libnifalcon.git] / libnifalcon.spec
1 #
2 # Conditional build:
3 %bcond_without  apidocs         # do not build and package API docs
4 %bcond_without  swig            # SWIG based Java and Python bindings
5
6 Summary:        Open Source Driver for the Novint Falcon Haptic Controller
7 Summary(pl.UTF-8):      Sterownik z otwartymi źródłami dla kontrolerów haptycznych Novint Falcon
8 Name:           libnifalcon
9 Version:        1.1
10 Release:        4
11 License:        BSD
12 Group:          Libraries
13 #Source0Download: https://github.com/qdot/libnifalcon/releases
14 Source0:        https://github.com/qdot/libnifalcon/archive/%{version}/%{name}-%{version}.tar.gz
15 # Source0-md5:  3723b16749ddfa13fb6ddd1a8a95d58c
16 Patch0:         %{name}-link.patch
17 URL:            https://github.com/qdot/libnifalcon
18 BuildRequires:  boost-devel
19 BuildRequires:  cmake >= 2.6.0
20 %{?with_apidocs:BuildRequires:  doxygen}
21 BuildRequires:  libstdc++-devel
22 BuildRequires:  libusb-devel >= 1.0
23 BuildRequires:  pkgconfig
24 BuildRequires:  xorg-lib-libX11-devel
25 BuildRequires:  xorg-lib-libXtst-devel
26 %if %{with swig}
27 BuildRequires:  jdk
28 BuildRequires:  python-devel >= 2
29 BuildRequires:  rpmbuild(macros) >= 1.219
30 BuildRequires:  swig
31 BuildRequires:  swig-python
32 %endif
33 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
34
35 %description
36 libnifalcon is a development library for the NovInt Falcon haptic
37 controller, and is an open source, crossplatform alternative to
38 NovInt's SDK.
39
40 %description -l pl.UTF-8
41 libnifalcon to biblioteka programistyczna dla kontrolerów haptycznych
42 NovInt Falcon. Jest mającą otwarte źródła, wieloplatformową
43 alternatywą dla SDK firmy NovInt.
44
45 %package devel
46 Summary:        Header files for libnifalcon library
47 Summary(pl.UTF-8):      Pliki nagłówkowe biblioteki libnifalcon
48 Group:          Development/Libraries
49 Requires:       %{name} = %{version}-%{release}
50 Requires:       libusb-devel >= 1.0
51
52 %description devel
53 Header files for libnifalcon library.
54
55 %description devel -l pl.UTF-8
56 Pliki nagłówkowe biblioteki libnifalcon.
57
58 %package static
59 Summary:        Static libnifalcon library
60 Summary(pl.UTF-8):      Statyczna biblioteka libnifalcon
61 Group:          Development/Libraries
62 Requires:       %{name}-devel = %{version}-%{release}
63
64 %description static
65 Static libnifalcon library.
66
67 %description static -l pl.UTF-8
68 Statyczna biblioteka libnifalcon.
69
70 %package apidocs
71 Summary:        libnifalcon API documentation
72 Summary(pl.UTF-8):      Dokumentacja API biblioteki libnifalcon
73 Group:          Documentation
74 BuildArch:      noarch
75
76 %description apidocs
77 API documentation for libnifalcon library.
78
79 %description apidocs -l pl.UTF-8
80 Dokumentacja API biblioteki libnifalcon.
81
82 %package -n java-libnifalcon
83 Summary:        JNI interface to libnifalcon library
84 Summary(pl.UTF-8):      Interfejs JNI do biblioteki libnifalcon
85 Group:          Libraries/Java
86 Requires:       %{name} = %{version}-%{release}
87 Requires:       jre
88
89 %description -n java-libnifalcon
90 JNI interface to libnifalcon library.
91
92 %description -n java-libnifalcon -l pl.UTF-8
93 Interfejs JNI do biblioteki libnifalcon.
94
95 %package -n python-pynifalcon
96 Summary:        Python interface to libnifalcon library
97 Summary(pl.UTF-8):      Interfejs Pythona do biblioteki libnifalcon
98 Group:          Libraries/Python
99 Requires:       %{name} = %{version}-%{release}
100 Requires:       python-libs
101
102 %description -n python-pynifalcon
103 Python interface to libnifalcon library.
104
105 %description -n python-pynifalcon -l pl.UTF-8
106 Interfejs Pythona do biblioteki libnifalcon.
107
108 %prep
109 %setup -q
110 %patch0 -p1
111
112 %build
113 install -d build
114 cd build
115 %cmake .. \
116         %{?with_swig:-DBUILD_SWIG_BINDINGS=ON} \
117         -DLIBRARY_INSTALL_DIR:PATH=%{_libdir}
118
119 %{__make} -j1
120
121 %if %{with apidocs}
122 cd ../doc
123 doxygen
124 %endif
125
126 %install
127 rm -rf $RPM_BUILD_ROOT
128
129 %{__make} -C build install \
130         DESTDIR=$RPM_BUILD_ROOT
131
132 %if %{with swig}
133 install -d $RPM_BUILD_ROOT%{py_sitedir}
134 install -p build/lib/libJNIFalcon.so $RPM_BUILD_ROOT%{_libdir}
135 install -p build/lib/_pynifalcon.so $RPM_BUILD_ROOT%{py_sitedir}
136 cp -p build/lang/swig/pynifalcon.py $RPM_BUILD_ROOT%{py_sitedir}
137 %py_comp $RPM_BUILD_ROOT%{py_sitedir}
138 %py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
139 %py_postclean
140 %endif
141
142 %clean
143 rm -rf $RPM_BUILD_ROOT
144
145 %post   -p /sbin/ldconfig
146 %postun -p /sbin/ldconfig
147
148 %post   -n java-libnifalcon -p /sbin/ldconfig
149 %postun -n java-libnifalcon -p /sbin/ldconfig
150
151 %files
152 %defattr(644,root,root,755)
153 %doc ChangeLog.txt README.asciidoc linux/40-novint-falcon-udev.rules license/{LICENSE_GMTL_ADDENDUM.txt,LICENSE_LIBNIF_BSD.txt,LICENSE_NOVINT.txt}
154 %attr(755,root,root) %{_bindir}/barrow_mechanics
155 %attr(755,root,root) %{_bindir}/falcon_led
156 %attr(755,root,root) %{_bindir}/falcon_mouse
157 %attr(755,root,root) %{_bindir}/falcon_test_cli
158 %attr(755,root,root) %{_bindir}/findfalcons
159 %attr(755,root,root) %{_bindir}/findfalcons_multi
160 %attr(755,root,root) %{_libdir}/libnifalcon.so.*.*.*
161 %attr(755,root,root) %{_libdir}/libnifalcon_cli_base.so.*.*.*
162 %attr(755,root,root) %{_libdir}/libnifalcon_device_thread.so.*.*.*
163
164 %files devel
165 %defattr(644,root,root,755)
166 %attr(755,root,root) %{_libdir}/libnifalcon.so
167 %attr(755,root,root) %{_libdir}/libnifalcon_cli_base.so
168 %attr(755,root,root) %{_libdir}/libnifalcon_device_thread.so
169 %{_includedir}/falcon
170 %{_pkgconfigdir}/libnifalcon.pc
171
172 %files static
173 %defattr(644,root,root,755)
174 %{_libdir}/libnifalcon.a
175 %{_libdir}/libnifalcon_cli_base.a
176 %{_libdir}/libnifalcon_device_thread.a
177
178 %if %{with apidocs}
179 %files apidocs
180 %defattr(644,root,root,755)
181 %doc doc/html/* doc/*.asciidoc
182 %endif
183
184 %if %{with swig}
185 %files -n java-libnifalcon
186 %defattr(644,root,root,755)
187 %attr(755,root,root) %{_libdir}/libJNIFalcon.so
188
189 %files -n python-pynifalcon
190 %defattr(644,root,root,755)
191 %attr(755,root,root) %{py_sitedir}/_pynifalcon.so
192 %{py_sitedir}/pynifalcon.py[co]
193 %endif
This page took 0.073446 seconds and 2 git commands to generate.