[arch-commits] Commit in (6 files)
Daniel Bermond
dbermond at archlinux.org
Tue Oct 1 18:10:50 UTC 2019
Date: Tuesday, October 1, 2019 @ 18:10:50
Author: dbermond
Revision: 512373
Initial commit of hm
Added:
hm/
hm/repos/
hm/trunk/
hm/trunk/010-hm-use-arch-flags.patch
hm/trunk/020-hm-fix-build-with-gcc8.patch
hm/trunk/PKGBUILD
----------------------------------+
010-hm-use-arch-flags.patch | 100 +++++++++++++++++++++++++++++++++++++
020-hm-fix-build-with-gcc8.patch | 46 +++++++++++++++++
PKGBUILD | 40 ++++++++++++++
3 files changed, 186 insertions(+)
Added: hm/trunk/010-hm-use-arch-flags.patch
===================================================================
--- hm/trunk/010-hm-use-arch-flags.patch (rev 0)
+++ hm/trunk/010-hm-use-arch-flags.patch 2019-10-01 18:10:50 UTC (rev 512373)
@@ -0,0 +1,100 @@
+diff -Naurp a/build/linux/common/makefile.base b/build/linux/common/makefile.base
+--- a/build/linux/common/makefile.base 2019-06-09 14:04:51.000000000 +0000
++++ b/build/linux/common/makefile.base 2019-06-09 14:06:58.251352310 +0000
+@@ -46,36 +46,36 @@ endif
+ #########################################################
+
+ # default cpp flags for all configurations
+-#CPPFLAGS = -Wall $(DEFS) -I$(CURDIR)/$(INC_DIR) $(USER_INC_DIRS)
+-CPPFLAGS = $(DEFS) -I$(CURDIR)/$(INC_DIR) $(USER_INC_DIRS) -Wall -Wshadow -Wno-sign-compare -Werror -std=c++11
+-CFLAGS = $(DEFS) -I$(CURDIR)/$(INC_DIR) $(USER_INC_DIRS) -Wall -Wshadow -Wno-sign-compare -Werror
++#CXXFLAGS = -Wall $(DEFS) -I$(CURDIR)/$(INC_DIR) $(USER_INC_DIRS)
++CXXFLAGS += $(DEFS) -I$(CURDIR)/$(INC_DIR) $(USER_INC_DIRS) -Wall -Wshadow -Wno-sign-compare -Werror -std=c++11
++CFLAGS += $(DEFS) -I$(CURDIR)/$(INC_DIR) $(USER_INC_DIRS) -Wall -Wshadow -Wno-sign-compare -Werror
+
+ ##########
+ # enforce 32-bit build : 1=yes, 0=no
+ ##########
+ M32?= 0
+ ifeq ($(M32),1)
+-CPPFLAGS+=-m32
++CXXFLAGS+=-m32
+ endif
+ ##########
+
+ ifeq ($(HIGHBITDEPTH), 1)
+-CPPFLAGS+="-DRExt__HIGH_BIT_DEPTH_SUPPORT=1"
++CXXFLAGS+="-DRExt__HIGH_BIT_DEPTH_SUPPORT=1"
+ endif
+
+ ifeq ($(EXTENSION_360_VIDEO), 1)
+- CPPFLAGS+=-DEXTENSION_360_VIDEO=1
++ CXXFLAGS+=-DEXTENSION_360_VIDEO=1
+ else
+- CPPFLAGS+=-DEXTENSION_360_VIDEO=0
++ CXXFLAGS+=-DEXTENSION_360_VIDEO=0
+ endif
+
+ #
+ # debug cpp flags
+-DEBUG_CPPFLAGS = -g -D_DEBUG
++DEBUG_CXXFLAGS = -g -D_DEBUG
+ DEBUG_CFLAGS = -g -D_DEBUG
+ #
+ # release cpp
+-RELEASE_CPPFLAGS = -O3 -Wuninitialized
++RELEASE_CXXFLAGS = -O3 -Wuninitialized
+ RELEASE_CFLAGS = -O3 -Wuninitialized
+
+
+@@ -113,7 +113,7 @@ endif
+ ifeq ($(CONFIG), LIBRARY)
+ # linker flags for library
+ # LDFLAGS = $(ALL_LDFLAGS) -shared -Wl,-Bsymbolic
+-LDFLAGS = $(ALL_LDFLAGS) -shared
++LDFLAGS += $(ALL_LDFLAGS) -shared
+ #
+ # debug linker flags for library
+ DEBUG_LDFLAGS = -Wl,-soname,lib$(PRJ_NAME)d.so.$(VER)
+@@ -124,7 +124,7 @@ RELEASE_LDFLAGS = -Wl,-soname,lib$(PRJ
+ else
+ ifeq ($(CONFIG), CONSOLE)
+ # linker flags for console
+-LDFLAGS = $(ALL_LDFLAGS)
++LDFLAGS += $(ALL_LDFLAGS)
+ #
+ # debug linker flags for console
+ DEBUG_LDFLAGS =
+@@ -208,28 +208,28 @@ $(OBJ_DIR)/%.d.o: $(SRC_DIR4)/%.asm
+ # see also: http://make.paulandlesley.org/autodep.html
+ # 2005-01-25 Steffen Kamp (kamp at ient.rwth-aachen.de), RWTH Aachen
+ define COMPILE_AND_DEPEND_RELEASE
+- $(CPP) -c -MMD -MF $(OBJ_DIR)/$*.r.d -MT $(OBJ_DIR)/$*.r.o $(CPPFLAGS) $(RELEASE_CPPFLAGS) -o $@ $(CURDIR)/$<
++ $(CPP) -c -MMD -MF $(OBJ_DIR)/$*.r.d -MT $(OBJ_DIR)/$*.r.o $(CXXFLAGS) $(RELEASE_CXXFLAGS) $(CPPFLAGS) -o $@ $(CURDIR)/$<
+ @cp $(OBJ_DIR)/$*.r.d $(OBJ_DIR)/$*.r.P; \
+ sed -e 's/#.*//' -e 's/^[^:]*: *//' -e 's/ *\\$$//' \
+ -e '/^$$/ d' -e 's/$$/ :/' < $(OBJ_DIR)/$*.r.d >> $(OBJ_DIR)/$*.r.P; \
+ rm -f $(OBJ_DIR)/$*.r.d
+ endef
+ define COMPILE_AND_DEPEND_DEBUG
+- $(CPP) -c -MMD -MF $(OBJ_DIR)/$*.d.d -MT $(OBJ_DIR)/$*.d.o $(CPPFLAGS) $(DEBUG_CPPFLAGS) -o $@ $(CURDIR)/$<
++ $(CPP) -c -MMD -MF $(OBJ_DIR)/$*.d.d -MT $(OBJ_DIR)/$*.d.o $(CXXFLAGS) $(DEBUG_CXXFLAGS) $(CPPFLAGS) -o $@ $(CURDIR)/$<
+ @cp $(OBJ_DIR)/$*.d.d $(OBJ_DIR)/$*.d.P; \
+ sed -e 's/#.*//' -e 's/^[^:]*: *//' -e 's/ *\\$$//' \
+ -e '/^$$/ d' -e 's/$$/ :/' < $(OBJ_DIR)/$*.d.d >> $(OBJ_DIR)/$*.d.P; \
+ rm -f $(OBJ_DIR)/$*.d.d
+ endef
+ define COMPILE_AND_DEPEND_RELEASE_C
+- $(CC) -c -MMD -MF $(OBJ_DIR)/$*.r.d -MT $(OBJ_DIR)/$*.r.o $(CFLAGS) $(RELEASE_CFLAGS) -o $@ $(CURDIR)/$<
++ $(CC) -c -MMD -MF $(OBJ_DIR)/$*.r.d -MT $(OBJ_DIR)/$*.r.o $(CFLAGS) $(RELEASE_CFLAGS) $(CPPFLAGS) -o $@ $(CURDIR)/$<
+ @cp $(OBJ_DIR)/$*.r.d $(OBJ_DIR)/$*.r.P; \
+ sed -e 's/#.*//' -e 's/^[^:]*: *//' -e 's/ *\\$$//' \
+ -e '/^$$/ d' -e 's/$$/ :/' < $(OBJ_DIR)/$*.r.d >> $(OBJ_DIR)/$*.r.P; \
+ rm -f $(OBJ_DIR)/$*.r.d
+ endef
+ define COMPILE_AND_DEPEND_DEBUG_C
+- $(CC) -c -MMD -MF $(OBJ_DIR)/$*.d.d -MT $(OBJ_DIR)/$*.d.o $(CFLAGS) $(DEBUG_CFLAGS) -o $@ $(CURDIR)/$<
++ $(CC) -c -MMD -MF $(OBJ_DIR)/$*.d.d -MT $(OBJ_DIR)/$*.d.o $(CFLAGS) $(DEBUG_CFLAGS) $(CPPFLAGS) -o $@ $(CURDIR)/$<
+ @cp $(OBJ_DIR)/$*.d.d $(OBJ_DIR)/$*.d.P; \
+ sed -e 's/#.*//' -e 's/^[^:]*: *//' -e 's/ *\\$$//' \
+ -e '/^$$/ d' -e 's/$$/ :/' < $(OBJ_DIR)/$*.d.d >> $(OBJ_DIR)/$*.d.P; \
Added: hm/trunk/020-hm-fix-build-with-gcc8.patch
===================================================================
--- hm/trunk/020-hm-fix-build-with-gcc8.patch (rev 0)
+++ hm/trunk/020-hm-fix-build-with-gcc8.patch 2019-10-01 18:10:50 UTC (rev 512373)
@@ -0,0 +1,46 @@
+diff --git a/source/Lib/TLibCommon/ContextModel.h b/source/Lib/TLibCommon/ContextModel.h
+index 5b9d7629..1ed41c55 100644
+--- a/source/Lib/TLibCommon/ContextModel.h
++++ b/source/Lib/TLibCommon/ContextModel.h
+@@ -53,12 +53,16 @@
+ // Class definition
+ // ====================================================================================================================
+
++#define GCC_9_1_0_WARNING_FIX 1
++
+ /// context model class
+ class ContextModel
+ {
+ public:
++#if !GCC_9_1_0_WARNING_FIX
+ ContextModel () { m_ucState = 0; m_binsCoded = 0; }
+ ~ContextModel () {}
++#endif
+
+ UChar getState () { return ( m_ucState >> 1 ); } ///< get current state
+ UChar getMps () { return ( m_ucState & 1 ); } ///< get curret MPS
+@@ -90,7 +94,11 @@ public:
+ UInt getBinsCoded() { return m_binsCoded; }
+
+ private:
++#if GCC_9_1_0_WARNING_FIX
++ UChar m_ucState = 0; ///< internal state variable
++#else
+ UChar m_ucState; ///< internal state variable
++#endif
+
+ static const UInt m_totalStates = (1 << CONTEXT_STATE_BITS) * 2; //*2 for MPS = [0|1]
+ static const UChar m_aucNextStateMPS[m_totalStates];
+@@ -99,7 +107,11 @@ private:
+ #if FAST_BIT_EST
+ static UChar m_nextState[m_totalStates][2 /*MPS = [0|1]*/];
+ #endif
++#if GCC_9_1_0_WARNING_FIX
++ UInt m_binsCoded = 0;
++#else
+ UInt m_binsCoded;
++#endif
+ };
+
+ //! \}
+
Added: hm/trunk/PKGBUILD
===================================================================
--- hm/trunk/PKGBUILD (rev 0)
+++ hm/trunk/PKGBUILD 2019-10-01 18:10:50 UTC (rev 512373)
@@ -0,0 +1,40 @@
+# Maintainer: Daniel Bermond <dbermond at archlinux.org>
+
+pkgname=hm
+pkgver=16.20
+_rev=4994
+pkgrel=1
+pkgdesc='HEVC Test Model - the reference software for HEVC'
+arch=('x86_64')
+url='https://hevc.hhi.fraunhofer.de/'
+license=('BSD')
+depends=('gcc-libs')
+makedepends=('nasm')
+source=("${pkgname}-${pkgver}.zip"::"https://hevc.hhi.fraunhofer.de/trac/hevc/browser/tags/HM-${pkgver}?rev=${_rev}&format=zip"
+ '010-hm-use-arch-flags.patch'
+ '020-hm-fix-build-with-gcc8.patch')
+sha256sums=('021ac73a08c23c4053f08636d3a435a1da02a56066f9f6e4710a7afadc154a9e'
+ '3b95cbc9ed5f29fc2cae75493b438aa0de8eae5a20934d8bba3cff1c5215e2c4'
+ 'ac9cb3cd816a44f570cbfd16be3d1f8ef1d60694daeabc341acc105fe06aa66f')
+
+prepare() {
+ # use Arch Linux build flags
+ patch -d "HM-${pkgver}" -Np1 -i "${srcdir}/010-hm-use-arch-flags.patch"
+
+ # fix build with gcc8 and later
+ patch -d "HM-${pkgver}" -Np1 --binary -i "${srcdir}/020-hm-fix-build-with-gcc8.patch"
+}
+
+build() {
+ # may randomly fail with multiple jobs
+ make -C "HM-${pkgver}/build/linux" -j1 -f makefile release{,_highbitdepth}
+}
+
+package() {
+ cd "HM-${pkgver}"
+
+ install -D -m755 bin/* -t "${pkgdir}/usr/bin"
+ install -D -m644 README -t "${pkgdir}/usr/share/doc/${pkgname}"
+ install -D -m644 doc/*.pdf -t "${pkgdir}/usr/share/doc/${pkgname}"
+ install -D -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+}
More information about the arch-commits
mailing list