Enable opus plugin
[platform/upstream/gst-plugins-base.git] / packaging / gst-plugins-base.spec
1 %bcond_with x
2 %define gst_branch 1.0
3 %define _lib_gstreamer_dir %{_libdir}/gstreamer-%{gst_branch}
4 %define _libdebug_dir %{_libdir}/debug/usr/lib
5
6 Name:           gst-plugins-base
7 Version:        1.16.2
8 Release:        5
9 License:        LGPL-2.0+
10 Summary:        GStreamer Streaming-Media Framework Plug-Ins
11 Url:            http://gstreamer.freedesktop.org/
12 Group:          Multimedia/Framework
13 Source:         http://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-%{version}.tar.xz
14 Source100:      common.tar.gz
15 BuildRequires:  gettext-tools
16 BuildRequires:  pkgconfig(glib-2.0) >= 2.32
17 BuildRequires:  pkgconfig(gstreamer-1.0)
18 BuildRequires:  orc >= 0.4.16
19 BuildRequires:  python
20 %if "%{tizen_profile_name}" != "tv"
21 BuildRequires:  update-desktop-files
22 %endif
23 BuildRequires:  pkgconfig(gobject-introspection-1.0) >= 1.31.1
24 BuildRequires:  pkgconfig(alsa) >= 0.9.1
25 BuildRequires:  pkgconfig(freetype2) >= 2.0.9
26 BuildRequires:  pkgconfig(libxml-2.0)
27 BuildRequires:  pkgconfig(ogg) >= 1.0
28 BuildRequires:  pkgconfig(theoradec) >= 1.1
29 BuildRequires:  pkgconfig(theoraenc) >= 1.1
30 BuildRequires:  pkgconfig(vorbis) >= 1.0
31 BuildRequires:  pkgconfig(vorbisenc) >= 1.0
32 BuildRequires:  pkgconfig(zlib)
33
34 BuildRequires:  pkgconfig(libdrm)
35 BuildRequires:  pkgconfig(libtbm)
36 BuildRequires:  pkgconfig(opus)
37 %if %{with x}
38 BuildRequires:  pkgconfig(ice)
39 BuildRequires:  pkgconfig(sm)
40 BuildRequires:  pkgconfig(xext)
41 BuildRequires:  pkgconfig(xv)
42 BuildRequires:  pkgconfig(xfixes)
43 BuildRequires:  pkgconfig(dri2proto)
44 BuildRequires:  pkgconfig(libdri2)
45 %endif
46
47 Requires:       gstreamer >= 1.0.0
48 Requires:       pkgconfig(opus)
49 Supplements:    gstreamer
50 Provides:       %{name}-profile_tv = %{version}-%{release}
51 Provides:       %{name}-profile_common = %{version}-%{release}
52 Provides:       %{name}-profile_wearable = %{version}-%{release}
53 Provides:       %{name}-profile_ivi = %{version}-%{release}
54
55 %description
56 GStreamer is a streaming media framework based on graphs of filters
57 that operate on media data. Applications using this library can do
58 anything media-related, from real-time sound processing to playing
59 videos. Its plug-in-based architecture means that new data types or
60 processing capabilities can be added simply by installing new plug-ins.
61
62 %package extension-adder
63 Summary:        libgstadder.so for gst-plugins-base
64 Requires:   %{name} = %{version}-%{release}
65 Provides:   %{name}-profile_mobile = %{version}-%{release}
66 %description extension-adder
67 Libgstadder.so for gst-plugin-base. Supplicant for gst-plugin-base.
68 This is for Tizen mobile profile.
69
70 %package devel
71 Summary:        Include files and Libraries
72 Requires:       %{name} = %{version}
73
74 %description devel
75 This package contains all necessary include files and libraries needed
76 to compile and link applications that use gstreamer-plugins-base.
77
78 %prep
79 %setup -q -n gst-plugins-base-%{version}
80 %setup -q -T -D -a 100
81
82 %build
83 # FIXME: GTKDOC_CFLAGS, GST_OBJ_CFLAGS:
84 # Silently ignored compilation of uninstalled gtk-doc scanners without RPM_OPT_FLAGS.
85 export V=1
86 NOCONFIGURE=1 ./autogen.sh
87 export CFLAGS="%{optflags} -fno-strict-aliasing\
88  -DTIZEN_FEATURE_WAYLAND_ENHANCEMENT\
89  -DTIZEN_FEATURE_TYPEFIND_ENHANCEMENT\
90  -DTIZEN_FEATURE_AUDIODECODER_MODIFICATION\
91  -DTIZEN_FEATURE_DISABLE_MIME_TYPES\
92  -DTIZEN_FEATURE_VIDEO_MODIFICATION\
93  -DTIZEN_FEATURE_SUBPARSE_MODIFICATION\
94  -DTIZEN_FEATURE_VOLUME_MODIFICATION\
95  -DTIZEN_FEATURE_FORCE_SW_DECODER\
96 %if "%{tizen_profile_name}" == "tv"
97  -DTIZEN_PROFILE_TV\
98  -DTIZEN_FEATURE_TRUSTZONE\
99 %else
100  -DTIZEN_FEATURE_RESOURCE_MANAGER\
101 %endif
102  -fstack-protector-strong\
103  -Wl,-z,relro\
104  -D_FORTIFY_SOURCE=2\
105  "
106 %configure\
107         --disable-static\
108         --enable-experimental\
109         --disable-gtk-doc\
110         --enable-introspection\
111         --disable-encoding\
112         --disable-examples\
113         --disable-audiomixer\
114         --disable-compositor\
115 %if "%{tizen_profile_name}" == "tv"
116         --enable-tv\
117 %endif
118         --enable-tbm
119 make %{?_smp_mflags}
120
121 %install
122 rm -rf %{buildroot}
123 %make_install
124 %find_lang %{name}-%{gst_branch}
125 mv %{name}-%{gst_branch}.lang %{name}.lang
126 rm -rf %{buildroot}%{_libdir}/girepository-%{gst_branch}/*.typelib
127
128 %post -p /sbin/ldconfig
129
130 %postun -p /sbin/ldconfig
131
132 %lang_package
133
134 %files
135 %manifest %{name}.manifest
136 %defattr(-, root, root)
137 %license COPYING
138
139 %{_lib_gstreamer_dir}/libgstalsa.so
140 %{_lib_gstreamer_dir}/libgstapp.so
141 %{_lib_gstreamer_dir}/libgstaudioconvert.so
142 %{_lib_gstreamer_dir}/libgstaudiorate.so
143 %{_lib_gstreamer_dir}/libgstaudioresample.so
144 %{_lib_gstreamer_dir}/libgstaudiotestsrc.so
145 %{_lib_gstreamer_dir}/libgstgio.so
146 %{_lib_gstreamer_dir}/libgstogg.so
147 %{_lib_gstreamer_dir}/libgstplayback.so
148 %{_lib_gstreamer_dir}/libgstoverlaycomposition.so
149 %{_lib_gstreamer_dir}/libgstsubparse.so
150 %{_lib_gstreamer_dir}/libgsttcp.so
151 %{_lib_gstreamer_dir}/libgsttheora.so
152 %{_lib_gstreamer_dir}/libgsttypefindfunctions.so
153 %{_lib_gstreamer_dir}/libgstvideoconvert.so
154 %{_lib_gstreamer_dir}/libgstvideorate.so
155 %{_lib_gstreamer_dir}/libgstvideoscale.so
156 %{_lib_gstreamer_dir}/libgstvideotestsrc.so
157 %{_lib_gstreamer_dir}/libgstvolume.so
158 %{_lib_gstreamer_dir}/libgstvorbis.so
159 %{_lib_gstreamer_dir}/libgstpbtypes.so
160 %{_lib_gstreamer_dir}/libgstrawparse.so
161 %{_lib_gstreamer_dir}/libgstopus.so
162
163 %if %{with x}
164 %{_lib_gstreamer_dir}/libgstximagesink.so
165 %{_lib_gstreamer_dir}/libgstxvimagesink.so
166 %endif
167
168 %{_libdir}/libgstapp*.so.*
169 %{_libdir}/libgstaudio*.so.*
170 %{_libdir}/libgstallocators*.so.*
171 %{_libdir}/libgstfft*.so.*
172 %{_libdir}/libgstpbutils*.so.*
173 %{_libdir}/libgstriff*.so.*
174 %{_libdir}/libgstrtp*.so.*
175 %{_libdir}/libgstrtsp*.so.*
176 %{_libdir}/libgstsdp*.so.*
177 %{_libdir}/libgsttag*.so.*
178 %{_libdir}/libgstvideo*.so.*
179 %dir %{_datadir}/gst-plugins-base/
180 %dir %{_datadir}/gst-plugins-base/%{gst_branch}/
181 %{_datadir}/gst-plugins-base/%{gst_branch}/license-translations.dict
182
183 %files extension-adder
184 %{_lib_gstreamer_dir}/libgstadder.so
185 %license COPYING
186
187 %files devel
188 %manifest %{name}.manifest
189 %defattr(-, root, root)
190 %{_includedir}/gstreamer-%{gst_branch}/*
191 %{_libdir}/*.so
192 %{_libdir}/pkgconfig/*.pc
193 %{_datadir}/gir-1.0/*.gir