Remove Profile Build Dependency (TV)
[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.6.1
8 Release:        10
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 BuildRequires:  update-desktop-files
21 BuildRequires:  pkgconfig(gobject-introspection-1.0) >= 1.31.1
22 BuildRequires:  pkgconfig(alsa) >= 0.9.1
23 BuildRequires:  pkgconfig(freetype2) >= 2.0.9
24 BuildRequires:  pkgconfig(libxml-2.0)
25 BuildRequires:  pkgconfig(ogg) >= 1.0
26 BuildRequires:  pkgconfig(theoradec) >= 1.1
27 BuildRequires:  pkgconfig(theoraenc) >= 1.1
28 BuildRequires:  pkgconfig(vorbis) >= 1.0
29 BuildRequires:  pkgconfig(vorbisenc) >= 1.0
30 BuildRequires:  pkgconfig(zlib)
31
32 BuildRequires:  pkgconfig(libdrm)
33 BuildRequires:  pkgconfig(libtbm)
34 BuildRequires:  pkgconfig(mm-common)
35 %if %{with x}
36 BuildRequires:  pkgconfig(ice)
37 BuildRequires:  pkgconfig(sm)
38 BuildRequires:  pkgconfig(xext)
39 BuildRequires:  pkgconfig(xv)
40 BuildRequires:  pkgconfig(xfixes)
41 BuildRequires:  pkgconfig(dri2proto)
42 BuildRequires:  pkgconfig(libdri2)
43 %endif
44
45 Requires:       gstreamer >= 1.0.0
46 Supplements:    gstreamer
47 Provides:       %{name}-profile_tv = %{version}-%{release}
48 Provides:       %{name}-profile_common = %{version}-%{release}
49 Provides:       %{name}-profile_wearable = %{version}-%{release}
50 Provides:       %{name}-profile_ivi = %{version}-%{release}
51
52 %description
53 GStreamer is a streaming media framework based on graphs of filters
54 that operate on media data. Applications using this library can do
55 anything media-related, from real-time sound processing to playing
56 videos. Its plug-in-based architecture means that new data types or
57 processing capabilities can be added simply by installing new plug-ins.
58
59 %package extension-adder
60 Summary:        libgstadder.so for gst-plugins-base
61 Requires:   %{name} = %{version}-%{release}
62 Provides:   %{name}-profile_mobile = %{version}-%{release}
63 %description extension-adder
64 Libgstadder.so for gst-plugin-base. Supplicant for gst-plugin-base.
65 This is for Tizen mobile profile.
66
67 %package devel
68 Summary:        Include files and Libraries
69 Requires:       %{name} = %{version}
70
71 %description devel
72 This package contains all necessary include files and libraries needed
73 to compile and link applications that use gstreamer-plugins-base.
74
75 %prep
76 %setup -q -n gst-plugins-base-%{version}
77 %setup -q -T -D -a 100
78
79 %build
80 # FIXME: GTKDOC_CFLAGS, GST_OBJ_CFLAGS:
81 # Silently ignored compilation of uninstalled gtk-doc scanners without RPM_OPT_FLAGS.
82 export V=1
83 NOCONFIGURE=1 ./autogen.sh
84 export CFLAGS="%{optflags} -fno-strict-aliasing\
85  -DTIZEN_FEATURE_WAYLAND_ENHANCEMENT\
86  -DTIZEN_FEATURE_TYPEFIND_ENHANCEMENT\
87  -DTIZEN_FEATURE_AUDIODECODER_MODIFICATION\
88  -DTIZEN_FEATURE_DISABLE_MIME_TYPES\
89  -DTIZEN_FEATURE_VIDEO_MODIFICATION\
90  -DTIZEN_FEATURE_SUBPARSE_MODIFICATION\
91  -DTIZEN_FEATURE_VOLUME_MODIFICATION\
92 %if "%{TIZEN_PRODUCT_TV}" == "1"
93  -DTIZEN_PROFILE_TV\
94  -DTIZEN_FEATURE_TRUSTZONE\
95 %endif
96  "
97
98 %configure\
99         --disable-static\
100         --enable-experimental\
101         --disable-gtk-doc\
102         --enable-introspection\
103         --disable-encoding\
104         --disable-examples\
105 %if "%{TIZEN_PRODUCT_TV}" == "1"
106         --enable-tv\
107 %endif
108         --enable-use-tbmbuf
109 make %{?_smp_mflags}
110
111 %install
112 rm -rf %{buildroot}
113 %make_install
114 %find_lang %{name}-%{gst_branch}
115 mv %{name}-%{gst_branch}.lang %{name}.lang
116
117 %post -p /sbin/ldconfig
118
119 %postun -p /sbin/ldconfig
120
121 %lang_package
122
123 %files
124 %manifest %{name}.manifest
125 %defattr(-, root, root)
126 %license COPYING.LIB
127
128 %if "%{TIZEN_PRODUCT_TV}" != "1"
129 %{_bindir}/gst-device-monitor-%{gst_branch}
130 %{_bindir}/gst-discoverer-%{gst_branch}
131 %{_bindir}/gst-play-%{gst_branch}
132 %endif
133
134 %define _lib_gstreamer_dir %{_libdir}/gstreamer-%{gst_branch}
135 %define _libdebug_dir %{_libdir}/debug/usr/lib
136
137 %{_lib_gstreamer_dir}/libgstalsa.so
138 %{_lib_gstreamer_dir}/libgstapp.so
139 %{_lib_gstreamer_dir}/libgstaudioconvert.so
140 %{_lib_gstreamer_dir}/libgstaudioresample.so
141 %{_lib_gstreamer_dir}/libgstaudiotestsrc.so
142 %{_lib_gstreamer_dir}/libgstaudiorate.so
143 %{_lib_gstreamer_dir}/libgstgio.so
144 %{_lib_gstreamer_dir}/libgstogg.so
145 %{_lib_gstreamer_dir}/libgstplayback.so
146 %{_lib_gstreamer_dir}/libgstsubparse.so
147 %{_lib_gstreamer_dir}/libgsttcp.so
148 %{_lib_gstreamer_dir}/libgsttheora.so
149 %{_lib_gstreamer_dir}/libgsttypefindfunctions.so
150 %{_lib_gstreamer_dir}/libgstvideoconvert.so
151 %{_lib_gstreamer_dir}/libgstvideorate.so
152 %{_lib_gstreamer_dir}/libgstvideoscale.so
153 %{_lib_gstreamer_dir}/libgstvideotestsrc.so
154 %{_lib_gstreamer_dir}/libgstvolume.so
155 %{_lib_gstreamer_dir}/libgstvorbis.so
156
157 %if "%{TIZEN_PRODUCT_TV}" != "1"
158 %doc %{_mandir}/man1/gst-device-monitor-*
159 %doc %{_mandir}/man1/gst-discoverer-*
160 %doc %{_mandir}/man1/gst-play-*
161 %endif
162
163 %if %{with x}
164 %{_libdir}/gstreamer-%{gst_branch}/libgstximagesink.so
165 %{_libdir}/gstreamer-%{gst_branch}/libgstxvimagesink.so
166 %endif
167
168 %{_libdir}/libgstapp*.so.*
169 %{_libdir}/libgstaudio*.so.*
170 %{_libdir}/libgstallocators*.so.*
171 %{_libdir}/libgstfft*.so.*
172
173 %define _libgirrepo_dir %{_libdir}/girepository-%{gst_branch}
174
175 %{_libgirrepo_dir}/GstApp-%{gst_branch}.typelib
176 %{_libgirrepo_dir}/GstAudio-%{gst_branch}.typelib
177 %{_libgirrepo_dir}/GstAllocators-%{gst_branch}.typelib
178 %{_libgirrepo_dir}/GstFft-%{gst_branch}.typelib
179 %{_libgirrepo_dir}/GstRiff-%{gst_branch}.typelib
180 %{_libgirrepo_dir}/GstRtp-%{gst_branch}.typelib
181 %{_libgirrepo_dir}/GstRtsp-%{gst_branch}.typelib
182 %{_libgirrepo_dir}/GstSdp-%{gst_branch}.typelib
183 %{_libgirrepo_dir}/GstTag-%{gst_branch}.typelib
184 %{_libgirrepo_dir}/GstVideo-%{gst_branch}.typelib
185 %{_libgirrepo_dir}/GstPbutils-%{gst_branch}.typelib
186
187 %{_libdir}/libgstpbutils*.so.*
188 %{_libdir}/libgstriff*.so.*
189 %{_libdir}/libgstrtp*.so.*
190 %{_libdir}/libgstrtsp*.so.*
191 %{_libdir}/libgstsdp*.so.*
192 %{_libdir}/libgsttag*.so.*
193 %{_libdir}/libgstvideo*.so.*
194 %dir %{_datadir}/gst-plugins-base/
195 %dir %{_datadir}/gst-plugins-base/%{gst_branch}/
196 %{_datadir}/gst-plugins-base/%{gst_branch}/license-translations.dict
197
198 %files extension-adder
199 %{_lib_gstreamer_dir}/libgstadder.so
200
201 %files devel
202 %manifest %{name}.manifest
203 %defattr(-, root, root)
204 %{_includedir}/gstreamer-%{gst_branch}/*
205 %{_libdir}/*.so
206 %{_libdir}/pkgconfig/*.pc
207 %{_datadir}/gir-1.0/*.gir