[packages/utvideo] - updated to 18.2.1 - updated makefile and includes,linux patches - enabled asm on x86* (but not x32

qboosh qboosh at pld-linux.org
Sat Jul 22 21:00:59 CEST 2017


commit 0455e18f210d812681de3f730ce4ab34ad777596
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Sat Jul 22 21:02:49 2017 +0200

    - updated to 18.2.1
    - updated makefile and includes,linux patches
    - enabled asm on x86* (but not x32)
    - C++11 is required now

 utvideo-includes.patch | 20 ++++++++++++++++++++
 utvideo-linux.patch    | 40 ++++++++++++++++++++++++++++++++++++++++
 utvideo-makefile       | 33 ++++++++++++++++++++++-----------
 utvideo.spec           | 23 +++++++++++------------
 4 files changed, 93 insertions(+), 23 deletions(-)
---
diff --git a/utvideo.spec b/utvideo.spec
index 495f984..a6df1bd 100644
--- a/utvideo.spec
+++ b/utvideo.spec
@@ -1,22 +1,19 @@
 Summary:	Ut Video codec suite
 Summary(pl.UTF-8):	Kodek Ut Video
 Name:		utvideo
-Version:	15.4.0
+Version:	18.2.1
 Release:	1
 License:	GPL v2+
 Group:		Libraries
 Source0:	http://umezawa.dyndns.info/archive/utvideo/%{name}-%{version}-src.zip
-# Source0-md5:	6789a56db91b27d220f5d1270939f399
+# Source0-md5:	1ede3a39a737b89557f251e42945e2dc
 Source1:	%{name}-makefile
 Patch0:		%{name}-shared.patch
 Patch1:		%{name}-includes.patch
 Patch2:		%{name}-linux.patch
 URL:		http://umezawa.dyndns.info/wordpress/?cat=28
-BuildRequires:	libstdc++-devel
+BuildRequires:	libstdc++-devel >= 6:4.7
 BuildRequires:	libtool >= 2:1.5
-#%ifarch i586 i686 pentium2 pentium3 pentium4
-#BuildRequires:	nasm
-#%endif
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %description
@@ -32,7 +29,7 @@ Summary:	Header files for Ut Video library
 Summary(pl.UTF-8):	Pliki nagłówkowe biblioteki Ut Video
 Group:		Development/Libraries
 Requires:	%{name} = %{version}-%{release}
-Requires:	libstdc++-devel
+Requires:	libstdc++-devel >= 6:4.7
 
 %description devel
 Header files for Ut Video library.
@@ -63,14 +60,16 @@ cp %{SOURCE1} GNUmakefile
 
 %build
 %{__make} \
+%ifarch i586 i686 pentium2 pentium3 pentium4
+	ARCH=i386 \
+%endif
+%ifarch %{x8664}
+	ARCH=x86_86 \
+%endif
 	CXX="%{__cxx}" \
-	OPTFLAGS="%{rpmcxxflags} %{rpmcppflags}" \
+	OPTFLAGS="%{rpmcxxflags} %{rpmcppflags} -std=c++11" \
 	V=1 \
 	libdir=%{_libdir}
-# TunedFunc_x86.cpp compilation fails
-#%ifarch i586 i686 pentium2 pentium3 pentium4
-#	ARCH=i386 \
-#%endif
 
 %install
 rm -rf $RPM_BUILD_ROOT
diff --git a/utvideo-includes.patch b/utvideo-includes.patch
index 5b5ceb2..c5f6cd8 100644
--- a/utvideo-includes.patch
+++ b/utvideo-includes.patch
@@ -9,3 +9,23 @@
  class CBGRColorOrder
  {
  public:
+--- utvideo-18.2.1/utv_core/HuffmanCode_x86.cpp.orig	2017-07-16 08:59:00.000000000 +0200
++++ utvideo-18.2.1/utv_core/HuffmanCode_x86.cpp	2017-07-22 20:30:18.510812680 +0200
+@@ -1,6 +1,7 @@
+ /* �����R�[�h�͂r�i�h�r ���s�R�[�h�͂b�q�k�e */
+ /* $Id$ */
+ 
++#include <cstddef>
+ #include <stdlib.h>
+ #include <stdint.h>
+ #include <type_traits>
+--- utvideo-18.2.1/utv_core/HuffmanCode_x64.cpp.orig	2017-07-16 08:59:00.000000000 +0200
++++ utvideo-18.2.1/utv_core/HuffmanCode_x64.cpp	2017-07-22 20:30:44.220812389 +0200
+@@ -1,6 +1,7 @@
+ /* �����R�[�h�͂r�i�h�r ���s�R�[�h�͂b�q�k�e */
+ /* $Id$ */
+ 
++#include <cstddef>
+ #include <stdlib.h>
+ #include <stdint.h>
+ #include <type_traits>
diff --git a/utvideo-linux.patch b/utvideo-linux.patch
index d5648d7..17e1fa7 100644
--- a/utvideo-linux.patch
+++ b/utvideo-linux.patch
@@ -32,3 +32,43 @@
  	if (writeLog(buf, strlen(buf)) != strlen(buf))
  	{
  		close(fdLogSock);
+--- utvideo-18.2.1/utv_core/HuffmanCode_x86_HuffmanDecode.cpp.orig	2017-07-16 08:59:00.000000000 +0200
++++ utvideo-18.2.1/utv_core/HuffmanCode_x86_HuffmanDecode.cpp	2017-07-22 20:37:15.284141254 +0200
+@@ -125,6 +125,7 @@
+ .endm
+ 	HUFFMAN_DECODE_8 )" ARGS R"(
+ .purgem HUFFMAN_DECODE_8
++	.att_syntax
+ 	)"
+ 		: "=a"(ret), "=D"(clobber), "=S"(clobber), "=b"(clobber)
+ 		: "D"(pDstBegin), "a"(pDstEnd), "S"(pSrcBegin), "b"(pDecodeTable),
+--- utvideo-18.2.1/utv_core/HuffmanCode_x86_HuffmanEncode.cpp.orig	2017-07-16 08:59:00.000000000 +0200
++++ utvideo-18.2.1/utv_core/HuffmanCode_x86_HuffmanEncode.cpp	2017-07-22 20:37:28.217474441 +0200
+@@ -92,6 +92,7 @@
+ .endm
+ 	HUFFMAN_ENCODE )" ARGS R"(
+ .purgem HUFFMAN_ENCODE
++	.att_syntax
+ 	)"
+ 		: "=a"(ret), "=D"(clobber), "=S"(clobber), "=d"(clobber)
+ 		: "D"(pDstBegin), "S"(pSrcBegin), "a"(pSrcEnd), "d"(pEncodeTable)
+--- utvideo-18.2.1/utv_core/HuffmanCode_x64_HuffmanDecode.cpp.orig	2017-07-16 08:59:00.000000000 +0200
++++ utvideo-18.2.1/utv_core/HuffmanCode_x64_HuffmanDecode.cpp	2017-07-22 20:38:44.187473574 +0200
+@@ -139,6 +139,7 @@
+ .endm
+ 	HUFFMAN_DECODE_8 )" ARGS R"(
+ .purgem HUFFMAN_DECODE_8
++	.att_syntax
+ 	)"
+ 		: "=a"(ret), "=D"(clobber), "=S"(clobber), "=b"(clobber)
+ 		: "D"(pDstBegin), "a"(pDstEnd), "S"(pSrcBegin), "b"(pDecodeTable),
+--- utvideo-18.2.1/utv_core/HuffmanCode_x64_HuffmanEncode.cpp.orig	2017-07-16 08:59:00.000000000 +0200
++++ utvideo-18.2.1/utv_core/HuffmanCode_x64_HuffmanEncode.cpp	2017-07-22 20:38:58.624140074 +0200
+@@ -98,6 +98,7 @@
+ .endm
+ 	HUFFMAN_ENCODE )" ARGS R"(
+ .purgem HUFFMAN_ENCODE
++	.att_syntax
+ 	)"
+ 		: "=a"(ret), "=D"(clobber), "=S"(clobber), "=d"(clobber)
+ 		: "D"(pDstBegin), "S"(pSrcBegin), "a"(pSrcEnd), "d"(pEncodeTable)
diff --git a/utvideo-makefile b/utvideo-makefile
index 96d52a5..80a84a1 100644
--- a/utvideo-makefile
+++ b/utvideo-makefile
@@ -48,7 +48,10 @@ OBJ = $(UTV_CORE_DIR)/Codec.o \
       $(UTV_CORE_DIR)/ULRGCodec.o \
       $(UTV_CORE_DIR)/ULYUV420Codec.o \
       $(UTV_CORE_DIR)/ULYUV422Codec.o \
+      $(UTV_CORE_DIR)/ULYUV444Codec.o \
       $(UTV_CORE_DIR)/UQ00Codec.o \
+      $(UTV_CORE_DIR)/UQRACodec.o \
+      $(UTV_CORE_DIR)/UQRGCodec.o \
       $(UTV_CORE_DIR)/UQY2Codec.o \
       $(UTV_CORE_DIR)/utv_core.o \
       $(UTV_LOGL_DIR)/LogPath.o \
@@ -57,18 +60,21 @@ OBJ = $(UTV_CORE_DIR)/Codec.o \
       $(UTV_LOGL_DIR)/LogWriter.o
 
 ifeq ($(ARCH),i386)
-OBJ+=$(UTV_CORE_DIR)/TunedFunc_x86.o \
-	$(UTV_CORE_DIR)/Convert_asm_x86.o \
-	$(UTV_CORE_DIR)/HuffmanCode_asm_x86.o \
-	$(UTV_CORE_DIR)/Predict_asm_x86.o
+OBJ += $(UTV_CORE_DIR)/TunedFunc_x86x64.o \
+	$(UTV_CORE_DIR)/TunedFunc_x86x64_avx1.o \
+	$(UTV_CORE_DIR)/TunedFunc_x86x64_sse2.o \
+	$(UTV_CORE_DIR)/TunedFunc_x86x64_sse41.o \
+	$(UTV_CORE_DIR)/TunedFunc_x86x64_ssse3.o \
+	$(UTV_CORE_DIR)/HuffmanCode_x86.o
+endif
+ifeq ($(ARCH),x86_64)
+OBJ += $(UTV_CORE_DIR)/TunedFunc_x86x64.o \
+	$(UTV_CORE_DIR)/TunedFunc_x86x64_avx1.o \
+	$(UTV_CORE_DIR)/TunedFunc_x86x64_sse2.o \
+	$(UTV_CORE_DIR)/TunedFunc_x86x64_sse41.o \
+	$(UTV_CORE_DIR)/TunedFunc_x86x64_ssse3.o \
+	$(UTV_CORE_DIR)/HuffmanCode_x64.o
 endif
-# note: TunedFunc_x64.cpp supports only MSC
-#ifeq ($(ARCH),x86_64)
-#OBJ+=$(UTV_CORE_DIR)/TunedFunc_x64.o \
-#	$(UTV_CORE_DIR)/Convert_asm_x64.o \
-#	$(UTV_CORE_DIR)/HuffmanCode_asm_x64.o \
-#	$(UTV_CORE_DIR)/Predict_asm_x64.o
-#endif
 
 %.a:
 	$(AR) rcu $@ $^
@@ -80,6 +86,11 @@ $(UTV_CORE_DIR)/libutvideo.a: $(OBJ)
 
 static-lib: $(UTV_CORE_DIR)/libutvideo.a
 
+$(UTV_CORE_DIR)/TunedFunc_x86x64_sse2.o $(UTV_CORE_DIR)/TunedFunc_x86x64_sse2.lo: CXXFLAGS += -msse2
+$(UTV_CORE_DIR)/TunedFunc_x86x64_ssse3.o $(UTV_CORE_DIR)/TunedFunc_x86x64_ssse3.lo: CXXFLAGS += -mssse3
+$(UTV_CORE_DIR)/TunedFunc_x86x64_sse41.o $(UTV_CORE_DIR)/TunedFunc_x86x64_sse41.lo: CXXFLAGS += -msse4.1
+$(UTV_CORE_DIR)/TunedFunc_x86x64_avx1.o $(UTV_CORE_DIR)/TunedFunc_x86x64_avx1.lo: CXXFLAGS += -mavx
+
 clean:
 	@printf " RM\t$(UTV_CORE_DIR)/*.o\n";
 	@rm -f $(UTV_CORE_DIR)/*.o
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/utvideo.git/commitdiff/0455e18f210d812681de3f730ce4ab34ad777596



More information about the pld-cvs-commit mailing list