[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