]>
Commit | Line | Data |
---|---|---|
4811172d | 1 | # TODO: |
a7e6bfef | 2 | # SBC plugin is missing bluez_sbc subdir |
c0a25d84 | 3 | # fix static libname (libopal_s.a) |
7d38eb5a | 4 | # MPEG4 rate control correction requires libavcodec sources |
9008d5d2 | 5 | # NOTE: IPv6 support requires IPv6 support in ptlib |
5683c404 | 6 | # |
383877b6 | 7 | # WARNING: opal version should match Ekiga and ptlib versions |
5b46c6b6 | 8 | # Recommendations: http://wiki.ekiga.org/index.php/Download_Ekiga_sources |
b3e5ac67 | 9 | # (for ekiga 4.0.x it's ptlib 2.10.x + opal 3.10.x) |
383877b6 | 10 | # |
12913987 | 11 | # Conditional build: |
9008d5d2 | 12 | %bcond_with sip_fax_only # minimal build for t38modem + SIP |
a7e6bfef | 13 | %bcond_without celt # CELT codec support |
9008d5d2 | 14 | %bcond_without srtp # SRTP protocol support (mutually exclusive with zrtp) |
b3e5ac67 | 15 | %bcond_with zrtp # ZRTP protocol support (mutually exclusive with srtp; broken as of 3.10.9) |
9008d5d2 | 16 | %bcond_without capi # CAPI support |
b3f5804c JB |
17 | %bcond_without vpb # Voicetronix VPB support |
18 | %bcond_with java # Java JNI interface (only swig wrapper, Java part not built) | |
19 | %bcond_with ruby # Ruby interface (very initial, only swig wrapper) | |
12913987 | 20 | # |
9008d5d2 JB |
21 | %if %{with zrtp} |
22 | %undefine with_srtp | |
23 | %endif | |
24 | %if %{with sip_fax_only} | |
b3f5804c JB |
25 | %undefine with_java |
26 | %undefine with_ruby | |
9008d5d2 JB |
27 | %undefine with_srtp |
28 | %undefine with_zrtp | |
29 | %endif | |
aaf12cf0 | 30 | Summary: Open Phone Abstraction Library (aka OpenH323 v2) |
075bc36b | 31 | Summary(pl.UTF-8): Biblioteka Open Phone Abstraction Library (aka OpenH323 v2) |
aaf12cf0 | 32 | Name: opal |
b3e5ac67 JB |
33 | Version: 3.10.11 |
34 | Release: 1 | |
a7e6bfef | 35 | License: MPL v1.0 |
aaf12cf0 | 36 | Group: Libraries |
f7ddb932 | 37 | Source0: http://downloads.sourceforge.net/opalvoip/%{name}-%{version}.tar.bz2 |
b3e5ac67 | 38 | # Source0-md5: fc36a30d2cbce0fbf7cb6ef33b8d63c3 |
e377535f | 39 | Patch0: %{name}-build.patch |
a7e6bfef JB |
40 | Patch1: %{name}-ffmpeg10.patch |
41 | Patch2: %{name}-sh.patch | |
42 | Patch3: %{name}-libilbc.patch | |
43 | Patch4: %{name}-ah.patch | |
cee58fd7 | 44 | Patch5: %{name}-exceptions.patch |
b3f5804c | 45 | Patch6: %{name}-ruby.patch |
fcc0d4f2 | 46 | Patch7: ffmpeg2.patch |
a7e6bfef JB |
47 | URL: http://www.opalvoip.org/ |
48 | BuildRequires: autoconf >= 2.50 | |
105bdcf7 | 49 | BuildRequires: automake |
9008d5d2 | 50 | %{?with_capi:BuildRequires: capi4k-utils-devel} |
24ae7846 | 51 | %{?with_celt:BuildRequires: celt-devel} |
105bdcf7 | 52 | BuildRequires: expat-devel |
12913987 | 53 | BuildRequires: libstdc++-devel |
cee58fd7 | 54 | %{?with_zrtp:BuildRequires: libzrtp-devel} |
12913987 | 55 | BuildRequires: pkgconfig |
a7e6bfef | 56 | BuildRequires: ptlib-devel >= 1:2.10.9 |
12913987 | 57 | BuildRequires: sed >= 4.0 |
9008d5d2 | 58 | BuildRequires: speex-devel >= 1:1.2 |
63a4e767 | 59 | BuildRequires: speexdsp-devel >= 1.2 |
9008d5d2 | 60 | %{?with_srtp:BuildRequires: srtp-devel} |
12913987 MM |
61 | %if %{without sip_fax_only} |
62 | BuildRequires: SDL-devel | |
a7e6bfef | 63 | # libavcodec >= 51.11.0 libavutil |
7d38eb5a | 64 | BuildRequires: ffmpeg-devel |
a7e6bfef | 65 | %{?with_java:BuildRequires: jdk} |
7d38eb5a | 66 | BuildRequires: libgsm-devel |
7d38eb5a | 67 | BuildRequires: libtheora-devel |
cee58fd7 | 68 | %{?with_vpb:BuildRequires: vpb-devel} |
a7e6bfef JB |
69 | # ABI 0.102 |
70 | BuildRequires: libx264-devel >= 0.1.3-1.20101031_2245.1 | |
b4fd80b4 | 71 | BuildRequires: webrtc-libilbc-devel |
fda4b81c | 72 | BuildRequires: openssl-devel |
a7e6bfef | 73 | %{?with_ruby:BuildRequires: ruby-devel} |
a7e6bfef JB |
74 | BuildRequires: spandsp-devel |
75 | BuildRequires: swig | |
105bdcf7 | 76 | BuildRequires: unixODBC-devel |
12913987 | 77 | %endif |
d2161d53 | 78 | %requires_eq ptlib |
aaf12cf0 PG |
79 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
80 | ||
81 | %description | |
0a401c5c CM |
82 | The OPAL project aims to create a full featured, interoperable, Open |
83 | Source implementation of the ITU H.323 teleconferencing protocol that | |
84 | can be used by personal developers and commercial users without | |
aaf12cf0 PG |
85 | charge. |
86 | ||
a2a27970 JR |
87 | %description -l pl.UTF-8 |
88 | Celem projektu OPAL jest stworzenie w pełni funkcjonalnej i | |
89 | wyposażonej implementacji protokołu telekonferencyjnego ITU H.323, | |
90 | który może być używany przez użytkowników prywatnych i komercyjnych | |
91 | bez opłat. | |
aaf12cf0 | 92 | |
b3f5804c JB |
93 | %package lid-vpb |
94 | Summary: Opal LID plugin for Voicetronix VPB devices | |
95 | Summary(pl.UTF-8): Wtyczka Opal LID dla urządzeń VPB firmy Voicetronix | |
96 | Group: Libraries | |
97 | Requires: %{name} = %{version}-%{release} | |
98 | ||
99 | %description lid-vpb | |
100 | Opal LID plugin for Voicetronix VPB devices. | |
101 | ||
102 | %description lid-vpb -l pl.UTF-8 | |
103 | Wtyczka Opal LID dla urządzeń VPB firmy Voicetronix. | |
104 | ||
aaf12cf0 PG |
105 | %package devel |
106 | Summary: Opal development files | |
075bc36b | 107 | Summary(pl.UTF-8): Pliki dla developerów Opal |
aaf12cf0 | 108 | Group: Development/Libraries |
5e9f9381 | 109 | Requires: %{name} = %{version}-%{release} |
9008d5d2 | 110 | %{?with_capi:Requires: capi4k-utils-devel} |
aaf12cf0 | 111 | Requires: libstdc++-devel |
cee58fd7 | 112 | %{?with_zrtp:Requires: libzrtp-devel} |
a7e6bfef | 113 | Requires: ptlib-devel >= 1:2.10.9 |
9008d5d2 JB |
114 | Requires: speex-devel >= 1:1.2 |
115 | %{?with_srtp:Requires: srtp-devel} | |
aaf12cf0 PG |
116 | |
117 | %description devel | |
0a401c5c | 118 | Header files and libraries for developing applications that use OPAL. |
aaf12cf0 | 119 | |
a2a27970 JR |
120 | %description devel -l pl.UTF-8 |
121 | Pliki nagłówkowe i biblioteki konieczne do rozwoju aplikacji | |
122 | używających OPAL. | |
aaf12cf0 | 123 | |
0a847dbc | 124 | %package static |
296d779e | 125 | Summary: OPAL static libraries |
075bc36b | 126 | Summary(pl.UTF-8): Biblioteki statyczne OPAL |
0a847dbc | 127 | Group: Development/Libraries |
5e9f9381 | 128 | Requires: %{name}-devel = %{version}-%{release} |
aaf12cf0 | 129 | |
0a847dbc | 130 | %description static |
296d779e | 131 | OPAL static libraries. |
aaf12cf0 | 132 | |
a2a27970 | 133 | %description static -l pl.UTF-8 |
296d779e | 134 | Biblioteki statyczne OPAL. |
aaf12cf0 PG |
135 | |
136 | %prep | |
8db2f0fb | 137 | %setup -q |
e377535f JR |
138 | %patch0 -p1 |
139 | %patch1 -p1 | |
79955eae | 140 | %patch2 -p1 |
a7e6bfef JB |
141 | %patch3 -p1 |
142 | %patch4 -p1 | |
b3f5804c JB |
143 | %patch5 -p1 |
144 | %patch6 -p1 | |
fcc0d4f2 | 145 | %patch7 -p1 |
aaf12cf0 PG |
146 | |
147 | %build | |
b0b5ec3f | 148 | PWLIBDIR=%{_prefix}; export PWLIBDIR |
296d779e | 149 | OPALDIR=`pwd`; export OPALDIR |
c1724659 | 150 | OPAL_BUILD="yes"; export OPAL_BUILD |
323ecc81 SS |
151 | %{__aclocal} |
152 | %{__autoconf} | |
a7e6bfef | 153 | # don't run autoheader here, include/opal/buildopts.h.in is manually written |
b8ea5cae | 154 | cd plugins |
0a401c5c | 155 | %{__aclocal} |
b8ea5cae | 156 | %{__autoconf} |
a7e6bfef | 157 | %{__autoheader} |
b8ea5cae | 158 | cd .. |
12913987 | 159 | # Run grep '^OPAL_.*=' configure.ac|grep 'yes\|no' to check current defaults |
7d38eb5a | 160 | %configure \ |
b3f5804c | 161 | %{?with_java:JDK_ROOT=%{_jvmdir}/java} \ |
12913987 | 162 | %if %{with sip_fax_only} |
a7e6bfef JB |
163 | --disable-aec \ |
164 | --disable-g711plc \ | |
12913987 MM |
165 | --disable-h224 \ |
166 | --disable-h281 \ | |
a7e6bfef | 167 | --disable-h323 \ |
12913987 MM |
168 | --disable-h450 \ |
169 | --disable-h460 \ | |
170 | --disable-h501 \ | |
a7e6bfef | 171 | --disable-iax \ |
12913987 | 172 | --disable-ivr \ |
a7e6bfef | 173 | --disable-lid \ |
12913987 | 174 | --disable-plugins |
a7e6bfef JB |
175 | --disable-rfc4103 \ |
176 | --disable-rfc4175 \ | |
177 | --disable-sipim \ | |
178 | --disable-video \ | |
12913987 | 179 | %else |
b3f5804c JB |
180 | --enable-ixj \ |
181 | %endif | |
9008d5d2 | 182 | %{!?with_capi:--disable-capi} \ |
a7e6bfef | 183 | %{!?with_celt:--disable-celt} \ |
b3f5804c JB |
184 | %{!?with_java:--disable-java} \ |
185 | %{!?with_ruby:--disable-ruby} \ | |
9008d5d2 JB |
186 | %{!?with_srtp:--disable-srtp} \ |
187 | %{?with_vpb:--enable-vpb} \ | |
cee58fd7 JB |
188 | %if %{with zrtp} |
189 | --enable-zrtp \ | |
190 | --with-bn-includedir=/usr/include \ | |
191 | --with-bn-libdir=%{_libdir} \ | |
192 | --with-zrtp-includedir=/usr/include/libzrtp \ | |
193 | --with-zrtp-libdir=%{_libdir} | |
194 | %endif | |
12913987 | 195 | |
c1724659 | 196 | %{__make} %{?debug:debug}%{!?debug:opt} \ |
296d779e JR |
197 | CC="%{__cc}" \ |
198 | CPLUS="%{__cxx}" \ | |
a7e6bfef JB |
199 | OPTCCFLAGS="%{rpmcflags} %{!?debug:-DNDEBUG}" \ |
200 | VERBOSE=1 | |
b0b5ec3f | 201 | |
c0a25d84 | 202 | %{__cp} -a */libopal* . |
12913987 | 203 | %if %{without sip_fax_only} |
c1724659 | 204 | %{__make} -C samples/simple %{?debug:debug}%{!?debug:opt} \ |
296d779e | 205 | CC="%{__cc}" \ |
5ce6a9aa | 206 | CPLUS="%{__cxx}" \ |
c0a25d84 SS |
207 | CFLAGS="%{rpmcflags} %{!?debug:-DNDEBUG} -I`pwd`/include" \ |
208 | LDFLAGS="%{rpmldflags} -L`pwd` -lpt -lopal" | |
12913987 | 209 | %endif |
aaf12cf0 PG |
210 | |
211 | %install | |
212 | rm -rf $RPM_BUILD_ROOT | |
4733c726 | 213 | install -d $RPM_BUILD_ROOT%{_bindir} |
b0b5ec3f | 214 | |
215 | %{__make} install \ | |
216 | DESTDIR=$RPM_BUILD_ROOT | |
aaf12cf0 | 217 | |
12913987 MM |
218 | %{!?with_sip_fax_only:install samples/simple/obj/simpleopal $RPM_BUILD_ROOT%{_bindir}} |
219 | ||
4a7dfbfa | 220 | # This needs to be done after 'make install' |
7057c46b JB |
221 | %{__sed} \ |
222 | -e 's,^OPALDIR.*=.*$,OPALDIR\t\t\t\t= %{_libdir}/opal-%{version},;' \ | |
223 | -e 's,^OPAL_SRCDIR.*=.*$,OPAL_SRCDIR\t\t\t= %{_usrsrc}/debug/opal-%{version},;' \ | |
224 | -e 's,^OPAL_INCDIR.*=.*$,OPAL_INCDIR\t\t\t= %{_includedir}/opal,;' \ | |
225 | -e 's,^OPAL_LIBDIR.*=.*$,OPAL_LIBDIR\t\t\t= %{_libdir},;' \ | |
226 | opal_defs.mak > $RPM_BUILD_ROOT%{_includedir}/opal/opal_defs.mak | |
227 | cp -p opal_inc.mak $RPM_BUILD_ROOT%{_includedir}/opal | |
aaf12cf0 PG |
228 | |
229 | %clean | |
230 | rm -rf $RPM_BUILD_ROOT | |
231 | ||
232 | %post -p /sbin/ldconfig | |
233 | %postun -p /sbin/ldconfig | |
234 | ||
235 | %files | |
236 | %defattr(644,root,root,755) | |
a7e6bfef | 237 | %attr(755,root,root) %{_libdir}/libopal.so.%{version} |
12913987 | 238 | %if %{without sip_fax_only} |
a7e6bfef | 239 | %attr(755,root,root) %{_bindir}/simpleopal |
0dd5a601 | 240 | %dir %{_libdir}/opal-%{version} |
241 | %dir %{_libdir}/opal-%{version}/codecs | |
242 | %dir %{_libdir}/opal-%{version}/codecs/audio | |
24ae7846 JR |
243 | %{?with_celt:%attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/celt_ptplugin.so} |
244 | %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/g722_ptplugin.so | |
245 | %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/g7221_ptplugin.so | |
246 | %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/g7222_ptplugin.so | |
247 | %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/g726_ptplugin.so | |
248 | %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/gsm0610_ptplugin.so | |
249 | %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/gsmamrcodec_ptplugin.so | |
250 | %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/iLBC_ptplugin.so | |
251 | %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/ima_adpcm_ptplugin.so | |
252 | %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/lpc10_ptplugin.so | |
253 | %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/silk_ptplugin.so | |
254 | %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/speex_ptplugin.so | |
a7e6bfef | 255 | %dir %{_libdir}/opal-%{version}/codecs/video |
24ae7846 JR |
256 | %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/video/h261_vic_ptplugin.so |
257 | %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/video/h263_ffmpeg_ptplugin.so | |
bc09e567 | 258 | %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/video/h264_video_pwplugin_helper |
24ae7846 JR |
259 | %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/video/h264_x264_ptplugin.so |
260 | %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/video/mpeg4_ffmpeg_ptplugin.so | |
261 | %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/video/theora_ptplugin.so | |
a7e6bfef JB |
262 | %dir %{_libdir}/opal-%{version}/fax |
263 | %attr(755,root,root) %{_libdir}/opal-%{version}/fax/spandsp_ptplugin.so | |
264 | %dir %{_libdir}/opal-%{version}/lid | |
0dd5a601 | 265 | %attr(755,root,root) %{_libdir}/opal-%{version}/lid/ixj_lid_pwplugin.so |
b3f5804c JB |
266 | %endif |
267 | ||
268 | %if %{with vpb} | |
269 | %files lid-vpb | |
270 | %defattr(644,root,root,755) | |
271 | %attr(755,root,root) %{_libdir}/opal-%{version}/lid/vpb_ptplugin.so | |
12913987 | 272 | %endif |
aaf12cf0 PG |
273 | |
274 | %files devel | |
275 | %defattr(644,root,root,755) | |
a7e6bfef | 276 | %attr(755,root,root) %{_libdir}/libopal.so |
4733c726 SS |
277 | %{_includedir}/opal |
278 | %{_pkgconfigdir}/opal.pc | |
aaf12cf0 | 279 | |
296d779e JR |
280 | %files static |
281 | %defattr(644,root,root,755) | |
a7e6bfef | 282 | %{_libdir}/libopal_s.a |