aboutsummaryrefslogtreecommitdiffstats
path: root/multimedia/gstreamer-ffmpeg/Makefile
blob: 459ac56b3389135d1a2fe782f90d51d5f513aecf (plain) (blame)
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
# Created by: Koop Mast <kwm@rainbow-runner.nl>
# $FreeBSD$
#    $MCom: ports/multimedia/gstreamer-ffmpeg/Makefile,v 1.14 2006/07/20 13:40:27 ahze Exp $

PORTNAME=   gstreamer
PORTVERSION=    0.10.13
PORTREVISION=   2
CATEGORIES= multimedia
MASTER_SITES=   http://gstreamer.freedesktop.org/src/gst-ffmpeg/:ffmpeg \
        http://libav.org/releases/:libav
PKGNAMESUFFIX=  -ffmpeg
DISTFILES=  gst-ffmpeg-${PORTVERSION}.tar.bz2:ffmpeg \
        libav-${LIBAV_VERSION}.tar.xz:libav

MAINTAINER= multimedia@FreeBSD.org
COMMENT=    GStreamer plug-in for manipulating MPEG video streams

LICENSE=    GPLv2

BUILD_DEPENDS=  yasm:${PORTSDIR}/devel/yasm
LIB_DEPENDS=    liborc-0.4.so:${PORTSDIR}/devel/orc

LIBAV_VERSION=  0.7.7
WRKSRC=     ${WRKDIR}/gst-ffmpeg-${PORTVERSION}
USES=       compiler:features gmake libtool pkgconfig
USE_LDCONFIG=   yes
USE_GSTREAMER=  yes
GNU_CONFIGURE=  yes
FFMPEG_CONFIG=  --cc=${CC} \
        --enable-runtime-cpudetect \
        --enable-pic
LDFLAGS+=   -Wl,-Bsymbolic
CONFIGURE_ENV=  PKG_CONFIG=${PKG_CONFIG}

PLIST_SUB=  VERSION="${GST_VERSION}"

PKG_CONFIG?="${LOCALBASE}/bin/pkg-config"
GST_VERSION=${PORTVERSION:C/..$//}

# sse hardware vector support
.if defined(MACHINE_CPU) && (${MACHINE_CPU:Msse} == "sse" || ${MACHINE_CPU:Mamd64} == "amd64")
WITH_BUILTIN_VECTOR=    yes
.else
FFMPEG_CONFIG+= --disable-sse
.endif

# mmx support
.if defined(MACHINE_CPU) && ${MACHINE_CPU:Mmmx} == "" && ${MACHINE_CPU:Mamd64} == ""
FFMPEG_CONFIG+= --disable-mmx
WITHOUT_BUILTIN_VECTOR= yes
.endif

# builtin vector, requires mmx and sse
.if !defined(WITHOUT_BUILTIN_VECTOR) && defined(WITH_BUILTIN_VECTOR)
CFLAGS+=        -msse
.endif

CONFIGURE_ARGS+=    --with-ffmpeg-extra-configure="${FFMPEG_CONFIG}"

.include <bsd.port.pre.mk>

.if ${OSVERSION} < 900033 || ${ARCH} == ia64
BUILD_DEPENDS+= ${LOCALBASE}/bin/as:${PORTSDIR}/devel/binutils
MAKE_ENV=   COMPILER_PATH=${LOCALBASE}/bin
.endif

.if ${ARCH} == powerpc64
FFMPEG_CONFIG+= --arch=ppc64
.endif

.if ${COMPILER_TYPE} == "gcc"
CFLAGS+= -fno-force-addr
.endif

post-patch:
    @${MV} ${WRKSRC}/gst-libs/ext/libav ${WRKSRC}/gst-libs/ext/libav.old
    @${MV} ${WRKDIR}/libav-${LIBAV_VERSION} ${WRKSRC}/gst-libs/ext/libav
    @${CP} ${WRKSRC}/gst-libs/ext/libav.old/config.* \
        ${WRKSRC}/gst-libs/ext/libav/

.include <bsd.port.post.mk>