diff --git a/.gitignore b/.gitignore index 69002d1..c47571a 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ /librealsense-1.12.1.tar.gz +/librealsense-2.7.9.tar.gz diff --git a/librealsense.buildflags-arm.patch b/librealsense.buildflags-arm.patch deleted file mode 100644 index 98d3d76..0000000 --- a/librealsense.buildflags-arm.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 2b00247..fc84833 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -180,13 +180,16 @@ if(UNIX) - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-switch -Wno-multichar") - - execute_process(COMMAND ${CMAKE_C_COMPILER} -dumpmachine OUTPUT_VARIABLE MACHINE) -- if(${MACHINE} MATCHES "arm-linux-gnueabihf") -+ if(${MACHINE} MATCHES "arm") - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mfpu=neon -mfloat-abi=hard -ftree-vectorize") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mfpu=neon -mfloat-abi=hard -ftree-vectorize") -- elseif(${MACHINE} MATCHES "aarch64-linux-gnu") -+ elseif(${MACHINE} MATCHES "aarch64") - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mstrict-align -ftree-vectorize") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mstrict-align -ftree-vectorize") -- else(${MACHINE} MATCHES "arm-linux-gnueabihf") -+ elseif(${MACHINE} MATCHES "ppc64") -+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mstrict-align -ftree-vectorize") -+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mstrict-align -ftree-vectorize") -+ else(${MACHINE} MATCHES "arm") - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mssse3") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mssse3") - endif(${MACHINE} MATCHES "arm-linux-gnueabihf") diff --git a/librealsense.functional.patch b/librealsense.functional.patch deleted file mode 100644 index 5dd2fdb..0000000 --- a/librealsense.functional.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff -ur librealsense-1.12.1.orig/src/device.cpp librealsense-std-function/src/device.cpp ---- librealsense-1.12.1.orig/src/device.cpp 2016-12-27 08:17:15.000000000 +0100 -+++ librealsense-std-function/src/device.cpp 2017-03-22 13:37:24.869718358 +0100 -@@ -11,6 +11,7 @@ - #include - #include - #include -+#include - - using namespace rsimpl; - using namespace rsimpl::motion_module; -diff -ur librealsense-1.12.1.orig/src/types.h librealsense-std-function/src/types.h ---- librealsense-1.12.1.orig/src/types.h 2016-12-27 08:17:15.000000000 +0100 -+++ librealsense-std-function/src/types.h 2017-03-22 13:35:51.198923194 +0100 -@@ -22,6 +22,7 @@ - #include - #include - #include -+#include - - const uint8_t RS_STREAM_NATIVE_COUNT = 5; - const int RS_USER_QUEUE_SIZE = 20; diff --git a/librealsense.functional2.patch b/librealsense.functional2.patch new file mode 100644 index 0000000..996c338 --- /dev/null +++ b/librealsense.functional2.patch @@ -0,0 +1,11 @@ +diff -ur librealsense-2.7.9.orig/src/concurrency.h librealsense-2.7.9.include-functional/src/concurrency.h +--- librealsense-2.7.9.orig/src/concurrency.h 2017-09-17 15:18:56.000000000 +0200 ++++ librealsense-2.7.9.include-functional/src/concurrency.h 2017-09-18 14:51:57.716452677 +0200 +@@ -7,6 +7,7 @@ + #include + #include + #include ++#include + + const int QUEUE_MAX_SIZE = 10; + // Simplest implementation of a blocking concurrent queue for thread messaging diff --git a/librealsense.remove-cflags.patch b/librealsense.remove-cflags.patch index a2675f3..eae4f81 100644 --- a/librealsense.remove-cflags.patch +++ b/librealsense.remove-cflags.patch @@ -1,16 +1,16 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 2b00247..893746e 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -174,22 +174,6 @@ if(UNIX) - else() - message( FATAL_ERROR "Failed to find libusb-1.0" ) +diff -ur librealsense-2.7.9.orig/CMakeLists.txt librealsense-2.7.9-remove-cflags/CMakeLists.txt +--- librealsense-2.7.9.orig/CMakeLists.txt 2017-09-17 15:18:56.000000000 +0200 ++++ librealsense-2.7.9-remove-cflags/CMakeLists.txt 2017-09-18 11:25:39.834647178 +0200 +@@ -462,21 +462,10 @@ + message( FATAL_ERROR "Failed to find libusb-1.0" ) endif(LIBUSB1_FOUND) -- + - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fPIC -pedantic -g -D_BSD_SOURCE") -- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC -pedantic -g -Ofast -Wno-missing-field-initializers") -- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-switch -Wno-multichar") -- +- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC -pedantic -g -Wno-missing-field-initializers") ++ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fPIC -D_BSD_SOURCE") ++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC -Wno-missing-field-initializers") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-switch -Wno-multichar") + - execute_process(COMMAND ${CMAKE_C_COMPILER} -dumpmachine OUTPUT_VARIABLE MACHINE) - if(${MACHINE} MATCHES "arm-linux-gnueabihf") - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mfpu=neon -mfloat-abi=hard -ftree-vectorize") diff --git a/librealsense.spec b/librealsense.spec index afcf341..1939b7e 100644 --- a/librealsense.spec +++ b/librealsense.spec @@ -1,23 +1,25 @@ Name: librealsense -Version: 1.12.1 -Release: 10%{?dist} +Version: 2.7.9 +Release: 0.1%{?dist} Summary: Cross-platform camera capture for Intel RealSense License: ASL 2.0 and BSD URL: https://github.com/IntelRealSense/librealsense Source0: https://github.com/IntelRealSense/librealsense/archive/v%{version}.tar.gz#/librealsense-%{version}.tar.gz -# Fix architecture detection. -# Pull request: https://github.com/IntelRealSense/librealsense/pull/416 +# Remove custom CFLAGS that override ours. +# This was discussed with upstream, but upstream wants to keep those flags. Patch0: librealsense.remove-cflags.patch -# Patch1 and Patch2 fix missing includes. -# Pull request: https://github.com/IntelRealSense/librealsense/pull/461 -Patch1: librealsense.functional.patch -Patch2: librealsense.timeval.patch +# Add missing functional include +Patch1: librealsense.functional2.patch BuildRequires: cmake BuildRequires: doxygen BuildRequires: gcc-c++ +BuildRequires: glfw-devel +BuildRequires: libGL-devel BuildRequires: libusb-devel +BuildRequires: mesa-libGLU-devel +BuildRequires: pkgconfig(gtk+-3.0) BuildRequires: systemd %description @@ -45,6 +47,8 @@ Summary: Documentation for %{name} The %{name}-doc package contains documentation for developing applications with %{name}. +# enable PIE, we need -fPIC anyway +%global _hardened_build 1 %prep %autosetup -p1 @@ -59,23 +63,23 @@ pushd build -DCMAKE_INSTALL_LIBDIR=%{_libdir} \ -DCMAKE_INSTALL_INCLUDEDIR=%{_includedir} \ .. -%make_build realsense +%make_build popd sed -i "s:/usr/local/bin:%{_datadir}/realsense:" config/* sed -i "s/plugdev/users/g" config/*rules -pushd doc/Doxygen_API +pushd doc/doxygen # Do not generate Windows help files sed -i \ -e "s/GENERATE_HTMLHELP[[:space:]]*=[[:space:]]*YES/GENERATE_HTMLHELP = NO/" \ - Doxyfile + doxyfile doxygen %install pushd build -%make_install realsense +%make_install popd mkdir -p %{buildroot}/%{_udevrulesdir} @@ -83,6 +87,8 @@ install -p -m644 config/99-realsense-libusb.rules %{buildroot}/%{_udevrulesdir} mkdir -p %{buildroot}/%{_datadir}/realsense install -p -m755 config/usb-R200-in{,_udev} %{buildroot}/%{_datadir}/realsense +rm %{buildroot}/%{_libdir}/*.a + %post -p /sbin/ldconfig @@ -92,19 +98,25 @@ install -p -m755 config/usb-R200-in{,_udev} %{buildroot}/%{_datadir}/realsense %files %license LICENSE %doc readme.md -%{_libdir}/librealsense.so.* +%{_libdir}/librealsense2.so.* %{_datadir}/realsense +%{_libdir}/cmake/realsense2 +%{_libdir}/pkgconfig/realsense2.pc +%{_bindir}/* %{_udevrulesdir}/* %files devel %{_includedir}/* -%{_libdir}/librealsense.so +%{_libdir}/librealsense2.so %files doc -%doc doc/Doxygen_API/html/* +%doc doc/doxygen/html/* %changelog +* Mon Sep 18 2017 Till Hofmann - 2.7.9-0.1 +- Update to librealsense2 alpha release + * Thu Aug 03 2017 Fedora Release Engineering - 1.12.1-10 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild diff --git a/librealsense.timeval.patch b/librealsense.timeval.patch deleted file mode 100644 index 3f0d8d1..0000000 --- a/librealsense.timeval.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -ur librealsense-1.12.1.orig/src/libuvc/libuvc.h librealsense-ppc64/src/libuvc/libuvc.h ---- librealsense-1.12.1.orig/src/libuvc/libuvc.h 2016-12-27 08:17:15.000000000 +0100 -+++ librealsense-ppc64/src/libuvc/libuvc.h 2017-03-22 14:01:39.435066056 +0100 -@@ -8,6 +8,7 @@ - #include // FILE - #include - #include -+#include // timeval - #include "libuvc_config.h" - - /** UVC error types, based on libusb errors diff --git a/sources b/sources index 09dde62..235b650 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (librealsense-1.12.1.tar.gz) = faee8f463b55d7b7dddf5834baa202111c0f2fbab49d4acb0fa87e5eed408242473eda238c3257346d9fb4ae75127ebd2d8a2fb9cfbd02c2f362f85af4ef2938 +SHA512 (librealsense-2.7.9.tar.gz) = c1c963ad9117ce742105d2985cf2887528f94ae7ba46961c69af3223dfd591ec3a552df7db105e19ab05b8a7e2907b94804fd165bf83ca4a965e41d12a7e23f7