[openni] Upgrade to 1.5.2.23

rmattes rmattes at fedoraproject.org
Sun Jun 1 19:05:42 UTC 2014


commit af74da550df38bd4bef52d801e8bb938467598f0
Author: Rich Mattes <richmattes at gmail.com>
Date:   Sun Jun 1 13:17:00 2014 -0400

    Upgrade to 1.5.2.23

 openni-1.3.2.1-arm.patch                           |   11 -
 openni-1.3.2.1-disable-sse.patch                   |   20 -
 openni-1.3.2.1-fedora.patch                        |  404 --------------------
 openni-1.5.2.23-armsamples.patch                   |   22 +
 openni-1.5.2.23-disable-softfloat.patch            |   23 ++
 openni-1.5.2.23-disable-sse.patch                  |   20 +
 openni-1.5.2.23-fedora.patch                       |  315 +++++++++++++++
 ....1-willow.patch => openni-1.5.2.23-willow.patch |  151 +++-----
 openni.spec                                        |  108 +++---
 9 files changed, 501 insertions(+), 573 deletions(-)
---
diff --git a/openni-1.5.2.23-armsamples.patch b/openni-1.5.2.23-armsamples.patch
new file mode 100644
index 0000000..70351b9
--- /dev/null
+++ b/openni-1.5.2.23-armsamples.patch
@@ -0,0 +1,22 @@
+diff -up ./Platform/Linux/CreateRedist/Redist_OpenNi.py.armsamples ./Platform/Linux/CreateRedist/Redist_OpenNi.py
+--- ./Platform/Linux/CreateRedist/Redist_OpenNi.py.armsamples	2013-09-15 00:09:24.809941045 -0400
++++ ./Platform/Linux/CreateRedist/Redist_OpenNi.py	2013-09-15 00:09:43.265631930 -0400
+@@ -346,12 +346,12 @@ if PLATFORM == 'CE4100':
+     samples_list.remove('NiViewer')
+     samples_list.remove('NiSimpleViewer')
+ 
+-if PLATFORM == 'Arm':
+-    samples_list.remove('NiUserTracker')
+-    samples_list.remove('NiViewer')
+-    samples_list.remove('NiSimpleViewer')
+-    samples_list.remove('NiHandTracker')
+-    samples_list.remove('NiUserSelection')
++#if PLATFORM == 'Arm':
++#    samples_list.remove('NiUserTracker')
++#    samples_list.remove('NiViewer')
++#    samples_list.remove('NiSimpleViewer')
++#    samples_list.remove('NiHandTracker')
++#    samples_list.remove('NiUserSelection')
+ 
+ if (MonoDetected == 0):
+     samples_list.remove("SimpleRead.net")
diff --git a/openni-1.5.2.23-disable-softfloat.patch b/openni-1.5.2.23-disable-softfloat.patch
new file mode 100644
index 0000000..e0b7d8d
--- /dev/null
+++ b/openni-1.5.2.23-disable-softfloat.patch
@@ -0,0 +1,23 @@
+diff -up ./Platform/Linux/Build/Common/Platform.Arm.disable-softfloat ./Platform/Linux/Build/Common/Platform.Arm
+--- ./Platform/Linux/Build/Common/Platform.Arm.disable-softfloat	2012-01-04 06:35:46.000000000 -0500
++++ ./Platform/Linux/Build/Common/Platform.Arm	2014-06-01 13:46:34.871518256 -0400
+@@ -1,12 +1,16 @@
++# Fedora: glut is available on ARM
++export GLUT_SUPPORTED=1
++
+ ifeq "$(CFG)" "Release"
+ 
+     # Hardware specifying flags
+-    CFLAGS += -march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp #-mcpu=cortex-a8
++    #CFLAGS += -march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp #-mcpu=cortex-a8
+ 
+     # Optimization level, minus currently buggy optimizing methods (which break bit-exact)
+-    CFLAGS += -O3 -fno-tree-pre -fno-strict-aliasing
++    CFLAGS += -fno-tree-pre -fno-strict-aliasing
+ 
+     # More optimization flags
+-    CFLAGS += -ftree-vectorize -ffast-math -funsafe-math-optimizations -fsingle-precision-constant
++    CFLAGS += -ftree-vectorize -ffast-math -funsafe-math-optimizations 
++    #-fsingle-precision-constant
+ 
+ endif
diff --git a/openni-1.5.2.23-disable-sse.patch b/openni-1.5.2.23-disable-sse.patch
new file mode 100644
index 0000000..402d7c0
--- /dev/null
+++ b/openni-1.5.2.23-disable-sse.patch
@@ -0,0 +1,20 @@
+diff -up ./Platform/Linux/Build/Common/Platform.x86.disable-sse ./Platform/Linux/Build/Common/Platform.x86
+--- ./Platform/Linux/Build/Common/Platform.x86.disable-sse	2013-09-13 20:34:18.023985897 -0400
++++ ./Platform/Linux/Build/Common/Platform.x86	2013-09-13 20:34:48.556164983 -0400
+@@ -2,7 +2,7 @@
+ export GLUT_SUPPORTED=1
+ 
+ ifndef SSE_GENERATION
+-	SSE_GENERATION = 3
++	SSE_GENERATION = 0
+ endif
+ 
+ ifeq ("$(OSTYPE)","Darwin")
+@@ -19,7 +19,5 @@ else
+ 		ifeq ($(SSSE3_ENABLED), 1)
+ 			CFLAGS += -mssse3
+ 		endif
+-	else
+-		DUMMY:=($error "Only SSE2 and SSE3 are supported")
+ 	endif
+ endif
diff --git a/openni-1.5.2.23-fedora.patch b/openni-1.5.2.23-fedora.patch
new file mode 100644
index 0000000..8d6fa53
--- /dev/null
+++ b/openni-1.5.2.23-fedora.patch
@@ -0,0 +1,315 @@
+diff -up ./.gitignore.fedora ./.gitignore
+--- ./.gitignore.fedora	2013-09-13 20:45:08.642163658 -0400
++++ ./.gitignore	2013-09-13 20:45:08.642163658 -0400
+@@ -0,0 +1,8 @@
++*~
++Release/
++/Source/DoxyGen/html
++/Platform/Linux/Bin
++/Platform/Linux/CreateRedist/Final
++/Platform/Linux/CreateRedist/Output
++/Platform/Linux/Redist
++/Platform/Linux/Build
+diff -up ./Platform/Linux/Build/Modules/nimCodecs/Makefile.fedora ./Platform/Linux/Build/Modules/nimCodecs/Makefile
+--- ./Platform/Linux/Build/Modules/nimCodecs/Makefile.fedora	2012-01-04 06:35:46.000000000 -0500
++++ ./Platform/Linux/Build/Modules/nimCodecs/Makefile	2013-09-13 20:45:08.642163658 -0400
+@@ -1,18 +1,20 @@
+ BIN_DIR = ../../../Bin
+ 
+ INC_DIRS = \
+-	../../../../../Include \
+-	../../../../../Source \
+-	../../../../../Source/External/LibJPEG
++	../../../../../Include 
+ 
+ SRC_FILES = \
+-	../../../../../Source/Modules/nimCodecs/*.cpp \
+-	../../../../../Source/External/LibJPEG/*.c
++	../../../../../Source/Modules/nimCodecs/*.cpp 
+ 
+ LIB_NAME = nimCodecs
+ USED_LIBS = OpenNI
+ 
+-include ../../Common/CommonCppMakefile
+-
++ifneq ($(wildcard /usr/lib/libjpeg.so /usr/lib32/libjpeg.so /usr/lib64/libjpeg.so /usr/local/lib/libjpeg.so /usr/local/lib32/libjpeg.so /usr/local/lib64/libjpeg.so),)
++  USED_LIBS += jpeg
++else
++  INC_DIRS  += ../../../../../Source/External/LibJPEG
++  SRC_FILES += ../../../../../Source/External/LibJPEG/*.c
++endif
+ 
++include ../../Common/CommonCppMakefile
+ 
+diff -up ./Platform/Linux/Build/OpenNI/Makefile.fedora ./Platform/Linux/Build/OpenNI/Makefile
+--- ./Platform/Linux/Build/OpenNI/Makefile.fedora	2012-01-04 06:35:46.000000000 -0500
++++ ./Platform/Linux/Build/OpenNI/Makefile	2013-09-13 20:45:08.643163697 -0400
+@@ -4,13 +4,11 @@ BIN_DIR = ../../Bin
+ 
+ INC_DIRS = \
+ 	../../../../Include \
+-	../../../../Source \
+-	../../../../Source/External/TinyXml
++	../../../../Source
+ 
+ SRC_FILES = \
+ 	../../../../Source/OpenNI/*.cpp \
+-	../../../../Source/OpenNI/Linux/*.cpp \
+-	../../../../Source/External/TinyXml/*.cpp
++	../../../../Source/OpenNI/Linux/*.cpp
+ 
+ ifeq ("$(OSTYPE)","Darwin")
+ 	INC_DIRS += /opt/local/include
+@@ -25,6 +23,14 @@ ifneq ("$(OSTYPE)","Darwin")
+ endif
+ DEFINES = XN_EXPORTS
+ 
++ifneq ($(wildcard /usr/include/tinyxml.h /usr/local/include/tinyxml.h),)
++  USED_LIBS += tinyxml
++else
++  INC_DIRS += ../../../../Source/External/TinyXml
++  SRC_FILES += ../../../../Source/External/TinyXml/*.cpp
++endif
++
++
+ include ../Common/CommonCppMakefile
+ 
+ 
+diff -up ./Platform/Linux/Build/Samples/NiHandTracker/Makefile.fedora ./Platform/Linux/Build/Samples/NiHandTracker/Makefile
+--- ./Platform/Linux/Build/Samples/NiHandTracker/Makefile.fedora	2012-01-04 06:35:46.000000000 -0500
++++ ./Platform/Linux/Build/Samples/NiHandTracker/Makefile	2013-09-13 20:45:08.643163697 -0400
+@@ -11,7 +11,7 @@ SRC_FILES = ../../../../../Samples/NiHan
+ ifeq ("$(OSTYPE)","Darwin")
+ 	LDFLAGS += -framework OpenGL -framework GLUT
+ else
+-	USED_LIBS += glut
++	USED_LIBS += glut GL
+ endif
+ 
+ USED_LIBS += OpenNI
+diff -up ./Platform/Linux/Build/Samples/NiSimpleViewer/Makefile.fedora ./Platform/Linux/Build/Samples/NiSimpleViewer/Makefile
+--- ./Platform/Linux/Build/Samples/NiSimpleViewer/Makefile.fedora	2012-01-04 06:35:46.000000000 -0500
++++ ./Platform/Linux/Build/Samples/NiSimpleViewer/Makefile	2013-09-13 20:45:08.644163736 -0400
+@@ -11,7 +11,7 @@ EXE_NAME = Sample-NiSimpleViewer
+ ifeq ("$(OSTYPE)","Darwin")
+ 	LDFLAGS += -framework OpenGL -framework GLUT
+ else
+-	USED_LIBS += glut
++	USED_LIBS += glut GL
+ endif
+ 
+ USED_LIBS += OpenNI
+diff -up ./Platform/Linux/Build/Samples/NiUserSelection/Makefile.fedora ./Platform/Linux/Build/Samples/NiUserSelection/Makefile
+--- ./Platform/Linux/Build/Samples/NiUserSelection/Makefile.fedora	2013-09-13 20:46:15.143743887 -0400
++++ ./Platform/Linux/Build/Samples/NiUserSelection/Makefile	2013-09-13 20:46:21.133976302 -0400
+@@ -12,7 +12,7 @@ ifeq "$(GLUT_SUPPORTED)" "1"
+ 	ifeq ("$(OSTYPE)","Darwin")
+ 		LDFLAGS += -framework OpenGL -framework GLUT
+ 	else
+-		USED_LIBS += glut
++		USED_LIBS += glut GL
+ 	endif
+ else
+ 	ifeq "$(GLES_SUPPORTED)" "1"
+diff -up ./Platform/Linux/Build/Samples/NiUserTracker/Makefile.fedora ./Platform/Linux/Build/Samples/NiUserTracker/Makefile
+--- ./Platform/Linux/Build/Samples/NiUserTracker/Makefile.fedora	2012-01-04 06:35:46.000000000 -0500
++++ ./Platform/Linux/Build/Samples/NiUserTracker/Makefile	2013-09-13 20:45:08.644163736 -0400
+@@ -12,7 +12,7 @@ ifeq "$(GLUT_SUPPORTED)" "1"
+ 	ifeq ("$(OSTYPE)","Darwin")
+ 		LDFLAGS += -framework OpenGL -framework GLUT
+ 	else
+-		USED_LIBS += glut
++		USED_LIBS += glut GL
+ 	endif
+ else
+ 	ifeq "$(GLES_SUPPORTED)" "1"
+diff -up ./Platform/Linux/Build/Samples/NiViewer/Makefile.fedora ./Platform/Linux/Build/Samples/NiViewer/Makefile
+--- ./Platform/Linux/Build/Samples/NiViewer/Makefile.fedora	2012-01-04 06:35:46.000000000 -0500
++++ ./Platform/Linux/Build/Samples/NiViewer/Makefile	2013-09-13 20:45:08.644163736 -0400
+@@ -11,7 +11,7 @@ SRC_FILES = ../../../../../Samples/NiVie
+ ifeq ("$(OSTYPE)","Darwin")
+ 	LDFLAGS += -framework OpenGL -framework GLUT
+ else
+-	USED_LIBS += glut
++	USED_LIBS += glut GL
+ endif
+ 
+ USED_LIBS += OpenNI
+diff -up ./Platform/Linux/CreateRedist/install.sh.fedora ./Platform/Linux/CreateRedist/install.sh
+--- ./Platform/Linux/CreateRedist/install.sh.fedora	2012-01-04 06:35:46.000000000 -0500
++++ ./Platform/Linux/CreateRedist/install.sh	2013-09-13 20:45:08.644163736 -0400
+@@ -8,6 +8,8 @@ Installs OpenNI to current machine.
+ 	Installs OpenNI (default mode)
+ -u,--uninstall
+ 	Uninstalls OpenNI.
++-n,--noregister
++	Do not (un)register the modules
+ -c,--cross-compile-rootfs <path>
+ 	Used for cross-compiling. Installs OpenNI to <path> instead of '/'.
+ -h,--help
+@@ -45,6 +47,9 @@ while [ "$1" ]; do
+ 	-u|--uninstall)
+ 		uninstall=yes
+ 		;;
++	-n|--noregister)
++		register=no
++		;;
+ 	-c|--cross-staging-dir)
+ 		shift
+ 		rootfs=$1
+@@ -71,11 +76,22 @@ if [ "$install" = yes ] && [ "$uninstall
+ 	exit 1
+ fi
+ 
+-INSTALL_LIB=$rootfs/usr/lib
+-INSTALL_BIN=$rootfs/usr/bin
+-INSTALL_INC=$rootfs/usr/include/ni
+-INSTALL_VAR=$rootfs/var/lib/ni
+-INSTALL_JAR=$rootfs/usr/share/java
++
++if [ -z "$INSTALL_LIB" ]; then
++  INSTALL_LIB=$rootfs/usr/lib
++fi
++if [ -z "$INSTALL_BIN" ]; then
++  INSTALL_BIN=$rootfs/usr/bin
++fi
++if [ -z "$INSTALL_INC" ]; then
++  INSTALL_INC=$rootfs/usr/include/ni
++fi
++if [ -z "$INSTALL_VAR" ]; then
++  INSTALL_VAR=$rootfs/usr/etc/ni
++fi
++if [ -z "$INSTALL_JAR" ]; then
++  INSTALL_JAR=$rootfs/usr/share/java
++fi
+ 
+ # make all calls into OpenNI run in this filesystem
+ export OPEN_NI_INSTALL_PATH=$rootfs
+@@ -86,6 +102,12 @@ if [ "$install" = yes ]; then
+ 	printf "Installing OpenNI\n"
+ 	printf "****************************\n\n"
+ 	
++	mkdir -p $INSTALL_LIB
++	mkdir -p $INSTALL_BIN
++	mkdir -p $INSTALL_INC
++	mkdir -p $INSTALL_VAR
++	mkdir -p $INSTALL_JAR
++
+ 	# copy libraries
+ 	printf "copying shared libraries..."
+ 	cp $LIB_FILES $INSTALL_LIB
+@@ -107,17 +129,21 @@ if [ "$install" = yes ]; then
+ 	mkdir -p $INSTALL_VAR
+ 	printf "OK\n"
+ 
+-	# register modules
+-	for module in $MODULES; do
+-		printf "registering module '$module'..."
+-		$INSTALL_BIN/niReg -r $INSTALL_LIB/$module
+-		printf "OK\n"
+-	done
++	if [ "$register" = yes ]; then
++		# register modules
++		for module in $MODULES; do
++			printf "registering module '$module'..."
++			$INSTALL_BIN/niReg -r $INSTALL_LIB/$module
++			printf "OK\n"
++		done
++	fi
+ 
+-	# mono
+-	if [ -f $rootfs/usr/bin/gmcs -a -f Bin/OpenNI.net.dll ]; then
+-		printf "Installing .Net wrappers...\n"
+-		gacutil -i Bin/OpenNI.net.dll -package 2.0 $GACDIR
++	if [ "$register" = yes ]; then
++		# mono
++		if [ -f $rootfs/usr/bin/gmcs -a -f Bin/OpenNI.net.dll ]; then
++			printf "Installing .Net wrappers...\n"
++			gacutil -i Bin/OpenNI.net.dll -package 2.0 $GACDIR
++		fi
+ 	fi
+ 
+ 	# java wrappers
+@@ -135,13 +161,15 @@ elif [ "$uninstall" = yes ]; then
+ 	printf "Uninstalling OpenNI\n"
+ 	printf "****************************\n\n"
+ 
+-	# unregister modules
+-	for module in $MODULES; do
+-    	printf "unregistering module '$module'..."
+-        if $INSTALL_BIN/niReg -u $INSTALL_LIB/$module; then
+-            printf "OK\n"
+-        fi
+-	done
++	if [ "$register" = yes ]; then
++		# unregister modules
++		for module in $MODULES; do
++			printf "unregistering module '$module'..."
++			if $INSTALL_BIN/niReg -u $INSTALL_LIB/$module; then
++				printf "OK\n"
++			fi
++		done
++	fi
+ 
+ 	# include files
+ 	printf "removing include files..."
+@@ -162,12 +190,13 @@ elif [ "$uninstall" = yes ]; then
+ 	done
+ 	printf "OK\n"
+ 
+-	# mono
+-	if [ -f $rootfs/usr/bin/gmcs -a -f Bin/OpenNI.net.dll ]; then
+-		printf "Removing .Net wrappers...\n"
+-		gacutil -u OpenNI.net $GACDIR
++	if [ "$register" = yes ]; then
++		# mono
++		if [ -f $rootfs/usr/bin/gmcs -a -f Bin/OpenNI.net.dll ]; then
++			printf "Removing .Net wrappers...\n"
++			gacutil -u OpenNI.net $GACDIR
++		fi
+ 	fi
+-
+ 	# java
+ 	printf "removing java bindings..."
+ 	for filename in $JAR_FILES; do
+diff -up ./Source/OpenNI/Linux/XnUSBLinux.cpp.fedora ./Source/OpenNI/Linux/XnUSBLinux.cpp
+--- ./Source/OpenNI/Linux/XnUSBLinux.cpp.fedora	2012-01-04 06:35:46.000000000 -0500
++++ ./Source/OpenNI/Linux/XnUSBLinux.cpp	2013-09-13 20:45:08.645163775 -0400
+@@ -383,6 +383,16 @@ XN_C_API XnStatus xnUSBOpenDeviceImpl(li
+ 		return (XN_STATUS_USB_SET_CONFIG_FAILED);
+ 	}
+ */	
++	// detach any active kernel driver, code extracted from libfreenect
++	rc = libusb_kernel_driver_active(handle, 0);
++	if (rc == 1) {
++	  	rc = libusb_detach_kernel_driver(handle, 0);
++		if (rc != 0)
++		{
++		  	libusb_close(handle);
++			return (XN_STATUS_USB_SET_INTERFACE_FAILED);
++		}
++	}
+ 	// claim the interface (you cannot open any end point before claiming the interface)
+ 	rc = libusb_claim_interface(handle, 0);
+ 	if (rc != 0)
+@@ -496,7 +506,7 @@ XN_C_API XnStatus xnUSBCloseDevice(XN_US
+ 	{
+ 		return (XN_STATUS_USB_DEVICE_CLOSE_FAILED);
+ 	}
+-
++	rc = libusb_attach_kernel_driver(pDevHandle->hDevice, 0); 
+ 	libusb_close(pDevHandle->hDevice);
+ 
+ 	XN_FREE_AND_NULL(pDevHandle);
+diff -up ./Wrappers/OpenNI.jni/jni.h.fedora ./Wrappers/OpenNI.jni/jni.h
+--- ./Wrappers/OpenNI.jni/jni.h.fedora	2012-01-04 06:35:46.000000000 -0500
++++ ./Wrappers/OpenNI.jni/jni.h	2013-09-13 20:45:08.646163813 -0400
+@@ -183,7 +183,7 @@ typedef enum _jobjectType {
+ typedef struct {
+     const char *name;
+     const char *signature;
+-    void *fnPtr;
++    const void *fnPtr;
+ } JNINativeMethod;
+ 
+ /*
diff --git a/openni-1.3.2.1-willow.patch b/openni-1.5.2.23-willow.patch
similarity index 56%
rename from openni-1.3.2.1-willow.patch
rename to openni-1.5.2.23-willow.patch
index 7344770..a1a1740 100644
--- a/openni-1.3.2.1-willow.patch
+++ b/openni-1.5.2.23-willow.patch
@@ -1,6 +1,6 @@
-diff -rupN -x Platform -x DoxyGen -x .git openni/Include/XnCppWrapper.h ../build_patched/openni/Include/XnCppWrapper.h
---- openni/Include/XnCppWrapper.h	2011-08-04 20:25:06.341589001 -0700
-+++ ../build_patched/openni/Include/XnCppWrapper.h	2011-08-15 11:29:53.841589000 -0700
+diff -up ./Include/XnCppWrapper.h.willow ./Include/XnCppWrapper.h
+--- ./Include/XnCppWrapper.h.willow	2012-01-04 06:35:46.000000000 -0500
++++ ./Include/XnCppWrapper.h	2013-09-13 21:02:35.903795250 -0400
 @@ -129,7 +129,7 @@ namespace xn
  		 *
  		 * @param	ppData		[in]	A pointer to the data member of the meta data object.
@@ -10,7 +10,7 @@ diff -rupN -x Platform -x DoxyGen -x .git openni/Include/XnCppWrapper.h ../build
  		{
  			xnOSMemSet(&m_output, 0, sizeof(XnOutputMetaData));
  		}
-@@ -1152,6 +1152,7 @@ namespace xn
+@@ -1175,6 +1175,7 @@ namespace xn
  		 *
  		 * @param	other		[in]	An object to copy from.
  		 */
@@ -18,7 +18,7 @@ diff -rupN -x Platform -x DoxyGen -x .git openni/Include/XnCppWrapper.h ../build
  		NodeInfo(const NodeInfo& other) : m_pNeededNodes(NULL), m_bOwnerOfNode(FALSE)
  		{
  			SetUnderlyingObject(other.m_pInfo);
-@@ -1260,7 +1261,7 @@ namespace xn
+@@ -1292,7 +1293,7 @@ namespace xn
  			xnNodeQueryAllocate(&m_pQuery);
  		}
  
@@ -27,7 +27,7 @@ diff -rupN -x Platform -x DoxyGen -x .git openni/Include/XnCppWrapper.h ../build
  		{
  		}
  
-@@ -4139,6 +4140,7 @@ namespace xn
+@@ -4180,6 +4181,7 @@ namespace xn
  		 */
  		inline XnBool IsCalibrated(XnUserID user) const
  		{
@@ -35,15 +35,7 @@ diff -rupN -x Platform -x DoxyGen -x .git openni/Include/XnCppWrapper.h ../build
  			return xnIsSkeletonCalibrated(GetHandle(), user);
  		}
  
-@@ -4348,6 +4350,7 @@ namespace xn
- 			CalibrationStartCookie* pCalibrationCookie = (CalibrationStartCookie*)hCallback;
- 			xnUnregisterFromCalibrationStart(GetHandle(), pCalibrationCookie->hCallback);
- 			xnOSFree(pCalibrationCookie);
-+			return XN_STATUS_OK;
- 		}
- 
- 		/**
-@@ -5280,7 +5283,7 @@ namespace xn
+@@ -5346,7 +5348,7 @@ namespace xn
  	{
  	public:
  		/// Ctor
@@ -52,7 +44,7 @@ diff -rupN -x Platform -x DoxyGen -x .git openni/Include/XnCppWrapper.h ../build
  
  		/**
  		 * Ctor
-@@ -5288,7 +5291,7 @@ namespace xn
+@@ -5354,7 +5356,7 @@ namespace xn
  		 * @param	pErrors		[in]	underlying C object to wrap
  		 * @param	bOwn		[in]	TRUE to own the object (i.e. free it upon destruction), FALSE otherwise.
  		 */
@@ -61,7 +53,7 @@ diff -rupN -x Platform -x DoxyGen -x .git openni/Include/XnCppWrapper.h ../build
  
  		/// Dtor
  		~EnumerationErrors() { Free(); }
-@@ -5869,6 +5872,7 @@ namespace xn
+@@ -5935,6 +5937,7 @@ namespace xn
  
  		/** @copybrief xnUnregisterFromGlobalErrorStateChange
  		 * For full details and usage, see @ref xnUnregisterFromGlobalErrorStateChange
@@ -69,28 +61,25 @@ diff -rupN -x Platform -x DoxyGen -x .git openni/Include/XnCppWrapper.h ../build
  		 */
  		inline void UnregisterFromErrorStateChange(XnCallbackHandle hCallback)
  		{
-diff -rupN -x Platform -x DoxyGen -x .git openni/Include/XnOS.h ../build_patched/openni/Include/XnOS.h
---- openni/Include/XnOS.h	2011-08-04 20:25:06.371589001 -0700
-+++ ../build_patched/openni/Include/XnOS.h	2011-08-10 05:36:55.101588999 -0700
-@@ -47,9 +47,13 @@
- #elif (XN_PLATFORM == XN_PLATFORM_LINUX_X86 || XN_PLATFORM == XN_PLATFORM_LINUX_ARM || XN_PLATFORM == XN_PLATFORM_MACOSX || XN_PLATFORM == XN_PLATFORM_ANDROID_ARM)
- 	#include "Linux-x86/XnOSLinux-x86.h"
+diff -up ./Include/XnOS.h.willow ./Include/XnOS.h
+--- ./Include/XnOS.h.willow	2013-09-13 21:02:35.903795250 -0400
++++ ./Include/XnOS.h	2013-09-13 21:05:00.576408002 -0400
+@@ -49,7 +49,11 @@
  #elif defined(_ARC)
--	#include "ARC/XnOSARC.h"
-+  #include "ARC/XnOSARC.h" 
+ 	#include "ARC/XnOSARC.h"
  #else
 -	#error OpenNI OS Abstraction Layer - Unsupported Platform!
-+  #if defined __INTEL_COMPILER
-+    #include "Linux-x86/XnOSLinux-x86.h" 
-+  #else
-+     #error OpenNI OS Abstraction Layer - Unsupported Platform!
-+  #endif
++	#if defined __INTEL_COMPILER
++		#include "Linux-x86/XnOSLinux.h" 
++	#else
++		#error OpenNI OS Abstraction Layer - Unsupported Platform!
++	#endif
  #endif
  
  //---------------------------------------------------------------------------
-diff -rupN -x Platform -x DoxyGen -x .git openni/Include/XnPlatform.h ../build_patched/openni/Include/XnPlatform.h
---- openni/Include/XnPlatform.h	2011-08-04 20:25:06.371589001 -0700
-+++ ../build_patched/openni/Include/XnPlatform.h	2011-08-10 05:37:27.121589001 -0700
+diff -up ./Include/XnPlatform.h.willow ./Include/XnPlatform.h
+--- ./Include/XnPlatform.h.willow	2012-01-04 06:35:46.000000000 -0500
++++ ./Include/XnPlatform.h	2013-09-13 21:02:35.904795289 -0400
 @@ -69,11 +69,16 @@
  #elif _ARC
  	#include "ARC/XnPlatformARC.h"
@@ -100,7 +89,7 @@ diff -rupN -x Platform -x DoxyGen -x .git openni/Include/XnPlatform.h ../build_p
  #else
 -	#error OpenNI Platform Abstraction Layer - Unsupported Platform!
 + #if defined __INTEL_COMPILER
-+   #include "Linux-x86/XnPlatformLinux-x86.h" 
++   #include "Linux/XnPlatformLinux.h" 
 + #else
 +    #error OpenNI Platform Abstraction Layer - Unsupported Platform!
 + #endif
@@ -110,9 +99,9 @@ diff -rupN -x Platform -x DoxyGen -x .git openni/Include/XnPlatform.h ../build_p
  //---------------------------------------------------------------------------
  // Basic Common Macros
  //---------------------------------------------------------------------------
-diff -rupN -x Platform -x DoxyGen -x .git openni/Include/XnTypes.h ../build_patched/openni/Include/XnTypes.h
---- openni/Include/XnTypes.h	2011-08-04 20:25:06.391589001 -0700
-+++ ../build_patched/openni/Include/XnTypes.h	2011-08-10 05:38:47.611589002 -0700
+diff -up ./Include/XnTypes.h.willow ./Include/XnTypes.h
+--- ./Include/XnTypes.h.willow	2012-01-04 06:35:46.000000000 -0500
++++ ./Include/XnTypes.h	2013-09-13 21:02:35.905795328 -0400
 @@ -325,7 +325,7 @@ typedef XnUInt16 XnLabel;
  
  // deprecated pragma is only supported in Visual Studio
@@ -122,9 +111,9 @@ diff -rupN -x Platform -x DoxyGen -x .git openni/Include/XnTypes.h ../build_patc
  #endif
  
  //---------------------------------------------------------------------------
-diff -rupN -x Platform -x DoxyGen -x .git openni/Samples/NiAudioSample/NiAudioSample.cpp ../build_patched/openni/Samples/NiAudioSample/NiAudioSample.cpp
---- openni/Samples/NiAudioSample/NiAudioSample.cpp	2011-08-04 20:28:02.691589002 -0700
-+++ ../build_patched/openni/Samples/NiAudioSample/NiAudioSample.cpp	2011-08-10 05:09:37.851589001 -0700
+diff -up ./Samples/NiAudioSample/NiAudioSample.cpp.willow ./Samples/NiAudioSample/NiAudioSample.cpp
+--- ./Samples/NiAudioSample/NiAudioSample.cpp.willow	2012-01-04 06:35:46.000000000 -0500
++++ ./Samples/NiAudioSample/NiAudioSample.cpp	2013-09-13 21:02:35.905795328 -0400
 @@ -31,7 +31,7 @@
  //---------------------------------------------------------------------------
  // Defines
@@ -134,9 +123,9 @@ diff -rupN -x Platform -x DoxyGen -x .git openni/Samples/NiAudioSample/NiAudioSa
  
  #define NUMBER_OF_AUDIO_BUFFERS 100
  
-diff -rupN -x Platform -x DoxyGen -x .git openni/Samples/NiCRead/NiCRead.c ../build_patched/openni/Samples/NiCRead/NiCRead.c
---- openni/Samples/NiCRead/NiCRead.c	2011-08-04 20:25:07.681589001 -0700
-+++ ../build_patched/openni/Samples/NiCRead/NiCRead.c	2011-08-10 05:09:37.931589001 -0700
+diff -up ./Samples/NiCRead/NiCRead.c.willow ./Samples/NiCRead/NiCRead.c
+--- ./Samples/NiCRead/NiCRead.c.willow	2012-01-04 06:35:46.000000000 -0500
++++ ./Samples/NiCRead/NiCRead.c	2013-09-13 21:02:35.905795328 -0400
 @@ -27,7 +27,7 @@
  //---------------------------------------------------------------------------
  // Defines
@@ -146,9 +135,9 @@ diff -rupN -x Platform -x DoxyGen -x .git openni/Samples/NiCRead/NiCRead.c ../bu
  
  //---------------------------------------------------------------------------
  // Macros
-diff -rupN -x Platform -x DoxyGen -x .git openni/Samples/NiRecordRaw/NiRecordRaw.cpp ../build_patched/openni/Samples/NiRecordRaw/NiRecordRaw.cpp
---- openni/Samples/NiRecordRaw/NiRecordRaw.cpp	2011-08-04 20:25:07.691589001 -0700
-+++ ../build_patched/openni/Samples/NiRecordRaw/NiRecordRaw.cpp	2011-08-10 05:09:37.761589001 -0700
+diff -up ./Samples/NiRecordRaw/NiRecordRaw.cpp.willow ./Samples/NiRecordRaw/NiRecordRaw.cpp
+--- ./Samples/NiRecordRaw/NiRecordRaw.cpp.willow	2012-01-04 06:35:46.000000000 -0500
++++ ./Samples/NiRecordRaw/NiRecordRaw.cpp	2013-09-13 21:02:35.906795367 -0400
 @@ -30,7 +30,7 @@
  //---------------------------------------------------------------------------
  // Defines
@@ -158,9 +147,9 @@ diff -rupN -x Platform -x DoxyGen -x .git openni/Samples/NiRecordRaw/NiRecordRaw
  #define RECORDING_FILE_NAME "recordingWithRaw.oni"
  #define RAW_NODE_NAME "Raw1"
  
-diff -rupN -x Platform -x DoxyGen -x .git openni/Samples/NiRecordSynthetic/NiRecordSynthetic.cpp ../build_patched/openni/Samples/NiRecordSynthetic/NiRecordSynthetic.cpp
---- openni/Samples/NiRecordSynthetic/NiRecordSynthetic.cpp	2011-08-04 20:28:02.691589002 -0700
-+++ ../build_patched/openni/Samples/NiRecordSynthetic/NiRecordSynthetic.cpp	2011-08-10 05:09:37.881589001 -0700
+diff -up ./Samples/NiRecordSynthetic/NiRecordSynthetic.cpp.willow ./Samples/NiRecordSynthetic/NiRecordSynthetic.cpp
+--- ./Samples/NiRecordSynthetic/NiRecordSynthetic.cpp.willow	2012-01-04 06:35:46.000000000 -0500
++++ ./Samples/NiRecordSynthetic/NiRecordSynthetic.cpp	2013-09-13 21:02:35.906795367 -0400
 @@ -30,7 +30,7 @@
  //---------------------------------------------------------------------------
  // Defines
@@ -170,21 +159,21 @@ diff -rupN -x Platform -x DoxyGen -x .git openni/Samples/NiRecordSynthetic/NiRec
  
  //---------------------------------------------------------------------------
  // Macros
-diff -rupN -x Platform -x DoxyGen -x .git openni/Samples/NiSimpleRead/NiSimpleRead.cpp ../build_patched/openni/Samples/NiSimpleRead/NiSimpleRead.cpp
---- openni/Samples/NiSimpleRead/NiSimpleRead.cpp	2011-08-04 20:28:02.701589002 -0700
-+++ ../build_patched/openni/Samples/NiSimpleRead/NiSimpleRead.cpp	2011-08-10 05:09:37.741589001 -0700
+diff -up ./Samples/NiSimpleRead/NiSimpleRead.cpp.willow ./Samples/NiSimpleRead/NiSimpleRead.cpp
+--- ./Samples/NiSimpleRead/NiSimpleRead.cpp.willow	2013-09-13 21:02:35.907795405 -0400
++++ ./Samples/NiSimpleRead/NiSimpleRead.cpp	2013-09-13 21:05:38.612883664 -0400
 @@ -30,7 +30,7 @@
  //---------------------------------------------------------------------------
  // Defines
  //---------------------------------------------------------------------------
 -#define SAMPLE_XML_PATH "../../../../Data/SamplesConfig.xml"
 +#define SAMPLE_XML_PATH "/etc/openni/SamplesConfig.xml"
+ #define SAMPLE_XML_PATH_LOCAL "SamplesConfig.xml"
  
  //---------------------------------------------------------------------------
- // Macros
-diff -rupN -x Platform -x DoxyGen -x .git openni/Samples/NiSimpleViewer/NiSimpleViewer.cpp ../build_patched/openni/Samples/NiSimpleViewer/NiSimpleViewer.cpp
---- openni/Samples/NiSimpleViewer/NiSimpleViewer.cpp	2011-08-04 20:28:02.701589002 -0700
-+++ ../build_patched/openni/Samples/NiSimpleViewer/NiSimpleViewer.cpp	2011-08-10 05:09:37.911589001 -0700
+diff -up ./Samples/NiSimpleViewer/NiSimpleViewer.cpp.willow ./Samples/NiSimpleViewer/NiSimpleViewer.cpp
+--- ./Samples/NiSimpleViewer/NiSimpleViewer.cpp.willow	2012-01-04 06:35:46.000000000 -0500
++++ ./Samples/NiSimpleViewer/NiSimpleViewer.cpp	2013-09-13 21:02:35.907795405 -0400
 @@ -36,7 +36,7 @@ using namespace xn;
  //---------------------------------------------------------------------------
  // Defines
@@ -194,10 +183,10 @@ diff -rupN -x Platform -x DoxyGen -x .git openni/Samples/NiSimpleViewer/NiSimple
  
  #define GL_WIN_SIZE_X 1280
  #define GL_WIN_SIZE_Y 1024
-diff -rupN -x Platform -x DoxyGen -x .git openni/Samples/NiUserTracker/main.cpp ../build_patched/openni/Samples/NiUserTracker/main.cpp
---- openni/Samples/NiUserTracker/main.cpp	2011-08-04 20:28:02.701589002 -0700
-+++ ../build_patched/openni/Samples/NiUserTracker/main.cpp	2011-08-10 05:09:37.811589001 -0700
-@@ -311,7 +311,7 @@ void glInit (int * pargc, char ** argv)
+diff -up ./Samples/NiUserTracker/main.cpp.willow ./Samples/NiUserTracker/main.cpp
+--- ./Samples/NiUserTracker/main.cpp.willow	2012-01-04 06:35:46.000000000 -0500
++++ ./Samples/NiUserTracker/main.cpp	2013-09-13 21:02:35.908795445 -0400
+@@ -304,7 +304,7 @@ void glInit (int * pargc, char ** argv)
  }
  #endif // USE_GLES
  
@@ -206,9 +195,9 @@ diff -rupN -x Platform -x DoxyGen -x .git openni/Samples/NiUserTracker/main.cpp
  
  #define CHECK_RC(nRetVal, what)										\
  	if (nRetVal != XN_STATUS_OK)									\
-diff -rupN -x Platform -x DoxyGen -x .git openni/Samples/NiViewer/NiViewer.cpp ../build_patched/openni/Samples/NiViewer/NiViewer.cpp
---- openni/Samples/NiViewer/NiViewer.cpp	2011-08-04 20:28:02.701589002 -0700
-+++ ../build_patched/openni/Samples/NiViewer/NiViewer.cpp	2011-08-10 05:09:37.721589001 -0700
+diff -up ./Samples/NiViewer/NiViewer.cpp.willow ./Samples/NiViewer/NiViewer.cpp
+--- ./Samples/NiViewer/NiViewer.cpp.willow	2012-01-04 06:35:46.000000000 -0500
++++ ./Samples/NiViewer/NiViewer.cpp	2013-09-13 21:02:35.908795445 -0400
 @@ -84,7 +84,7 @@ using namespace glh;
  // --------------------------------
  // Defines
@@ -218,22 +207,10 @@ diff -rupN -x Platform -x DoxyGen -x .git openni/Samples/NiViewer/NiViewer.cpp .
  
  // --------------------------------
  // Types
-diff -rupN -x Platform -x DoxyGen -x .git openni/Source/OpenNI/Linux-x86/XnUSBLinux-x86.cpp ../build_patched/openni/Source/OpenNI/Linux-x86/XnUSBLinux-x86.cpp
---- openni/Source/OpenNI/Linux-x86/XnUSBLinux-x86.cpp	2011-08-04 20:25:08.141589001 -0700
-+++ ../build_patched/openni/Source/OpenNI/Linux-x86/XnUSBLinux-x86.cpp	2011-08-10 05:33:27.601589000 -0700
-@@ -1051,7 +1051,7 @@ XN_THREAD_PROC xnUSBReadThreadMain(XN_TH
- 								if (pTransfer->buffer + nTotalBytes != pBuffer)
- 								{
- //									printf("buffer %d has %d bytes. Moving to offset %d...\n", i, pPacket->actual_length, nTotalBytes);
--									memcpy(pTransfer->buffer + nTotalBytes, pBuffer, pPacket->actual_length);
-+									memmove(pTransfer->buffer + nTotalBytes, pBuffer, pPacket->actual_length);
- 								}
- 								nTotalBytes += pPacket->actual_length;
- 							}
-diff -rupN -x Platform -x DoxyGen -x .git openni/Source/OpenNI/XnOpenNI.cpp ../build_patched/openni/Source/OpenNI/XnOpenNI.cpp
---- openni/Source/OpenNI/XnOpenNI.cpp	2011-08-04 20:25:08.191589001 -0700
-+++ ../build_patched/openni/Source/OpenNI/XnOpenNI.cpp	2011-08-10 09:35:47.511589002 -0700
-@@ -6535,9 +6535,9 @@ XN_C_API XnStatus xnScriptNodeRun(XnNode
+diff -up ./Source/OpenNI/XnOpenNI.cpp.willow ./Source/OpenNI/XnOpenNI.cpp
+--- ./Source/OpenNI/XnOpenNI.cpp.willow	2012-01-04 06:35:46.000000000 -0500
++++ ./Source/OpenNI/XnOpenNI.cpp	2013-09-13 21:02:40.693981093 -0400
+@@ -6991,9 +6991,9 @@ XN_C_API XnStatus xnScriptNodeRun(XnNode
  #if (XN_PLATFORM == XN_PLATFORM_WIN32)
  	#define XN_OPEN_NI_FILES_LOCATION "\\Data\\"
  #elif (CE4100)
@@ -245,7 +222,7 @@ diff -rupN -x Platform -x DoxyGen -x .git openni/Source/OpenNI/XnOpenNI.cpp ../b
  #elif (XN_PLATFORM == XN_PLATFORM_ANDROID_ARM)
  	#define XN_OPEN_NI_FILES_LOCATION "/data/ni/"
  #else
-@@ -6556,7 +6556,7 @@ XnStatus xnGetOpenNIConfFilesPath(XnChar
+@@ -7012,7 +7012,7 @@ XnStatus xnGetOpenNIConfFilesPath(XnChar
  			return nRetVal;
  		#else
  			// use root FS
@@ -254,9 +231,9 @@ diff -rupN -x Platform -x DoxyGen -x .git openni/Source/OpenNI/XnOpenNI.cpp ../b
  		#endif
  	}
  	else
-diff -rupN -x Platform -x DoxyGen -x .git openni/Source/OpenNI/XnProfiling.cpp ../build_patched/openni/Source/OpenNI/XnProfiling.cpp
---- openni/Source/OpenNI/XnProfiling.cpp	2011-08-04 20:25:08.191589001 -0700
-+++ ../build_patched/openni/Source/OpenNI/XnProfiling.cpp	2011-08-10 05:16:09.141589002 -0700
+diff -up ./Source/OpenNI/XnProfiling.cpp.willow ./Source/OpenNI/XnProfiling.cpp
+--- ./Source/OpenNI/XnProfiling.cpp.willow	2012-01-04 06:35:46.000000000 -0500
++++ ./Source/OpenNI/XnProfiling.cpp	2013-09-13 21:02:40.693981093 -0400
 @@ -87,8 +87,8 @@ XN_THREAD_PROC xnProfilingThread(XN_THRE
  		// print profiled sections
  		nReportChars = 0;
@@ -286,10 +263,10 @@ diff -rupN -x Platform -x DoxyGen -x .git openni/Source/OpenNI/XnProfiling.cpp .
  
  		xnLogVerbose(XN_MASK_PROFILING, "%s", csReport);
  
-diff -rupN -x Platform -x DoxyGen -x .git openni/Source/Utils/niLicense/niLicense.cpp ../build_patched/openni/Source/Utils/niLicense/niLicense.cpp
---- openni/Source/Utils/niLicense/niLicense.cpp	2011-08-04 20:25:08.201589001 -0700
-+++ ../build_patched/openni/Source/Utils/niLicense/niLicense.cpp	2011-08-10 05:40:24.511589001 -0700
-@@ -120,14 +120,14 @@ int main(int argc, char* argv[])
+diff -up ./Source/Utils/niLicense/niLicense.cpp.willow ./Source/Utils/niLicense/niLicense.cpp
+--- ./Source/Utils/niLicense/niLicense.cpp.willow	2012-01-04 06:35:46.000000000 -0500
++++ ./Source/Utils/niLicense/niLicense.cpp	2013-09-13 21:02:40.694981132 -0400
+@@ -119,14 +119,14 @@ int main(int argc, char* argv[])
  		nRetVal = xnOSStrNCopy(license.strVendor, strVendor, strlen(strVendor) + 1, sizeof(license.strVendor));
  		if (nRetVal != XN_STATUS_OK)
  		{
diff --git a/openni.spec b/openni.spec
index a9d272b..deca3da 100644
--- a/openni.spec
+++ b/openni.spec
@@ -1,26 +1,41 @@
-#define gitrev f8467404
+%global commit 15160748a400c6089e7732d805f74992331193fa
+%global shortcommit %(c=%{commit}; echo ${c:0:7})
+%ifarch x86_64
+%global niarch x64
+%endif
+%ifarch %{ix86}
+%global niarch x86
+%endif
+%ifarch %arm
+%global niarch Arm
+%endif
+
 
 Name:           openni
-Version:        1.3.2.1
-Release:        11%{?gitrev}%{?dist}
+Version:        1.5.2.23
+Release:        1%{?dist}
 Summary:        Library for human-machine Natural Interaction
 
 Group:          System Environment/Libraries
 License:        LGPLv3+ and BSD
 URL:            http://www.openni.org
-# No official releases, yet. To reproduce tarball (adapt version and gitrev):
-# git clone git://github.com/OpenNI/OpenNI.git
-# cd OpenNI.git
-# rm -rf Platform/Win32 Platform/Android
-# git archive --format tar --prefix=openni-1.3.2.1/ HEAD | gzip > ../openni-1.3.2.1.tar.gz
-Source0:        openni-%{version}.tar.gz
+# To reproduce tarball (adapt version and shortcommit):
+# wget https://github.com/OpenNI/OpenNI/archive/%{commit}/%{name}-%{version}-%{shortcommit}.tar.gz
+# tar xvf openni-%{version}-%{shortcommit}.tar.gz
+# cd OpenNI-%{commit}
+# rm -rf Platform/Win32 Platform/Android Platform/ARC
+# cd ..
+# tar czf openni-%{version}-%{shortcommit}-fedora.tar.gz
+Source0:        openni-%{version}-%{shortcommit}-fedora.tar.gz
 Source1:        libopenni.pc
-Patch0:         openni-1.3.2.1-willow.patch
-Patch1:         openni-1.3.2.1-fedora.patch
-Patch2:         openni-1.3.2.1-disable-sse.patch
+Patch0:         openni-1.5.2.23-willow.patch
+Patch1:         openni-1.5.2.23-fedora.patch
+Patch2:         openni-1.5.2.23-disable-sse.patch
 Patch3:         openni-1.3.2.1-silence-assert.patch
 Patch4:         openni-1.3.2.1-fedora-java.patch
-Patch5:         openni-1.3.2.1-arm.patch
+Patch5:         openni-1.5.2.23-disable-softfloat.patch
+Patch6:         openni-1.5.2.23-armsamples.patch
+
 BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 ExclusiveArch:  %{ix86} x86_64 %{arm}
 
@@ -80,16 +95,16 @@ Requires:       %{name} = %{version}-%{release}
 The %{name}-examples package contains example programs for OpenNI.
 
 %prep
-%setup -q -n %{name}-%{version}
+%setup -q -n OpenNI-%{commit}
 %patch0 -p1 -b .willow
 %patch1 -p1 -b .fedora
 %patch2 -p1 -b .disable-sse
 %patch3 -p1 -b .silence-assert
 %patch4 -p1 -b .fedora-java
-%patch5 -p1 -b .arm
-
+%patch5 -p1 -b .disable-softfloat
+%patch6 -p1 -b .armsamples
 rm -rf Source/External
-rm -rf Platform/Linux-x86/Build/Prerequisites/*
+rm -rf Platform/Linux/Build/Prerequisites/*
 find Samples -name GL -prune -exec rm -rf {} \;
 find Samples -name Libs -prune -exec rm -rf {} \;
 
@@ -98,28 +113,29 @@ for ext in c cpp; do
     sed -i -e 's|#define SAMPLE_XML_PATH "../../../../Data/SamplesConfig.xml"|#define SAMPLE_XML_PATH "%{_sysconfdir}/%{name}/SamplesConfig.xml"|' {} \;
 done
 
+sed -i 's|if (os.path.exists("/usr/bin/gmcs"))|if (0)|' Platform/Linux/CreateRedist/Redist_OpenNi.py
+
 dos2unix README
 dos2unix GPL.txt
 dos2unix LGPL.txt
 
 %build
-cd Platform/Linux-x86/CreateRedist
-%ifarch %{arm}
-chmod +x RedistMaker.Arm
+cd Platform/Linux/CreateRedist
 # {?_smp_mflags} omitted, not supported by OpenNI Makefiles
+chmod +x RedistMaker RedistMaker.Arm
+
 CFLAGS="$RPM_OPT_FLAGS" LDFLAGS="$RPM_LD_FLAGS" DEBUG=1 \
-./RedistMaker.Arm
+%ifarch %arm
+./RedistMaker.Arm || cat Output/BuildOpenNI.txt
 %else
-# {?_smp_mflags} omitted, not supported by OpenNI Makefiles
-CFLAGS="$RPM_OPT_FLAGS" LDFLAGS="$RPM_LD_FLAGS" DEBUG=1 \
 ./RedistMaker
 %endif
-#cat Output/BuildOpenNI.txt
+cat Output/BuildOpenNI.txt
 
 
 %install
 rm -rf $RPM_BUILD_ROOT
-pushd Platform/Linux-x86/Redist
+pushd Platform/Linux/Redist/OpenNI-Bin-Dev-Linux-%{niarch}-v%{version}
 INSTALL_LIB=$RPM_BUILD_ROOT%{_libdir} \
 INSTALL_BIN=$RPM_BUILD_ROOT%{_bindir} \
 INSTALL_INC=$RPM_BUILD_ROOT%{_includedir}/ni \
@@ -127,27 +143,20 @@ INSTALL_VAR=$RPM_BUILD_ROOT%{_var}/lib/ni \
 INSTALL_JAR=$RPM_BUILD_ROOT%{_libdir}/%{name} \
 ./install.sh -n
 
-install -m 0755 Samples/Bin/Release/libSample-NiSampleModule.so $RPM_BUILD_ROOT%{_libdir}/libNiSampleModule.so
-%ifnarch %{arm}
-install -m 0755 Samples/Bin/Release/NiViewer $RPM_BUILD_ROOT%{_bindir}
-%endif
-install -m 0755 Samples/Bin/Release/Sample-NiAudioSample $RPM_BUILD_ROOT%{_bindir}/NiAudioSample
-install -m 0755 Samples/Bin/Release/Sample-NiBackRecorder $RPM_BUILD_ROOT%{_bindir}/NiBackRecorder
-install -m 0755 Samples/Bin/Release/Sample-NiConvertXToONI $RPM_BUILD_ROOT%{_bindir}/NiConvertXToONI
-install -m 0755 Samples/Bin/Release/Sample-NiCRead $RPM_BUILD_ROOT%{_bindir}/NiCRead
-install -m 0755 Samples/Bin/Release/Sample-NiRecordSynthetic $RPM_BUILD_ROOT%{_bindir}/NiRecordSynthetic
-install -m 0755 Samples/Bin/Release/Sample-NiSimpleCreate $RPM_BUILD_ROOT%{_bindir}/NiSimpleCreate
-install -m 0755 Samples/Bin/Release/Sample-NiSimpleRead $RPM_BUILD_ROOT%{_bindir}/NiSimpleRead
-%ifnarch %{arm}
-install -m 0755 Samples/Bin/Release/Sample-NiSimpleViewer $RPM_BUILD_ROOT%{_bindir}/NiSimpleViewer
-install -m 0755 Samples/Bin/Release/Sample-NiUserTracker $RPM_BUILD_ROOT%{_bindir}/NiUserTracker
-%endif
+install -m 0755 Samples/Bin/%{niarch}-Release/libSample-NiSampleModule.so $RPM_BUILD_ROOT%{_libdir}/libNiSampleModule.so
+install -m 0755 Samples/Bin/%{niarch}-Release/NiViewer $RPM_BUILD_ROOT%{_bindir}
+install -m 0755 Samples/Bin/%{niarch}-Release/Sample-NiAudioSample $RPM_BUILD_ROOT%{_bindir}/NiAudioSample
+install -m 0755 Samples/Bin/%{niarch}-Release/Sample-NiBackRecorder $RPM_BUILD_ROOT%{_bindir}/NiBackRecorder
+install -m 0755 Samples/Bin/%{niarch}-Release/Sample-NiConvertXToONI $RPM_BUILD_ROOT%{_bindir}/NiConvertXToONI
+install -m 0755 Samples/Bin/%{niarch}-Release/Sample-NiCRead $RPM_BUILD_ROOT%{_bindir}/NiCRead
+install -m 0755 Samples/Bin/%{niarch}-Release/Sample-NiRecordSynthetic $RPM_BUILD_ROOT%{_bindir}/NiRecordSynthetic
+install -m 0755 Samples/Bin/%{niarch}-Release/Sample-NiSimpleCreate $RPM_BUILD_ROOT%{_bindir}/NiSimpleCreate
+install -m 0755 Samples/Bin/%{niarch}-Release/Sample-NiSimpleRead $RPM_BUILD_ROOT%{_bindir}/NiSimpleRead
+install -m 0755 Samples/Bin/%{niarch}-Release/Sample-NiSimpleViewer $RPM_BUILD_ROOT%{_bindir}/NiSimpleViewer
+install -m 0755 Samples/Bin/%{niarch}-Release/Sample-NiUserTracker $RPM_BUILD_ROOT%{_bindir}/NiUserTracker
 
 popd
 
-mkdir -p $RPM_BUILD_ROOT%{_datadir}/%{name}-doc
-cp -a Source/DoxyGen/html/* $RPM_BUILD_ROOT%{_datadir}/%{name}-doc
-
 mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
 install -p -m 0644 Data/SamplesConfig.xml $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
 
@@ -188,8 +197,7 @@ fi
 
 
 %files
-%defattr(-,root,root,-)
-%doc LGPL.txt README
+%doc LGPL.txt README 
 %dir %{_sysconfdir}/%{name}
 %config(noreplace) %{_var}/lib/ni/modules.xml
 %{_libdir}/*.so
@@ -197,18 +205,14 @@ fi
 %{_var}/lib/ni
 
 %files devel
-%defattr(-,root,root,-)
 %doc Documentation/OpenNI_UserGuide.pdf
 %{_includedir}/*
-#{_libdir}/*.so
 %{_libdir}/pkgconfig/libopenni.pc
 
 %files java
-%defattr(-,root,root,-)
 %{_libdir}/%{name}
 
 %files examples
-%defattr(-,root,root,-)
 %config(noreplace) %{_sysconfdir}/%{name}/SamplesConfig.xml
 %{_bindir}/Ni*
 # not packaging any .desktop files for the sample applications. The
@@ -216,11 +220,13 @@ fi
 # intended to be run on the console, not from the menu
 
 %files doc
-%defattr(-,root,root,-)
-%{_datadir}/%{name}-doc
+%doc Source/DoxyGen/html
 
 
 %changelog
+* Sun Jun 01 2014 Rich Mattes <richmattes at gmail.com> - 1.5.2.23-1
+- Update to release 1.5.2.23
+
 * Fri Apr 04 2014 Scott K Logan <logans at cottsay.net> - 1.3.2.1-11
 - Fix wrong pkgconfig path
 


More information about the scm-commits mailing list