Update to 1.5.1

epel9
Leigh Scott 5 years ago
parent 7601680658
commit d299c8241a

@ -1,64 +0,0 @@
From 870de42512805dcdd469ef0301476b3fc0e4bc95 Mon Sep 17 00:00:00 2001
From: Nicolas Chauvet <kwizart@gmail.com>
Date: Sat, 7 Apr 2018 12:32:54 +0200
Subject: [PATCH] Use PREFIX and LIBDIR build variable instead of custom ones
---
wrapper/Makefile | 29 +++++++++++++++--------------
1 file changed, 15 insertions(+), 14 deletions(-)
diff --git a/wrapper/Makefile b/wrapper/Makefile
index 9317515..868b13f 100644
--- a/wrapper/Makefile
+++ b/wrapper/Makefile
@@ -8,7 +8,8 @@ SRCDIR = $(TOP)/src
OBJDIR = $(TOP)/obj
FEATURESRCDIR = $(TOP)/../feature/src
PTOOLSDIR = $(TOP)/../ptools
-INSTALL_PREFIX = /usr/local
+PREFIX ?= /usr/local
+LIBDIR ?= $(PREFIX)/lib
INCLUDES += -I$(TOP)/../feature/src
INCLUDES += -I$(TOP)/../feature/src/common
@@ -168,24 +169,24 @@ vmafossexec: $(OBJDIR)/main.o $(LIBVMAF)
.PHONY: install
install:
- mkdir -p $(DESTDIR)$(INSTALL_PREFIX)/lib
- mkdir -p $(DESTDIR)$(INSTALL_PREFIX)/include
- mkdir -p $(DESTDIR)$(INSTALL_PREFIX)/share
- mkdir -p $(DESTDIR)$(INSTALL_PREFIX)/lib/pkgconfig
- cp $(LIBVMAF) $(DESTDIR)$(INSTALL_PREFIX)/lib/$(LIBVMAF)
- cp src/libvmaf.h $(DESTDIR)$(INSTALL_PREFIX)/include/
- cp -r ../model $(DESTDIR)$(INSTALL_PREFIX)/share/
- cp libvmaf.pc $(DESTDIR)$(INSTALL_PREFIX)/lib/pkgconfig/
+ mkdir -p $(DESTDIR)$(LIBDIR)
+ mkdir -p $(DESTDIR)$(PREFIX)/include
+ mkdir -p $(DESTDIR)$(PREFIX)/share
+ mkdir -p $(DESTDIR)$(LIBDIR)/pkgconfig
+ cp $(LIBVMAF) $(DESTDIR)$(LIBDIR)/$(LIBVMAF)
+ cp src/libvmaf.h $(DESTDIR)$(PREFIX)/include/
+ cp -r ../model $(DESTDIR)$(PREFIX)/share/
+ cp libvmaf.pc $(DESTDIR)$(LIBDIR)/pkgconfig/
.PHONY: uninstall
uninstall:
- rm -f $(DESTDIR)$(INSTALL_PREFIX)/lib/$(LIBVMAF)
- rm -f $(DESTDIR)$(INSTALL_PREFIX)/include/libvmaf.h
- rm -fr $(DESTDIR)$(INSTALL_PREFIX)/share/model
- rm -f $(DESTDIR)$(INSTALL_PREFIX)/lib/pkgconfig/libvmaf.pc
+ rm -f $(DESTDIR)$(LIBDIR)/$(LIBVMAF)
+ rm -f $(DESTDIR)$(PREFIX)/include/libvmaf.h
+ rm -fr $(DESTDIR)$(PREFIX)/share/model
+ rm -f $(DESTDIR)$(LIBDIR)/pkgconfig/libvmaf.pc
testlib: $(SRCDIR)/main.cpp
- $(CXX) -s -o $@ $(CXXFLAGS) $^ -I $(FEATURESRCDIR) -I $(FEATURESRCDIR)/common -I $(DESTDIR)$(INSTALL_PREFIX)/include -L$(DESTDIR)$(INSTALL_PREFIX)/lib -lvmaf -pthread
+ $(CXX) -s -o $@ $(CXXFLAGS) $^ -I $(FEATURESRCDIR) -I $(FEATURESRCDIR)/common -I $(DESTDIR)$(PREFIX)/include -L$(DESTDIR)$(LIBDIR) -lvmaf -pthread
.PHONY: clean
clean:
--
2.17.2

@ -1,23 +1,23 @@
From 1f85e97f791709405d5b38981d1786727c229bc0 Mon Sep 17 00:00:00 2001
From: Nicolas Chauvet <kwizart@gmail.com>
Date: Sat, 7 Apr 2018 13:54:40 +0200
Subject: [PATCH 04/11] Use better FLAGS for ptools
From 4adfd8064dbaad0e7d48e6668de322213ed621c8 Mon Sep 17 00:00:00 2001
From: Leigh Scott <leigh123linux@gmail.com>
Date: Wed, 4 Mar 2020 21:43:41 +0000
Subject: [PATCH 1/4] Use better FLAGS for ptools
---
ptools/Makefile.Linux | 5 +++--
libvmaf/src/third_party/ptools/Makefile.Linux | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/ptools/Makefile.Linux b/ptools/Makefile.Linux
index 73d8241..890141b 100644
--- a/ptools/Makefile.Linux
+++ b/ptools/Makefile.Linux
diff --git a/libvmaf/src/third_party/ptools/Makefile.Linux b/libvmaf/src/third_party/ptools/Makefile.Linux
index 73d8241..99d4e83 100644
--- a/libvmaf/src/third_party/ptools/Makefile.Linux
+++ b/libvmaf/src/third_party/ptools/Makefile.Linux
@@ -10,7 +10,8 @@ CC = g++
OC = ./opencontainers_1_8_4
OCINC = $(OC)/include
-CFLAGS = -Wall -Wextra -fpic -O -fno-strict-aliasing -DLINUX_ -DOC_NEW_STYLE_INCLUDES -Wno-deprecated -I$(OCINC) -pthread -D_REENTRANT
+CFLAGS_COMMON = -Wall -Wextra -fpic -O
+CFLAGS = $(CFLAGS_COMMON) -fno-strict-aliasing -DLINUX_ -DOC_NEW_STYLE_INCLUDES -Wno-deprecated -I$(OCINC) -pthread -D_REENTRANT
+CFLAGS = $(CFLAGS) -fno-strict-aliasing -DLINUX_ -DOC_NEW_STYLE_INCLUDES -Wno-deprecated -I$(OCINC) -pthread -D_REENTRANT
## How to build with OCString
##CFLAGS = -Wall -O4 -DLINUX_ -DOC_USE_OC_STRING -DOC_USE_OC_EXCEPTIONS -DOC_ONLY_NEEDED_STL -DOC_NEW_STYLE_INCLUDES -Wno-deprecated -I$(OCINC)
@ -31,5 +31,5 @@ index 73d8241..890141b 100644
midasserver_ex : $(COM_OBJS) midasserver_ex.o
$(CC) $(CCFLAGS) $(COM_OBJS) midasserver_ex.o -pthread -o midasserver_ex
--
2.17.1
2.24.1

@ -1,38 +1,58 @@
From a6765396684ddd62fe660cb914e495e61a4dcab9 Mon Sep 17 00:00:00 2001
From: Nicolas Chauvet <kwizart@gmail.com>
Date: Sat, 7 Apr 2018 13:43:48 +0200
Subject: [PATCH] Unbundle pugixml
From 79d6313628216f9c5d6e758d8d113c97df152ad9 Mon Sep 17 00:00:00 2001
From: Leigh Scott <leigh123linux@gmail.com>
Date: Wed, 4 Mar 2020 21:49:48 +0000
Subject: [PATCH 2/4] Unbundle pugixml
---
wrapper/Makefile | 7 ++-----
1 file changed, 2 insertions(+), 5 deletions(-)
libvmaf/src/meson.build | 7 +++++--
libvmaf/src/vmaf.cpp | 2 +-
2 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/wrapper/Makefile b/wrapper/Makefile
index 868b13f..4a891e1 100644
--- a/wrapper/Makefile
+++ b/wrapper/Makefile
@@ -43,9 +43,9 @@ OBJS = \
$(OBJDIR)/vmaf.o \
$(OBJDIR)/darray.o \
$(OBJDIR)/libvmaf.o \
- $(OBJDIR)/pugixml.o \
$(OBJDIR)/blur_array.o \
- $(OBJDIR)/cpu_info.o
+ $(OBJDIR)/cpu_info.o \
+ $(NULL)
diff --git a/libvmaf/src/meson.build b/libvmaf/src/meson.build
index 74047d2..9f723d8 100644
--- a/libvmaf/src/meson.build
+++ b/libvmaf/src/meson.build
@@ -31,6 +31,7 @@ ptools_sources = [
]
AVX_OBJS := \
$(OBJDIR)/convolution_avx.o \
@@ -158,9 +158,6 @@ $(OBJDIR)/vmaf.o: $(SRCDIR)/vmaf.cpp
$(OBJDIR)/%.o: $(SRCDIR)/%.c
$(CC) -c -o $@ $(CFLAGS) $(CPPFLAGS) -I $(FEATURESRCDIR) $<
thread_lib = dependency('threads')
+pugixml_lib = dependency('pugixml')
math_lib = cc.find_library('m', required : false)
-$(OBJDIR)/%.o: $(SRCDIR)/pugixml/%.cpp
- $(CXX) -c -o $@ $(CXXFLAGS) $(CPPFLAGS) $<
-
$(LIBVMAF): $(OBJS) $(wildcard ../ptools/*.o)
ar rcs $@ $^
libptools = shared_library(
@@ -115,7 +116,6 @@ libvmaf_feature_static_lib = static_library(
)
vmaf_sources = [
- third_party_dir + 'pugixml/pugixml.cpp',
src_dir + 'mem.c',
src_dir + 'combo.c',
src_dir + 'cpu_info.c',
@@ -131,7 +131,10 @@ libvmaf = both_libraries(
include_directories : vmaf_include,
c_args : vmaf_cflags_common,
cpp_args : vmaf_cflags_common,
- dependencies : thread_lib,
+ dependencies : [
+ thread_lib,
+ pugixml_lib,
+ ],
objects : [
convolution_and_psnr_avx_static_lib.extract_all_objects(),
libptools.extract_all_objects(),
diff --git a/libvmaf/src/vmaf.cpp b/libvmaf/src/vmaf.cpp
index 64bcf5f..c9cab57 100644
--- a/libvmaf/src/vmaf.cpp
+++ b/libvmaf/src/vmaf.cpp
@@ -28,7 +28,7 @@
#include "vmaf.h"
#include "combo.h"
-#include "third_party/pugixml/pugixml.hpp"
+#include <pugixml.hpp>
#include "timer.h"
#include "jsonprint.h"
#include "debug.h"
--
2.17.2
2.24.1

@ -1,84 +0,0 @@
From bd90f8e5d7bb1d323ec35d8326915ded41cce587 Mon Sep 17 00:00:00 2001
From: Nicolas Chauvet <kwizart@gmail.com>
Date: Sat, 7 Apr 2018 13:44:42 +0200
Subject: [PATCH 03/11] Drop AVX when not relevant
---
feature/Makefile | 9 +++++++++
wrapper/Makefile | 17 ++++++++++++++---
2 files changed, 23 insertions(+), 3 deletions(-)
diff --git a/feature/Makefile b/feature/Makefile
index 111d07c..c786a27 100644
--- a/feature/Makefile
+++ b/feature/Makefile
@@ -10,13 +10,22 @@ LIBVMAF = $(TOP)/../wrapper/libvmaf.a
CFLAGS_COMMON = -g -O3 -fPIC -w -Wextra -pedantic
# CFLAGS_COMMON = -g -O0 -fPIC -Wall -Wextra -pedantic
+UNAME := $(shell uname -m)
CFLAGS := -std=c99 $(CFLAGS_COMMON) $(CFLAGS)
CXXFLAGS := -std=c++11 $(CFLAGS_COMMON) $(CXXFLAGS)
CPPFLAGS := $(CPPFLAGS)
LIBS := $(LIBS) -lm
LDFLAGS := $(LDFLAGS)
+ifeq ($(UNAME), x86_64)
+ USE_AVX = 1
+endif
+ifeq ($(UNAME), i386)
+ USE_AVX = 1
+endif
+ifeq ($(USE_AVX), 1)
$(AVX_OBJS): EXTRA_CFLAGS := -mavx
+endif
$(OBJDIR)/vmaf_main.o: $(SRCDIR)/vmaf_main.c
$(CC) $(EXTRA_CFLAGS) -c -o $@ $(CFLAGS) $(CPPFLAGS) $<
diff --git a/wrapper/Makefile b/wrapper/Makefile
index 985a30f..62bde27 100644
--- a/wrapper/Makefile
+++ b/wrapper/Makefile
@@ -3,6 +3,7 @@ LIBVMAF = libvmaf.a
.PHONY: all
all: $(LIBVMAF) vmafossexec
+UNAME := $(shell uname -m)
TOP = $(shell pwd)
SRCDIR = $(TOP)/src
OBJDIR = $(TOP)/obj
@@ -11,6 +12,18 @@ PTOOLSDIR = $(TOP)/../ptools
PREFIX ?= /usr/local
LIBDIR ?= $(PREFIX)/lib
+ifeq ($(UNAME), x86_64)
+ USE_AVX = 1
+endif
+ifeq ($(UNAME), i386)
+ USE_AVX = 1
+endif
+ifeq ($(USE_AVX), 1)
+AVX_OBJS := \
+ $(OBJDIR)/convolution_avx.o \
+
+endif
+
OBJS = \
$(OBJDIR)/alloc.o \
$(OBJDIR)/alignment.o \
@@ -44,11 +57,9 @@ OBJS = \
$(OBJDIR)/libvmaf.o \
$(OBJDIR)/blur_array.o \
$(OBJDIR)/cpu_info.o \
+ $(AVX_OBJS) \
$(NULL)
-AVX_OBJS := \
- $(OBJDIR)/convolution_avx.o \
-
CFLAGS_COMMON = -g -O3 -fPIC -w -Wextra -pedantic -D MULTI_THREADING
# CFLAGS_COMMON = -g -O3 -fPIC -w -Wextra -pedantic -D MULTI_THREADING -D PRINT_PROGRESS
# CFLAGS_COMMON = -g -O3 -fPIC -w -Wextra -pedantic
--
2.17.1

@ -0,0 +1,24 @@
From 564d4c50e35bbb7428cab8ae58d31313fdfe065b Mon Sep 17 00:00:00 2001
From: Leigh Scott <leigh123linux@gmail.com>
Date: Wed, 4 Mar 2020 21:52:08 +0000
Subject: [PATCH 3/4] Fix soname
---
libvmaf/src/meson.build | 1 +
1 file changed, 1 insertion(+)
diff --git a/libvmaf/src/meson.build b/libvmaf/src/meson.build
index 9f723d8..1295b71 100644
--- a/libvmaf/src/meson.build
+++ b/libvmaf/src/meson.build
@@ -129,6 +129,7 @@ libvmaf = both_libraries(
'vmaf',
vmaf_sources,
include_directories : vmaf_include,
+ soversion: 0,
c_args : vmaf_cflags_common,
cpp_args : vmaf_cflags_common,
dependencies : [
--
2.24.1

@ -0,0 +1,39 @@
From f6acf39e17ce3d1e607be243c263dffbac9cb862 Mon Sep 17 00:00:00 2001
From: Leigh Scott <leigh123linux@gmail.com>
Date: Wed, 4 Mar 2020 22:06:51 +0000
Subject: [PATCH 4/4] Avoid x86cpudetection code when not relevant
---
libvmaf/src/feature/common/cpu.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/libvmaf/src/feature/common/cpu.c b/libvmaf/src/feature/common/cpu.c
index ff96ddc..efcb8ec 100644
--- a/libvmaf/src/feature/common/cpu.c
+++ b/libvmaf/src/feature/common/cpu.c
@@ -16,9 +16,10 @@
*
*/
-#include "cpudetect.h"
#include "cpu.h"
+#if defined(__i386__) || defined(__x86_64)
+#include "cpudetect.h"
enum vmaf_cpu cpu_autodetect()
{
@@ -31,3 +32,10 @@ enum vmaf_cpu cpu_autodetect()
else
return VMAF_CPU_NONE;
}
+
+#else
+enum vmaf_cpu cpu_autodetect()
+{
+ return VMAF_CPU_NONE;
+}
+#endif
--
2.24.1

@ -1,25 +0,0 @@
From 80053ca29abc26ff6129ea5cb5c7e7545519b625 Mon Sep 17 00:00:00 2001
From: Nicolas Chauvet <kwizart@gmail.com>
Date: Sat, 7 Apr 2018 13:57:00 +0200
Subject: [PATCH] Switch pugixml include
---
wrapper/src/vmaf.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/wrapper/src/vmaf.cpp b/wrapper/src/vmaf.cpp
index fa1dce9..3e193bc 100644
--- a/wrapper/src/vmaf.cpp
+++ b/wrapper/src/vmaf.cpp
@@ -29,7 +29,7 @@
#include "vmaf.h"
#include "combo.h"
-#include "pugixml/pugixml.hpp"
+#include <pugixml.hpp>
#include "timer.h"
#include "jsonprint.h"
#include "debug.h"
--
2.17.2

@ -1,58 +0,0 @@
From f3b0da9d64e0ad5e668abc97137635f3c5da2d8f Mon Sep 17 00:00:00 2001
From: Nicolas Chauvet <kwizart@gmail.com>
Date: Sat, 7 Apr 2018 14:33:30 +0200
Subject: [PATCH] Switch to shared library for libvmaf
---
feature/Makefile | 2 +-
wrapper/.gitignore | 1 +
wrapper/Makefile | 4 ++--
3 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/feature/Makefile b/feature/Makefile
index 111d07c..86ced7d 100644
--- a/feature/Makefile
+++ b/feature/Makefile
@@ -5,7 +5,7 @@ TOP = $(shell pwd)
SRCDIR = $(TOP)/src
OBJDIR = $(TOP)/obj
TOOLDIR = $(TOP)/tool
-LIBVMAF = $(TOP)/../wrapper/libvmaf.a
+LIBVMAF = $(TOP)/../wrapper/libvmaf.so
CFLAGS_COMMON = -g -O3 -fPIC -w -Wextra -pedantic
# CFLAGS_COMMON = -g -O0 -fPIC -Wall -Wextra -pedantic
diff --git a/wrapper/.gitignore b/wrapper/.gitignore
index b721ec4..16e4e57 100644
--- a/wrapper/.gitignore
+++ b/wrapper/.gitignore
@@ -1,6 +1,7 @@
*.o
vmafossexec
libvmaf.a
+libvmaf.so*
testlib
.cproject
.project
diff --git a/wrapper/Makefile b/wrapper/Makefile
index 4a891e1..2aeaf66 100644
--- a/wrapper/Makefile
+++ b/wrapper/Makefile
@@ -1,4 +1,4 @@
-LIBVMAF = libvmaf.a
+LIBVMAF = libvmaf.so
.PHONY: all
all: $(LIBVMAF) vmafossexec
@@ -159,7 +159,7 @@ $(OBJDIR)/%.o: $(SRCDIR)/%.c
$(CC) -c -o $@ $(CFLAGS) $(CPPFLAGS) -I $(FEATURESRCDIR) $<
$(LIBVMAF): $(OBJS) $(wildcard ../ptools/*.o)
- ar rcs $@ $^
+ $(CC) $(LDFLAGS) $^ -shared -Wl,-soname,libvmaf.so.0 -o $@
vmafossexec: $(OBJDIR)/main.o $(LIBVMAF)
$(CXX) -s -o $@ $(LDFLAGS) $^ -pthread
--
2.17.2

@ -1,32 +0,0 @@
From 1b1b5db051e99bd7070fd996d46af4f88d030452 Mon Sep 17 00:00:00 2001
From: Nicolas Chauvet <kwizart@gmail.com>
Date: Sat, 7 Apr 2018 14:35:50 +0200
Subject: [PATCH] Unbundle libsvm
---
Makefile | 3 ---
1 file changed, 3 deletions(-)
diff --git a/Makefile b/Makefile
index 5a13baa..d2ba5cc 100644
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,5 @@
TARGETS = \
ptools \
- libsvm \
wrapper \
feature
@@ -9,8 +8,6 @@ all:
cd $${dir}; $(MAKE); cd ..; \
done
- cd libsvm; $(MAKE) lib; cd ..;
-
clean:
-for dir in $(TARGETS); do \
cd $${dir}; $(MAKE) clean; cd ..; \
--
2.17.2

@ -1,25 +0,0 @@
From b0fbd280173737102f1814e59452545c6d116cb1 Mon Sep 17 00:00:00 2001
From: Nicolas Chauvet <kwizart@gmail.com>
Date: Sat, 7 Apr 2018 14:43:21 +0200
Subject: [PATCH] Add pugixml LIBS
---
wrapper/Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/wrapper/Makefile b/wrapper/Makefile
index 2aeaf66..ac6decc 100644
--- a/wrapper/Makefile
+++ b/wrapper/Makefile
@@ -159,7 +159,7 @@ $(OBJDIR)/%.o: $(SRCDIR)/%.c
$(CC) -c -o $@ $(CFLAGS) $(CPPFLAGS) -I $(FEATURESRCDIR) $<
$(LIBVMAF): $(OBJS) $(wildcard ../ptools/*.o)
- $(CC) $(LDFLAGS) $^ -shared -Wl,-soname,libvmaf.so.0 -o $@
+ $(CC) $(LDFLAGS) $^ -shared -Wl,-soname,libvmaf.so.0 -lpugixml -pthread -o $@
vmafossexec: $(OBJDIR)/main.o $(LIBVMAF)
$(CXX) -s -o $@ $(LDFLAGS) $^ -pthread
--
2.17.2

@ -1,39 +0,0 @@
From 02e035cfe70c8c89e7b0f7ac8e9dd0548cfcab56 Mon Sep 17 00:00:00 2001
From: Nicolas Chauvet <kwizart@gmail.com>
Date: Sat, 7 Apr 2018 18:00:25 +0200
Subject: [PATCH] Avoid x86cpudetection code when not relevant
---
feature/src/common/cpu.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/feature/src/common/cpu.c b/feature/src/common/cpu.c
index 85156f8..3d48dcd 100644
--- a/feature/src/common/cpu.c
+++ b/feature/src/common/cpu.c
@@ -16,9 +16,10 @@
*
*/
-#include "cpudetect.h"
#include "cpu.h"
+#if defined(__i386__) || defined(__x86_64)
+#include "cpudetect.h"
enum vmaf_cpu cpu_autodetect()
{
@@ -31,3 +32,10 @@ enum vmaf_cpu cpu_autodetect()
else
return VMAF_CPU_NONE;
}
+
+#else
+enum vmaf_cpu cpu_autodetect()
+{
+ return VMAF_CPU_NONE;
+}
+#endif
--
2.17.2

@ -1,30 +0,0 @@
From 8b4d74a98a95aa12d58f9ebaded2c562b62111f7 Mon Sep 17 00:00:00 2001
From: Nicolas Chauvet <kwizart@gmail.com>
Date: Sat, 7 Apr 2018 19:16:00 +0200
Subject: [PATCH] Fix libvmaf.pc to use Libs.private for pthread m
This avoid to link to pthread and m when not needed
Also avoid to link to a specitic libstdc++
(as reported in https://github.com/Netflix/vmaf/issues/122)
Signed-off-by: Nicolas Chauvet <kwizart@gmail.com>
---
wrapper/libvmaf.pc | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/wrapper/libvmaf.pc b/wrapper/libvmaf.pc
index e48d5a8..416d327 100644
--- a/wrapper/libvmaf.pc
+++ b/wrapper/libvmaf.pc
@@ -10,6 +10,6 @@ URL: https://github.com/Netflix/vmaf
Requires:
Requires.private:
Conflicts:
-Libs: -L${libdir} -lvmaf -lstdc++ -lpthread -lm
-Libs.private:
+Libs: -L${libdir} -lvmaf
+Libs.private: -lpthread -lm
Cflags: -I${includedir}
--
2.17.2

@ -1,41 +0,0 @@
From c4af3c8270c8f498601d7dd68426c4bd52583006 Mon Sep 17 00:00:00 2001
From: Nicolas Chauvet <kwizart@gmail.com>
Date: Sat, 7 Apr 2018 19:30:49 +0200
Subject: [PATCH 11/11] Add -msse2 for i686
With x86_64 -msse2 is implicit, but not i686
Both asm option needs to be enabled there
Signed-off-by: Nicolas Chauvet <kwizart@gmail.com>
---
wrapper/Makefile | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/wrapper/Makefile b/wrapper/Makefile
index ceba5dc..a38d35b 100644
--- a/wrapper/Makefile
+++ b/wrapper/Makefile
@@ -14,9 +14,11 @@ LIBDIR ?= $(PREFIX)/lib
ifeq ($(UNAME), x86_64)
USE_AVX = 1
+ ASM_CFLAGS = -mavx
endif
ifeq ($(UNAME), i386)
USE_AVX = 1
+ ASM_CFLAGS = -msse -msse2 -mavx
endif
ifeq ($(USE_AVX), 1)
AVX_OBJS := \
@@ -70,7 +72,7 @@ CXXFLAGS := -std=c++11 $(CFLAGS_COMMON) $(CXXFLAGS)
CPPFLAGS := $(CPPFLAGS)
LDFLAGS := $(LDFLAGS)
-$(AVX_OBJS): EXTRA_CFLAGS := -mavx
+$(AVX_OBJS): EXTRA_CFLAGS := $(ASM_CFLAGS)
$(OBJDIR)/alloc.o: $(FEATURESRCDIR)/common/alloc.c
$(CC) -c -o $@ $(CFLAGS) $(CPPFLAGS) $<
--
2.17.1

@ -1 +1 @@
SHA512 (vmaf-1.3.15.tar.gz) = 48dd07e7cf0bca0133739d788e0dab016304cb3b33c72db5a2bc55a55768c3efac6b85c413e8471bfa362bf6ce3bd20994bf996af9cf09c37f2be977791c08c6
SHA512 (vmaf-1.5.1.tar.gz) = f587c70fd830a491e9c75f65bc4f4bff137218c504aab7d3d4f2eba1affaac8a32eb6049ec00ad8db6a4f26079c555da3d5803f14f9dd01c199cc89df2e4a975

@ -1,25 +1,21 @@
Name: vmaf
Version: 1.3.15
Release: 2%{?dist}
Version: 1.5.1
Release: 1%{?dist}
Summary: Video Multi-Method Assessment Fusion
License: ASL 2.0
License: BSD-2-Clause-Patent
URL: https://github.com/netflix/vmaf
Source0: %{url}/archive/v%{version}/%{name}-%{version}.tar.gz
Patch0: 0001-Use-PREFIX-and-LIBDIR-build-variable-instead-of-cust.patch
Patch0: 0001-Use-better-FLAGS-for-ptools.patch
Patch1: 0002-Unbundle-pugixml.patch
Patch3: 0004-Use-better-FLAGS-for-ptools.patch
Patch4: 0005-Switch-pugixml-include.patch
Patch5: 0006-Switch-to-shared-library-for-libvmaf.patch
Patch6: 0007-Unbundle-libsvm.patch
Patch7: 0008-Add-pugixml-LIBS.patch
Patch8: 0009-Avoid-x86cpudetection-code-when-not-relevant.patch
Patch9: 0010-Fix-libvmaf.pc-to-use-Libs.private-for-pthread-m.patch
Patch3: 0003-Fix-soname.patch
Patch4: 0004-Avoid-x86cpudetection-code-when-not-relevant.patch
# This project relies on AVX
ExclusiveArch: x86_64
BuildRequires: gcc-c++
BuildRequires: meson
BuildRequires: libsvm-devel
BuildRequires: pugixml-devel
@ -64,35 +60,25 @@ developing applications that use %{name}.
%prep
%autosetup -p1
# Unbundle
rm -rf wrapper/src/pugixml
rm -rf libsvm
# Tweak libvmaf.pc
sed -i -e 's|/usr/local|%{_prefix}|g' wrapper/libvmaf.pc
sed -i -e 's|/usr/lib|%{_libdir}|g' wrapper/libvmaf.pc
rm -rf libvmaf/src/third_party/pugixml
rm -rf third_party/libsvm
%build
%ifarch i686
export ASM_CFLAGS="-msse -msse2 -mavx"
%endif
%make_build CFLAGS_COMMON="%{optflags} ${ASM_CFLAGS} -fPIC" LDFLAGS="%{__global_ldflags}" V=1
pushd libvmaf
%meson
%meson_build
popd
%install
%make_install PREFIX=%{_prefix} LIBDIR=%{_libdir}
pushd libvmaf
%meson_install
popd
mv %{buildroot}%{_libdir}/libvmaf.so \
mv %{buildroot}%{_libdir}/libvmaf.so.0 \
%{buildroot}%{_libdir}/libvmaf.so.0.0.0
ln -s libvmaf.so.0.0.0 \
%{buildroot}%{_libdir}/libvmaf.so.0
ln -s libvmaf.so.0 \
%{buildroot}%{_libdir}/libvmaf.so
# Install vmafossexec
mkdir -p %{buildroot}%{_bindir}
install -pm 0755 wrapper/vmafossexec \
%{buildroot}%{_bindir}
rm -f %{buildroot}%{_libdir}/libvmaf.a
#RPM Macros support
mkdir -p %{buildroot}%{rpmmacrodir}
@ -119,12 +105,15 @@ touch -r LICENSE %{buildroot}%{rpmmacrodir}/macros.%{name}
%files -n libvmaf-devel
%doc CONTRIBUTING.md
%{rpmmacrodir}/macros.%{name}
%{_includedir}/libvmaf.h
%{_includedir}/libvmaf/
%{_libdir}/*.so
%{_libdir}/pkgconfig/libvmaf.pc
%changelog
* Tue Mar 03 2020 Leigh Scott <leigh123linux@gmail.com> - 1.5.1-1
- Update to 1.5.1
* Fri Jan 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.15-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild

Loading…
Cancel
Save