2 # SBC plugin is missing bluez_sbc subdir
3 # fix static libname (libopal_s.a)
4 # IPv6 support requires IPv6 support in ptlib
5 # x264+ffmpeg detection sucks - it doesn't work with --as-needed
6 # SpanDSP FAX support requires t38_indicator symbol
7 # MPEG4 rate control correction requires libavcodec sources
9 # VPB support (--enable-libvpb, needs exceptions enabled in ptlib, BR: libvpb)
11 # WARNING: opal version should match Ekiga and ptlib versions
12 # Recommendations: http://wiki.ekiga.org/index.php/Download_Ekiga_sources
15 %bcond_with sip_fax_only # Minimal build for t38modem + SIP
16 %bcond_without celt # CELT codec support
17 %bcond_with srtp # SRTP protocol support (mutually exclusive with zrtp)
18 %bcond_with zrtp # ZRTP protocol support [TODO: libzrtp[3]]
19 %bcond_with capi # CAPI [TODO: libcapi20, capi20.h]
20 %bcond_with java # Java JNI support
21 %bcond_with ruby # Ruby support
23 # Don't touch this! strip removes all symbols from library
24 %define no_install_post_strip 1
26 Summary: Open Phone Abstraction Library (aka OpenH323 v2)
27 Summary(pl.UTF-8): Biblioteka Open Phone Abstraction Library (aka OpenH323 v2)
33 Source0: http://downloads.sourceforge.net/opalvoip/%{name}-%{version}.tar.bz2
34 # Source0-md5: f5dee986b7ae0d840bcc502785ea5bd7
35 Patch0: %{name}-build.patch
36 Patch1: %{name}-ffmpeg10.patch
37 Patch2: %{name}-sh.patch
38 Patch3: %{name}-libilbc.patch
39 Patch4: %{name}-ah.patch
40 URL: http://www.opalvoip.org/
41 BuildRequires: autoconf >= 2.50
42 BuildRequires: automake
43 %{?with_celt:BuildRequires: celt-devel}
44 BuildRequires: expat-devel
45 BuildRequires: libstdc++-devel
46 BuildRequires: pkgconfig
47 BuildRequires: ptlib-devel >= 1:2.10.9
48 BuildRequires: sed >= 4.0
49 %if %{without sip_fax_only}
50 BuildRequires: SDL-devel
51 # libavcodec >= 51.11.0 libavutil
52 BuildRequires: ffmpeg-devel
53 %{?with_java:BuildRequires: jdk}
54 BuildRequires: libgsm-devel
55 BuildRequires: libtheora-devel
57 BuildRequires: libx264-devel >= 0.1.3-1.20101031_2245.1
58 BuildRequires: webrtc-libilbc-devel
59 BuildRequires: openssl-devel
60 %{?with_ruby:BuildRequires: ruby-devel}
62 BuildRequires: speex-devel >= 1:1.2
63 BuildRequires: spandsp-devel
65 BuildRequires: unixODBC-devel
68 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
70 %define filterout_ld -Wl,--as-needed
73 The OPAL project aims to create a full featured, interoperable, Open
74 Source implementation of the ITU H.323 teleconferencing protocol that
75 can be used by personal developers and commercial users without
78 %description -l pl.UTF-8
79 Celem projektu OPAL jest stworzenie w pełni funkcjonalnej i
80 wyposażonej implementacji protokołu telekonferencyjnego ITU H.323,
81 który może być używany przez użytkowników prywatnych i komercyjnych
85 Summary: Opal development files
86 Summary(pl.UTF-8): Pliki dla developerów Opal
87 Group: Development/Libraries
88 Requires: %{name} = %{version}-%{release}
89 Requires: libstdc++-devel
90 Requires: ptlib-devel >= 1:2.10.9
93 Header files and libraries for developing applications that use OPAL.
95 %description devel -l pl.UTF-8
96 Pliki nagłówkowe i biblioteki konieczne do rozwoju aplikacji
100 Summary: OPAL static libraries
101 Summary(pl.UTF-8): Biblioteki statyczne OPAL
102 Group: Development/Libraries
103 Requires: %{name}-devel = %{version}-%{release}
106 OPAL static libraries.
108 %description static -l pl.UTF-8
109 Biblioteki statyczne OPAL.
120 PWLIBDIR=%{_prefix}; export PWLIBDIR
121 OPALDIR=`pwd`; export OPALDIR
122 OPAL_BUILD="yes"; export OPAL_BUILD
125 # don't run autoheader here, include/opal/buildopts.h.in is manually written
131 # Run grep '^OPAL_.*=' configure.ac|grep 'yes\|no' to check current defaults
133 %if %{with sip_fax_only}
152 %{?with_capi:--enable-capi} \
153 %{!?with_celt:--disable-celt} \
155 %{?with_java:--enable-java} \
156 %{?with_ruby:--enable-ruby} \
157 %{?with_srtp:--enable-srtp} \
158 %{?with_zrtp:--enable-zrtp}
161 %{__make} %{?debug:debug}%{!?debug:opt} \
164 OPTCCFLAGS="%{rpmcflags} %{!?debug:-DNDEBUG}" \
167 %{__cp} -a */libopal* .
168 %if %{without sip_fax_only}
169 %{__make} -C samples/simple %{?debug:debug}%{!?debug:opt} \
172 CFLAGS="%{rpmcflags} %{!?debug:-DNDEBUG} -I`pwd`/include" \
173 LDFLAGS="%{rpmldflags} -L`pwd` -lpt -lopal"
177 rm -rf $RPM_BUILD_ROOT
178 install -d $RPM_BUILD_ROOT%{_bindir}
181 DESTDIR=$RPM_BUILD_ROOT
183 %{!?with_sip_fax_only:install samples/simple/obj/simpleopal $RPM_BUILD_ROOT%{_bindir}}
185 # This needs to be done after 'make install'
187 's,^OPALDIR.*=.*$,OPALDIR\t\t\t\t= %{_libdir}/opal-%{version},;'\
188 's,^OPAL_SRCDIR.*=.*$,OPAL_SRCDIR\t\t\t= %{_usrsrc}/debug/opal-%{version},;'\
189 's,^OPAL_INCDIR.*=.*$,OPAL_INCDIR\t\t\t= %{_includedir}/opal,;'\
190 's,^OPAL_LIBDIR.*=.*$,OPAL_LIBDIR\t\t\t= %{_libdir},;' \
193 install opal_{inc,defs}.mak $RPM_BUILD_ROOT%{_includedir}/opal
196 rm -rf $RPM_BUILD_ROOT
198 %post -p /sbin/ldconfig
199 %postun -p /sbin/ldconfig
202 %defattr(644,root,root,755)
203 %attr(755,root,root) %{_libdir}/libopal.so.%{version}
204 %if %{without sip_fax_only}
205 %attr(755,root,root) %{_bindir}/simpleopal
206 %dir %{_libdir}/opal-%{version}
207 %dir %{_libdir}/opal-%{version}/codecs
208 %dir %{_libdir}/opal-%{version}/codecs/audio
209 %{?with_celt:%attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/celt_ptplugin.so}
210 %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/g722_ptplugin.so
211 %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/g7221_ptplugin.so
212 %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/g7222_ptplugin.so
213 %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/g726_ptplugin.so
214 %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/gsm0610_ptplugin.so
215 %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/gsmamrcodec_ptplugin.so
216 %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/iLBC_ptplugin.so
217 %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/ima_adpcm_ptplugin.so
218 %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/lpc10_ptplugin.so
219 %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/silk_ptplugin.so
220 %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/speex_ptplugin.so
221 %dir %{_libdir}/opal-%{version}/codecs/video
222 %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/video/h261_vic_ptplugin.so
223 %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/video/h263_ffmpeg_ptplugin.so
224 %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/video/h264_video_pwplugin_helper
225 %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/video/h264_x264_ptplugin.so
226 %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/video/mpeg4_ffmpeg_ptplugin.so
227 %attr(755,root,root) %{_libdir}/opal-%{version}/codecs/video/theora_ptplugin.so
228 %dir %{_libdir}/opal-%{version}/fax
229 %attr(755,root,root) %{_libdir}/opal-%{version}/fax/spandsp_ptplugin.so
230 %dir %{_libdir}/opal-%{version}/lid
231 %attr(755,root,root) %{_libdir}/opal-%{version}/lid/ixj_lid_pwplugin.so
232 #%attr(755,root,root) %{_libdir}/opal-%{version}/lid/vpb_lid_pwplugin.so
236 %defattr(644,root,root,755)
237 %attr(755,root,root) %{_libdir}/libopal.so
239 %{_pkgconfigdir}/opal.pc
242 %defattr(644,root,root,755)
243 %{_libdir}/libopal_s.a