commit:     4c1f4ef586b880319c2d4194244c764b15dbb536
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Jul 26 05:42:06 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Jul 26 06:22:04 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4c1f4ef5

media-video/harvid: add 0.9.0

Closes: https://bugs.gentoo.org/834405
Signed-off-by: Sam James <sam <AT> gentoo.org>

 media-video/harvid/Manifest                        |  1 +
 media-video/harvid/files/harvid-0.9.0-ffmpeg.patch | 21 +++++++++
 .../harvid/files/harvid-0.9.0-parallel-build.patch | 40 ++++++++++++++++
 media-video/harvid/harvid-0.9.0.ebuild             | 55 ++++++++++++++++++++++
 4 files changed, 117 insertions(+)

diff --git a/media-video/harvid/Manifest b/media-video/harvid/Manifest
index b5d39b6f0c28..d0949e7155e6 100644
--- a/media-video/harvid/Manifest
+++ b/media-video/harvid/Manifest
@@ -1 +1,2 @@
 DIST harvid-0.8.3.tar.gz 116446 BLAKE2B 
b245166ab2244a7afdddabb463296974c0d995d70ad8af6e93f549f045245597cb4ca3abf47c608eea15089ac5e6f82972b789d9a3f268b8be98f3080fd6e5e7
 SHA512 
748475602c7279f10790523cbd5cbf34c9cd283ca9e959ac0535fbb5b4ee6d2fcab976c5ddba3fa40862552b49d73df7145f36d26c9fe708063505812537a8ac
+DIST harvid-0.9.0.tar.gz 116909 BLAKE2B 
94b194c475aa402d750d2930c19402157674c5e629bf6212d0fbf0bfe9516f6272850ebca4fb9c6bb1c899418c48ac2b76ec6c04def35671df37ca0b44550e42
 SHA512 
cba47a9ad70633fbbc5a939819b7ad3c46f01b199b23c938b26092d731664bcfef05b4f03bf83433ddc63d191fef72d0cab09ae4c35efd2e1b2b37c4b2689e82

diff --git a/media-video/harvid/files/harvid-0.9.0-ffmpeg.patch 
b/media-video/harvid/files/harvid-0.9.0-ffmpeg.patch
new file mode 100644
index 000000000000..6422f7503cff
--- /dev/null
+++ b/media-video/harvid/files/harvid-0.9.0-ffmpeg.patch
@@ -0,0 +1,21 @@
+https://github.com/x42/harvid/commit/5da512c504e6d1cef9546a33f16d2b466289b1f6
+
+From: Robin Gareus <[email protected]>
+Date: Sat, 23 Apr 2022 02:30:59 +0200
+Subject: [PATCH] Fix ffmpeg compatibility
+
+--- a/libharvid/ffcompat.h
++++ b/libharvid/ffcompat.h
+@@ -75,8 +75,10 @@ static inline void av_packet_unref (AVPacket *pkt)
+ #if LIBAVUTIL_VERSION_INT < AV_VERSION_INT(51, 63, 100)
+ static inline int av_image_get_buffer_size (enum AVPixelFormat pix_fmt, int 
width, int height, int align)
+ {
+-      return avpicture_get_size (pix_fmt, width, height)
++      return avpicture_get_size (pix_fmt, width, height);
+ }
++#else
++#include <libavutil/imgutils.h>
+ #endif
+ 
+ #if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT(53, 2, 0)
+

diff --git a/media-video/harvid/files/harvid-0.9.0-parallel-build.patch 
b/media-video/harvid/files/harvid-0.9.0-parallel-build.patch
new file mode 100644
index 000000000000..c45ce7a70a84
--- /dev/null
+++ b/media-video/harvid/files/harvid-0.9.0-parallel-build.patch
@@ -0,0 +1,40 @@
+https://github.com/x42/harvid/commit/a3f85c57ad2559558706d9b22989de36452704d9
+
+From: Sergei Trofimovich <[email protected]>
+Date: Wed, 22 Jun 2022 23:18:16 +0100
+Subject: [PATCH] Makefile: add a missing target libharvid dependency of src
+
+Without the change parallel build fails sometimes by linking
+too early on non-existent file:
+
+    make -C src
+    make[1]: Entering directory '/build/harvid/src'
+    ld -r -b binary -o seek.o ../doc/seek.js
+    ld -r -b binary -o logo.o ../doc/harvid.jpg
+    make[1]: *** No rule to make target '../libharvid/libharvid.a', needed by 
'harvid'.  Stop.
+
+It's nest reproducible in `make --shuffle` mode:
+  https://savannah.gnu.org/bugs/index.php?62100
+
+The change makes sure 'libharvid' is built before 'src'.
+--- a/Makefile
++++ b/Makefile
+@@ -3,12 +3,15 @@ SUBDIRS = libharvid src doc
+ 
+ default: all
+ 
+-$(SUBDIRS)::
++$(SUBDIRS):
+       $(MAKE) -C $@ $(MAKECMDGOALS)
+ 
+ all clean man install uninstall install-bin install-man uninstall-bin 
uninstall-man install-lib uninstall-lib: $(SUBDIRS)
+ 
++# final binary links against a library
++src: libharvid
++
+ dist:
+       git archive --format=tar --prefix=harvid-$(VERSION)/ HEAD | gzip -9 > 
harvid-$(VERSION).tar.gz
+ 
+-.PHONY: clean all subdirs install uninstall dist install-bin install-man 
uninstall-bin uninstall-man install-lib uninstall-lib
++.PHONY: clean all subdirs install uninstall dist install-bin install-man 
uninstall-bin uninstall-man install-lib uninstall-lib $(SUBDIRS)
+

diff --git a/media-video/harvid/harvid-0.9.0.ebuild 
b/media-video/harvid/harvid-0.9.0.ebuild
new file mode 100644
index 000000000000..e99f97aa56f7
--- /dev/null
+++ b/media-video/harvid/harvid-0.9.0.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="HTTP Ardour Video Daemon"
+HOMEPAGE="https://x42.github.io/harvid/";
+SRC_URI="https://github.com/x42/harvid/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+       >=media-video/ffmpeg-2.6:=
+       media-libs/libjpeg-turbo:=
+       media-libs/libpng
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+       app-editors/vim-core
+       virtual/pkgconfig
+"
+
+PATCHES=(
+       "${FILESDIR}"/${P}-ffmpeg.patch
+       "${FILESDIR}"/${P}-parallel-build.patch
+)
+
+hv_make() {
+       emake \
+               CC="$(tc-getCC)" \
+               RANLIB="$(tc-getRANLIB)" \
+               STRIP="true" \
+               NM="$(tc-getNM) -B" \
+               LD="$(tc-getLD)" \
+               AR="$(tc-getAR)" \
+               PREFIX="${EPREFIX}/usr" \
+               libdir="${EPREFIX}/usr/$(get_libdir)" \
+               hdocdir="${EPREFIX}/usr/share/doc/${PF}" \
+               "${@}"
+}
+
+src_compile() {
+       hv_make -C libharvid
+       hv_make -C src
+       hv_make
+}
+
+src_install() {
+       hv_make DESTDIR="${D}" install
+       dodoc ChangeLog README.md
+}

Reply via email to