Merge branch 'move_subdir_bad' into tizen_gst_1.19.2_mono
[platform/upstream/gstreamer.git] / packaging / gstreamer.spec
1 %define gst_branch 1.0
2
3 Name:           gstreamer
4 Version:        1.19.2
5 Release:        0
6 Summary:        Streaming-Media Framework Runtime
7 License:        LGPL-2.0+
8 Group:          Multimedia/Framework
9 Url:            http://gstreamer.freedesktop.org/
10 Source0:        http://gstreamer.freedesktop.org/src/gstreamer/gstreamer-%{version}.tar.xz
11 Source1001:     gstreamer.manifest
12 BuildRequires:  meson >= 0.48.0
13 BuildRequires:  bison
14 BuildRequires:  gettext-tools
15 BuildRequires:  check-devel
16 BuildRequires:  fdupes
17 BuildRequires:  flex
18 BuildRequires:  pkgconfig(glib-2.0) >= 2.32.0
19 BuildRequires:  libtool
20 BuildRequires:  pkgconfig(libxml-2.0)
21 BuildRequires:  pkgconfig(gobject-introspection-1.0) >= 1.31.1
22 BuildRequires:  pkgconfig(dlog)
23
24 %description
25 GStreamer is a streaming-media framework, based on graphs of filters
26 which operate on media data. Applications using this library can do
27 anything from real-time sound processing to playing videos, and just
28 about anything else media-related.  Its plug-in-based architecture
29 means that new data types or processing capabilities can be added by
30 installing new plug-ins.
31
32 %package utils
33 Summary:        Streaming-Media Framework Runtime
34 Group:          Multimedia/Framework
35 Provides:       gstreamer:%{_bindir}/gst-launch-%{gst_branch} = %{version}
36 # Symbol for unversioned wrappers:
37 Provides:       gstreamer-utils_versioned = %{version}
38
39 %description utils
40 GStreamer is a streaming-media framework, based on graphs of filters
41 which operate on media data. Applications using this library can do
42 anything from real-time sound processing to playing videos, and just
43 about anything else media-related.  Its plug-in-based architecture
44 means that new data types or processing capabilities can be added by
45 installing new plug-ins.
46
47 %package devel
48 Summary:        Include Files and Libraries mandatory for Development
49 Group:          Development/Libraries
50 # gstreamer-utils is required for the gstreamer-provides rpm magic.
51 Requires:       gstreamer-utils = %{version}
52 Requires:       %{name} = %{version}
53
54 %description devel
55 This package contains all necessary include files and libraries needed
56 to develop applications that require these.
57
58 %lang_package
59
60 %prep
61 %setup -q -n gstreamer-%{version}
62 cp %{SOURCE1001} .
63
64 %build
65 export CFLAGS="%{optflags} \
66         -fno-strict-aliasing\
67         -fstack-protector-strong\
68         -Wl,-z,relro\
69         -D_FORTIFY_SOURCE=2"
70
71 meson --prefix=/usr --libdir=%{_libdir} --datadir=%{_datadir} \
72   -D bash-completion=disabled \
73   -D check=disabled \
74   -D examples=disabled \
75   -D tests=disabled \
76   -D doc=disabled \
77 %if "%{tizen_profile_name}" == "tv"
78   -D tv-profile=true \
79 %endif
80   -D ptp-helper-permissions=none \
81   build
82
83 ninja -C build all %{?_smp_mflags}
84
85 %install
86 rm -rf %{buildroot}
87 export DESTDIR=%{buildroot}
88 ninja -C build install
89 mkdir -p %{buildroot}%{_datadir}/gstreamer-%{gst_branch}/presets
90 mkdir -p %{buildroot}%{_docdir}/%{name}
91 %find_lang %{name}-%{gst_branch}
92 mv %{name}-%{gst_branch}.lang %{name}.lang
93 rm -rf %{buildroot}%{_datadir}/gtk-doc
94 rm -rf %{buildroot}%{_docdir}/%{name}/manual
95 rm -rf %{buildroot}%{_docdir}/%{name}/pwg
96 rm -rf %{buildroot}%{_libexecdir}/gstreamer-%{gst_branch}/gst-plugins-doc-cache-generator
97 mkdir -p %{buildroot}%{_datadir}/gstreamer-%{gst_branch}/presets
98 %fdupes %{buildroot}
99
100 %post -p /sbin/ldconfig
101
102 %postun -p /sbin/ldconfig
103
104 %files
105 %manifest %{name}.manifest
106 %defattr(-, root, root)
107 %license COPYING
108
109 %dir %{_datadir}/gstreamer-%{gst_branch}
110 %dir %{_datadir}/gstreamer-%{gst_branch}/presets
111 %dir %{_libdir}/gstreamer-%{gst_branch}
112 %{_libdir}/gstreamer-%{gst_branch}/*.so
113 %dir %{_libexecdir}/gstreamer-%{gst_branch}
114 %{_libexecdir}/gstreamer-%{gst_branch}/gst-plugin-scanner
115 %{_libexecdir}/gstreamer-%{gst_branch}/gst-hotdoc-plugins-scanner
116 %{_libexecdir}/gstreamer-%{gst_branch}/gst-ptp-helper
117 %{_libdir}/*.so.*
118 %{_libdir}/girepository-1.0/Gst-1.0.typelib
119 %{_libdir}/girepository-1.0/GstBase-1.0.typelib
120 #%{_libdir}/girepository-1.0/GstCheck-1.0.typelib
121 %{_libdir}/girepository-1.0/GstController-1.0.typelib
122 %{_libdir}/girepository-1.0/GstNet-1.0.typelib
123 %{_datadir}/gdb/auto-load/usr/%{_lib}/libgstreamer*-gdb.py
124 %{_datadir}/gstreamer-1.0/gdb/glib_gobject_helper.py
125 %{_datadir}/gstreamer-1.0/gdb/gst_gdb.py
126
127 %files utils
128 %manifest %{name}.manifest
129 %defattr(-, root, root)
130 %license COPYING
131 %{_bindir}/*-%{gst_branch}
132 %doc %{_mandir}/man?/*-%{gst_branch}.*
133
134 %files devel
135 %manifest %{name}.manifest
136 %defattr(-, root, root)
137 %{_datadir}/aclocal/*.m4
138 %{_includedir}/*
139 %{_libdir}/*.so
140 %{_libdir}/pkgconfig/*.pc
141 %{_datadir}/gir-1.0/*.gir
142
143 %changelog