]>
Commit | Line | Data |
---|---|---|
574e0d82 | 1 | # TODO: |
210be78d | 2 | # - switch to mbledtls when 2.x is supported (mbed_ssl_init instead of ssl_init) |
b49a5518 | 3 | # - dtls (polarssl/mbedtls >= 1.4 with DTLS-SRTP support, not released yet) |
2adf1e07 JB |
4 | # |
5 | # Conditional build: | |
574e0d82 | 6 | %bcond_without bcg729 # support for G279AnnexB in RTC3389 implementation of Comfort Noise Payload |
b49a5518 | 7 | %bcond_without srtp # SRTP (secure RTP) support |
d1086c6e | 8 | %bcond_without zrtp # support for RFC 6189: Media Path Key Agreement for Unicast Secure RTP |
b49a5518 | 9 | %bcond_without matroska # Matroska support via libebml2/libmatroska2 |
2adf1e07 JB |
10 | %bcond_without opengl # X11+OpenGL rendering support |
11 | %bcond_with pcap # audio playing from PCAP files | |
574e0d82 JB |
12 | # audio I/O |
13 | %bcond_without alsa # ALSA sound I/O support | |
14 | %bcond_with arts # aRts sound I/O support | |
15 | %bcond_with portaudio # PortAudio sound I/O support | |
16 | %bcond_without pulseaudio # PulseAudio sound I/O support | |
210be78d | 17 | %bcond_without static_libs # static library |
2adf1e07 | 18 | # |
bbb0ffde | 19 | Summary: Audio/Video real-time streaming |
2adf1e07 | 20 | Summary(pl.UTF-8): Przesyłanie strumieni audio/video w czasie rzeczywistym |
bbb0ffde | 21 | Name: mediastreamer |
c28fe572 AM |
22 | Version: 2.16.1 |
23 | Release: 1 | |
2adf1e07 | 24 | License: GPL v2+ |
bbb0ffde | 25 | Group: Libraries |
c28fe572 AM |
26 | Source0: https://linphone.org/releases/sources//mediastreamer/%{name}-%{version}.tar.gz |
27 | # Source0-md5: 15b8b129a922180855d04d58cdd08d43 | |
28 | Patch0: build.patch | |
29 | Patch1: libsrtp2.patch | |
b49a5518 | 30 | URL: http://www.linphone.org/technical-corner/mediastreamer2/overview |
2adf1e07 JB |
31 | %{?with_opengl:BuildRequires: OpenGL-GLX-devel} |
32 | BuildRequires: SDL-devel >= 1.2.0 | |
574e0d82 JB |
33 | %{?with_alsa:BuildRequires: alsa-lib-devel} |
34 | %{?with_arts:BuildRequires: artsc-devel} | |
bbb0ffde | 35 | BuildRequires: autoconf >= 2.53 |
aa0ebe9a | 36 | BuildRequires: automake >= 1:1.9 |
574e0d82 | 37 | %{?with_bcg729:BuildRequires: bcg729-devel >= 1.0} |
c28fe572 | 38 | %{?with_zrtp:BuildRequires: bzrtp-devel >= 1.0.6} |
bbb0ffde | 39 | BuildRequires: doxygen |
2adf1e07 | 40 | # libavcodec >= 51.0.0, libswscale >= 0.7.0 |
bbb0ffde | 41 | BuildRequires: ffmpeg-devel |
c07fcbab | 42 | BuildRequires: gettext-tools |
2adf1e07 | 43 | %{?with_opengl:BuildRequires: glew-devel >= 1.5} |
bbb0ffde | 44 | BuildRequires: jack-audio-connection-kit-devel |
2adf1e07 | 45 | BuildRequires: intltool >= 0.40 |
bbb0ffde | 46 | BuildRequires: libgsm-devel |
2adf1e07 JB |
47 | %{?with_pcap:BuildRequires: libpcap-devel} |
48 | BuildRequires: libtheora-devel >= 1.0-0.alpha7 | |
49 | BuildRequires: libtool >= 2:2 | |
50 | BuildRequires: libupnp-devel >= 1.6 | |
51 | BuildRequires: libupnp-devel < 1.7 | |
bbb0ffde | 52 | BuildRequires: libv4l-devel |
2adf1e07 | 53 | BuildRequires: libvpx-devel >= 0.9.6 |
b49a5518 | 54 | %{?with_matroska:BuildRequires: matroska-foundation-devel} |
2adf1e07 | 55 | BuildRequires: opus-devel >= 0.9.0 |
c28fe572 | 56 | BuildRequires: ortp-devel >= 1.0.0 |
bbb0ffde | 57 | BuildRequires: pkgconfig |
574e0d82 JB |
58 | BuildRequires: polarssl-devel |
59 | %{?with_portaudio:BuildRequires: portaudio-devel} | |
2adf1e07 | 60 | %{?with_pulseaudio:BuildRequires: pulseaudio-devel >= 0.9.21} |
61d85515 | 61 | BuildRequires: sed >= 4.0 |
2adf1e07 | 62 | BuildRequires: spandsp-devel >= 0.0.6 |
f52b820a | 63 | BuildRequires: speex-devel >= 1:1.2-beta3 |
fed1d2a7 | 64 | BuildRequires: speexdsp-devel >= 1.2-beta3 |
c28fe572 | 65 | %{?with_srtp:BuildRequires: libsrtp2-devel} |
bbb0ffde | 66 | BuildRequires: xorg-lib-libX11-devel |
61d85515 | 67 | BuildRequires: xorg-lib-libXv-devel |
45fa5f14 | 68 | BuildRequires: xxd |
574e0d82 | 69 | %{?with_bcg729:Requires: bcg729 >= 1.0} |
c28fe572 | 70 | %{?with_zrtp:Requires: bzrtp >= 1.0.6} |
2adf1e07 JB |
71 | %{?with_opengl:Requires: glew >= 1.5} |
72 | Requires: libtheora >= 1.0-0.alpha7 | |
73 | Requires: libupnp >= 1.6 | |
74 | Requires: libvpx >= 0.9.6 | |
75 | Requires: opus >= 0.9.0 | |
c28fe572 | 76 | Requires: ortp >= 1.0.0 |
2adf1e07 | 77 | %{?with_pulseaudio:Requires: pulseaudio-libs >= 0.9.21} |
e6d0cfff | 78 | Requires: spandsp >= 0.0.6 |
f52b820a | 79 | Requires: speex >= 1:1.2-beta3 |
fed1d2a7 | 80 | Requires: speexdsp >= 1.2-beta3 |
bbb0ffde AM |
81 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
82 | ||
83 | %description | |
84 | Mediastreamer2 is a GPL licensed library to make audio and video | |
85 | real-time streaming and processing. Written in pure C, it is based | |
86 | upon the oRTP library. | |
87 | ||
2adf1e07 JB |
88 | %description -l pl.UTF-8 |
89 | Mediastreamer2 to udostępniona na licencji GPL biblioteka do | |
90 | przesyłania i przetwarzania strumieni audio/video w czasie | |
91 | rzeczywistym. Jest napisana w czystym C, oparta na bibliotece oRTP. | |
92 | ||
bbb0ffde | 93 | %package devel |
210be78d JB |
94 | Summary: Header files and development documentation for mediastreamer libraries |
95 | Summary(pl.UTF-8): Pliki nagłówkowe i dokumentacja do bibliotek mediastreamer | |
bbb0ffde | 96 | Group: Development/Libraries |
2adf1e07 JB |
97 | Requires: %{name} = %{version}-%{release} |
98 | %{?with_opengl:Requires: OpenGL-devel} | |
574e0d82 JB |
99 | %{?with_alsa:Requires: alsa-lib-devel} |
100 | %{?with_bcg729:Requires: bcg729-devel >= 1.0} | |
c28fe572 | 101 | %{?with_zrtp:Requires: bzrtp-devel >= 1.0.6} |
2adf1e07 JB |
102 | Requires: ffmpeg-devel |
103 | %{?with_opengl:Requires: glew-devel >= 1.5} | |
104 | Requires: libtheora-devel >= 1.0-0.alpha7 | |
105 | Requires: libupnp-devel >= 1.6 | |
106 | Requires: libupnp-devel < 1.7 | |
107 | Requires: libv4l-devel | |
108 | Requires: libvpx-devel >= 0.9.6 | |
b49a5518 | 109 | %{?with_matroska:Requires: matroska-foundation-devel} |
2adf1e07 | 110 | Requires: opus-devel >= 0.9.0 |
c28fe572 | 111 | Requires: ortp-devel >= 1.0.0 |
574e0d82 JB |
112 | Requires: polarssl-devel |
113 | %{?with_portaudio:Requires: portaudio-devel} | |
2adf1e07 JB |
114 | %{?with_pulseaudio:Requires: pulseaudio-devel >= 0.9.21} |
115 | Requires: spandsp-devel >= 0.0.6 | |
f52b820a | 116 | Requires: speex-devel >= 1:1.2-beta3 |
fed1d2a7 | 117 | Requires: speexdsp-devel >= 1.2-beta3 |
c28fe572 | 118 | %{?with_srtp:Requires: libsrtp2-devel} |
2adf1e07 JB |
119 | Requires: xorg-lib-libX11-devel |
120 | Requires: xorg-lib-libXv-devel | |
bbb0ffde AM |
121 | |
122 | %description devel | |
210be78d JB |
123 | Header files and development documentation for mediastreamer |
124 | libraries. | |
2adf1e07 JB |
125 | |
126 | %description devel -l pl.UTF-8 | |
210be78d | 127 | Pliki nagłówkowe i dokumentacja do bibliotek mediastreamer. |
bbb0ffde AM |
128 | |
129 | %package static | |
210be78d JB |
130 | Summary: Static mediastreamer libraries |
131 | Summary(pl.UTF-8): Statyczne biblioteki mediastreamer | |
bbb0ffde | 132 | Group: Development/Libraries |
2adf1e07 | 133 | Requires: %{name}-devel = %{version}-%{release} |
bbb0ffde AM |
134 | |
135 | %description static | |
210be78d | 136 | Static mediastreamer libraries. |
bbb0ffde | 137 | |
2adf1e07 | 138 | %description static -l pl.UTF-8 |
210be78d | 139 | Statyczne biblioteki mediastreamer. |
2adf1e07 | 140 | |
bbb0ffde AM |
141 | %prep |
142 | %setup -q | |
9a501a0e | 143 | %patch0 -p1 |
210be78d | 144 | %patch1 -p1 |
c28fe572 AM |
145 | |
146 | [ ! -e gitversion.h ] && echo '#define MS2_GIT_VERSION "%{version}"' > src/gitversion.h | |
bbb0ffde AM |
147 | |
148 | %build | |
9a501a0e | 149 | %{__libtoolize} |
c28fe572 AM |
150 | %{__gettextize} |
151 | %{__intltoolize} | |
9a501a0e AM |
152 | %{__aclocal} |
153 | %{__autoconf} | |
2adf1e07 | 154 | %{__autoheader} |
9a501a0e | 155 | %{__automake} |
61d85515 | 156 | %configure \ |
e4267767 | 157 | --disable-strict \ |
574e0d82 JB |
158 | --enable-alsa%{!?with_alsa:=no} \ |
159 | %{?with_arts:--enable-artsc} \ | |
160 | %{?with_bcg729:--enable-bcg729} \ | |
2adf1e07 JB |
161 | --enable-external-ortp \ |
162 | %{!?with_opengl:--disable-glx} \ | |
b49a5518 | 163 | %{!?with_matroska:--disable-matroska} \ |
2adf1e07 | 164 | %{?with_pcap:--enable-pcap} \ |
574e0d82 JB |
165 | %{?with_portaudio:--enable-portaudio} \ |
166 | --enable-pulseaudio%{!?with_pulseaudio:=no} \ | |
2adf1e07 | 167 | --disable-silent-rules \ |
210be78d | 168 | %{?with_static_libs:--enable-static} \ |
d1086c6e | 169 | %{!?with_zrtp:--disable-zrtp} \ |
574e0d82 | 170 | %{!?with_srtp:--with-srtp=none} |
61d85515 | 171 | |
bbb0ffde AM |
172 | %{__make} |
173 | ||
174 | %install | |
175 | rm -rf $RPM_BUILD_ROOT | |
176 | ||
177 | %{__make} install \ | |
ac6cb6d4 JK |
178 | DESTDIR=$RPM_BUILD_ROOT \ |
179 | install_sh=/usr/bin/install | |
bbb0ffde | 180 | |
86721f5d | 181 | # for external plugins |
dcc81caa | 182 | install -d $RPM_BUILD_ROOT%{_libdir}/mediastreamer/plugins |
86721f5d | 183 | |
61d85515 | 184 | # Remove duplicated documentation |
2adf1e07 | 185 | %{__rm} -r $RPM_BUILD_ROOT/usr/share/doc/%{name}-%{version}/html |
61d85515 | 186 | |
187 | %find_lang %{name} | |
188 | ||
bbb0ffde AM |
189 | %clean |
190 | rm -rf $RPM_BUILD_ROOT | |
191 | ||
192 | %post -p /sbin/ldconfig | |
193 | %postun -p /sbin/ldconfig | |
194 | ||
61d85515 | 195 | %files -f %{name}.lang |
bbb0ffde | 196 | %defattr(644,root,root,755) |
2adf1e07 JB |
197 | %doc AUTHORS ChangeLog NEWS README |
198 | %attr(755,root,root) %{_bindir}/mediastream | |
574e0d82 | 199 | %attr(755,root,root) %{_bindir}/msaudiocmp |
2adf1e07 | 200 | %{?with_pcap:%attr(755,root,root) %{_bindir}/pcap_playback} |
45fa5f14 | 201 | %attr(755,root,root) %{_libdir}/libmediastreamer_base.so.*.* |
210be78d | 202 | %attr(755,root,root) %ghost %{_libdir}/libmediastreamer_base.so.6 |
45fa5f14 | 203 | %attr(755,root,root) %{_libdir}/libmediastreamer_voip.so.*.* |
210be78d | 204 | %attr(755,root,root) %ghost %{_libdir}/libmediastreamer_voip.so.6 |
dcc81caa JB |
205 | %dir %{_libdir}/mediastreamer |
206 | %dir %{_libdir}/mediastreamer/plugins | |
45fa5f14 | 207 | %{_pixmapsdir}/%{name} |
bbb0ffde AM |
208 | |
209 | %files devel | |
210 | %defattr(644,root,root,755) | |
211 | %doc help/doc/html | |
45fa5f14 JK |
212 | %attr(755,root,root) %{_libdir}/libmediastreamer_base.so |
213 | %attr(755,root,root) %{_libdir}/libmediastreamer_voip.so | |
214 | %{_libdir}/libmediastreamer_base.la | |
215 | %{_libdir}/libmediastreamer_voip.la | |
bbb0ffde AM |
216 | %{_includedir}/mediastreamer2 |
217 | %{_pkgconfigdir}/mediastreamer.pc | |
218 | ||
210be78d | 219 | %if %{with static_libs} |
bbb0ffde AM |
220 | %files static |
221 | %defattr(644,root,root,755) | |
45fa5f14 JK |
222 | %{_libdir}/libmediastreamer_base.a |
223 | %{_libdir}/libmediastreamer_voip.a | |
210be78d | 224 | %endif |