ekiga.spec
author lp117937
Wed, 21 Jun 2006 18:20:03 +0000
changeset 7478 b3b16a2930db
parent 7459 c4f82e18f6de
child 7527 ac917ecf3f26
permissions -rw-r--r--
2006-06-21 Laszlo (Laca) Peter <[email protected]> * ekiga.spec: update to avoid libtool adding /var/tmp/*-build to the RUNPATH. The make install commands were moved to %install and CFLAGS/LDFLAGS were set so that configure finds the dependent libs. Some symlinks were also needed. * Solaris/SUNWgnome-meeting.spec: update CFLAGS/LDFLAGS

#
# spec file for package ekiga
#
# Copyright (c) 2005 Sun Microsystems, Inc.
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
Name:		ekiga
License:	GPL
Group:		X11/GNOME/Applications
Version:	2.0
Release:	1
Vendor:		Sun Microsystems, Inc.
Distribution:	Java Desktop System
Summary:	A GNOME based H.323/SIP video conferencing application
Source0:	http://snapshots.seconix.com/cvs/%{name}-cvs.tar.gz
Source1:	http://snapshots.seconix.com/cvs/pwlib-cvs.tar.gz
Source2:	http://snapshots.seconix.com/cvs/opal-cvs.tar.gz
Source3:	http://www.libsdl.org/release/SDL-1.2.9.tar.gz
Patch1:         ekiga-01-pwlib-cxxflags.diff
Patch2:         ekiga-02-pwlib-name.diff
Patch3:         ekiga-03-pwlib-plugindir.diff
Patch4:         ekiga-04-opal-name.diff
Patch5:         ekiga-05-multi-decla.diff
Patch6:         ekiga-06-menu-entry.diff

URL:		http://www.gnomemeeting.org
BuildRoot:	%{_tmppath}/%{name}-root
Docdir:       	%{_docdir}/%{name}
Autoreqprov:  	on

%define libsdl_version 1.2.9
%define pwlib_version 1.11.0
%define opal_version 2.3.0
%define GConf_version 2.4.0.1
%define gtk2_version 2.3.1
%define openldap2_devel_version 2.1.4
%define intltool_version 0.27
%define libgnomeui_version 2.4.0.1
%define des_version 4.04
%define heimdal_version 0.4
%define cyrus_sasl_version 1.5.27
%define openssl_version 0.9.6
%define flex_version 2.5.4
%define slang_version 1.4.5
%define pam_version 0.76
%define db_version 4.0.14
%define gdbm_version 1.8.0
%define howl_version 1.0.0

Requires: libsdl >= %{libsdl_version}
Requires: pwlib >= %{pwlib_version}
Requires: opal >= %{opal_version}
Requires: GConf >= %{GConf_version}
Requires: libgnomeui >= %{libgnomeui_version}
Requires: howl >= %{howl_version}
Requires: evolution-data-server
BuildRequires: gtk2-devel >= %{gtk2_version}
BuildRequires: GConf-devel >= %{GConf_version}
BuildRequires: openh323-devel >= %{openh323_version}
BuildRequires: pwlib-devel >= %{pwlib_version}
BuildRequires: intltool >= %{intltool_version}
BuildRequires: libgnomeui-devel >= %{libgnomeui_version}
BuildRequires: des >= %{des_version}
BuildRequires: heimdal-devel >= %{heimdal_version}
BuildRequires: cyrus-sasl-devel >= %{cyrus_sasl_version}
BuildRequires: openssl-devel >= %{openssl_version}
BuildRequires: openldap2-devel >= %{openldap2_devel_version}
BuildRequires: flex >= %{flex_version}
BuildRequires: slang-devel >= %{slang_version}
BuildRequires: pam-devel >= %{pam_version}
BuildRequires: db-devel >= %{db_version}
BuildRequires: gdbm-devel >= %{gdbm_version}
BuildRequires: howl-devel >= %{howl_version}
BuildRequires: evolution-data-server-devel
Prereq:        GConf

%description
Ekiga is a free Voice over IP phone allowing you to do free calls over   
the Internet. Ekiga is the first Open Source application to support 
both H.323 and SIP, as well as audio and video. Ekiga was formerly known 
as GnomeMeeting. 

%prep
%setup -q -b 1 -b 2 -b 3 -n %{name}
# patch for pwlib
cd ../pwlib
%patch1 -p1
%patch2 -p1
%patch3 -p1
# patch for opal
cd ../opal
%patch4 -p1
# patch for ekiga
cd ../ekiga
%patch5 -p1
%patch6 -p1

%build
%ifos linux
if [ -x /usr/bin/getconf ]; then
  CPUS=`getconf _NPROCESSORS_ONLN`
fi
%else
  CPUS=`/usr/sbin/psrinfo | grep on-line | wc -l | tr -d ' '`
%endif
if test "x$CPUS" = "x" -o $CPUS = 0; then
  CPUS=1
fi
export PKG_CONFIG=/usr/bin/pkg-config

# build libsdl
export CFLAGS="$RPM_OPT_FLAGS"
cd ../SDL-%{libsdl_version}
./configure --prefix=%{_prefix} \
            --libdir=%{_libdir}/%{name} \
            --bindir=%{_bindir} \
            --datadir=%{_datadir} \
            --includedir=%{_includedir} \
            --mandir=%{_mandir} 
make -j $CPUS

cd ..
export MYDIR=`pwd`

# build pwlib
cd pwlib
# symlink the make dir to bin so that ptlib-config is found by ekiga
ln -s make bin
#FIXME
# set RPM_OPT_FLAGS to null since pwlib messly uses
# STDCCFLAGS for both CC and CXX, which picks up the
# value of RPM_OPT_FLAGS
RPM_OPT_FLAGS_SAVE=$RPM_OPT_FLAGS
RPM_OPT_FLAGS=""
PWLIBDIR=`pwd`
export RPM_OPT_FLAGS PWLIBDIR
autoconf
export CFLAGS="$CFLAGS -I${MYDIR}/SDL-%{libsdl_version}/src"
export LDFLAGS="$LDFLAGS -L${MYDIR}/SDL-%{libsdl_version}/src/.libs"
./configure --prefix=%{_prefix} \
            --libdir=%{_libdir}/%{name} \
            --bindir=%{_bindir} \
            --datadir=%{_datadir} \
            --includedir=%{_includedir} \
            --mandir=%{_mandir} \
            --enable-plugins \
            --enable-resolver \
            --enable-opal \
            --enable-sunaudio
make -j $CPUS
# set original RPM_OPT_FLAGS back
RPM_OPT_FLAGS=$RPM_OPT_FLAGS_SAVE
export RPM_OPT_FLAGS

# build opal
cd ../opal
./configure --prefix=%{_prefix} \
            --libdir=%{_libdir}/%{name} \
            --bindir=%{_bindir} \
            --datadir=%{_datadir} \
            --includedir=%{_includedir} \
            --mandir=%{_mandir} \
	    --enable-localspeex
make -j $CPUS

# build ekiga
cd ../%{name}
# so that SDL/include can be found
rm -f SDL; ln -s ../SDL-%{libsdl_version} SDL
ACLOCAL_FLAGS="$ACLOCAL_FLAG -I SDL"
SDL_CONFIG=${MYDIR}/SDL-%{libsdl_version}/sdl-config
export SDL_CONFIG ACLOCAL_FLAGS
./autogen.sh --prefix=%{_prefix} \
             --libdir=%{_libdir}/%{name} \
             --bindir=%{_bindir} \
             --datadir=%{_datadir} \
             --includedir=%{_includedir} \
             --mandir=%{_mandir} \
	     --sysconfdir=%{_sysconfdir} \
	     --with-pwlib-dir=${MYDIR}/pwlib \
	     --with-opal-dir=${MYDIR}/opal \
	     --with-sdl-prefix=${MYDIR}/SDL-%{libsdl_version} \
	     --disable-avahi \
	     --disable-scrollkeeper

make -j $CPUS LIBS=-lX11

%install
cd ../pwlib
make install DESTDIR=$RPM_BUILD_ROOT

cd ../opal
make install DESTDIR=$RPM_BUILD_ROOT

rm -rf $RPM_BUILD_ROOT%{_bindir}
rm -rf $RPM_BUILD_ROOT%{_datadir}
rm -rf $RPM_BUILD_ROOT%{_mandir}
rm -rf $RPM_BUILD_ROOT%{_includedir}

cd ../%name
GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1
export GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL
make install DESTDIR=$RPM_BUILD_ROOT

%clean
rm -rf $RPM_BUILD_ROOT

%post 
export GCONF_CONFIG_SOURCE=`gconftool-2 --get-default-source`
SCHEMAS="ekiga.schemas"
for S in $SCHEMAS; do
        gconftool-2 --makefile-install-rule %{_sysconfdir}/gconf/schemas/$S >/dev/null
done

%files
%defattr(-,root,root)
%doc FAQ AUTHORS NEWS
%dir %{_datadir}/ekiga/xdap
%dir %{_datadir}/sounds/ekiga
#%{_datadir}/man/man1/ekiga.1.gz
%{_bindir}/ekiga*
%{_datadir}/locale/*/LC_MESSAGES/ekiga.mo
%{_datadir}/applications/ekiga.desktop
%{_datadir}/sounds/ekiga/*
%{_datadir}/pixmaps/ekiga*
%{_libdir}/bonobo/servers/ekiga.server
%{_datadir}/ekiga/xdap/*
%{_sysconfdir}/gconf/schemas/ekiga.schemas
%{_datadir}/gnome/*
%{_datadir}/omf/*
%{_mandir}/man1/*


%changelog
* Fri Jun 16 2006 - [email protected]
- add GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 to make sure not
  install the directory based %gconf.xml files based on the 
  instruction in gconf.txt

* Wed Jun 07 2006 - [email protected]
- chdir into ekiga dir before applying ekiga patches.

* Fri Jun 02 2006 - [email protected]
- Add patch for change the menu entry according to the UI spec.

* Mon May 15 2006 - [email protected]
- Add patch ekiga-08-multi-decla.diff to fix multiple declaration
  error.

* Fri Apr 14 2006 - <[email protected]>
- Initial release for ekiga