| @@ -1,84 +1,95 @@ | | | @@ -1,84 +1,95 @@ |
1 | # $NetBSD: Makefile.common,v 1.8 2023/11/13 15:40:34 wiz Exp $ | | 1 | # $NetBSD: Makefile.common,v 1.9 2024/01/26 03:17:31 riastradh Exp $ |
2 | # used by multimedia/ffmpeg5/Makefile | | 2 | # used by multimedia/ffmpeg5/Makefile |
3 | # used by multimedia/ffplay5/Makefile | | 3 | # used by multimedia/ffplay5/Makefile |
4 | | | 4 | |
5 | DISTNAME= ffmpeg-5.1.4 | | 5 | DISTNAME= ffmpeg-5.1.4 |
6 | CATEGORIES= multimedia | | 6 | CATEGORIES= multimedia |
7 | MASTER_SITES= http://www.ffmpeg.org/releases/ | | 7 | MASTER_SITES= http://www.ffmpeg.org/releases/ |
8 | EXTRACT_SUFX= .tar.xz | | 8 | EXTRACT_SUFX= .tar.xz |
9 | | | 9 | |
10 | LICENSE= gnu-lgpl-v2.1 AND gnu-gpl-v2 ${ADDITIONAL_LICENSE} | | 10 | LICENSE= gnu-lgpl-v2.1 AND gnu-gpl-v2 ${ADDITIONAL_LICENSE} |
11 | | | 11 | |
12 | PATCHDIR= ${.CURDIR}/../../multimedia/ffmpeg5/patches | | 12 | PATCHDIR= ${.CURDIR}/../../multimedia/ffmpeg5/patches |
13 | | | 13 | |
14 | USE_LIBTOOL= yes | | 14 | USE_LIBTOOL= yes |
15 | USE_TOOLS+= gmake pod2man perl pkg-config | | 15 | USE_TOOLS+= gmake pod2man perl pkg-config |
16 | HAS_CONFIGURE= yes | | 16 | HAS_CONFIGURE= yes |
17 | CONFIGURE_ARGS+= --cc=${CC:Q} | | 17 | CONFIGURE_ARGS+= --cc=${CC:Q} |
18 | CONFIGURE_ARGS+= --disable-debug | | 18 | CONFIGURE_ARGS+= --disable-debug |
19 | CONFIGURE_ARGS+= --disable-optimizations | | 19 | CONFIGURE_ARGS+= --disable-optimizations |
20 | CONFIGURE_ARGS+= --disable-stripping | | 20 | CONFIGURE_ARGS+= --disable-stripping |
21 | CONFIGURE_ARGS+= --enable-gpl | | 21 | CONFIGURE_ARGS+= --enable-gpl |
22 | CONFIGURE_ARGS+= --enable-libxml2 | | 22 | CONFIGURE_ARGS+= --enable-libxml2 |
23 | CONFIGURE_ARGS+= --enable-pthreads | | 23 | CONFIGURE_ARGS+= --enable-pthreads |
24 | CONFIGURE_ARGS+= --enable-shared | | 24 | CONFIGURE_ARGS+= --enable-shared |
25 | CONFIGURE_ARGS+= --mandir=${PREFIX}/${PKGMANDIR} | | 25 | CONFIGURE_ARGS+= --mandir=${PREFIX}/${PKGMANDIR} |
26 | CONFIGURE_ARGS+= --prefix=${PREFIX} | | 26 | CONFIGURE_ARGS+= --prefix=${PREFIX} |
27 | CONFIGURE_ARGS+= --progs-suffix=5 | | 27 | CONFIGURE_ARGS+= --progs-suffix=5 |
28 | | | 28 | |
29 | CONFIGURE_ARGS+= --enable-runtime-cpudetect | | 29 | CONFIGURE_ARGS+= --enable-runtime-cpudetect |
30 | CONFIGURE_ARGS+= --datadir=${PREFIX}/share/ffmpeg5 | | 30 | CONFIGURE_ARGS+= --datadir=${PREFIX}/share/ffmpeg5 |
31 | CONFIGURE_ARGS+= --docdir=${PREFIX}/share/doc/ffmpeg5 | | 31 | CONFIGURE_ARGS+= --docdir=${PREFIX}/share/doc/ffmpeg5 |
32 | CONFIGURE_ARGS+= --incdir=${PREFIX}/include/ffmpeg5 | | 32 | CONFIGURE_ARGS+= --incdir=${PREFIX}/include/ffmpeg5 |
33 | CONFIGURE_ARGS+= --libdir=${PREFIX}/lib/ffmpeg5 | | 33 | CONFIGURE_ARGS+= --libdir=${PREFIX}/lib/ffmpeg5 |
34 | CONFIGURE_ARGS+= --shlibdir=${PREFIX}/lib/ffmpeg5 | | 34 | CONFIGURE_ARGS+= --shlibdir=${PREFIX}/lib/ffmpeg5 |
35 | LDFLAGS+= ${COMPILER_RPATH_FLAG}${PREFIX}/lib/ffmpeg5 | | 35 | LDFLAGS+= ${COMPILER_RPATH_FLAG}${PREFIX}/lib/ffmpeg5 |
36 | | | 36 | |
| | | 37 | .if ${USE_CROSS_COMPILE:U:tl} == yes |
| | | 38 | CONFIGURE_ARGS+= --enable-cross-compile |
| | | 39 | CONFIGURE_ARGS+= --host-cc=${NATIVE_CC:Q} |
| | | 40 | CONFIGURE_ARGS+= --host-ld=${NATIVE_CC:Q} |
| | | 41 | CONFIGURE_ARGS+= --target-os=${LOWER_OPSYS:Q} |
| | | 42 | . include "../../mk/endian.mk" |
| | | 43 | . if ${MACHINE_ENDIAN} == "big" |
| | | 44 | CONFIGURE_ENV+= bigendian=yes |
| | | 45 | . endif |
| | | 46 | .endif |
| | | 47 | |
37 | .if !empty(MACHINE_PLATFORM:MDarwin-1[2-9].*-*) || !empty(MACHINE_PLATFORM:MDarwin-2*) | | 48 | .if !empty(MACHINE_PLATFORM:MDarwin-1[2-9].*-*) || !empty(MACHINE_PLATFORM:MDarwin-2*) |
38 | CONFIGURE_ARGS+= --enable-opencl | | 49 | CONFIGURE_ARGS+= --enable-opencl |
39 | .endif | | 50 | .endif |
40 | | | 51 | |
41 | .if ${OPSYS} == "SunOS" | | 52 | .if ${OPSYS} == "SunOS" |
42 | USE_TOOLS+= bash:build | | 53 | USE_TOOLS+= bash:build |
43 | CONFIG_SHELL= ${TOOLS_PATH.bash} | | 54 | CONFIG_SHELL= ${TOOLS_PATH.bash} |
44 | .endif | | 55 | .endif |
45 | | | 56 | |
46 | # Let's not put garbage into /tmp | | 57 | # Let's not put garbage into /tmp |
47 | CONFIGURE_ENV+= TMPDIR=${WRKSRC}/tmp | | 58 | CONFIGURE_ENV+= TMPDIR=${WRKSRC}/tmp |
48 | | | 59 | |
49 | .include "../../mk/compiler.mk" | | 60 | .include "../../mk/compiler.mk" |
50 | | | 61 | |
51 | .if !empty(PKGSRC_COMPILER:Msunpro) | | 62 | .if !empty(PKGSRC_COMPILER:Msunpro) |
52 | SUBST_CLASSES+= sunwspro | | 63 | SUBST_CLASSES+= sunwspro |
53 | SUBST_MESSAGE.sunwspro= Fixing compiler options for SunStudio C compiler. | | 64 | SUBST_MESSAGE.sunwspro= Fixing compiler options for SunStudio C compiler. |
54 | SUBST_STAGE.sunwspro= post-configure | | 65 | SUBST_STAGE.sunwspro= post-configure |
55 | SUBST_FILES.sunwspro= config.mak | | 66 | SUBST_FILES.sunwspro= config.mak |
56 | SUBST_SED.sunwspro= -e "s/-O /-KPIC -DPIC /" | | 67 | SUBST_SED.sunwspro= -e "s/-O /-KPIC -DPIC /" |
57 | SUBST_SED.sunwspro+= -e "s/-O3/-xO2/g" | | 68 | SUBST_SED.sunwspro+= -e "s/-O3/-xO2/g" |
58 | SUBST_SED.sunwspro+= -e "s/-std=c99/-xc99=all/" | | 69 | SUBST_SED.sunwspro+= -e "s/-std=c99/-xc99=all/" |
59 | SUBST_SED.sunwspro+= -e "s/-Wl,-rpath-link,/-L /g" | | 70 | SUBST_SED.sunwspro+= -e "s/-Wl,-rpath-link,/-L /g" |
60 | .endif | | 71 | .endif |
61 | | | 72 | |
62 | .if ${MACHINE_ARCH} == x86_64 || ${MACHINE_ARCH} == i386 | | 73 | .if ${MACHINE_ARCH} == x86_64 || ${MACHINE_ARCH} == i386 |
63 | TOOL_DEPENDS+= nasm>=2.13:../../devel/nasm | | 74 | TOOL_DEPENDS+= nasm>=2.13:../../devel/nasm |
64 | .endif | | 75 | .endif |
65 | | | 76 | |
66 | REPLACE_PERL+= doc/texi2pod.pl | | 77 | REPLACE_PERL+= doc/texi2pod.pl |
67 | REPLACE_SH+= configure | | 78 | REPLACE_SH+= configure |
68 | REPLACE_SH+= ffbuild/pkgconfig_generate.sh | | 79 | REPLACE_SH+= ffbuild/pkgconfig_generate.sh |
69 | REPLACE_SH+= ffbuild/version.sh | | 80 | REPLACE_SH+= ffbuild/version.sh |
70 | | | 81 | |
71 | PLIST_SRC+= ${PKGDIR}/PLIST | | 82 | PLIST_SRC+= ${PKGDIR}/PLIST |
72 | | | 83 | |
73 | MAKE_ENV+= EXTRA_LIBS=${LIBGETOPT:Q} | | 84 | MAKE_ENV+= EXTRA_LIBS=${LIBGETOPT:Q} |
74 | | | 85 | |
75 | pre-configure: | | 86 | pre-configure: |
76 | ${MKDIR} ${WRKSRC}/tmp | | 87 | ${MKDIR} ${WRKSRC}/tmp |
77 | | | 88 | |
78 | .include "../../archivers/bzip2/buildlink3.mk" | | 89 | .include "../../archivers/bzip2/buildlink3.mk" |
79 | .include "../../archivers/xz/buildlink3.mk" | | 90 | .include "../../archivers/xz/buildlink3.mk" |
80 | .include "../../devel/libgetopt/buildlink3.mk" | | 91 | .include "../../devel/libgetopt/buildlink3.mk" |
81 | .include "../../devel/zlib/buildlink3.mk" | | 92 | .include "../../devel/zlib/buildlink3.mk" |
82 | .include "../../textproc/libxml2/buildlink3.mk" | | 93 | .include "../../textproc/libxml2/buildlink3.mk" |
83 | .include "../../mk/atomic64.mk" | | 94 | .include "../../mk/atomic64.mk" |
84 | .include "../../mk/pthread.buildlink3.mk" | | 95 | .include "../../mk/pthread.buildlink3.mk" |