[packages/libnifalcon] - new
qboosh
qboosh at pld-linux.org
Wed Dec 31 17:53:58 CET 2014
commit 9a269923a12a1ed1a3f9cf798dbc42ab56cb3cf6
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date: Wed Dec 31 17:55:07 2014 +0100
- new
libnifalcon-boost.patch | 29 ++++++++
libnifalcon.spec | 182 ++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 211 insertions(+)
---
diff --git a/libnifalcon.spec b/libnifalcon.spec
new file mode 100644
index 0000000..36b9bc0
--- /dev/null
+++ b/libnifalcon.spec
@@ -0,0 +1,182 @@
+#
+# Conditional build:
+%bcond_without apidocs # do not build and package API docs
+%bcond_without swig # SWIG based Java and Python bindings
+#
+Summary: Open Source Driver for the Novint Falcon Haptic Controller
+Summary(pl.UTF-8): Sterownik z otwartymi źródłami dla kontrolerów haptycznych Novint Falcon
+Name: libnifalcon
+Version: 1.0.2
+Release: 1
+License: BSD
+Group: Libraries
+# for new releases see https://github.com/qdot/libnifalcon
+Source0: http://downloads.sourceforge.net/libnifalcon/%{name}-%{version}.tar.gz
+# Source0-md5: d2d226dad44ad2c98343cca5523e9f16
+Patch0: %{name}-boost.patch
+URL: https://github.com/qdot/libnifalcon
+BuildRequires: boost-devel
+BuildRequires: cmake >= 2.6.0
+%{?with_apidocs:BuildRequires: doxygen}
+BuildRequires: libusb-devel >= 1.0
+BuildRequires: pkgconfig
+BuildRequires: xorg-lib-libX11-devel
+BuildRequires: xorg-lib-libXtst-devel
+%if %{with swig}
+BuildRequires: jdk
+BuildRequires: python-devel >= 2
+BuildRequires: rpmbuild(macros) >= 1.219
+BuildRequires: swig
+BuildRequires: swig-python
+%endif
+BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+
+%description
+libnifalcon is a development library for the NovInt Falcon haptic
+controller, and is an open source, crossplatform alternative to
+NovInt's SDK.
+
+%description -l pl.UTF-8
+libnifalcon to biblioteka programistyczna dla kontrolerów haptycznych
+NovInt Falcon. Jest mającą otwarte źródła, wieloplatformową
+alternatywą dla SDK firmy NovInt.
+
+%package devel
+Summary: Header files for libnifalcon library
+Summary(pl.UTF-8): Pliki nagłówkowe biblioteki libnifalcon
+Group: Development/Libraries
+Requires: %{name} = %{version}-%{release}
+Requires: libusb-devel >= 1.0
+
+%description devel
+Header files for libnifalcon library.
+
+%description devel -l pl.UTF-8
+Pliki nagłówkowe biblioteki libnifalcon.
+
+%package static
+Summary: Static libnifalcon library
+Summary(pl.UTF-8): Statyczna biblioteka libnifalcon
+Group: Development/Libraries
+Requires: %{name}-devel = %{version}-%{release}
+
+%description static
+Static libnifalcon library.
+
+%description static -l pl.UTF-8
+Statyczna biblioteka libnifalcon.
+
+%package apidocs
+Summary: libnifalcon API documentation
+Summary(pl.UTF-8): Dokumentacja API biblioteki libnifalcon
+Group: Documentation
+
+%description apidocs
+API documentation for libnifalcon library.
+
+%description apidocs -l pl.UTF-8
+Dokumentacja API biblioteki libnifalcon.
+
+%package -n java-libnifalcon
+Summary: JNI interface to libnifalcon library
+Summary(pl.UTF-8): Interfejs JNI do biblioteki libnifalcon
+Group: Libraries/Java
+Requires: %{name} = %{version}-%{release}
+Requires: jre
+
+%description -n java-libnifalcon
+JNI interface to libnifalcon library.
+
+%description -n java-libnifalcon -l pl.UTF-8
+Interfejs JNI do biblioteki libnifalcon.
+
+%package -n python-pynifalcon
+Summary: Python interface to libnifalcon library
+Summary(pl.UTF-8): Interfejs Pythona do biblioteki libnifalcon
+Group: Libraries/Python
+Requires: %{name} = %{version}-%{release}
+Requires: python-libs
+
+%description -n python-pynifalcon
+Python interface to libnifalcon library.
+
+%description -n python-pynifalcon -l pl.UTF-8
+Interfejs Pythona do biblioteki libnifalcon.
+
+%prep
+%setup -q
+%patch0 -p1
+
+%build
+install -d build
+cd build
+%cmake .. \
+ %{?with_swig:-DBUILD_SWIG_BINDINGS=ON}
+
+%{__make}
+
+%install
+rm -rf $RPM_BUILD_ROOT
+
+%{__make} -C build install \
+ DESTDIR=$RPM_BUILD_ROOT
+
+%if %{with swig}
+install -d $RPM_BUILD_ROOT%{py_sitedir}
+install build/lib/libJNIFalcon.so $RPM_BUILD_ROOT%{_libdir}
+install build/lib/_pynifalcon.so $RPM_BUILD_ROOT%{py_sitedir}
+cp -p build/lang/swig/pynifalcon.py $RPM_BUILD_ROOT%{py_sitedir}
+%py_comp $RPM_BUILD_ROOT%{py_sitedir}
+%py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
+%py_postclean
+%endif
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%post -p /sbin/ldconfig
+%postun -p /sbin/ldconfig
+
+%files
+%defattr(644,root,root,755)
+%doc ChangeLog.txt README.asciidoc linux/40-novint-falcon-udev.rules license/{LICENSE_GMTL_ADDENDUM.txt,LICENSE_LIBNIF_BSD.txt,LICENSE_NOVINT.txt}
+%attr(755,root,root) %{_bindir}/barrow_mechanics
+%attr(755,root,root) %{_bindir}/falcon_led
+%attr(755,root,root) %{_bindir}/falcon_mouse
+%attr(755,root,root) %{_bindir}/falcon_test_cli
+%attr(755,root,root) %{_bindir}/findfalcons
+%attr(755,root,root) %{_bindir}/findfalcons_multi
+%attr(755,root,root) %{_libdir}/libnifalcon.so.*.*.*
+%attr(755,root,root) %{_libdir}/libnifalcon_cli_base.so.*.*.*
+%attr(755,root,root) %{_libdir}/libnifalcon_device_boost_thread.so.*.*.*
+
+%files devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libnifalcon.so
+%attr(755,root,root) %{_libdir}/libnifalcon_cli_base.so
+%attr(755,root,root) %{_libdir}/libnifalcon_device_boost_thread.so
+%{_includedir}/falcon
+%{_pkgconfigdir}/libnifalcon.pc
+
+%files static
+%defattr(644,root,root,755)
+%{_libdir}/libnifalcon.a
+%{_libdir}/libnifalcon_cli_base.a
+%{_libdir}/libnifalcon_device_boost_thread.a
+
+%if %{with apidocs}
+%files apidocs
+%defattr(644,root,root,755)
+%doc doc/html/*
+%endif
+
+%if %{with swig}
+%files -n java-libnifalcon
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libJNIFalcon.so
+
+%files -n python-pynifalcon
+%defattr(644,root,root,755)
+%attr(755,root,root) %{py_sitedir}/_pynifalcon.so
+%{py_sitedir}/pynifalcon.py[co]
+%endif
diff --git a/libnifalcon-boost.patch b/libnifalcon-boost.patch
new file mode 100644
index 0000000..9771097
--- /dev/null
+++ b/libnifalcon-boost.patch
@@ -0,0 +1,29 @@
+--- libnifalcon-1.0.2/CMakeLists.txt.orig 2010-11-27 05:42:07.000000000 +0100
++++ libnifalcon-1.0.2/CMakeLists.txt 2014-12-31 15:20:50.459408548 +0100
+@@ -81,14 +81,13 @@
+
+ #Find boost, used all over the place
+ SET(Boost_USE_MULTITHREADED ON)
+-SET(Boost_USE_STATIC_LIBS ON)
+
+ FIND_PACKAGE(Boost REQUIRED)
+ IF(NOT Boost_FOUND)
+ MESSAGE(FATAL_ERROR "libnifalcon requires a minimum of the Boost 1.33 headers to build")
+ ENDIF(NOT Boost_FOUND)
+
+-FIND_PACKAGE(Boost COMPONENTS program_options thread)
++FIND_PACKAGE(Boost COMPONENTS program_options thread system)
+
+ ######################################################################################
+ # Project specific globals
+--- libnifalcon-1.0.2/examples/CMakeLists.txt.orig 2010-11-27 05:42:07.000000000 +0100
++++ libnifalcon-1.0.2/examples/CMakeLists.txt 2014-12-31 15:58:29.952647059 +0100
+@@ -128,7 +128,7 @@
+ IF(X11_FOUND AND X11_XTest_LIB)
+ INCLUDE_DIRECTORIES(${X11_INCLUDE_DIR})
+ SET(MOUSE_SRCS falcon_mouse/falcon_mouse.cpp falcon_mouse/falcon_mouse_x11.cpp)
+- SET(MOUSE_LINK_LIBS ${LIBNIFALCON_EXE_PO_LINK_LIBS} ${X11_LIBRARIES} ${X11_XTest_LIB})
++ SET(MOUSE_LINK_LIBS ${LIBNIFALCON_EXE_PO_LINK_LIBS} ${X11_LIBRARIES} ${X11_XTest_LIB} boost_system)
+ ELSE(X11_FOUND AND X11_XTest_LIB)
+ MESSAGE(STATUS "Not compiling falcon_mouse example - X11 compiling requires the XTest library")
+ ENDIF(X11_FOUND AND X11_XTest_LIB)
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/libnifalcon.git/commitdiff/9a269923a12a1ed1a3f9cf798dbc42ab56cb3cf6
More information about the pld-cvs-commit
mailing list