Add build option for security issues
[platform/upstream/gst-plugins-good.git] / packaging / gst-plugins-good.spec
1 %bcond_with x
2 %define gst_branch 1.0
3
4 Name:           gst-plugins-good
5 Version:        1.12.2
6 Release:        1
7 License:        LGPL-2.1+
8 Summary:        GStreamer Streaming-Media Framework Plug-Ins
9 Url:            http://gstreamer.freedesktop.org/
10 Group:          Multimedia/Framework
11 Source:         http://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-%{version}.tar.xz
12 Source100:      common.tar.gz
13 BuildRequires:  gcc-c++
14 BuildRequires:  gettext-tools
15 BuildRequires:  pkgconfig(glib-2.0) >= 2.32
16 BuildRequires:  pkgconfig(gstreamer-1.0)
17 BuildRequires:  pkgconfig(gstreamer-plugins-base-1.0)
18 BuildRequires:  libjpeg-devel
19 BuildRequires:  orc >= 0.4.16
20 BuildRequires:  python
21 BuildRequires:  xsltproc
22 BuildRequires:  pkgconfig(bzip2)
23 #BuildRequires:  pkgconfig(libpng) >= 1.2
24 BuildRequires:  pkgconfig(libpulse) >= 1.0
25 BuildRequires:  pkgconfig(libsoup-2.4)
26 BuildRequires:  pkgconfig(libxml-2.0) >= 2.4.9
27 # TODO find where process.h comes from, not kernel-devel and not wxWidgets so far.
28 %if %{with x}
29 BuildRequires:  pkgconfig(ice)
30 BuildRequires:  pkgconfig(sm)
31 BuildRequires:  pkgconfig(xdamage)
32 BuildRequires:  pkgconfig(xfixes)
33 # used by libgstvideo4linux2.so
34 BuildRequires:  pkgconfig(xv)
35 %endif
36
37 BuildRequires:  pkgconfig(zlib)
38 %if "%{TIZEN_PRODUCT_TV}" != "1"
39 BuildRequires:  pkgconfig(libv4l2)
40 %endif
41 BuildRequires:  pkgconfig(vconf)
42 Requires:       gst-plugins-base >= 1.0.0
43 Requires:       gstreamer >= 1.0.5
44
45 %description
46 GStreamer is a streaming media framework based on graphs of filters
47 that operate on media data. Applications using this library can do
48 anything media-related, from real-time sound processing to playing
49 videos. Its plug-in-based architecture means that new data types or
50 processing capabilities can be added simply by installing new plug-ins.
51
52 %package extra
53 Summary:        Complementary plugins for %{name}
54 Group:          Productivity/Multimedia/Other
55 Requires:       %{name} = %{version}
56 Enhances:       gst-plugins-good
57
58 %description extra
59 This package provides complementary plugins for
60 %{name}.
61
62 %prep
63 %setup -q -n gst-plugins-good-%{version}
64 %setup -q -T -D -a 100
65
66 %build
67 # FIXME:
68 # warning: failed to load external entity "xml/element-v4l2src-details.xml"
69 # warning: failed to load external entity "xml/plugin-video4linux2.xml"
70 export V=1
71 NOCONFIGURE=1 ./autogen.sh
72 export CFLAGS+=" -DTIZEN_FEATURE_V4L2SRC_SCAN_DEVICE_NODE\
73                 -DTIZEN_FEATURE_V4L2SRC_SUPPORT_CAMERA_ID\
74                 -DTIZEN_FEATURE_WAVPARSE_MODIFICATION\
75                 -DTIZEN_FEATURE_MP3PARSE_MODIFICATION\
76                 -DTIZEN_FEATURE_AACPARSE_MODIFICATION\
77                 -DTIZEN_FEATURE_QTDEMUX_MODIFICATION\
78                 -DTIZEN_FEATURE_FLVDEMUX_MODIFICATION\
79                 -DTIZEN_FEATURE_GST_UPSTREAM\
80                 -DTIZEN_FEATURE_RTSP_MODIFICATION\
81                 -DTIZEN_FEATURE_GST_MUX_ENHANCEMENT\
82                 -DTIZEN_FEATURE_SOUP_MODIFICATION\
83                 -DTIZEN_FEATURE_RGVOLUME_MODIFICATION\
84                 -DTIZEN_FEATURE_BASEPARSE_MODIFICATION\
85                 -fstack-protector-strong\
86                 -Wl,-z,relro\
87                 -D_FORTIFY_SOURCE=2"
88 %configure\
89 %if ! 0%{?ENABLE_AALIB}
90         --disable-aalib\
91 %endif
92 %if "%{TIZEN_PRODUCT_TV}" != "1"
93         --with-libv4l2 \
94 %endif
95         --disable-gtk-doc\
96         --with-gtk=3.0\
97         --disable-monoscope\
98         --disable-y4m\
99         --disable-taglib\
100         --disable-wavpack\
101         --enable-experimental\
102 %if "%{TIZEN_PRODUCT_TV}" == "1"
103         --disable-equalizer\
104         --disable-flv\
105         --disable-videobox\
106         --disable-videomixer\
107 %endif
108         --disable-effectv\
109         --disable-alpha\
110         --disable-auparse\
111         --disable-effectv\
112         --disable-flx\
113         --disable-goom\
114         --disable-goom2k1\
115         --disable-level\
116         --disable-multipart\
117         --disable-smpte\
118         --disable-spectrum\
119         --disable-cutter\
120         --disable-dtmf\
121         --disable-imagefreeze\
122         --disable-oss4\
123         --disable-oss\
124         --disable-shapewipe
125
126 make %{?_smp_mflags} CFLAGS+="-Wno-error" CXXFLAGS+="-Wno-error"
127
128 %install
129 %make_install
130 %find_lang %{name}-%{gst_branch}
131
132 %lang_package -f %{name}-%{gst_branch}
133
134 %files
135 %manifest %{name}.manifest
136 %defattr(-, root, root)
137 %license COPYING
138 %{_libdir}/gstreamer-%{gst_branch}/libgstalaw.so
139 #%{_libdir}/gstreamer-%{gst_branch}/libgstalpha.so
140 #%{_libdir}/gstreamer-%{gst_branch}/libgstalphacolor.so
141 %{_libdir}/gstreamer-%{gst_branch}/libgstapetag.so
142 %{_libdir}/gstreamer-%{gst_branch}/libgstaudiofx.so
143 %{_libdir}/gstreamer-%{gst_branch}/libgstaudioparsers.so
144 #%{_libdir}/gstreamer-%{gst_branch}/libgstauparse.so
145 %{_libdir}/gstreamer-%{gst_branch}/libgstautodetect.so
146 %{_libdir}/gstreamer-%{gst_branch}/libgstavi.so
147 # Not yet ported
148 #%{_libdir}/gstreamer-%{gst_branch}/libgstcutter.so
149 %{_libdir}/gstreamer-%{gst_branch}/libgstdebug.so
150 # Not yet ported
151 %{_libdir}/gstreamer-%{gst_branch}/libgstdeinterlace.so
152 #%{_libdir}/gstreamer-%{gst_branch}/libgsteffectv.so
153
154 #%{_datadir}/gstreamer-%{gst_branch}/presets/GstVP8Enc.prs
155
156 #%{_libdir}/gstreamer-%{gst_branch}/libgstflxdec.so
157 #%{_libdir}/gstreamer-%{gst_branch}/libgstgoom.so
158 #%{_libdir}/gstreamer-%{gst_branch}/libgstgoom2k1.so
159 %{_libdir}/gstreamer-%{gst_branch}/libgsticydemux.so
160 %{_libdir}/gstreamer-%{gst_branch}/libgstid3demux.so
161 #%{_libdir}/gstreamer-%{gst_branch}/libgstimagefreeze.so
162 %{_libdir}/gstreamer-%{gst_branch}/libgstinterleave.so
163 %{_libdir}/gstreamer-%{gst_branch}/libgstisomp4.so
164 %{_libdir}/gstreamer-%{gst_branch}/libgstjpeg.so
165 #%{_libdir}/gstreamer-%{gst_branch}/libgstlevel.so
166 %{_libdir}/gstreamer-%{gst_branch}/libgstmatroska.so
167 #%{_libdir}/gstreamer-%{gst_branch}/libgstmonoscope.so
168 %{_libdir}/gstreamer-%{gst_branch}/libgstmulaw.so
169 %{_libdir}/gstreamer-%{gst_branch}/libgstmultifile.so
170 #%{_libdir}/gstreamer-%{gst_branch}/libgstmultipart.so
171 %{_libdir}/gstreamer-%{gst_branch}/libgstnavigationtest.so
172 #%{_libdir}/gstreamer-%{gst_branch}/libgstoss4audio.so
173 #%{_libdir}/gstreamer-%{gst_branch}/libgstossaudio.so
174 #%{_libdir}/gstreamer-%{gst_branch}/libgstpng.so
175 %{_libdir}/gstreamer-%{gst_branch}/libgstpulseaudio.so
176 %{_libdir}/gstreamer-%{gst_branch}/libgstreplaygain.so
177 %{_libdir}/gstreamer-%{gst_branch}/libgstrtp.so
178 %{_libdir}/gstreamer-%{gst_branch}/libgstrtpmanager.so
179 %{_libdir}/gstreamer-%{gst_branch}/libgstrtsp.so
180 #%{_libdir}/gstreamer-%{gst_branch}/libgstshapewipe.so
181 #%{_libdir}/gstreamer-%{gst_branch}/libgstsmpte.so
182 #%{_libdir}/gstreamer-%{gst_branch}/libgstspectrum.so
183 #%{_libdir}/gstreamer-%{gst_branch}/libgstspeex.so
184 %{_libdir}/gstreamer-%{gst_branch}/libgstudp.so
185 %{_libdir}/gstreamer-%{gst_branch}/libgstvideo4linux2.so
186
187 %{_libdir}/gstreamer-%{gst_branch}/libgstvideocrop.so
188 %{_libdir}/gstreamer-%{gst_branch}/libgstvideofilter.so
189 %if "%{TIZEN_PRODUCT_TV}" != "1"
190 %{_libdir}/gstreamer-%{gst_branch}/libgstflv.so
191 %{_libdir}/gstreamer-%{gst_branch}/libgstequalizer.so
192 %{_datadir}/gstreamer-%{gst_branch}/presets/GstIirEqualizer10Bands.prs
193 %{_datadir}/gstreamer-%{gst_branch}/presets/GstIirEqualizer3Bands.prs
194 %{_datadir}/gstreamer-%{gst_branch}/presets/GstQTMux.prs
195 %{_libdir}/gstreamer-%{gst_branch}/libgstvideobox.so
196 %{_libdir}/gstreamer-%{gst_branch}/libgstvideomixer.so
197 %endif
198 %{_libdir}/gstreamer-%{gst_branch}/libgstwavenc.so
199 %{_libdir}/gstreamer-%{gst_branch}/libgstwavparse.so
200 %if %{with x}
201 %{_libdir}/gstreamer-%{gst_branch}/libgstximagesrc.so
202 %endif
203 #%{_libdir}/gstreamer-%{gst_branch}/libgsty4menc.so
204 #%{_libdir}/gstreamer-%{gst_branch}/libgstcairo.so
205 %{_libdir}/gstreamer-%{gst_branch}/libgstsoup.so
206 #%{_libdir}/gstreamer-%{gst_branch}/libgstflac.so
207 #%{_libdir}/gstreamer-%{gst_branch}/libgstvpx.so
208 #%{_libdir}/gstreamer-%{gst_branch}/libgstdtmf.so
209
210
211 %if 0%{?ENABLE_AALIB}
212 %files extra
213 %manifest %{name}.manifest
214 %defattr(-, root, root)
215 %{_libdir}/gstreamer-%{gst_branch}/libgstaasink.so
216 %endif