summaryrefslogtreecommitdiff
path: root/multimedia/ffmpeg3/Makefile.common
blob: d4866a8aa1586d9f510f9011f33a7237c070b6c0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
# $NetBSD: Makefile.common,v 1.16 2017/02/11 09:12:42 adam Exp $
# used by multimedia/ffmpeg3/Makefile
# used by multimedia/ffplay3/Makefile

DISTNAME=	ffmpeg-3.2.4
CATEGORIES=	multimedia
MASTER_SITES=	http://www.ffmpeg.org/releases/
EXTRACT_SUFX=	.tar.bz2

LICENSE=	gnu-lgpl-v2.1 AND gnu-gpl-v2

PATCHDIR=	${.CURDIR}/../../multimedia/ffmpeg3/patches

USE_LANGUAGES=		c99
USE_LIBTOOL=		yes
USE_TOOLS+=		gmake pod2man perl
HAS_CONFIGURE=		yes
CONFIGURE_ARGS+=	--cc=${CC:Q}
CONFIGURE_ARGS+=	--disable-debug
CONFIGURE_ARGS+=	--disable-optimizations
CONFIGURE_ARGS+=	--disable-stripping
CONFIGURE_ARGS+=	--enable-shared
CONFIGURE_ARGS+=	--enable-pthreads
CONFIGURE_ARGS+=	--enable-gpl
CONFIGURE_ARGS+=	--mandir=${PREFIX}/${PKGMANDIR}
CONFIGURE_ARGS+=	--prefix=${PREFIX}

CONFIGURE_ARGS+=	--progs-suffix=3
CONFIGURE_ARGS+=	--datadir=${PREFIX}/share/ffmpeg3
CONFIGURE_ARGS+=	--docdir=${PREFIX}/share/doc/ffmpeg3
CONFIGURE_ARGS+=	--incdir=${PREFIX}/include/ffmpeg3
CONFIGURE_ARGS+=	--libdir=${PREFIX}/lib/ffmpeg3
CONFIGURE_ARGS+=	--shlibdir=${PREFIX}/lib/ffmpeg3
LDFLAGS+=		${COMPILER_RPATH_FLAG}${PREFIX}/lib/ffmpeg3

PLIST_VARS+=		opencl

.if !empty(MACHINE_PLATFORM:MDarwin-1[2-9].*-*)
CONFIGURE_ARGS+=	--enable-opencl
PLIST.opencl=		yes
.endif

.if ${OPSYS} == "SunOS"
USE_TOOLS+=	bash:build
CONFIG_SHELL=	${TOOLS_PATH.bash}
.endif

CONFIGURE_ARGS+=	--enable-runtime-cpudetect

# No posix_memalign() in NetBSD 4.0 and earlier
.if !empty(MACHINE_PLATFORM:MNetBSD-[1-4].*-*)
CONFIGURE_ARGS+=	--enable-memalign-hack
.endif

# Let's not put garbage into /tmp
CONFIGURE_ENV+=		TMPDIR=${WRKSRC}/tmp

.include "../../mk/compiler.mk"

.if ${OPSYS} == "SunOS" && empty(CC_VERSION:Mgcc*)
SUBST_CLASSES+=		sunwspro
SUBST_MESSAGE.sunwspro=	Fixing compiler options for SunStudio C compiler.
SUBST_STAGE.sunwspro=	post-configure
SUBST_FILES.sunwspro=	config.mak
SUBST_SED.sunwspro=	-e "s/-O /-KPIC -DPIC /"
SUBST_SED.sunwspro+=	-e "s/-O3/-xO2/g"
SUBST_SED.sunwspro+=	-e "s/-std=c99/-xc99=all/"
SUBST_SED.sunwspro+=	-e "s/-Wl,-rpath-link,/-L /g"
.endif

BUILD_DEPENDS+=	yasm>=0.7.2:../../devel/yasm

REPLACE_PERL+=	doc/texi2pod.pl
REPLACE_SH+=	configure version.sh

SUBST_CLASSES+=		conf
SUBST_STAGE.conf=	post-patch
SUBST_FILES.conf=	ffserver.c
SUBST_SED.conf=		-e 's,/etc/ffserver.conf,${PKG_SYSCONFDIR}/ffserver.conf,g'
SUBST_MESSAGE.conf=	Fixing configuration path.

PLIST_SRC+=	${PKGDIR}/PLIST

MAKE_ENV+=	EXTRA_LIBS=${LIBGETOPT:Q}

pre-configure:
	mkdir ${WRKSRC}/tmp

.include "../../archivers/bzip2/buildlink3.mk"
.include "../../archivers/xz/buildlink3.mk"
.include "../../devel/libgetopt/buildlink3.mk"
.include "../../devel/zlib/buildlink3.mk"
.include "../../mk/pthread.buildlink3.mk"
.include "../../mk/bsd.pkg.mk"