diff options
author | Daniel Bermond | 2019-06-09 16:28:43 +0000 |
---|---|---|
committer | Daniel Bermond | 2019-06-09 16:28:43 +0000 |
commit | df2e34a9654e1f519cbf9fed3c49442069554741 (patch) | |
tree | 4088bb1e8f359befe21a81c477db215d6aae6c0b | |
download | aur-df2e34a9654e1f519cbf9fed3c49442069554741.tar.gz |
Initial commit of hm
-rw-r--r-- | .SRCINFO | 18 | ||||
-rw-r--r-- | 0001-hm-fix-build-with-gcc8.patch | 14 | ||||
-rw-r--r-- | 0002-hm-use-arch-flags.patch | 100 | ||||
-rw-r--r-- | PKGBUILD | 44 |
4 files changed, 176 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..64df63c12f49 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,18 @@ +pkgbase = hm + pkgdesc = HEVC Test Model - the reference software for HEVC + pkgver = 16.20 + pkgrel = 1 + url = https://hevc.hhi.fraunhofer.de/ + arch = x86_64 + license = BSD + makedepends = nasm + depends = gcc-libs + source = hm-16.20.zip::https://hevc.hhi.fraunhofer.de/trac/hevc/browser/tags/HM-16.20?rev=4994&format=zip + source = 0001-hm-fix-build-with-gcc8.patch + source = 0002-hm-use-arch-flags.patch + sha256sums = 021ac73a08c23c4053f08636d3a435a1da02a56066f9f6e4710a7afadc154a9e + sha256sums = 1fc52f8507902c7ee315bb7fbe42914dd4b0b49251d237b2e024e6e776ba02c3 + sha256sums = da19d17edfb2acac3feaedaf8169d84da3b6675de4c70b32d9a3d3144b9fc59f + +pkgname = hm + diff --git a/0001-hm-fix-build-with-gcc8.patch b/0001-hm-fix-build-with-gcc8.patch new file mode 100644 index 000000000000..81f005f9d0e5 --- /dev/null +++ b/0001-hm-fix-build-with-gcc8.patch @@ -0,0 +1,14 @@ +diff -Naurp a/build/linux/common/makefile.base b/build/linux/common/makefile.base +--- a/build/linux/common/makefile.base 2018-07-12 13:14:54.000000000 +0000 ++++ b/build/linux/common/makefile.base 2019-06-09 13:48:00.616470452 +0000 +@@ -47,8 +47,8 @@ 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 ++CPPFLAGS = $(DEFS) -I$(CURDIR)/$(INC_DIR) $(USER_INC_DIRS) -Wall -Wshadow -Wno-sign-compare -std=c++11 ++CFLAGS = $(DEFS) -I$(CURDIR)/$(INC_DIR) $(USER_INC_DIRS) -Wall -Wshadow -Wno-sign-compare + + ########## + # enforce 32-bit build : 1=yes, 0=no diff --git a/0002-hm-use-arch-flags.patch b/0002-hm-use-arch-flags.patch new file mode 100644 index 000000000000..644c6c5a852f --- /dev/null +++ b/0002-hm-use-arch-flags.patch @@ -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 -std=c++11 +-CFLAGS = $(DEFS) -I$(CURDIR)/$(INC_DIR) $(USER_INC_DIRS) -Wall -Wshadow -Wno-sign-compare ++#CXXFLAGS = -Wall $(DEFS) -I$(CURDIR)/$(INC_DIR) $(USER_INC_DIRS) ++CXXFLAGS += $(DEFS) -I$(CURDIR)/$(INC_DIR) $(USER_INC_DIRS) -Wall -Wshadow -Wno-sign-compare -std=c++11 ++CFLAGS += $(DEFS) -I$(CURDIR)/$(INC_DIR) $(USER_INC_DIRS) -Wall -Wshadow -Wno-sign-compare + + ########## + # 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@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; \ diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..03305aa74666 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,44 @@ +# Maintainer: Daniel Bermond < gmail-com: danielbermond > + +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" + '0001-hm-fix-build-with-gcc8.patch' + '0002-hm-use-arch-flags.patch') +sha256sums=('021ac73a08c23c4053f08636d3a435a1da02a56066f9f6e4710a7afadc154a9e' + '1fc52f8507902c7ee315bb7fbe42914dd4b0b49251d237b2e024e6e776ba02c3' + 'da19d17edfb2acac3feaedaf8169d84da3b6675de4c70b32d9a3d3144b9fc59f') + +prepare() { + cd "HM-${pkgver}" + + # fix build with gcc8 (do not treat warnings as errors) + patch -Np1 -i "${srcdir}/0001-hm-fix-build-with-gcc8.patch" + + # use Arch build flags (add full relro and other improvements) + patch -Np1 -i "${srcdir}/0002-hm-use-arch-flags.patch" +} + +build() { + cd "HM-${pkgver}/build/linux" + + # may randomly fail with multiple jobs + make -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" +} |