blob: 79e5d9b5bcc211639a294c8227833ac0979caf05 (
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
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
|
# $NetBSD: Makefile.common,v 1.44 2022/07/18 15:40:56 wiz Exp $
DISTNAME= gst-plugins-base-1.20.3
MASTER_SITES= https://gstreamer.freedesktop.org/src/gst-plugins-base/
EXTRACT_SUFX= .tar.xz
MAINTAINER= pkgsrc-users@NetBSD.org
HOMEPAGE= https://gstreamer.freedesktop.org/
LICENSE= gnu-gpl-v2
# "error: 'for' loop initial declarations are only allowed in C99 mode"
USE_LANGUAGES= c99 c++
USE_TOOLS+= pkg-config
DISTINFO_FILE= ${.CURDIR}/../../multimedia/gst-plugins1-base/distinfo
PATCHDIR= ${.CURDIR}/../../multimedia/gst-plugins1-base/patches
PKGCONFIG_OVERRIDE= output/pkgconfig/*.pc
PKGCONFIG_OVERRIDE_STAGE= pre-install
PYTHON_VERSIONS_INCOMPATIBLE= 27
PYTHON_FOR_BUILD_ONLY= tool
# grep '^option' meson_options.txt | grep feature | \
# sed -e "s/',.*//g" -e "s/option('//g" | \
# xargs printf 'GST_PLUGINS_SET+=\t%s\n'
GST_PLUGINS_SET+= iso-codes
GST_PLUGINS_SET+= gl
GST_PLUGINS_SET+= gl-graphene
GST_PLUGINS_SET+= gl-jpeg
GST_PLUGINS_SET+= gl-png
GST_PLUGINS_SET+= adder
GST_PLUGINS_SET+= app
GST_PLUGINS_SET+= audioconvert
GST_PLUGINS_SET+= audiomixer
GST_PLUGINS_SET+= audiorate
GST_PLUGINS_SET+= audioresample
GST_PLUGINS_SET+= audiotestsrc
GST_PLUGINS_SET+= compositor
GST_PLUGINS_SET+= encoding
GST_PLUGINS_SET+= gio
GST_PLUGINS_SET+= gio-typefinder
GST_PLUGINS_SET+= overlaycomposition
GST_PLUGINS_SET+= pbtypes
GST_PLUGINS_SET+= playback
GST_PLUGINS_SET+= rawparse
GST_PLUGINS_SET+= subparse
GST_PLUGINS_SET+= tcp
GST_PLUGINS_SET+= typefind
GST_PLUGINS_SET+= videoconvert
GST_PLUGINS_SET+= videorate
GST_PLUGINS_SET+= videoscale
GST_PLUGINS_SET+= videotestsrc
GST_PLUGINS_SET+= volume
GST_PLUGINS_SET+= alsa
GST_PLUGINS_SET+= cdparanoia
GST_PLUGINS_SET+= libvisual
GST_PLUGINS_SET+= ogg
GST_PLUGINS_SET+= opus
GST_PLUGINS_SET+= pango
GST_PLUGINS_SET+= theora
GST_PLUGINS_SET+= tremor
GST_PLUGINS_SET+= vorbis
GST_PLUGINS_SET+= x11
GST_PLUGINS_SET+= xshm
GST_PLUGINS_SET+= xvideo
GST_PLUGINS_SET+= examples
GST_PLUGINS_SET+= tests
GST_PLUGINS_SET+= tools
GST_PLUGINS_SET+= introspection
GST_PLUGINS_SET+= nls
GST_PLUGINS_SET+= orc
GST_PLUGINS_SET+= qt5
GST_PLUGINS_SET+= doc
.for i in ${GST_PLUGINS_SET}
. if !empty(GST_PLUGINS:M${i})
MESON_ARGS+= -D${i}=enabled
. else
MESON_ARGS+= -D${i}=disabled
. endif
.endfor
#
# We need to force meson to only build from the "ext" directory
# when building plugins.
#
.if defined(GST_EXT_BUILD)
GST_EXT_BASEDIR?= ext
GST_PLUGIN_DIRS?= ${GST_PLUGINS}
pre-configure: fix-subdirs
fix-subdirs:
${AWK} -f ${.CURDIR}/../../multimedia/gst-plugins1-base/files/only-build-extensions.awk \
-v basedir=${GST_EXT_BASEDIR} ${WRKSRC}/meson.build > ${WRKSRC}/meson.build.new
${MV} ${WRKSRC}/meson.build.new ${WRKSRC}/meson.build
# Then, we need to append the dependency handling code for the
# libraries which -base itself builds...
. for ext in ${GST_PLUGIN_DIRS}
${CAT} ${.CURDIR}/../../multimedia/gst-plugins1-base/files/base-deps.meson \
${WRKSRC}/${GST_EXT_BASEDIR}/${ext}/meson.build > \
${WRKSRC}/${GST_EXT_BASEDIR}/${ext}/meson.build.new
${MV} ${WRKSRC}/${GST_EXT_BASEDIR}/${ext}/meson.build.new \
${WRKSRC}/${GST_EXT_BASEDIR}/${ext}/meson.build
. endfor
# ... this is a bit nasty compared to BUILD_DIRS...
post-install:
${RM} -f ${DESTDIR}${PREFIX}/lib/pkgconfig/gstreamer-plugins-base-1.0.pc
.endif
.include "../../devel/meson/build.mk"
.include "../../lang/python/tool.mk"
.include "../../devel/zlib/buildlink3.mk"
.include "../../textproc/iso-codes/buildlink3.mk"
BUILDLINK_API_DEPENDS.gstreamer1+= gstreamer1>=1.20.0
.include "../../multimedia/gstreamer1/buildlink3.mk"
|