From 2d7da3220f4fe592d005ddb0400b54cd94eb4a2a Mon Sep 17 00:00:00 2001 From: Bjarne Saltbaek Date: Wed, 15 Sep 2021 21:25:05 +0200 Subject: [PATCH 1/7] Added zvbi and bumped ffmpeg --- cross/ffmpeg/Makefile | 4 +- cross/ffmpeg/digests | 6 +- ...nc-avoid-callee-preserved-vfp-regist.patch | 287 ++++++++++++++++++ cross/zvbi/Makefile | 19 ++ cross/zvbi/PLIST | 20 ++ cross/zvbi/digests | 3 + cross/zvbi/patches/00_fix-configure.in.patch | 97 ++++++ cross/zvbi/patches/01_Makefile.am.patch | 17 ++ cross/zvbi/patches/03_fails-to-write.patch | 15 + cross/zvbi/patches/05_MAXPATHLEN.patch | 23 ++ cross/zvbi/patches/06_sizeof-FTBFS.patch | 17 ++ .../patches/07_fix-spelling-in-binaries.patch | 29 ++ cross/zvbi/patches/08_fix-manpage.patch | 32 ++ cross/zvbi/patches/09_fix-FTBFS-GCC6.patch | 34 +++ spk/ffmpeg/Makefile | 6 +- 15 files changed, 602 insertions(+), 7 deletions(-) create mode 100644 cross/ffmpeg/patches/034-avcodec-arm-sbcenc-avoid-callee-preserved-vfp-regist.patch create mode 100644 cross/zvbi/Makefile create mode 100644 cross/zvbi/PLIST create mode 100644 cross/zvbi/digests create mode 100644 cross/zvbi/patches/00_fix-configure.in.patch create mode 100644 cross/zvbi/patches/01_Makefile.am.patch create mode 100644 cross/zvbi/patches/03_fails-to-write.patch create mode 100644 cross/zvbi/patches/05_MAXPATHLEN.patch create mode 100644 cross/zvbi/patches/06_sizeof-FTBFS.patch create mode 100644 cross/zvbi/patches/07_fix-spelling-in-binaries.patch create mode 100644 cross/zvbi/patches/08_fix-manpage.patch create mode 100644 cross/zvbi/patches/09_fix-FTBFS-GCC6.patch diff --git a/cross/ffmpeg/Makefile b/cross/ffmpeg/Makefile index e4f1a4233d5..f056cb571cf 100644 --- a/cross/ffmpeg/Makefile +++ b/cross/ffmpeg/Makefile @@ -1,5 +1,5 @@ PKG_NAME = ffmpeg -PKG_VERS = 4.3.2 +PKG_VERS = 4.4 PKG_EXT = tar.bz2 PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT) PKG_DIST_SITE = https://www.ffmpeg.org/releases @@ -104,6 +104,8 @@ endif DEPENDS += cross/libzmq CONFIGURE_ARGS += --enable-libzmq +DEPENDS += cross/zvbi +CONFIGURE_ARGS += --enable-libzvbi # # fdk-acc is now considered compatible with (L)GPL. diff --git a/cross/ffmpeg/digests b/cross/ffmpeg/digests index 564c07e9044..46db5bccc4d 100644 --- a/cross/ffmpeg/digests +++ b/cross/ffmpeg/digests @@ -1,3 +1,3 @@ -ffmpeg-4.3.2.tar.bz2 SHA1 5f36fbff86b29853e4693fb974844bfe60841167 -ffmpeg-4.3.2.tar.bz2 SHA256 ab3a6d6a70358ba0a5f67f37f91f6656b7302b02e98e5b8c846c16763c99913a -ffmpeg-4.3.2.tar.bz2 MD5 d84e0f81740adefa76d94ed8c3aa9006 +ffmpeg-4.4.tar.bz2 SHA1 9ceaa85da43f582a46b4d92de049418fdc835152 +ffmpeg-4.4.tar.bz2 SHA256 42093549751b582cf0f338a21a3664f52e0a9fbe0d238d3c992005e493607d0e +ffmpeg-4.4.tar.bz2 MD5 aa46d2168f30becd4fd3b22d2e8a91ec diff --git a/cross/ffmpeg/patches/034-avcodec-arm-sbcenc-avoid-callee-preserved-vfp-regist.patch b/cross/ffmpeg/patches/034-avcodec-arm-sbcenc-avoid-callee-preserved-vfp-regist.patch new file mode 100644 index 00000000000..6a91596ad1b --- /dev/null +++ b/cross/ffmpeg/patches/034-avcodec-arm-sbcenc-avoid-callee-preserved-vfp-regist.patch @@ -0,0 +1,287 @@ +From: James Cowgill +Date: Sun, 11 Aug 2019 16:50:56 +0100 +Subject: avcodec/arm/sbcenc: avoid callee preserved vfp registers + +When compiling FFmpeg with GCC-9, some very random segfaults were +observed in code which had previously called down into the SBC encoder +NEON assembly routines. This was caused by these functions clobbering +some of the vfp callee saved registers (d8 - d15 aka q4 - q7). GCC was +using these registers to save local variables, but after these +functions returned, they would contain garbage. + +Fix by reallocating the registers in the two affected functions in +the following way: + ff_sbc_analyze_4_neon: q2-q5 => q8-q11, then q1-q4 => q8-q11 + ff_sbc_analyze_8_neon: q2-q9 => q8-q15 + +The reason for using these replacements is to keep closely related +sets of registers consecutively numbered which hopefully makes the +code more easy to follow. Since this commit only reallocates +registers, it should have no performance impact. + +Signed-off-by: James Cowgill +--- + libavcodec/arm/sbcdsp_neon.S | 220 +++++++++++++++++++++---------------------- + 1 file changed, 110 insertions(+), 110 deletions(-) + +diff --git a/libavcodec/arm/sbcdsp_neon.S b/libavcodec/arm/sbcdsp_neon.S +index d83d21d..914abfb 100644 +--- a/libavcodec/arm/sbcdsp_neon.S ++++ b/libavcodec/arm/sbcdsp_neon.S +@@ -38,49 +38,49 @@ function ff_sbc_analyze_4_neon, export=1 + /* TODO: merge even and odd cases (or even merge all four calls to this + * function) in order to have only aligned reads from 'in' array + * and reduce number of load instructions */ +- vld1.16 {d4, d5}, [r0, :64]! +- vld1.16 {d8, d9}, [r2, :128]! ++ vld1.16 {d16, d17}, [r0, :64]! ++ vld1.16 {d20, d21}, [r2, :128]! + +- vmull.s16 q0, d4, d8 +- vld1.16 {d6, d7}, [r0, :64]! +- vmull.s16 q1, d5, d9 +- vld1.16 {d10, d11}, [r2, :128]! ++ vmull.s16 q0, d16, d20 ++ vld1.16 {d18, d19}, [r0, :64]! ++ vmull.s16 q1, d17, d21 ++ vld1.16 {d22, d23}, [r2, :128]! + +- vmlal.s16 q0, d6, d10 +- vld1.16 {d4, d5}, [r0, :64]! +- vmlal.s16 q1, d7, d11 +- vld1.16 {d8, d9}, [r2, :128]! ++ vmlal.s16 q0, d18, d22 ++ vld1.16 {d16, d17}, [r0, :64]! ++ vmlal.s16 q1, d19, d23 ++ vld1.16 {d20, d21}, [r2, :128]! + +- vmlal.s16 q0, d4, d8 +- vld1.16 {d6, d7}, [r0, :64]! +- vmlal.s16 q1, d5, d9 +- vld1.16 {d10, d11}, [r2, :128]! ++ vmlal.s16 q0, d16, d20 ++ vld1.16 {d18, d19}, [r0, :64]! ++ vmlal.s16 q1, d17, d21 ++ vld1.16 {d22, d23}, [r2, :128]! + +- vmlal.s16 q0, d6, d10 +- vld1.16 {d4, d5}, [r0, :64]! +- vmlal.s16 q1, d7, d11 +- vld1.16 {d8, d9}, [r2, :128]! ++ vmlal.s16 q0, d18, d22 ++ vld1.16 {d16, d17}, [r0, :64]! ++ vmlal.s16 q1, d19, d23 ++ vld1.16 {d20, d21}, [r2, :128]! + +- vmlal.s16 q0, d4, d8 +- vmlal.s16 q1, d5, d9 ++ vmlal.s16 q0, d16, d20 ++ vmlal.s16 q1, d17, d21 + + vpadd.s32 d0, d0, d1 + vpadd.s32 d1, d2, d3 + + vrshrn.s32 d0, q0, SBC_PROTO_FIXED_SCALE + +- vld1.16 {d2, d3, d4, d5}, [r2, :128]! ++ vld1.16 {d16, d17, d18, d19}, [r2, :128]! + + vdup.i32 d1, d0[1] /* TODO: can be eliminated */ + vdup.i32 d0, d0[0] /* TODO: can be eliminated */ + +- vmull.s16 q3, d2, d0 +- vmull.s16 q4, d3, d0 +- vmlal.s16 q3, d4, d1 +- vmlal.s16 q4, d5, d1 ++ vmull.s16 q10, d16, d0 ++ vmull.s16 q11, d17, d0 ++ vmlal.s16 q10, d18, d1 ++ vmlal.s16 q11, d19, d1 + +- vpadd.s32 d0, d6, d7 /* TODO: can be eliminated */ +- vpadd.s32 d1, d8, d9 /* TODO: can be eliminated */ ++ vpadd.s32 d0, d20, d21 /* TODO: can be eliminated */ ++ vpadd.s32 d1, d22, d23 /* TODO: can be eliminated */ + + vst1.32 {d0, d1}, [r1, :128] + +@@ -91,57 +91,57 @@ function ff_sbc_analyze_8_neon, export=1 + /* TODO: merge even and odd cases (or even merge all four calls to this + * function) in order to have only aligned reads from 'in' array + * and reduce number of load instructions */ +- vld1.16 {d4, d5}, [r0, :64]! +- vld1.16 {d8, d9}, [r2, :128]! +- +- vmull.s16 q6, d4, d8 +- vld1.16 {d6, d7}, [r0, :64]! +- vmull.s16 q7, d5, d9 +- vld1.16 {d10, d11}, [r2, :128]! +- vmull.s16 q8, d6, d10 +- vld1.16 {d4, d5}, [r0, :64]! +- vmull.s16 q9, d7, d11 +- vld1.16 {d8, d9}, [r2, :128]! +- +- vmlal.s16 q6, d4, d8 +- vld1.16 {d6, d7}, [r0, :64]! +- vmlal.s16 q7, d5, d9 +- vld1.16 {d10, d11}, [r2, :128]! +- vmlal.s16 q8, d6, d10 +- vld1.16 {d4, d5}, [r0, :64]! +- vmlal.s16 q9, d7, d11 +- vld1.16 {d8, d9}, [r2, :128]! +- +- vmlal.s16 q6, d4, d8 +- vld1.16 {d6, d7}, [r0, :64]! +- vmlal.s16 q7, d5, d9 +- vld1.16 {d10, d11}, [r2, :128]! +- vmlal.s16 q8, d6, d10 +- vld1.16 {d4, d5}, [r0, :64]! +- vmlal.s16 q9, d7, d11 +- vld1.16 {d8, d9}, [r2, :128]! +- +- vmlal.s16 q6, d4, d8 +- vld1.16 {d6, d7}, [r0, :64]! +- vmlal.s16 q7, d5, d9 +- vld1.16 {d10, d11}, [r2, :128]! +- vmlal.s16 q8, d6, d10 +- vld1.16 {d4, d5}, [r0, :64]! +- vmlal.s16 q9, d7, d11 +- vld1.16 {d8, d9}, [r2, :128]! +- +- vmlal.s16 q6, d4, d8 +- vld1.16 {d6, d7}, [r0, :64]! +- vmlal.s16 q7, d5, d9 +- vld1.16 {d10, d11}, [r2, :128]! +- +- vmlal.s16 q8, d6, d10 +- vmlal.s16 q9, d7, d11 +- +- vpadd.s32 d0, d12, d13 +- vpadd.s32 d1, d14, d15 +- vpadd.s32 d2, d16, d17 +- vpadd.s32 d3, d18, d19 ++ vld1.16 {d16, d17}, [r0, :64]! ++ vld1.16 {d20, d21}, [r2, :128]! ++ ++ vmull.s16 q12, d16, d20 ++ vld1.16 {d18, d19}, [r0, :64]! ++ vmull.s16 q13, d17, d21 ++ vld1.16 {d22, d23}, [r2, :128]! ++ vmull.s16 q14, d18, d22 ++ vld1.16 {d16, d17}, [r0, :64]! ++ vmull.s16 q15, d19, d23 ++ vld1.16 {d20, d21}, [r2, :128]! ++ ++ vmlal.s16 q12, d16, d20 ++ vld1.16 {d18, d19}, [r0, :64]! ++ vmlal.s16 q13, d17, d21 ++ vld1.16 {d22, d23}, [r2, :128]! ++ vmlal.s16 q14, d18, d22 ++ vld1.16 {d16, d17}, [r0, :64]! ++ vmlal.s16 q15, d19, d23 ++ vld1.16 {d20, d21}, [r2, :128]! ++ ++ vmlal.s16 q12, d16, d20 ++ vld1.16 {d18, d19}, [r0, :64]! ++ vmlal.s16 q13, d17, d21 ++ vld1.16 {d22, d23}, [r2, :128]! ++ vmlal.s16 q14, d18, d22 ++ vld1.16 {d16, d17}, [r0, :64]! ++ vmlal.s16 q15, d19, d23 ++ vld1.16 {d20, d21}, [r2, :128]! ++ ++ vmlal.s16 q12, d16, d20 ++ vld1.16 {d18, d19}, [r0, :64]! ++ vmlal.s16 q13, d17, d21 ++ vld1.16 {d22, d23}, [r2, :128]! ++ vmlal.s16 q14, d18, d22 ++ vld1.16 {d16, d17}, [r0, :64]! ++ vmlal.s16 q15, d19, d23 ++ vld1.16 {d20, d21}, [r2, :128]! ++ ++ vmlal.s16 q12, d16, d20 ++ vld1.16 {d18, d19}, [r0, :64]! ++ vmlal.s16 q13, d17, d21 ++ vld1.16 {d22, d23}, [r2, :128]! ++ ++ vmlal.s16 q14, d18, d22 ++ vmlal.s16 q15, d19, d23 ++ ++ vpadd.s32 d0, d24, d25 ++ vpadd.s32 d1, d26, d27 ++ vpadd.s32 d2, d28, d29 ++ vpadd.s32 d3, d30, d31 + + vrshr.s32 q0, q0, SBC_PROTO_FIXED_SCALE + vrshr.s32 q1, q1, SBC_PROTO_FIXED_SCALE +@@ -153,38 +153,38 @@ function ff_sbc_analyze_8_neon, export=1 + vdup.i32 d1, d0[1] /* TODO: can be eliminated */ + vdup.i32 d0, d0[0] /* TODO: can be eliminated */ + +- vld1.16 {d4, d5}, [r2, :128]! +- vmull.s16 q6, d4, d0 +- vld1.16 {d6, d7}, [r2, :128]! +- vmull.s16 q7, d5, d0 +- vmull.s16 q8, d6, d0 +- vmull.s16 q9, d7, d0 +- +- vld1.16 {d4, d5}, [r2, :128]! +- vmlal.s16 q6, d4, d1 +- vld1.16 {d6, d7}, [r2, :128]! +- vmlal.s16 q7, d5, d1 +- vmlal.s16 q8, d6, d1 +- vmlal.s16 q9, d7, d1 +- +- vld1.16 {d4, d5}, [r2, :128]! +- vmlal.s16 q6, d4, d2 +- vld1.16 {d6, d7}, [r2, :128]! +- vmlal.s16 q7, d5, d2 +- vmlal.s16 q8, d6, d2 +- vmlal.s16 q9, d7, d2 +- +- vld1.16 {d4, d5}, [r2, :128]! +- vmlal.s16 q6, d4, d3 +- vld1.16 {d6, d7}, [r2, :128]! +- vmlal.s16 q7, d5, d3 +- vmlal.s16 q8, d6, d3 +- vmlal.s16 q9, d7, d3 +- +- vpadd.s32 d0, d12, d13 /* TODO: can be eliminated */ +- vpadd.s32 d1, d14, d15 /* TODO: can be eliminated */ +- vpadd.s32 d2, d16, d17 /* TODO: can be eliminated */ +- vpadd.s32 d3, d18, d19 /* TODO: can be eliminated */ ++ vld1.16 {d16, d17}, [r2, :128]! ++ vmull.s16 q12, d16, d0 ++ vld1.16 {d18, d19}, [r2, :128]! ++ vmull.s16 q13, d17, d0 ++ vmull.s16 q14, d18, d0 ++ vmull.s16 q15, d19, d0 ++ ++ vld1.16 {d16, d17}, [r2, :128]! ++ vmlal.s16 q12, d16, d1 ++ vld1.16 {d18, d19}, [r2, :128]! ++ vmlal.s16 q13, d17, d1 ++ vmlal.s16 q14, d18, d1 ++ vmlal.s16 q15, d19, d1 ++ ++ vld1.16 {d16, d17}, [r2, :128]! ++ vmlal.s16 q12, d16, d2 ++ vld1.16 {d18, d19}, [r2, :128]! ++ vmlal.s16 q13, d17, d2 ++ vmlal.s16 q14, d18, d2 ++ vmlal.s16 q15, d19, d2 ++ ++ vld1.16 {d16, d17}, [r2, :128]! ++ vmlal.s16 q12, d16, d3 ++ vld1.16 {d18, d19}, [r2, :128]! ++ vmlal.s16 q13, d17, d3 ++ vmlal.s16 q14, d18, d3 ++ vmlal.s16 q15, d19, d3 ++ ++ vpadd.s32 d0, d24, d25 /* TODO: can be eliminated */ ++ vpadd.s32 d1, d26, d27 /* TODO: can be eliminated */ ++ vpadd.s32 d2, d28, d29 /* TODO: can be eliminated */ ++ vpadd.s32 d3, d30, d31 /* TODO: can be eliminated */ + + vst1.32 {d0, d1, d2, d3}, [r1, :128] + diff --git a/cross/zvbi/Makefile b/cross/zvbi/Makefile new file mode 100644 index 00000000000..dc60e507ff9 --- /dev/null +++ b/cross/zvbi/Makefile @@ -0,0 +1,19 @@ +PKG_NAME = zvbi +PKG_VERS = 0.2.35 +PKG_EXT = tar.bz2 +PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT) +PKG_DIST_SITE = https://downloads.sourceforge.net/project/zapping/$(PKG_NAME)/$(PKG_VERS) +PKG_DIR = $(PKG_NAME)-$(PKG_VERS) + +DEPENDS = cross/libpng + +HOMEPAGE = https://transmissionbt.com +COMMENT = A Fast, Easy, and Free BitTorrent Client +LICENSE = GPLv2/GPLv3 + +GNU_CONFIGURE = 1 +CONFIGURE_ARGS = + +PATCHES_LEVEL = 1 + +include ../../mk/spksrc.cross-cc.mk diff --git a/cross/zvbi/PLIST b/cross/zvbi/PLIST new file mode 100644 index 00000000000..cb6d8c40e5f --- /dev/null +++ b/cross/zvbi/PLIST @@ -0,0 +1,20 @@ +bin:bin/zvbi-atsc-cc +bin:bin/zvbi-chains +bin:bin/zvbi-ntsc-cc +rsc:include/libzvbi.h +lnk:lib/libzvbi-chains.so +lnk:lib/libzvbi-chains.so.0 +lib:lib/libzvbi-chains.so.0.0.0 +lnk:lib/libzvbi.so +lnk:lib/libzvbi.so.0 +lib:lib/libzvbi.so.0.13.2 +rsc:lib/pkgconfig/zvbi-0.2.pc +bin:sbin/zvbid +rsc:share/locale/de/LC_MESSAGES/zvbi.mo +rsc:share/locale/en@boldquot/LC_MESSAGES/zvbi.mo +rsc:share/locale/en@quot/LC_MESSAGES/zvbi.mo +rsc:share/locale/es/LC_MESSAGES/zvbi.mo +rsc:share/locale/fr/LC_MESSAGES/zvbi.mo +rsc:share/locale/it/LC_MESSAGES/zvbi.mo +rsc:share/locale/nl/LC_MESSAGES/zvbi.mo +rsc:share/locale/pl/LC_MESSAGES/zvbi.mo diff --git a/cross/zvbi/digests b/cross/zvbi/digests new file mode 100644 index 00000000000..45672ebd528 --- /dev/null +++ b/cross/zvbi/digests @@ -0,0 +1,3 @@ +zvbi-0.2.35.tar.bz2 SHA1 b0fc8d596c90d603e883e6b195318c6b276a3eb4 +zvbi-0.2.35.tar.bz2 SHA256 fc883c34111a487c4a783f91b1b2bb5610d8d8e58dcba80c7ab31e67e4765318 +zvbi-0.2.35.tar.bz2 MD5 95e53eb208c65ba6667fd4341455fa27 diff --git a/cross/zvbi/patches/00_fix-configure.in.patch b/cross/zvbi/patches/00_fix-configure.in.patch new file mode 100644 index 00000000000..e085d8579e0 --- /dev/null +++ b/cross/zvbi/patches/00_fix-configure.in.patch @@ -0,0 +1,97 @@ +Description: fix some warnings in Makefile.in. +Author: Joao Eriberto Mota Filho +Reference: https://autotools.io/forwardporting/autoconf.html +Last-Update:2015-05-20 +Index: zvbi-0.2.35/configure.in +=================================================================== +--- zvbi-0.2.35.orig/configure.in ++++ zvbi-0.2.35/configure.in +@@ -9,6 +9,8 @@ AM_CONFIG_HEADER(config.h) + AM_ACLOCAL_INCLUDE(m4) + AM_MAINTAINER_MODE + ++AC_CONFIG_MACRO_DIR([m4]) ++ + dnl [current:revision:age] + dnl Any change: ++revision + dnl Interface added: ++current, revision = 0 +@@ -35,6 +37,7 @@ dnl sincos() is a GNU extension (a macro + dnl If not present we use a replacement. + AC_MSG_CHECKING([for sincos]) + AC_LINK_IFELSE([ ++AC_LANG_SOURCE([ + #include + #include + int main (void) { +@@ -46,7 +49,7 @@ sincos (s, &s, &c); + printf ("%f %f", s, c); + return 0; + } +-],[ ++])],[ + AC_MSG_RESULT([yes]) + AC_DEFINE(HAVE_SINCOS, 1, [Define if the sincos() function is available]) + ],[ +@@ -57,6 +60,7 @@ dnl log2() is a GNU extension (a macro, + dnl If not present we use a replacement. + AC_MSG_CHECKING([for log2]) + AC_LINK_IFELSE([ ++AC_LANG_SOURCE([ + #include + #include + int main (void) { +@@ -65,7 +69,7 @@ scanf ("%f", &x); + printf ("%f", log2 (x)); + return 0; + } +-],[ ++])],[ + AC_MSG_RESULT([yes]) + AC_DEFINE(HAVE_LOG2, 1, [Define if the log2() function is available]) + ],[ +@@ -76,6 +80,7 @@ dnl strerror() is not thread safe and th + dnl of strerror_r(). If none of them are present we use a replacement. + AC_MSG_CHECKING([for strerror_r]) + AC_COMPILE_IFELSE([ ++AC_LANG_SOURCE([ + #include + #include + int main (void) { +@@ -94,7 +99,7 @@ int main (void) { + printf ("%f", 1.0 + strerror_r (22, malloc (128), 128)); + return 0; + } +- ],[ ++ ])],[ + AC_MSG_RESULT([yes, SUSV3 version]) + AC_DEFINE(HAVE_SUSV3_STRERROR_R, 1, [Define to 1 if you have + the SUSV3 version of the strerror_r() function.]) +@@ -182,13 +187,14 @@ dnl (Used in test/date.) + dnl + AC_MSG_CHECKING([if struct tm has tm_gmtoff]) + AC_COMPILE_IFELSE([ ++AC_LANG_SOURCE([ + #include + int main (void) { + struct tm tm; + tm.tm_gmtoff = 0; + return 0; + } +-],[ ++])],[ + AC_MSG_RESULT([yes]) + AC_DEFINE(HAVE_TM_GMTOFF, 1, [Define if struct tm has a tm_gmtoff field]) + ],[ +@@ -317,10 +323,10 @@ if test "x$enable_v4l" = xyes -o "x$enab + dnl if __GNUC__ is defined. These types are required to compile + dnl videodev2.h and the Linux DVB headers. + AC_MSG_CHECKING([if asm/types.h defines __s64 and __u64]) +- AC_COMPILE_IFELSE([#include ++ AC_COMPILE_IFELSE([AC_LANG_SOURCE([#include + __s64 a = 1; + __u64 b = 2; +- ], [AC_DEFINE(HAVE_S64_U64, 1, ++ ])], [AC_DEFINE(HAVE_S64_U64, 1, + [Define if asm/types.h defines __s64 and __u64]) + AC_MSG_RESULT(yes)], + [AC_MSG_RESULT(no)]) diff --git a/cross/zvbi/patches/01_Makefile.am.patch b/cross/zvbi/patches/01_Makefile.am.patch new file mode 100644 index 00000000000..f2ef93022f3 --- /dev/null +++ b/cross/zvbi/patches/01_Makefile.am.patch @@ -0,0 +1,17 @@ +Description: zvbi-chains now load libzvbi-chains.so.0.0.0. (Closes: 283004) +Author: Christian Marillat +Reviewed-by: Joao Eriberto Mota Filho +Last-Update: 2015-05-20 +Index: zvbi-0.2.35/daemon/Makefile.am +=================================================================== +--- zvbi-0.2.35.orig/daemon/Makefile.am ++++ zvbi-0.2.35/daemon/Makefile.am +@@ -16,7 +16,7 @@ EXTRA_DIST = \ + + AM_CPPFLAGS = \ + -I$(top_srcdir) \ +- -DLIBZVBI_CHAINS_PATH=\"libzvbi-chains.so\" \ ++ -DLIBZVBI_CHAINS_PATH=\"libzvbi-chains.so.0.0.0\" \ + -D_REENTRANT \ + -D_GNU_SOURCE + diff --git a/cross/zvbi/patches/03_fails-to-write.patch b/cross/zvbi/patches/03_fails-to-write.patch new file mode 100644 index 00000000000..3112881cd56 --- /dev/null +++ b/cross/zvbi/patches/03_fails-to-write.patch @@ -0,0 +1,15 @@ +Description: fix write output to a file. (Closes: #603128) +Author: Christian Marillat +Last-Update: 2010-11-26 +Index: zvbi-0.2.35/contrib/atsc-cc.c +=================================================================== +--- zvbi-0.2.35.orig/contrib/atsc-cc.c ++++ zvbi-0.2.35/contrib/atsc-cc.c +@@ -1848,6 +1848,7 @@ cr_new_line (struct caption_recorder * + cr->ucs_buffer, + cr->ucs_buffer_length, + /* repl_char */ '?'); ++ fflush(fp); + } + } + diff --git a/cross/zvbi/patches/05_MAXPATHLEN.patch b/cross/zvbi/patches/05_MAXPATHLEN.patch new file mode 100644 index 00000000000..c4a619ab3aa --- /dev/null +++ b/cross/zvbi/patches/05_MAXPATHLEN.patch @@ -0,0 +1,23 @@ +Description: fix unconditional MAXPATHLEN use. (Closes: #676130) +Author: Christian Marillat +Last-Update: 2012-06-14 +Index: zvbi-0.2.35/src/proxy-msg.c +=================================================================== +--- zvbi-0.2.35.orig/src/proxy-msg.c ++++ zvbi-0.2.35/src/proxy-msg.c +@@ -1039,7 +1039,6 @@ int vbi_proxy_msg_accept_connection( int + static char * vbi_proxy_msg_resolve_symlinks( const char * p_dev_name ) + { + struct stat stbuf; +- char link_name[MAXPATHLEN + 1]; + char * p_path; + char * p_tmp; + char * p_tmp2; +@@ -1054,6 +1053,7 @@ static char * vbi_proxy_msg_resolve_syml + res = lstat(p_path, &stbuf); + if ((res == 0) && S_ISLNK(stbuf.st_mode)) + { ++ char link_name[stbuf.st_size + 1]; + name_len = readlink(p_path, link_name, sizeof(link_name)); + if ((name_len > 0) && (name_len < (int) sizeof(link_name))) + { diff --git a/cross/zvbi/patches/06_sizeof-FTBFS.patch b/cross/zvbi/patches/06_sizeof-FTBFS.patch new file mode 100644 index 00000000000..29cd9d22836 --- /dev/null +++ b/cross/zvbi/patches/06_sizeof-FTBFS.patch @@ -0,0 +1,17 @@ +Description: Fix and FTBFS on ia64, s390x, alpha, and ppc64. +Author: Jackson Doak +Bug-Debian: http://bugs.debian.org/726186 +Last-Update: 2013-10-15 +Index: zvbi-0.2.35/test/test-packet-830.cc +=================================================================== +--- zvbi-0.2.35.orig/test/test-packet-830.cc ++++ zvbi-0.2.35/test/test-packet-830.cc +@@ -115,7 +115,7 @@ assert_decode_teletext_8301_cni (unsigne + unsigned int cni2; + + memcpy (buffer2, buffer, sizeof (buffer2)); +- memset_rand (cni, sizeof (cni)); ++ memset_rand (cni, sizeof(*cni)); + cni2 = *cni; + + assert (TRUE == vbi_decode_teletext_8301_cni (cni, buffer)); diff --git a/cross/zvbi/patches/07_fix-spelling-in-binaries.patch b/cross/zvbi/patches/07_fix-spelling-in-binaries.patch new file mode 100644 index 00000000000..af16c2eea10 --- /dev/null +++ b/cross/zvbi/patches/07_fix-spelling-in-binaries.patch @@ -0,0 +1,29 @@ +Description: fix some spelling errors found in final binaries. +Author: Joao Eriberto Mota Filho +Last-Update: 2015-04-12 +Index: zvbi-0.2.35/src/proxy-client.c +=================================================================== +--- zvbi-0.2.35.orig/src/proxy-client.c ++++ zvbi-0.2.35/src/proxy-client.c +@@ -763,7 +763,7 @@ static vbi_bool proxy_client_start_acq( + } + else if (vpc->endianSwap) + { /* endian swapping currently unsupported */ +- asprintf(&vpc->p_errorstr, _("Incompatible server architecture (endianess mismatch).")); ++ asprintf(&vpc->p_errorstr, _("Incompatible server architecture (endianness mismatch).")); + goto failure; + } + else +Index: zvbi-0.2.35/daemon/proxyd.c +=================================================================== +--- zvbi-0.2.35.orig/daemon/proxyd.c ++++ zvbi-0.2.35/daemon/proxyd.c +@@ -852,7 +852,7 @@ static void vbi_proxyd_stop_acq_thread( + { + ret = pthread_join(p_proxy_dev->thread_id, NULL); + if (ret == 0) +- dprintf(DBG_MSG, "stop_acq_thread: acq thread killed sucessfully\n"); ++ dprintf(DBG_MSG, "stop_acq_thread: acq thread killed successfully\n"); + else + dprintf(DBG_MSG, "stop_acq_thread: pthread_join failed: %d (%s)\n", errno, strerror(errno)); + } diff --git a/cross/zvbi/patches/08_fix-manpage.patch b/cross/zvbi/patches/08_fix-manpage.patch new file mode 100644 index 00000000000..cda1d3fd695 --- /dev/null +++ b/cross/zvbi/patches/08_fix-manpage.patch @@ -0,0 +1,32 @@ +Description: fix some hyphens used as minus sign. +Author: Joao Eriberto Mota Filho +Last-Update: 2015-05-04 +Index: zvbi-0.2.35/contrib/zvbi-atsc-cc.1 +=================================================================== +--- zvbi-0.2.35.orig/contrib/zvbi-atsc-cc.1 ++++ zvbi-0.2.35/contrib/zvbi-atsc-cc.1 +@@ -193,9 +193,9 @@ timezone, title. Multiple \fB-f\fP optio + is "all". + .SH EXAMPLES + .nf +-zvbi-atsc-cc -c NJN-HD ++zvbi-atsc-cc \-c NJN-HD + .P +-zvbi-atsc-cc --cc1-file wnyw.txt WNYW-DT --cc1-file wwor.txt WWOR-DT ++zvbi-atsc-cc \-\-cc1-file wnyw.txt WNYW-DT \-\-cc1-file wwor.txt WWOR-DT + .P + (NJN-HD, WNYW-DT and WWOR-DT are TV stations in New York. WNYW-DT + and WWOR-DT can be captured simultaneously because they share a +Index: zvbi-0.2.35/contrib/zvbi-ntsc-cc.1 +=================================================================== +--- zvbi-0.2.35.orig/contrib/zvbi-ntsc-cc.1 ++++ zvbi-0.2.35/contrib/zvbi-ntsc-cc.1 +@@ -6,7 +6,7 @@ zvbi-ntsc-cc - closed caption decoder + .SH DESCRIPTION + .B zvbi-ntsc-cc + reads vbi data from /dev/vbi and decodes the enclosed cc data. +-Start it with '-h' to get a list of cmd line options. ++Start it with '\-h' to get a list of cmd line options. + .SH AUTHORS + timecop@japan.co.jp + .br diff --git a/cross/zvbi/patches/09_fix-FTBFS-GCC6.patch b/cross/zvbi/patches/09_fix-FTBFS-GCC6.patch new file mode 100644 index 00000000000..4f73ebc8b7f --- /dev/null +++ b/cross/zvbi/patches/09_fix-FTBFS-GCC6.patch @@ -0,0 +1,34 @@ +Description: fix a FTBFS with GCC-6 (narrowing conversion) +Author: Breno Leitao +Last-Update: 2016-07-17 +Index: zvbi-0.2.35/test/test-dvb_mux.cc +=================================================================== +--- zvbi-0.2.35.orig/test/test-dvb_mux.cc ++++ zvbi-0.2.35/test/test-dvb_mux.cc +@@ -137,7 +137,7 @@ is_good_service (vbi_service_set servi + static const vbi_service_set + all_services [] = { + 0, +- -1, ++ UINT_MAX, + VBI_SLICED_2xCAPTION_525, + VBI_SLICED_CAPTION_525, + VBI_SLICED_CAPTION_525_F1, +@@ -1279,7 +1279,7 @@ test_multiplex_sliced_service_checks + + /* Verify the service filter. */ + +- if (-1u == service ++ if (UINT_MAX == service + || (VBI_SLICED_TELETEXT_B_625 + == (VBI_SLICED_TELETEXT_B_625 & service))) { + assert_multiplex_sliced (buffer, buffer_size, +@@ -3237,7 +3237,7 @@ static void + test_dvb_mux_cor_pts (void) + { + static const int64_t ptss [] = { +- 0x8000000000000000ll, -1, 0, 0x7FFFFFFFFFFFFFFFll, ++ 0, -1, 0, 0x7FFFFFFFFFFFFFFFll, + }; + DVBPESMuxTest mx; + unsigned int i; diff --git a/spk/ffmpeg/Makefile b/spk/ffmpeg/Makefile index 444c2bb47f1..3b0a88d1293 100644 --- a/spk/ffmpeg/Makefile +++ b/spk/ffmpeg/Makefile @@ -1,8 +1,8 @@ SPK_NAME = ffmpeg -SPK_VERS = 4.3.2 -SPK_REV = 37 +SPK_VERS = 4.4 +SPK_REV = 38 SPK_ICON = src/ffmpeg.png -CHANGELOG = "1. Update to FFMPEG 4.3.2
2. Update Intel libva to version 2.10 and media drivers 2021Q1
3. Multiple depedency updates (libass, SVT-AV1, libaom, x264, libbluray, libvpx)" +CHANGELOG = "1. Update to FFMPEG 4.4
2. Added zvbi library" CONF_DIR = src/conf From 79cc58e3654ed6ccb032109c417db9cf70662383 Mon Sep 17 00:00:00 2001 From: Bjarne Saltbaek Date: Thu, 16 Sep 2021 08:12:54 +0200 Subject: [PATCH 2/7] Added zvbi library --- cross/ffmpeg/Makefile | 2 +- cross/ffmpeg/digests | 6 +++--- ...codec-arm-sbcenc-avoid-callee-preserved-vfp-regist.patch | 4 ++-- spk/ffmpeg/Makefile | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/cross/ffmpeg/Makefile b/cross/ffmpeg/Makefile index f056cb571cf..39512dc055a 100644 --- a/cross/ffmpeg/Makefile +++ b/cross/ffmpeg/Makefile @@ -1,5 +1,5 @@ PKG_NAME = ffmpeg -PKG_VERS = 4.4 +PKG_VERS = 4.3.2 PKG_EXT = tar.bz2 PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT) PKG_DIST_SITE = https://www.ffmpeg.org/releases diff --git a/cross/ffmpeg/digests b/cross/ffmpeg/digests index 46db5bccc4d..564c07e9044 100644 --- a/cross/ffmpeg/digests +++ b/cross/ffmpeg/digests @@ -1,3 +1,3 @@ -ffmpeg-4.4.tar.bz2 SHA1 9ceaa85da43f582a46b4d92de049418fdc835152 -ffmpeg-4.4.tar.bz2 SHA256 42093549751b582cf0f338a21a3664f52e0a9fbe0d238d3c992005e493607d0e -ffmpeg-4.4.tar.bz2 MD5 aa46d2168f30becd4fd3b22d2e8a91ec +ffmpeg-4.3.2.tar.bz2 SHA1 5f36fbff86b29853e4693fb974844bfe60841167 +ffmpeg-4.3.2.tar.bz2 SHA256 ab3a6d6a70358ba0a5f67f37f91f6656b7302b02e98e5b8c846c16763c99913a +ffmpeg-4.3.2.tar.bz2 MD5 d84e0f81740adefa76d94ed8c3aa9006 diff --git a/cross/ffmpeg/patches/034-avcodec-arm-sbcenc-avoid-callee-preserved-vfp-regist.patch b/cross/ffmpeg/patches/034-avcodec-arm-sbcenc-avoid-callee-preserved-vfp-regist.patch index 6a91596ad1b..de9bc3683a2 100644 --- a/cross/ffmpeg/patches/034-avcodec-arm-sbcenc-avoid-callee-preserved-vfp-regist.patch +++ b/cross/ffmpeg/patches/034-avcodec-arm-sbcenc-avoid-callee-preserved-vfp-regist.patch @@ -26,8 +26,8 @@ Signed-off-by: James Cowgill diff --git a/libavcodec/arm/sbcdsp_neon.S b/libavcodec/arm/sbcdsp_neon.S index d83d21d..914abfb 100644 ---- a/libavcodec/arm/sbcdsp_neon.S -+++ b/libavcodec/arm/sbcdsp_neon.S +--- ./libavcodec/arm/sbcdsp_neon.S ++++ ./libavcodec/arm/sbcdsp_neon.S @@ -38,49 +38,49 @@ function ff_sbc_analyze_4_neon, export=1 /* TODO: merge even and odd cases (or even merge all four calls to this * function) in order to have only aligned reads from 'in' array diff --git a/spk/ffmpeg/Makefile b/spk/ffmpeg/Makefile index 3b0a88d1293..98f0ad59316 100644 --- a/spk/ffmpeg/Makefile +++ b/spk/ffmpeg/Makefile @@ -1,8 +1,8 @@ SPK_NAME = ffmpeg -SPK_VERS = 4.4 +SPK_VERS = 4.3.2 SPK_REV = 38 SPK_ICON = src/ffmpeg.png -CHANGELOG = "1. Update to FFMPEG 4.4
2. Added zvbi library" +CHANGELOG = "Added zvbi library" CONF_DIR = src/conf From a7ade3ef699cff31103a324f1b812d9e515220a2 Mon Sep 17 00:00:00 2001 From: Bjarne Saltbaek Date: Thu, 16 Sep 2021 08:21:08 +0200 Subject: [PATCH 3/7] Forgot to update zvbi package info --- cross/zvbi/Makefile | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/cross/zvbi/Makefile b/cross/zvbi/Makefile index dc60e507ff9..45062d25a19 100644 --- a/cross/zvbi/Makefile +++ b/cross/zvbi/Makefile @@ -7,12 +7,11 @@ PKG_DIR = $(PKG_NAME)-$(PKG_VERS) DEPENDS = cross/libpng -HOMEPAGE = https://transmissionbt.com -COMMENT = A Fast, Easy, and Free BitTorrent Client -LICENSE = GPLv2/GPLv3 +HOMEPAGE = https://zapping.sf.net/ZVBI +COMMENT = Vertical Blanking Interval capture and decoding library +LICENSE = GPL GNU_CONFIGURE = 1 -CONFIGURE_ARGS = PATCHES_LEVEL = 1 From 1be0dc311529e2a57965e7a6917cbb5b72b1b5ef Mon Sep 17 00:00:00 2001 From: Bjarne Saltbaek Date: Fri, 17 Sep 2021 22:35:39 +0200 Subject: [PATCH 4/7] Requested changes --- cross/zvbi/PLIST | 8 -------- cross/zvbi/patches/{ => ppc}/06_sizeof-FTBFS.patch | 0 spk/ffmpeg/Makefile | 2 +- 3 files changed, 1 insertion(+), 9 deletions(-) rename cross/zvbi/patches/{ => ppc}/06_sizeof-FTBFS.patch (100%) diff --git a/cross/zvbi/PLIST b/cross/zvbi/PLIST index cb6d8c40e5f..c7030e37c3c 100644 --- a/cross/zvbi/PLIST +++ b/cross/zvbi/PLIST @@ -10,11 +10,3 @@ lnk:lib/libzvbi.so.0 lib:lib/libzvbi.so.0.13.2 rsc:lib/pkgconfig/zvbi-0.2.pc bin:sbin/zvbid -rsc:share/locale/de/LC_MESSAGES/zvbi.mo -rsc:share/locale/en@boldquot/LC_MESSAGES/zvbi.mo -rsc:share/locale/en@quot/LC_MESSAGES/zvbi.mo -rsc:share/locale/es/LC_MESSAGES/zvbi.mo -rsc:share/locale/fr/LC_MESSAGES/zvbi.mo -rsc:share/locale/it/LC_MESSAGES/zvbi.mo -rsc:share/locale/nl/LC_MESSAGES/zvbi.mo -rsc:share/locale/pl/LC_MESSAGES/zvbi.mo diff --git a/cross/zvbi/patches/06_sizeof-FTBFS.patch b/cross/zvbi/patches/ppc/06_sizeof-FTBFS.patch similarity index 100% rename from cross/zvbi/patches/06_sizeof-FTBFS.patch rename to cross/zvbi/patches/ppc/06_sizeof-FTBFS.patch diff --git a/spk/ffmpeg/Makefile b/spk/ffmpeg/Makefile index 98f0ad59316..f01baa2be0a 100644 --- a/spk/ffmpeg/Makefile +++ b/spk/ffmpeg/Makefile @@ -2,7 +2,7 @@ SPK_NAME = ffmpeg SPK_VERS = 4.3.2 SPK_REV = 38 SPK_ICON = src/ffmpeg.png -CHANGELOG = "Added zvbi library" +CHANGELOG = "1. Added zvbi library" CONF_DIR = src/conf From 487efdaf51debe6ec2327439e1ad81d7560da685 Mon Sep 17 00:00:00 2001 From: Vincent Fortier Date: Sun, 19 Sep 2021 08:02:27 -0400 Subject: [PATCH 5/7] Add dash demuxer support comment from #4866 Had forgotten to update the package version & comment out on changes. --- spk/ffmpeg/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spk/ffmpeg/Makefile b/spk/ffmpeg/Makefile index f01baa2be0a..31696f8f4a1 100644 --- a/spk/ffmpeg/Makefile +++ b/spk/ffmpeg/Makefile @@ -2,7 +2,7 @@ SPK_NAME = ffmpeg SPK_VERS = 4.3.2 SPK_REV = 38 SPK_ICON = src/ffmpeg.png -CHANGELOG = "1. Added zvbi library" +CHANGELOG = "1. Added zvbi library
2. Add dash demuxer support" CONF_DIR = src/conf From c2885019f895e2722ef218fbebce580227ef1362 Mon Sep 17 00:00:00 2001 From: Bjarne Saltbaek Date: Sun, 19 Sep 2021 16:05:32 +0200 Subject: [PATCH 6/7] Removed devel files --- cross/zvbi/PLIST | 2 -- 1 file changed, 2 deletions(-) diff --git a/cross/zvbi/PLIST b/cross/zvbi/PLIST index c7030e37c3c..05d45ef993c 100644 --- a/cross/zvbi/PLIST +++ b/cross/zvbi/PLIST @@ -1,12 +1,10 @@ bin:bin/zvbi-atsc-cc bin:bin/zvbi-chains bin:bin/zvbi-ntsc-cc -rsc:include/libzvbi.h lnk:lib/libzvbi-chains.so lnk:lib/libzvbi-chains.so.0 lib:lib/libzvbi-chains.so.0.0.0 lnk:lib/libzvbi.so lnk:lib/libzvbi.so.0 lib:lib/libzvbi.so.0.13.2 -rsc:lib/pkgconfig/zvbi-0.2.pc bin:sbin/zvbid From b7dcb64ad3513077569b3e32388b2be25eaa2215 Mon Sep 17 00:00:00 2001 From: Bjarne Saltbaek Date: Sun, 19 Sep 2021 16:13:05 +0200 Subject: [PATCH 7/7] Moved patch 034 to arm sub dir --- ...034-avcodec-arm-sbcenc-avoid-callee-preserved-vfp-regist.patch | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename cross/ffmpeg/patches/{ => arm}/034-avcodec-arm-sbcenc-avoid-callee-preserved-vfp-regist.patch (100%) diff --git a/cross/ffmpeg/patches/034-avcodec-arm-sbcenc-avoid-callee-preserved-vfp-regist.patch b/cross/ffmpeg/patches/arm/034-avcodec-arm-sbcenc-avoid-callee-preserved-vfp-regist.patch similarity index 100% rename from cross/ffmpeg/patches/034-avcodec-arm-sbcenc-avoid-callee-preserved-vfp-regist.patch rename to cross/ffmpeg/patches/arm/034-avcodec-arm-sbcenc-avoid-callee-preserved-vfp-regist.patch