Sat Jan 27 02:52:50 2024 UTC (121d)
multimedia/ffmpeg4: sync cross-build and powerpc changes from ffmpeg5


(riastradh)
diff -r1.83 -r1.84 pkgsrc/multimedia/ffmpeg4/Makefile
diff -r1.32 -r1.33 pkgsrc/multimedia/ffmpeg4/Makefile.common
diff -r1.31 -r1.32 pkgsrc/multimedia/ffmpeg4/distinfo
diff -r0 -r1.1 pkgsrc/multimedia/ffmpeg4/patches/patch-libavutil_ppc_cpu.c

cvs diff -r1.83 -r1.84 pkgsrc/multimedia/ffmpeg4/Makefile (expand / switch to unified diff)

--- pkgsrc/multimedia/ffmpeg4/Makefile 2024/01/22 13:17:01 1.83
+++ pkgsrc/multimedia/ffmpeg4/Makefile 2024/01/27 02:52:49 1.84
@@ -1,41 +1,34 @@ @@ -1,41 +1,34 @@
1# $NetBSD: Makefile,v 1.83 2024/01/22 13:17:01 ryoon Exp $ 1# $NetBSD: Makefile,v 1.84 2024/01/27 02:52:49 riastradh Exp $
2 2
3PKGNAME= ${DISTNAME:S/ffmpeg/ffmpeg4/} 3PKGNAME= ${DISTNAME:S/ffmpeg/ffmpeg4/}
4PKGREVISION= 7 4PKGREVISION= 7
5MAINTAINER= pkgsrc-users@NetBSD.org 5MAINTAINER= pkgsrc-users@NetBSD.org
6HOMEPAGE= https://ffmpeg.org/ 6HOMEPAGE= https://ffmpeg.org/
7COMMENT= Decoding, encoding and streaming software (v4.x) 7COMMENT= Decoding, encoding and streaming software (v4.x)
8 8
9CONFIGURE_ARGS+= --enable-avfilter 9CONFIGURE_ARGS+= --enable-avfilter
10CONFIGURE_ARGS+= --enable-avresample 10CONFIGURE_ARGS+= --enable-avresample
11CONFIGURE_ARGS+= --enable-postproc 11CONFIGURE_ARGS+= --enable-postproc
12CONFIGURE_ARGS+= --disable-ffplay 12CONFIGURE_ARGS+= --disable-ffplay
13 13
14INSTALLATION_DIRS= lib/ffmpeg4 share/doc/ffmpeg4 share/examples/ffmpeg4 14INSTALLATION_DIRS= lib/ffmpeg4 share/doc/ffmpeg4 share/examples/ffmpeg4
15 15
16.include "../../mk/bsd.prefs.mk" 16.include "../../mk/bsd.prefs.mk"
17 17
18.if ${_USE_RPATH:tl} != "no" 18.if ${_USE_RPATH:tl} != "no"
19CONFIGURE_ARGS+= --enable-rpath 19CONFIGURE_ARGS+= --enable-rpath
20.endif 20.endif
21 21
22.if !empty(USE_CROSS_COMPILE:M[yY][eE][sS]) 
23CONFIGURE_ARGS+= --enable-cross-compile 
24CONFIGURE_ARGS+= --host-cc=${NATIVE_CC:Q} 
25CONFIGURE_ARGS+= --host-ld=${NATIVE_CC:Q} 
26CONFIGURE_ARGS+= --target-os=${LOWER_OPSYS} 
27.endif 
28 
29PRINT_PLIST_AWK+= /html/ { $$0 = "$${PLIST.doc}" $$0 } 22PRINT_PLIST_AWK+= /html/ { $$0 = "$${PLIST.doc}" $$0 }
30PRINT_PLIST_AWK+= /opencl/ { $$0 = "$${PLIST.opencl}" $$0 } 23PRINT_PLIST_AWK+= /opencl/ { $$0 = "$${PLIST.opencl}" $$0 }
31 24
32TEST_TARGET= check 25TEST_TARGET= check
33 26
34post-install: 27post-install:
35 ${INSTALL_DATA} ${WRKSRC}/doc/*.txt \ 28 ${INSTALL_DATA} ${WRKSRC}/doc/*.txt \
36 ${DESTDIR}${PREFIX}/share/doc/ffmpeg4 29 ${DESTDIR}${PREFIX}/share/doc/ffmpeg4
37 30
38.include "options.mk" 31.include "options.mk"
39 32
40# disable asm on i386 to avoid text relocations 33# disable asm on i386 to avoid text relocations
41.if ${MACHINE_ARCH} == "i386" 34.if ${MACHINE_ARCH} == "i386"

cvs diff -r1.32 -r1.33 pkgsrc/multimedia/ffmpeg4/Makefile.common (expand / switch to unified diff)

--- pkgsrc/multimedia/ffmpeg4/Makefile.common 2023/06/06 12:41:59 1.32
+++ pkgsrc/multimedia/ffmpeg4/Makefile.common 2024/01/27 02:52:49 1.33
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1# $NetBSD: Makefile.common,v 1.32 2023/06/06 12:41:59 riastradh Exp $ 1# $NetBSD: Makefile.common,v 1.33 2024/01/27 02:52:49 riastradh Exp $
2# used by multimedia/ffmpeg4/Makefile 2# used by multimedia/ffmpeg4/Makefile
3# used by multimedia/ffplay4/Makefile 3# used by multimedia/ffplay4/Makefile
4 4
5DISTNAME= ffmpeg-4.4.4 5DISTNAME= ffmpeg-4.4.4
6CATEGORIES= multimedia 6CATEGORIES= multimedia
7MASTER_SITES= http://www.ffmpeg.org/releases/ 7MASTER_SITES= http://www.ffmpeg.org/releases/
8EXTRACT_SUFX= .tar.xz 8EXTRACT_SUFX= .tar.xz
9 9
10LICENSE= gnu-lgpl-v2.1 AND gnu-gpl-v2 ${ADDITIONAL_LICENSE} 10LICENSE= gnu-lgpl-v2.1 AND gnu-gpl-v2 ${ADDITIONAL_LICENSE}
11 11
12PATCHDIR= ${.CURDIR}/../../multimedia/ffmpeg4/patches 12PATCHDIR= ${.CURDIR}/../../multimedia/ffmpeg4/patches
13 13
14USE_LIBTOOL= yes 14USE_LIBTOOL= yes
@@ -25,26 +25,41 @@ CONFIGURE_ARGS+= --enable-shared @@ -25,26 +25,41 @@ CONFIGURE_ARGS+= --enable-shared
25CONFIGURE_ARGS+= --mandir=${PREFIX}/${PKGMANDIR} 25CONFIGURE_ARGS+= --mandir=${PREFIX}/${PKGMANDIR}
26CONFIGURE_ARGS+= --prefix=${PREFIX} 26CONFIGURE_ARGS+= --prefix=${PREFIX}
27 27
28CONFIGURE_ARGS+= --progs-suffix=4 28CONFIGURE_ARGS+= --progs-suffix=4
29CONFIGURE_ARGS+= --datadir=${PREFIX}/share/ffmpeg4 29CONFIGURE_ARGS+= --datadir=${PREFIX}/share/ffmpeg4
30CONFIGURE_ARGS+= --docdir=${PREFIX}/share/doc/ffmpeg4 30CONFIGURE_ARGS+= --docdir=${PREFIX}/share/doc/ffmpeg4
31CONFIGURE_ARGS+= --incdir=${PREFIX}/include/ffmpeg4 31CONFIGURE_ARGS+= --incdir=${PREFIX}/include/ffmpeg4
32CONFIGURE_ARGS+= --libdir=${PREFIX}/lib/ffmpeg4 32CONFIGURE_ARGS+= --libdir=${PREFIX}/lib/ffmpeg4
33CONFIGURE_ARGS+= --shlibdir=${PREFIX}/lib/ffmpeg4 33CONFIGURE_ARGS+= --shlibdir=${PREFIX}/lib/ffmpeg4
34LDFLAGS+= ${COMPILER_RPATH_FLAG}${PREFIX}/lib/ffmpeg4 34LDFLAGS+= ${COMPILER_RPATH_FLAG}${PREFIX}/lib/ffmpeg4
35# Misuse LDFLAGS because the package doesn't (at least right now) honor LIBS. 35# Misuse LDFLAGS because the package doesn't (at least right now) honor LIBS.
36LDFLAGS.SunOS+= -lrt 36LDFLAGS.SunOS+= -lrt
37 37
 38.if ${USE_CROSS_COMPILE:tl} == yes
 39CONFIGURE_ARGS+= --enable-cross-compile
 40CONFIGURE_ARGS+= --host-cc=${NATIVE_CC:Q}
 41CONFIGURE_ARGS+= --host-ld=${NATIVE_CC:Q}
 42CONFIGURE_ARGS+= --target-os=${LOWER_OPSYS:Q}
 43. include "../../mk/endian.mk"
 44. if ${MACHINE_ENDIAN} == "big"
 45CONFIGURE_ENV+= bigendian=yes
 46. endif
 47. if !empty(MACHINE_ARCH:Mpowerpc*)
 48BUILDLINK_TRANSFORM+= rm:-maltivec
 49BUILDLINK_TRANSFORM+= rm:-mabi=altivec
 50. endif
 51.endif
 52
38.if !empty(MACHINE_PLATFORM:MDarwin-1[2-9].*-*) || !empty(MACHINE_PLATFORM:MDarwin-2*) 53.if !empty(MACHINE_PLATFORM:MDarwin-1[2-9].*-*) || !empty(MACHINE_PLATFORM:MDarwin-2*)
39CONFIGURE_ARGS+= --enable-opencl 54CONFIGURE_ARGS+= --enable-opencl
40.endif 55.endif
41 56
42.if ${OPSYS} == "SunOS" 57.if ${OPSYS} == "SunOS"
43USE_TOOLS+= bash:build 58USE_TOOLS+= bash:build
44CONFIG_SHELL= ${TOOLS_PATH.bash} 59CONFIG_SHELL= ${TOOLS_PATH.bash}
45.endif 60.endif
46 61
47CONFIGURE_ARGS+= --enable-runtime-cpudetect 62CONFIGURE_ARGS+= --enable-runtime-cpudetect
48 63
49# Let's not put garbage into /tmp 64# Let's not put garbage into /tmp
50CONFIGURE_ENV+= TMPDIR=${WRKSRC}/tmp 65CONFIGURE_ENV+= TMPDIR=${WRKSRC}/tmp

cvs diff -r1.31 -r1.32 pkgsrc/multimedia/ffmpeg4/distinfo (expand / switch to unified diff)

--- pkgsrc/multimedia/ffmpeg4/distinfo 2023/08/17 08:56:10 1.31
+++ pkgsrc/multimedia/ffmpeg4/distinfo 2024/01/27 02:52:49 1.32
@@ -1,22 +1,23 @@ @@ -1,22 +1,23 @@
1$NetBSD: distinfo,v 1.31 2023/08/17 08:56:10 jperkin Exp $ 1$NetBSD: distinfo,v 1.32 2024/01/27 02:52:49 riastradh Exp $
2 2
3BLAKE2s (ffmpeg-4.4.4.tar.xz) = b344e5e3ba0cb4c13bfd7a3989aa1f6b8f7443af9ce6c24993ca8627ac5b2a2d 3BLAKE2s (ffmpeg-4.4.4.tar.xz) = b344e5e3ba0cb4c13bfd7a3989aa1f6b8f7443af9ce6c24993ca8627ac5b2a2d
4SHA512 (ffmpeg-4.4.4.tar.xz) = 253799eccd129dad331db85def5352178ae22303e42af47fc013a6adfd4b60d1e59ff5f9ac6118fe3b403affa56ea1f3ba658042f526a914fba27050c3065daf 4SHA512 (ffmpeg-4.4.4.tar.xz) = 253799eccd129dad331db85def5352178ae22303e42af47fc013a6adfd4b60d1e59ff5f9ac6118fe3b403affa56ea1f3ba658042f526a914fba27050c3065daf
5Size (ffmpeg-4.4.4.tar.xz) = 9565584 bytes 5Size (ffmpeg-4.4.4.tar.xz) = 9565584 bytes
6SHA1 (patch-Makefile) = 2d27f218ee49179fdea14bb5c86c506dfb64dbd6 6SHA1 (patch-Makefile) = 2d27f218ee49179fdea14bb5c86c506dfb64dbd6
7SHA1 (patch-configure) = a79b9e2a8fe60d2848239305461a183dda6f3c12 7SHA1 (patch-configure) = a79b9e2a8fe60d2848239305461a183dda6f3c12
8SHA1 (patch-doc_Makefile) = 3b86307323fa565f9ad19c5bcb6ea71d323062fc 8SHA1 (patch-doc_Makefile) = 3b86307323fa565f9ad19c5bcb6ea71d323062fc
9SHA1 (patch-doc_general__contents.texi) = 13704795d2688dc0377a512dc6e65025ad674724 9SHA1 (patch-doc_general__contents.texi) = 13704795d2688dc0377a512dc6e65025ad674724
10SHA1 (patch-doc_indevs.texi) = 066a6ead2132ec05796bdcc000071dfca76d220c 10SHA1 (patch-doc_indevs.texi) = 066a6ead2132ec05796bdcc000071dfca76d220c
11SHA1 (patch-doc_outdevs.texi) = 0a6930b835fb24e0008adeeb6c34990db1e16fc1 11SHA1 (patch-doc_outdevs.texi) = 0a6930b835fb24e0008adeeb6c34990db1e16fc1
12SHA1 (patch-ffbuild_libversion.sh) = 7671eced5a8135a900c2f1d30343fc072ebb84ec 12SHA1 (patch-ffbuild_libversion.sh) = 7671eced5a8135a900c2f1d30343fc072ebb84ec
13SHA1 (patch-libavcodec_x86_mathops.h) = d70bbbfac56cf7d37ef8789ec4a7964ec82a2c7b 13SHA1 (patch-libavcodec_x86_mathops.h) = d70bbbfac56cf7d37ef8789ec4a7964ec82a2c7b
14SHA1 (patch-libavdevice_Makefile) = 526efd20021068245d8904c0d55508a540ae4054 14SHA1 (patch-libavdevice_Makefile) = 526efd20021068245d8904c0d55508a540ae4054
15SHA1 (patch-libavdevice_alldevices.c) = 8f835f8ec7b057ddcd6303bc2178cdb6f4541e2a 15SHA1 (patch-libavdevice_alldevices.c) = 8f835f8ec7b057ddcd6303bc2178cdb6f4541e2a
16SHA1 (patch-libavdevice_sunau.c) = 44dba866c58d508c0f873ffdd9ad8d25c059cc8a 16SHA1 (patch-libavdevice_sunau.c) = 44dba866c58d508c0f873ffdd9ad8d25c059cc8a
17SHA1 (patch-libavdevice_sunau.h) = 2678d87f81e7b3faa42b5cc9814e373c4ad812f6 17SHA1 (patch-libavdevice_sunau.h) = 2678d87f81e7b3faa42b5cc9814e373c4ad812f6
18SHA1 (patch-libavdevice_sunau__dec.c) = d2fc01e941c68ab8b6f5e0b98ee536a32cc56bdc 18SHA1 (patch-libavdevice_sunau__dec.c) = d2fc01e941c68ab8b6f5e0b98ee536a32cc56bdc
19SHA1 (patch-libavdevice_sunau__enc.c) = efe765b99ad6379d0237c619ac0dce41306431be 19SHA1 (patch-libavdevice_sunau__enc.c) = efe765b99ad6379d0237c619ac0dce41306431be
20SHA1 (patch-libavutil_common.h) = d0f1093bc82567807b39dde990ee347f90a082c9 20SHA1 (patch-libavutil_common.h) = d0f1093bc82567807b39dde990ee347f90a082c9
 21SHA1 (patch-libavutil_ppc_cpu.c) = be6ece342b061c3ef9b1836bf55ec4f2e0cdc81b
21SHA1 (patch-libavutil_x86_asm.h) = 8f48f9e8ec08b5176bb40fc0021f3bb913dbef22 22SHA1 (patch-libavutil_x86_asm.h) = 8f48f9e8ec08b5176bb40fc0021f3bb913dbef22
22SHA1 (patch-libavutil_x86_cpu.c) = 9c97e68fde0fcb19741e034a803d509040ea4487 23SHA1 (patch-libavutil_x86_cpu.c) = 9c97e68fde0fcb19741e034a803d509040ea4487

File Added: pkgsrc/multimedia/ffmpeg4/patches/patch-libavutil_ppc_cpu.c
$NetBSD: patch-libavutil_ppc_cpu.c,v 1.1 2024/01/27 02:52:50 riastradh Exp $

Handle machdep.altivec on NetBSD like on OpenBSD.

--- libavutil/ppc/cpu.c.orig	2022-05-14 21:21:50.000000000 +0000
+++ libavutil/ppc/cpu.c
@@ -27,7 +27,7 @@
 #if HAVE_UNISTD_H
 #include <unistd.h>
 #endif
-#elif defined(__OpenBSD__)
+#elif defined(__NetBSD__) || defined(__OpenBSD__)
 #include <sys/param.h>
 #include <sys/sysctl.h>
 #include <machine/cpu.h>
@@ -56,8 +56,8 @@ int ff_get_cpu_flags_ppc(void)
     if (result == VECTORTYPE_ALTIVEC)
         return AV_CPU_FLAG_ALTIVEC;
     return 0;
-#elif defined(__APPLE__) || defined(__OpenBSD__)
-#ifdef __OpenBSD__
+#elif defined(__APPLE__) || defined(__NetBSD__) || defined(__OpenBSD__)
+#if defined(__NetBSD__) || defined(__OpenBSD__)
     int sels[2] = {CTL_MACHDEP, CPU_ALTIVEC};
 #else
     int sels[2] = {CTL_HW, HW_VECTORUNIT};