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
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
|
# -*- Mode: Python -*- vi:si:et:sw=4:sts=4:ts=4:syntax=python
class Recipe(recipe.Recipe):
name = 'gst-plugins-good-1.0'
version = '1.7'
licenses = [License.LGPLv2Plus]
config_sh = 'sh ./autogen.sh --noconfigure && ./configure'
configure_options = '--disable-examples --disable-oss4 --disable-oss --disable-dv1394 --disable-aalib --disable-libcaca --disable-jack --disable-shout2 '
remotes = {'origin': 'git://anongit.freedesktop.org/gstreamer/gst-plugins-good'}
commit = '1.7.90'
deps = ['gstreamer-1.0', 'gst-plugins-base-1.0', 'libjpeg-turbo', 'libpng',
'speex', 'gdk-pixbuf', 'libsoup',
'orc', 'wavpack', 'flac', 'taglib', 'bzip2', 'zlib',
'libvpx', 'libdv', 'cairo']
files_lang = ['gst-plugins-good-1.0']
files_plugins_core = [
'lib/gstreamer-1.0/libgstautodetect%(mext)s',
'lib/gstreamer-1.0/libgstvideofilter%(mext)s',
]
files_plugins_effects = [
'lib/gstreamer-1.0/libgstalpha%(mext)s',
'lib/gstreamer-1.0/libgstalphacolor%(mext)s',
'lib/gstreamer-1.0/libgstaudiofx%(mext)s',
'lib/gstreamer-1.0/libgstcairo%(mext)s',
'lib/gstreamer-1.0/libgstcutter%(mext)s',
'lib/gstreamer-1.0/libgstdebug%(mext)s',
'lib/gstreamer-1.0/libgstdeinterlace%(mext)s',
'lib/gstreamer-1.0/libgstdtmf%(mext)s',
'lib/gstreamer-1.0/libgsteffectv%(mext)s',
'lib/gstreamer-1.0/libgstequalizer%(mext)s',
'lib/gstreamer-1.0/libgstgdkpixbuf%(mext)s',
'lib/gstreamer-1.0/libgstimagefreeze%(mext)s',
'lib/gstreamer-1.0/libgstinterleave%(mext)s',
'lib/gstreamer-1.0/libgstlevel%(mext)s',
'lib/gstreamer-1.0/libgstmultifile%(mext)s',
'lib/gstreamer-1.0/libgstreplaygain%(mext)s',
'lib/gstreamer-1.0/libgstshapewipe%(mext)s',
'lib/gstreamer-1.0/libgstsmpte%(mext)s',
'lib/gstreamer-1.0/libgstspectrum%(mext)s',
'lib/gstreamer-1.0/libgstvideobox%(mext)s',
'lib/gstreamer-1.0/libgstvideocrop%(mext)s',
'lib/gstreamer-1.0/libgstvideomixer%(mext)s',
]
files_plugins_codecs = [
'lib/gstreamer-1.0/libgstalaw%(mext)s',
'lib/gstreamer-1.0/libgstapetag%(mext)s',
'lib/gstreamer-1.0/libgstaudioparsers%(mext)s',
'lib/gstreamer-1.0/libgstauparse%(mext)s',
'lib/gstreamer-1.0/libgstavi%(mext)s',
'lib/gstreamer-1.0/libgstdv%(mext)s',
'lib/gstreamer-1.0/libgstflac%(mext)s',
'lib/gstreamer-1.0/libgstflv%(mext)s',
'lib/gstreamer-1.0/libgstflxdec%(mext)s',
'lib/gstreamer-1.0/libgsticydemux%(mext)s',
'lib/gstreamer-1.0/libgstid3demux%(mext)s',
'lib/gstreamer-1.0/libgstisomp4%(mext)s',
'lib/gstreamer-1.0/libgstjpeg%(mext)s',
'lib/gstreamer-1.0/libgstmatroska%(mext)s',
'lib/gstreamer-1.0/libgstmulaw%(mext)s',
'lib/gstreamer-1.0/libgstmultipart%(mext)s',
'lib/gstreamer-1.0/libgstpng%(mext)s',
'lib/gstreamer-1.0/libgstspeex%(mext)s',
'lib/gstreamer-1.0/libgsttaglib%(mext)s',
'lib/gstreamer-1.0/libgstvpx%(mext)s',
'lib/gstreamer-1.0/libgstwavenc%(mext)s',
'lib/gstreamer-1.0/libgstwavpack%(mext)s',
'lib/gstreamer-1.0/libgstwavparse%(mext)s',
'lib/gstreamer-1.0/libgsty4menc%(mext)s',
]
files_plugins_net = [
'lib/gstreamer-1.0/libgstrtsp%(mext)s',
'lib/gstreamer-1.0/libgstrtp%(mext)s',
'lib/gstreamer-1.0/libgstrtpmanager%(mext)s',
'lib/gstreamer-1.0/libgstsouphttpsrc%(mext)s',
'lib/gstreamer-1.0/libgstudp%(mext)s',
]
files_plugins_vis = [
'lib/gstreamer-1.0/libgstgoom%(mext)s',
'lib/gstreamer-1.0/libgstgoom2k1%(mext)s',
]
files_plugins_capture = []
files_plugins_sys = []
platform_files_plugins_sys = {
Platform.WINDOWS: [
'lib/gstreamer-1.0/libgstdirectsoundsink%(mext)s',
],
Platform.DARWIN: [
'lib/gstreamer-1.0/libgstosxaudio%(mext)s',
'lib/gstreamer-1.0/libgstosxvideosink%(mext)s',
],
Platform.IOS: [
'lib/gstreamer-1.0/libgstosxaudio%(mext)s'
]
}
def prepare(self):
# The second detail is to work around use of deprecated NSOpenGLPFAFullScreen on OS X 10.10
self.append_env['CFLAGS'] = " -Wno-error -Wno-error=deprecated-declarations -DGSTREAMER_GLIB_COCOA_NSAPPLICATION=1 -DLIBSOUP_DOES_NOT_STEAL_OUR_CONTEXT=1 "
self.append_env['OBJCFLAGS'] = " -Wno-error -DGSTREAMER_GLIB_COCOA_NSAPPLICATION=1 "
self.append_env['CXXFLAGS'] = " -Wno-error -Wno-error=deprecated-declarations "
self.append_env['CPPFLAGS'] = " -Wno-error -Wno-error=deprecated-declarations "
if self.config.target_platform != Platform.LINUX:
self.configure_options += ' --disable-gtk-doc '
if self.config.target_platform == Platform.WINDOWS:
self.configure_options += ' --disable-aalib --disable-esd '
if self.config.target_platform == Platform.LINUX:
self.use_system_libs = True
if self.config.variants.v4l2:
self.files_plugins_capture += ['lib/gstreamer-1.0/libgstvideo4linux2%(mext)s']
else:
self.configure_options += ' --disable-gst_v4l2'
if self.config.variants.x11:
self.files_plugins_capture += ['lib/gstreamer-1.0/libgstximagesrc%(mext)s']
else:
self.configure_options += ' --disable-x --disable-xvideo'
if self.config.variants.pulse:
self.files_plugins_sys += ['lib/gstreamer-1.0/libgstpulse%(mext)s']
else:
self.configure_options += ' --disable-pulse'
if self.config.variants.nodebug:
self.append_env['CFLAGS'] += ' -DGST_LEVEL_MAX=GST_LEVEL_FIXME'
|