Home | History | Annotate | Download | only in gnome-2-16
      1 #
      2 # spec file for package ekiga
      3 #
      4 # Copyright (c) 2005 Sun Microsystems, Inc.
      5 # This file and all modifications and additions to the pristine
      6 # package are under the same license as the package itself.
      7 #
      8 # Owner: davelam
      9 #
     10 Name:		ekiga
     11 License:	GPL
     12 Group:		X11/GNOME/Applications
     13 # NOTE: All tarballs should be updated at the same time because ekiga's
     14 #       configure will generally expect them to be in sync.
     15 Version:        2.0.5
     16 %define libsdl_version 1.2.11
     17 %define pwlib_version 1.10.4
     18 %define opal_version 2.2.5
     19 Release:	1
     20 Vendor:		Sun Microsystems, Inc.
     21 Distribution:	Java Desktop System
     22 Summary:	A GNOME based H.323/SIP video conferencing application
     23 Source0:        http://www.ekiga.org/admin/downloads/latest/sources/sources/ekiga-%{version}.tar.bz2
     24 Source1:        http://www.ekiga.org/admin/downloads/latest/sources/sources/opal-%{opal_version}.tar.gz
     25 Source2:        http://www.ekiga.org/admin/downloads/latest/sources/sources/pwlib-%{pwlib_version}.tar.gz
     26 Source3:        http://www.libsdl.org/release/SDL-%{libsdl_version}.tar.gz
     27 
     28 # owner:davelam date:2006-04-14 type:branding
     29 # use cxxflags to fix build problem
     30 Patch1:         ekiga-01-pwlib-cxxflags.diff
     31 
     32 # owner:davelam date:2006-04-14 type:branding
     33 # change library naming rule to fit unix style
     34 Patch2:         ekiga-02-pwlib-name.diff
     35 
     36 # owner:davelam date:2006-04-14 type:branding
     37 # change pwlib plugin install dir
     38 Patch3:         ekiga-03-pwlib-plugindir.diff
     39 
     40 # owner:davelam date:2006-04-14 type:branding
     41 # change library naming rule to fit unix style
     42 Patch4:         ekiga-04-opal-name.diff
     43 
     44 # owner:gman date:2006-06-02 type:branding
     45 # change the menu entry according to the UI spec
     46 Patch6:         ekiga-06-menu-entry.diff 
     47 
     48 # owner:davelam date:2006-07-10 type:branding
     49 # add autogen.sh to use autogen
     50 Patch7:         ekiga-07-autogen.diff 
     51 
     52 # owner:hawklu date:2006-10-17 type:bug bugzilla:356696
     53 Patch10:        ekiga-10-pwlib-bz356696.diff
     54 
     55 # owner:hawklu date:2006-11-27 type:bug bugster:6492117
     56 Patch18:        ekiga-18-sunray-port-conflict.diff
     57 
     58 # owner:elainexiong date:2007-01-15 type:bug bugzilla:
     59 Patch21:        ekiga-21-pwlib-v4l2-enable.diff
     60 
     61 # owner:elainexiong date:2007-03-11 type:branding
     62 Patch22:        ekiga-22-ekiga-performance-tuning.diff
     63 
     64 # owner:elainexiong date:2007-03-11 type:branding
     65 Patch23:        ekiga-23-pwlib-performance-tuning.diff
     66 
     67 URL:		http://www.ekiga.org
     68 BuildRoot:	%{_tmppath}/%{name}-root
     69 Docdir:       	%{_docdir}/%{name}
     70 Autoreqprov:  	on
     71 
     72 # The following version definitions probably are out of date, need update
     73 %define GConf_version 2.4.0.1
     74 %define gtk2_version 2.3.1
     75 %define openldap2_devel_version 2.1.4
     76 %define intltool_version 0.27
     77 %define libgnomeui_version 2.4.0.1
     78 %define des_version 4.04
     79 %define heimdal_version 0.4
     80 %define cyrus_sasl_version 1.5.27
     81 %define openssl_version 0.9.6
     82 %define flex_version 2.5.4
     83 %define slang_version 1.4.5
     84 %define pam_version 0.76
     85 %define db_version 4.0.14
     86 %define gdbm_version 1.8.0
     87 %define howl_version 1.0.0
     88 
     89 Requires: libsdl >= %{libsdl_version}
     90 Requires: pwlib >= %{pwlib_version}
     91 Requires: opal >= %{opal_version}
     92 Requires: GConf >= %{GConf_version}
     93 Requires: libgnomeui >= %{libgnomeui_version}
     94 Requires: howl >= %{howl_version}
     95 Requires: evolution-data-server
     96 BuildRequires: gtk2-devel >= %{gtk2_version}
     97 BuildRequires: GConf-devel >= %{GConf_version}
     98 BuildRequires: openh323-devel >= %{openh323_version}
     99 BuildRequires: pwlib-devel >= %{pwlib_version}
    100 BuildRequires: intltool >= %{intltool_version}
    101 BuildRequires: libgnomeui-devel >= %{libgnomeui_version}
    102 BuildRequires: des >= %{des_version}
    103 BuildRequires: heimdal-devel >= %{heimdal_version}
    104 BuildRequires: cyrus-sasl-devel >= %{cyrus_sasl_version}
    105 BuildRequires: openssl-devel >= %{openssl_version}
    106 BuildRequires: openldap2-devel >= %{openldap2_devel_version}
    107 BuildRequires: flex >= %{flex_version}
    108 BuildRequires: slang-devel >= %{slang_version}
    109 BuildRequires: pam-devel >= %{pam_version}
    110 BuildRequires: db-devel >= %{db_version}
    111 BuildRequires: gdbm-devel >= %{gdbm_version}
    112 BuildRequires: howl-devel >= %{howl_version}
    113 BuildRequires: evolution-data-server-devel
    114 Prereq:        GConf
    115 
    116 %description
    117 Ekiga is a free Voice over IP phone allowing you to do free calls over   
    118 the Internet. Ekiga is the first Open Source application to support 
    119 both H.323 and SIP, as well as audio and video. Ekiga was formerly known 
    120 as GnomeMeeting. 
    121 
    122 %prep
    123 %setup -q -b 1 -b 2 -b 3 -n %{name}*
    124 # patch for pwlib
    125 cd ../pwlib-%{pwlib_version}
    126 %patch1 -p1
    127 %patch2 -p1
    128 %patch3 -p1
    129 %patch10 -p1
    130 %patch21 -p1
    131 %patch23 -p1
    132 # patch for opal
    133 cd ../opal-%{opal_version}
    134 %patch4 -p1
    135 # patch for ekiga
    136 cd ../ekiga-%{version}
    137 %patch6 -p1
    138 %patch7 -p1
    139 %patch18 -p1
    140 %patch22 -p1
    141 chmod +x autogen.sh
    142 
    143 %build
    144 %ifos linux
    145 if [ -x /usr/bin/getconf ]; then
    146   CPUS=`getconf _NPROCESSORS_ONLN`
    147 fi
    148 %else
    149   CPUS=`/usr/sbin/psrinfo | grep on-line | wc -l | tr -d ' '`
    150 %endif
    151 if test "x$CPUS" = "x" -o $CPUS = 0; then
    152   CPUS=1
    153 fi
    154 export PKG_CONFIG=/usr/bin/pkg-config
    155 
    156 # build libsdl
    157 export CFLAGS="$RPM_OPT_FLAGS"
    158 cd ../SDL-%{libsdl_version}
    159 ./configure --prefix=%{_prefix} \
    160             --libdir=%{_libdir}/%{name} \
    161             --bindir=%{_bindir} \
    162             --datadir=%{_datadir} \
    163             --includedir=%{_includedir} \
    164             --mandir=%{_mandir} 
    165 make
    166 
    167 cd include
    168 # so that SDL/*.h can be found
    169 rm -f SDL; ln -s . SDL
    170 cd ../..
    171 export MYDIR=`pwd`
    172 
    173 # build pwlib
    174 cd pwlib*
    175 cd plugins
    176 autoconf
    177 cd ..
    178 autoconf
    179 # symlink the make dir to bin so that ptlib-config is found by ekiga
    180 ln -s make bin
    181 #FIXME
    182 # set RPM_OPT_FLAGS to null since pwlib messly uses
    183 # STDCCFLAGS for both CC and CXX, which picks up the
    184 # value of RPM_OPT_FLAGS
    185 RPM_OPT_FLAGS_SAVE=$RPM_OPT_FLAGS
    186 RPM_OPT_FLAGS=""
    187 PWLIBDIR=`pwd`
    188 export RPM_OPT_FLAGS PWLIBDIR
    189 autoconf
    190 export CFLAGS="$CFLAGS -I${MYDIR}/SDL-%{libsdl_version}/include"
    191 export CXXFLAGS="$CXXFLAGS -I${MYDIR}/SDL-%{libsdl_version}/include"
    192 export LDFLAGS="$LDFLAGS -L${MYDIR}/SDL-%{libsdl_version}/src/.libs"
    193 ./configure --prefix=%{_prefix} \
    194             --libdir=%{_libdir}/%{name} \
    195             --bindir=%{_bindir} \
    196             --datadir=%{_datadir} \
    197             --includedir=%{_includedir} \
    198             --mandir=%{_mandir} \
    199             --enable-plugins \
    200             --enable-resolver \
    201             --enable-opal \
    202             --enable-sunaudio \
    203             --enable-v4l2
    204 make
    205 # set original RPM_OPT_FLAGS back
    206 RPM_OPT_FLAGS=$RPM_OPT_FLAGS_SAVE
    207 export RPM_OPT_FLAGS
    208 
    209 # build opal
    210 cd ../opal*
    211 ./configure --prefix=%{_prefix} \
    212             --libdir=%{_libdir}/%{name} \
    213             --bindir=%{_bindir} \
    214             --datadir=%{_datadir} \
    215             --includedir=%{_includedir} \
    216             --mandir=%{_mandir} \
    217 	    --enable-localspeex
    218 make
    219 
    220 # build ekiga
    221 cd ../%{name}*
    222 # so that SDL/include can be found
    223 rm -f SDL; ln -s ../SDL-%{libsdl_version} SDL
    224 ACLOCAL_FLAGS="$ACLOCAL_FLAG -I SDL"
    225 SDL_CONFIG=${MYDIR}/SDL-%{libsdl_version}/sdl-config
    226 export SDL_CONFIG ACLOCAL_FLAGS
    227 ./autogen.sh --prefix=%{_prefix} \
    228              --libdir=%{_libdir}/%{name} \
    229              --bindir=%{_bindir} \
    230              --datadir=%{_datadir} \
    231              --includedir=%{_includedir} \
    232              --mandir=%{_mandir} \
    233 	     --sysconfdir=%{_sysconfdir} \
    234 	     --with-pwlib-dir=${MYDIR}/pwlib-%{pwlib_version} \
    235 	     --with-opal-dir=${MYDIR}/opal-%{opal_version} \
    236 	     --with-sdl-prefix=${MYDIR}/SDL-%{libsdl_version} \
    237 	     --disable-avahi \
    238 	     --disable-scrollkeeper
    239 
    240 make LIBS=-lX11
    241 
    242 %install
    243 cd ../SDL-%{libsdl_version}
    244 make install DESTDIR=$RPM_BUILD_ROOT
    245 
    246 cd ../pwlib*
    247 make install DESTDIR=$RPM_BUILD_ROOT
    248 
    249 cd ../opal*
    250 make install DESTDIR=$RPM_BUILD_ROOT
    251 
    252 rm -rf $RPM_BUILD_ROOT%{_bindir}
    253 rm -rf $RPM_BUILD_ROOT%{_datadir}
    254 rm -rf $RPM_BUILD_ROOT%{_mandir}
    255 
    256 cd ../%{name}*
    257 GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1
    258 export GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL
    259 make install DESTDIR=$RPM_BUILD_ROOT
    260 
    261 rm -f  $RPM_BUILD_ROOT%{_bindir}/*config*
    262 rm -f  $RPM_BUILD_ROOT%{_libdir}/%{name}/lib*a
    263 rm -rf $RPM_BUILD_ROOT%{_includedir}
    264 mv $RPM_BUILD_ROOT%{_libdir}/%{name}/bonobo $RPM_BUILD_ROOT%{_libdir}
    265 
    266 %clean
    267 rm -rf $RPM_BUILD_ROOT
    268 
    269 %post 
    270 export GCONF_CONFIG_SOURCE=`gconftool-2 --get-default-source`
    271 SCHEMAS="ekiga.schemas"
    272 for S in $SCHEMAS; do
    273         gconftool-2 --makefile-install-rule %{_sysconfdir}/gconf/schemas/$S >/dev/null
    274 done
    275 
    276 %files
    277 %defattr(-,root,root)
    278 %doc FAQ AUTHORS NEWS
    279 %dir %{_datadir}/ekiga/xdap
    280 %dir %{_datadir}/sounds/ekiga
    281 #%{_datadir}/man/man1/ekiga.1.gz
    282 %{_bindir}/ekiga*
    283 %{_datadir}/locale/*/LC_MESSAGES/ekiga.mo
    284 %{_datadir}/applications/ekiga.desktop
    285 %{_datadir}/sounds/ekiga/*
    286 %{_datadir}/pixmaps/ekiga*
    287 %{_libdir}/bonobo/servers/ekiga.server
    288 %{_datadir}/ekiga/xdap/*
    289 %{_sysconfdir}/gconf/schemas/ekiga.schemas
    290 %{_datadir}/gnome/*
    291 %{_datadir}/omf/*
    292 %{_mandir}/man1/*
    293 
    294 
    295 %changelog
    296 * Sun Mar 11 2007 - elaine.xiong@sun.com
    297 - Bump to 2.0.5 from trunk. Bump opal to 2.2.5, pwlib to 1.10.4.
    298   V4l2 plugin enabled and some performance tuning included. 
    299 * Mon Nov 20 2006 - davelin@sun.com
    300 - add patch comment
    301 * Thu Nov 02 2006 - davelin@sun.com
    302 - Bump version to 2.0.3 
    303 - Sync patches thoes have been upstreamed in ekiga community trunk
    304 - ekiga-10-pwlib-bz356696.diff, ekiga-13-opal-bz356696.diff(better fix 
    305   for bz356696)
    306 - ekiga-15-opal-invalidarrayindex.diff(bz367482)
    307 - ekiga-16-pwlib-video.diff(bz367516)
    308 - ekiga-17-opal-rtp.diff(CR#6483823, CR#6483831, which caused revert to 
    309   2.0.2 in b52b)
    310 * Wed Oct 25 2006 - davelin@sun.com
    311 - Roll back to the previous version 2.0.2 since following critical bug
    312   was found in 2.0.3 CR#6483823(and another P2 bug CR#6483831)
    313 * Tue Oct 17 2006 - dave.lin@sun.com
    314 - Bump version to 2.0.3
    315 - Add patch ekiga-pwlib-09-unset-port.diff to fix bug CR#6476679
    316 - Add patch ekiga-10-pwlib-bz356696.diff to fix bug gnome bugzilla bz#356696
    317 * Mon Oct 09 2006 - dave.lin@sun.com
    318 - Add patch ekiga-08-pwlib-disconnect-crash.diff to fix bug CR#6470530
    319 * Fri Sep 15 2006 - dermot.mccluskey@sun.com
    320 - Fixed erroneous comments in %defines
    321 * Wed Sep 06 2006 - damien.carbery@sun.com
    322 - Bump pwlib to 1.10.2, opal to 2.2.3.
    323 * Mon Sep 04 2006 - damien.carbery@sun.com
    324 - Bump to 2.0.3.
    325 * Mon Sep 04 2006 - damien.carbery@sun.com
    326 - Bump libsdl to 1.2.11.
    327 * Tue Aug 08 2006 - damien.carbery@sun.com
    328 - Change 'cd dir*' to use '%{version}'.
    329 * Mon Jul 10 2006 - dave.lin@sun.com
    330 - change to use Ekiga 2.0.2 release
    331 * Fri Jun 16 2006 - dave.lin@sun.com
    332 - add GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 to make sure not
    333   install the directory based %gconf.xml files based on the 
    334   instruction in gconf.txt
    335 * Wed Jun 07 2006 - damien.carbery@sun.com
    336 - chdir into ekiga dir before applying ekiga patches.
    337 * Fri Jun 02 2006 - glynn.foster@sun.com
    338 - Add patch for change the menu entry according to the UI spec.
    339 * Mon May 15 2006 - dave.lin@sun.com
    340 - Add patch ekiga-08-multi-decla.diff to fix multiple declaration
    341   error.
    342 * Fri Apr 14 2006 - <dave.lin@sun.com>
    343 - Initial release for ekiga
    344