]> git.pld-linux.org Git - packages/opal.git/blobdiff - opal.spec
- up to 3.10.8
[packages/opal.git] / opal.spec
index 8365f058ac4dd3abbb8138e87a23be2b12dee860..98f2b61581828b761458a0cb0ca39f56be62ab93 100644 (file)
--- a/opal.spec
+++ b/opal.spec
+# TODO:
+#      fix static libname (libopal_s.a)
+#      IPv6 support requires IPv6 support in ptlib
+#      x264+ffmpeg detection sucks - it doesn't work with --as-needed
+#       SpanDSP FAX support requires t38_indicator symbol
+#      MPEG4 rate control correction requires libavcodec sources
+#       CAPI support
+#
+# WARNING: opal version should match Ekiga and ptlib versions
+#      Recommendations: http://wiki.ekiga.org/index.php/Download_Ekiga_sources
+#
+# Conditional build:
+%bcond_with    sip_fax_only    # Minimal build for t38modem + SIP
+%bcond_without celt            # Build with CELT codec support
+#
+# Don't touch this! strip removes all symbols from library
+%define                no_install_post_strip           1
+#
 Summary:       Open Phone Abstraction Library (aka OpenH323 v2)
-Summary(pl):   Biblioteka Open Phone Abstraction Library (aka OpenH323 v2)
+Summary(pl.UTF-8):     Biblioteka Open Phone Abstraction Library (aka OpenH323 v2)
 Name:          opal
-Version:       2.1.3
+Version:       3.10.8
 Release:       0.1
 License:       MPL
 Group:         Libraries
-Source0:       http://www.ekiga.org/downloads/beta2/sources/%{name}-%{version}.tar.gz
-# Source0-md5: 10cbc244058b8f4928a9e337a9025fb7
-#Patch0:               %{name}-opaldir.patch
-URL:           http://www.openh323.org/
-BuildRequires: pwlib-devel >= 1.9.3-1
-BuildRequires: speex-devel >= 1:1.1.5
+URL:           http://www.opalvoip.org
+Source0:       http://downloads.sourceforge.net/opalvoip/%{name}-%{version}.tar.bz2
+# Source0-md5: b4907073e00889a9e7c6c49d41e4e2d4
+Patch0:                %{name}-libname.patch
+Patch1:                %{name}-mak_files.patch
+Patch2:                %{name}-ac.patch
+Patch3:                %{name}-build.patch
+BuildRequires: autoconf
+BuildRequires: automake
+%{?with_celt:BuildRequires:    celt-devel <= 0.8.1}
+BuildRequires: expat-devel
 BuildRequires: libstdc++-devel
-%requires_eq   pwlib
-Obsoletes:     openh323
+BuildRequires: pkgconfig
+BuildRequires: ptlib-devel >= 1:2.8.3
+BuildRequires: sed >= 4.0
+%{?with_celt:Requires: celt <= 0.8.1}
+%if %{without sip_fax_only}
+BuildRequires: SDL-devel
+BuildRequires: ffmpeg-devel
+BuildRequires: libgsm-devel
+BuildRequires: libtheora-devel
+BuildRequires: libx264-devel
+BuildRequires: openssl-devel
+BuildRequires: speex-devel >= 1:1.1.5
+BuildRequires: unixODBC-devel
+%endif
+%requires_eq   ptlib
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
+%define                filterout_ld    -Wl,--as-needed
+
 %description
-The OpenH323 project aims to create a full featured, interoperable,
-Open Source implementation of the ITU H.323 teleconferencing protocol
-that can be used by personal developers and commercial users without
+The OPAL project aims to create a full featured, interoperable, Open
+Source implementation of the ITU H.323 teleconferencing protocol that
+can be used by personal developers and commercial users without
 charge.
 
-%description -l pl
-Celem projektu OpenH323 jest stworzenie w pe³ni funkcjonalnej i
-wyposa¿onej implementacji protoko³u telekonferencyjnego ITU H.323,
-który mo¿e byæ u¿ywany przez u¿ytkowników prywatnych i komercyjnych
-bez op³at.
+%description -l pl.UTF-8
+Celem projektu OPAL jest stworzenie w pełni funkcjonalnej i
+wyposażonej implementacji protokołu telekonferencyjnego ITU H.323,
+który może być używany przez użytkowników prywatnych i komercyjnych
+bez opłat.
 
 %package devel
 Summary:       Opal development files
-Summary(pl):   Pliki dla developerów Opal
+Summary(pl.UTF-8):     Pliki dla developerów Opal
 Group:         Development/Libraries
-Requires:      %{name} = %{version}
+Requires:      %{name} = %{version}-%{release}
 Requires:      libstdc++-devel
-Requires:      pwlib-devel
-Obsoletes:     openh323-devel
+Requires:      ptlib-devel
 
 %description devel
-Header files and libraries for developing applications that use
-Opal.
+Header files and libraries for developing applications that use OPAL.
 
-%description devel -l pl
-Pliki nag³ówkowe i biblioteki konieczne do rozwoju aplikacji
-u¿ywaj±cych Opal.
+%description devel -l pl.UTF-8
+Pliki nagłówkowe i biblioteki konieczne do rozwoju aplikacji
+używających OPAL.
 
-#%package static
-#Summary:      Opal static libraries
-#Summary(pl):  Biblioteki statyczne Opal
-#Group:                Development/Libraries
-#Requires:     %{name}-devel = %{version}
-#Obsoletes:    openh323-static
+%package static
+Summary:       OPAL static libraries
+Summary(pl.UTF-8):     Biblioteki statyczne OPAL
+Group:         Development/Libraries
+Requires:      %{name}-devel = %{version}-%{release}
 
-#%description static
-#OpenH323 static libraries.
+%description static
+OPAL static libraries.
 
-#%description static -l pl
-#Biblioteki statyczne OpenH323.
+%description static -l pl.UTF-8
+Biblioteki statyczne OPAL.
 
 %prep
 %setup -q
-#%patch0 -p1
+#patch0 -p1
+#patch1 -p1
+#patch2 -p1
+%patch3 -p1
 
 %build
 PWLIBDIR=%{_prefix}; export PWLIBDIR
-#OPALDESTDIR=%{_prefix}; export OPALDIR
-#OPENH323_BUILD="yes"; export OPENH323_BUILD
-#cp -f /usr/share/automake/config.sub .
+OPALDIR=`pwd`; export OPALDIR
+OPAL_BUILD="yes"; export OPAL_BUILD
+%{__aclocal}
 %{__autoconf}
-%configure 
-#      --disable-iax
-#touch .asnparser.version
-
-%{__make}
-
-#%{__make} %{?debug:debug}%{!?debug:opt} \
-#              CC=%{__cc} CPLUS=%{__cxx} \
-#              PWLIB_MAKE=%{_datadir}/pwlib \
-#              ASNPARSER=%{_bindir}/asnparser \
-#              OPTCCFLAGS="%{rpmcflags}"
-
-#%%{__make} -C samples/simple %{?debug:debugshared}%{!?debug:optshared} \
-#              CC=%{__cc} CPLUS=%{__cxx} \
-#              OPTCCFLAGS="%{rpmcflags}"
+cd plugins
+%{__aclocal}
+%{__autoconf}
+cd ..
+# Run  grep '^OPAL_.*=' configure.ac|grep 'yes\|no'  to check current defaults
+%configure \
+%if %{with sip_fax_only}
+       --enable-sip \
+       --enable-t38 \
+       --enable-fax \
+       --enable-statistics \
+       --disable-java \
+       --disable-video \
+       --disable-h323 \
+       --disable-iax \
+       --disable-h224 \
+       --disable-h281 \
+       --disable-sipim \
+       --disable-rfc4103 \
+       --disable-h450 \
+       --disable-h460 \
+       --disable-h501 \
+       --disable-lid \
+       --disable-ivr \
+       --disable-rfc4175 \
+       --disable-aec \
+       --disable-g711plc \
+       --disable-plugins
+%else
+%{!?with_celt:--disable-celt} \
+       --enable-ixj
+%endif
+
+
+%{__make} %{?debug:debug}%{!?debug:opt} \
+       CC="%{__cc}" \
+       CPLUS="%{__cxx}" \
+       OPTCCFLAGS="%{rpmcflags} %{!?debug:-DNDEBUG}"
+
+%{__cp} -a */libopal* .
+%if %{without sip_fax_only}
+%{__make} -C samples/simple %{?debug:debug}%{!?debug:opt} \
+       CC="%{__cc}" \
+       CPLUS="%{__cxx}" \
+       CFLAGS="%{rpmcflags} %{!?debug:-DNDEBUG} -I`pwd`/include" \
+       LDFLAGS="%{rpmldflags} -L`pwd` -lpt -lopal"
+%endif
 
 %install
 rm -rf $RPM_BUILD_ROOT
-#install -d $RPM_BUILD_ROOT{%{_libdir},%{_includedir}/openh323,%{_bindir},%{_datadir}/misc}
+install -d $RPM_BUILD_ROOT%{_bindir}
 
 %{__make} install \
         DESTDIR=$RPM_BUILD_ROOT
 
-#using cp as install won't preserve links
-#cp -d lib/lib* $RPM_BUILD_ROOT%{_libdir}
-#install include/*.h $RPM_BUILD_ROOT%{_includedir}/openh323
-#install version.h $RPM_BUILD_ROOT%{_includedir}/openh323
-#install samples/simple/obj_*/simph323 $RPM_BUILD_ROOT%{_bindir}
+%{!?with_sip_fax_only:install samples/simple/obj/simpleopal $RPM_BUILD_ROOT%{_bindir}}
 
-#sed -e's@\$(OPALDIR)/include@&/opal@' < opal_inc.mak \
-#      > $RPM_BUILD_ROOT%{_datadir}/opal/opal_inc1.mak
+# This needs to be done after 'make install'
+sed -i -e \
+'s,^OPALDIR.*=.*$,OPALDIR\t\t\t\t= %{_libdir}/opal-%{version},;'\
+'s,^OPAL_SRCDIR.*=.*$,OPAL_SRCDIR\t\t\t= %{_usrsrc}/debug/opal-%{version},;'\
+'s,^OPAL_INCDIR.*=.*$,OPAL_INCDIR\t\t\t= %{_includedir}/opal,;'\
+'s,^OPAL_LIBDIR.*=.*$,OPAL_LIBDIR\t\t\t= %{_libdir},;' \
+opal_defs.mak
+
+install opal_{inc,defs}.mak $RPM_BUILD_ROOT%{_includedir}/opal
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -108,16 +181,40 @@ rm -rf $RPM_BUILD_ROOT
 
 %files
 %defattr(644,root,root,755)
-#%attr(755,root,root) %{_bindir}/*
 %attr(755,root,root) %{_libdir}/lib*.so.*.*
+%if %{without sip_fax_only}
+%attr(755,root,root) %{_bindir}/*
+%dir %{_libdir}/opal-%{version}
+%dir %{_libdir}/opal-%{version}/codecs
+%dir %{_libdir}/opal-%{version}/codecs/audio
+%dir %{_libdir}/opal-%{version}/codecs/video
+%dir %{_libdir}/opal-%{version}/lid
+%{?with_celt:%attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/celtcodec_pwplugin.so}
+%attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/g722_audio_pwplugin.so
+%attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/g726_audio_pwplugin.so
+%attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/gsm0610_audio_pwplugin.so
+%attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/gsmamrcodec_pwplugin.so
+%attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/ilbc_audio_pwplugin.so
+%attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/ima_adpcm_audio_pwplugin.so
+%attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/lpc10_audio_pwplugin.so
+%attr(755,root,root) %{_libdir}/opal-%{version}/codecs/audio/speex_audio_pwplugin.so
+%attr(755,root,root) %{_libdir}/opal-%{version}/codecs/video/h261-vic_video_pwplugin.so
+%attr(755,root,root) %{_libdir}/opal-%{version}/codecs/video/h263-1998_video_pwplugin.so
+#%attr(755,root,root) %{_libdir}/opal-%{version}/codecs/video/h263-ffmpeg_video_pwplugin.so
+%attr(755,root,root) %{_libdir}/opal-%{version}/codecs/video/h264_video_pwplugin_helper
+%attr(755,root,root) %{_libdir}/opal-%{version}/codecs/video/h264_video_pwplugin.so
+%attr(755,root,root) %{_libdir}/opal-%{version}/codecs/video/mpeg4-ffmpeg_video_pwplugin.so
+%attr(755,root,root) %{_libdir}/opal-%{version}/codecs/video/theora_video_pwplugin.so
+%attr(755,root,root) %{_libdir}/opal-%{version}/lid/ixj_lid_pwplugin.so
+%attr(755,root,root) %{_libdir}/opal-%{version}/lid/vpb_lid_pwplugin.so
+%endif
 
 %files devel
 %defattr(644,root,root,755)
-#%doc *.txt
 %attr(755,root,root) %{_libdir}/*.so
-%{_includedir}/*
-%{_datadir}/%{name}
+%{_includedir}/opal
+%{_pkgconfigdir}/opal.pc
 
-#%files static
-#%defattr(644,root,root,755)
-#%{_libdir}/*.a
+%files static
+%defattr(644,root,root,755)
+%{_libdir}/*.a
This page took 0.109702 seconds and 4 git commands to generate.