]>
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 | 22 | Version: 2.16.1 |
48c5e925 | 23 | Release: 5 |
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} |
ad6de4e5 | 38 | BuildRequires: bctoolbox-devel |
c28fe572 | 39 | %{?with_zrtp:BuildRequires: bzrtp-devel >= 1.0.6} |
bbb0ffde | 40 | BuildRequires: doxygen |
2adf1e07 | 41 | # libavcodec >= 51.0.0, libswscale >= 0.7.0 |
bbb0ffde | 42 | BuildRequires: ffmpeg-devel |
c07fcbab | 43 | BuildRequires: gettext-tools |
2adf1e07 | 44 | %{?with_opengl:BuildRequires: glew-devel >= 1.5} |
bbb0ffde | 45 | BuildRequires: jack-audio-connection-kit-devel |
2adf1e07 | 46 | BuildRequires: intltool >= 0.40 |
bbb0ffde | 47 | BuildRequires: libgsm-devel |
2adf1e07 JB |
48 | %{?with_pcap:BuildRequires: libpcap-devel} |
49 | BuildRequires: libtheora-devel >= 1.0-0.alpha7 | |
50 | BuildRequires: libtool >= 2:2 | |
51 | BuildRequires: libupnp-devel >= 1.6 | |
52 | BuildRequires: libupnp-devel < 1.7 | |
bbb0ffde | 53 | BuildRequires: libv4l-devel |
2adf1e07 | 54 | BuildRequires: libvpx-devel >= 0.9.6 |
b49a5518 | 55 | %{?with_matroska:BuildRequires: matroska-foundation-devel} |
2adf1e07 | 56 | BuildRequires: opus-devel >= 0.9.0 |
c28fe572 | 57 | BuildRequires: ortp-devel >= 1.0.0 |
bbb0ffde | 58 | BuildRequires: pkgconfig |
574e0d82 JB |
59 | BuildRequires: polarssl-devel |
60 | %{?with_portaudio:BuildRequires: portaudio-devel} | |
2adf1e07 | 61 | %{?with_pulseaudio:BuildRequires: pulseaudio-devel >= 0.9.21} |
61d85515 | 62 | BuildRequires: sed >= 4.0 |
2adf1e07 | 63 | BuildRequires: spandsp-devel >= 0.0.6 |
f52b820a | 64 | BuildRequires: speex-devel >= 1:1.2-beta3 |
fed1d2a7 | 65 | BuildRequires: speexdsp-devel >= 1.2-beta3 |
c28fe572 | 66 | %{?with_srtp:BuildRequires: libsrtp2-devel} |
bbb0ffde | 67 | BuildRequires: xorg-lib-libX11-devel |
61d85515 | 68 | BuildRequires: xorg-lib-libXv-devel |
45fa5f14 | 69 | BuildRequires: xxd |
574e0d82 | 70 | %{?with_bcg729:Requires: bcg729 >= 1.0} |
c28fe572 | 71 | %{?with_zrtp:Requires: bzrtp >= 1.0.6} |
2adf1e07 JB |
72 | %{?with_opengl:Requires: glew >= 1.5} |
73 | Requires: libtheora >= 1.0-0.alpha7 | |
74 | Requires: libupnp >= 1.6 | |
75 | Requires: libvpx >= 0.9.6 | |
76 | Requires: opus >= 0.9.0 | |
c28fe572 | 77 | Requires: ortp >= 1.0.0 |
2adf1e07 | 78 | %{?with_pulseaudio:Requires: pulseaudio-libs >= 0.9.21} |
e6d0cfff | 79 | Requires: spandsp >= 0.0.6 |
f52b820a | 80 | Requires: speex >= 1:1.2-beta3 |
fed1d2a7 | 81 | Requires: speexdsp >= 1.2-beta3 |
bbb0ffde AM |
82 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
83 | ||
84 | %description | |
85 | Mediastreamer2 is a GPL licensed library to make audio and video | |
86 | real-time streaming and processing. Written in pure C, it is based | |
87 | upon the oRTP library. | |
88 | ||
2adf1e07 JB |
89 | %description -l pl.UTF-8 |
90 | Mediastreamer2 to udostępniona na licencji GPL biblioteka do | |
91 | przesyłania i przetwarzania strumieni audio/video w czasie | |
92 | rzeczywistym. Jest napisana w czystym C, oparta na bibliotece oRTP. | |
93 | ||
bbb0ffde | 94 | %package devel |
210be78d JB |
95 | Summary: Header files and development documentation for mediastreamer libraries |
96 | Summary(pl.UTF-8): Pliki nagłówkowe i dokumentacja do bibliotek mediastreamer | |
bbb0ffde | 97 | Group: Development/Libraries |
2adf1e07 JB |
98 | Requires: %{name} = %{version}-%{release} |
99 | %{?with_opengl:Requires: OpenGL-devel} | |
574e0d82 JB |
100 | %{?with_alsa:Requires: alsa-lib-devel} |
101 | %{?with_bcg729:Requires: bcg729-devel >= 1.0} | |
c28fe572 | 102 | %{?with_zrtp:Requires: bzrtp-devel >= 1.0.6} |
2adf1e07 JB |
103 | Requires: ffmpeg-devel |
104 | %{?with_opengl:Requires: glew-devel >= 1.5} | |
105 | Requires: libtheora-devel >= 1.0-0.alpha7 | |
106 | Requires: libupnp-devel >= 1.6 | |
107 | Requires: libupnp-devel < 1.7 | |
108 | Requires: libv4l-devel | |
109 | Requires: libvpx-devel >= 0.9.6 | |
b49a5518 | 110 | %{?with_matroska:Requires: matroska-foundation-devel} |
2adf1e07 | 111 | Requires: opus-devel >= 0.9.0 |
c28fe572 | 112 | Requires: ortp-devel >= 1.0.0 |
574e0d82 JB |
113 | Requires: polarssl-devel |
114 | %{?with_portaudio:Requires: portaudio-devel} | |
2adf1e07 JB |
115 | %{?with_pulseaudio:Requires: pulseaudio-devel >= 0.9.21} |
116 | Requires: spandsp-devel >= 0.0.6 | |
f52b820a | 117 | Requires: speex-devel >= 1:1.2-beta3 |
fed1d2a7 | 118 | Requires: speexdsp-devel >= 1.2-beta3 |
c28fe572 | 119 | %{?with_srtp:Requires: libsrtp2-devel} |
2adf1e07 JB |
120 | Requires: xorg-lib-libX11-devel |
121 | Requires: xorg-lib-libXv-devel | |
bbb0ffde AM |
122 | |
123 | %description devel | |
210be78d JB |
124 | Header files and development documentation for mediastreamer |
125 | libraries. | |
2adf1e07 JB |
126 | |
127 | %description devel -l pl.UTF-8 | |
210be78d | 128 | Pliki nagłówkowe i dokumentacja do bibliotek mediastreamer. |
bbb0ffde AM |
129 | |
130 | %package static | |
210be78d JB |
131 | Summary: Static mediastreamer libraries |
132 | Summary(pl.UTF-8): Statyczne biblioteki mediastreamer | |
bbb0ffde | 133 | Group: Development/Libraries |
2adf1e07 | 134 | Requires: %{name}-devel = %{version}-%{release} |
bbb0ffde AM |
135 | |
136 | %description static | |
210be78d | 137 | Static mediastreamer libraries. |
bbb0ffde | 138 | |
2adf1e07 | 139 | %description static -l pl.UTF-8 |
210be78d | 140 | Statyczne biblioteki mediastreamer. |
2adf1e07 | 141 | |
bbb0ffde AM |
142 | %prep |
143 | %setup -q | |
9a501a0e | 144 | %patch0 -p1 |
210be78d | 145 | %patch1 -p1 |
c28fe572 AM |
146 | |
147 | [ ! -e gitversion.h ] && echo '#define MS2_GIT_VERSION "%{version}"' > src/gitversion.h | |
bbb0ffde AM |
148 | |
149 | %build | |
9a501a0e | 150 | %{__libtoolize} |
c28fe572 AM |
151 | %{__gettextize} |
152 | %{__intltoolize} | |
9a501a0e AM |
153 | %{__aclocal} |
154 | %{__autoconf} | |
2adf1e07 | 155 | %{__autoheader} |
9a501a0e | 156 | %{__automake} |
61d85515 | 157 | %configure \ |
e4267767 | 158 | --disable-strict \ |
574e0d82 JB |
159 | --enable-alsa%{!?with_alsa:=no} \ |
160 | %{?with_arts:--enable-artsc} \ | |
161 | %{?with_bcg729:--enable-bcg729} \ | |
2adf1e07 JB |
162 | --enable-external-ortp \ |
163 | %{!?with_opengl:--disable-glx} \ | |
b49a5518 | 164 | %{!?with_matroska:--disable-matroska} \ |
2adf1e07 | 165 | %{?with_pcap:--enable-pcap} \ |
574e0d82 JB |
166 | %{?with_portaudio:--enable-portaudio} \ |
167 | --enable-pulseaudio%{!?with_pulseaudio:=no} \ | |
2adf1e07 | 168 | --disable-silent-rules \ |
210be78d | 169 | %{?with_static_libs:--enable-static} \ |
d1086c6e | 170 | %{!?with_zrtp:--disable-zrtp} \ |
574e0d82 | 171 | %{!?with_srtp:--with-srtp=none} |
61d85515 | 172 | |
bbb0ffde AM |
173 | %{__make} |
174 | ||
175 | %install | |
176 | rm -rf $RPM_BUILD_ROOT | |
177 | ||
178 | %{__make} install \ | |
ac6cb6d4 JK |
179 | DESTDIR=$RPM_BUILD_ROOT \ |
180 | install_sh=/usr/bin/install | |
bbb0ffde | 181 | |
86721f5d | 182 | # for external plugins |
dcc81caa | 183 | install -d $RPM_BUILD_ROOT%{_libdir}/mediastreamer/plugins |
86721f5d | 184 | |
61d85515 | 185 | # Remove duplicated documentation |
2adf1e07 | 186 | %{__rm} -r $RPM_BUILD_ROOT/usr/share/doc/%{name}-%{version}/html |
61d85515 | 187 | |
188 | %find_lang %{name} | |
189 | ||
bbb0ffde AM |
190 | %clean |
191 | rm -rf $RPM_BUILD_ROOT | |
192 | ||
193 | %post -p /sbin/ldconfig | |
194 | %postun -p /sbin/ldconfig | |
195 | ||
61d85515 | 196 | %files -f %{name}.lang |
bbb0ffde | 197 | %defattr(644,root,root,755) |
b16f16f5 | 198 | %doc AUTHORS ChangeLog NEWS README.md |
2adf1e07 | 199 | %attr(755,root,root) %{_bindir}/mediastream |
574e0d82 | 200 | %attr(755,root,root) %{_bindir}/msaudiocmp |
2adf1e07 | 201 | %{?with_pcap:%attr(755,root,root) %{_bindir}/pcap_playback} |
45fa5f14 | 202 | %attr(755,root,root) %{_libdir}/libmediastreamer_base.so.*.* |
b16f16f5 | 203 | %attr(755,root,root) %ghost %{_libdir}/libmediastreamer_base.so.10 |
45fa5f14 | 204 | %attr(755,root,root) %{_libdir}/libmediastreamer_voip.so.*.* |
b16f16f5 | 205 | %attr(755,root,root) %ghost %{_libdir}/libmediastreamer_voip.so.10 |
dcc81caa JB |
206 | %dir %{_libdir}/mediastreamer |
207 | %dir %{_libdir}/mediastreamer/plugins | |
b16f16f5 | 208 | %{_pixmapsdir}/*.jpg |
bbb0ffde AM |
209 | |
210 | %files devel | |
211 | %defattr(644,root,root,755) | |
212 | %doc help/doc/html | |
45fa5f14 JK |
213 | %attr(755,root,root) %{_libdir}/libmediastreamer_base.so |
214 | %attr(755,root,root) %{_libdir}/libmediastreamer_voip.so | |
215 | %{_libdir}/libmediastreamer_base.la | |
216 | %{_libdir}/libmediastreamer_voip.la | |
bbb0ffde AM |
217 | %{_includedir}/mediastreamer2 |
218 | %{_pkgconfigdir}/mediastreamer.pc | |
219 | ||
210be78d | 220 | %if %{with static_libs} |
bbb0ffde AM |
221 | %files static |
222 | %defattr(644,root,root,755) | |
45fa5f14 JK |
223 | %{_libdir}/libmediastreamer_base.a |
224 | %{_libdir}/libmediastreamer_voip.a | |
210be78d | 225 | %endif |