File boinc-client.spec of Package boinc-client

#
# spec file for package boinc-client (Version 6.4.5)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via http://bugs.opensuse.org/
#



Name:           boinc-client
Summary:        The Berkeley Open Infrastructure for Network Computing (BOINC)
Version:        6.4.5
Release:        3
License:        LGPL v2.1 only
Url:            http://boinc.berkeley.edu/
Source0:        boinc_core_release_6_4_5.tar.bz2
Source1:        boinc-icons.tar.bz2
Source2:        boinc-logrotate
Source3:        boinc-gui.desktop
Source4:        boincmgr
Source5:        sysconfig.boinc
Source100:      boinc-client-rpmlintrc
Patch0:         boinc-docbook2x.patch
Patch1:         boinc-rcscript.patch
Patch2:         boinc-fs_start_included.patch
Patch3:         boinc-sysconfig.patch
Patch4:         boinc-ca_cert_deactivate.patch
Patch5:         boinc-LC_MESSAGES.patch	
Patch6:         boinc-icon_old.patch
Patch7:         boinc-bnc_465676.patch
Patch8:         boinc-client-wxWindowListNode.patch
Patch9:         boinc-client-hostinfo.patch
Patch10:        boinc-client-NotebookWxPanel.patch
Patch11:        boinc-client-str_util.patch
Group:          Productivity/Clustering/Computing
BuildRequires:  libcurl-devel >= 7.15.2 python-mysql update-desktop-files
BuildRequires:  Mesa-devel freeglut-devel libopenssl-devel
BuildRequires:  gcc-c++ gettext-runtime mysql-devel wxGTK-devel >= 2.8.7
BuildRequires:  docbook2x libjpeg-devel libxslt xorg-x11-libXmu-devel
BuildRequires:  autoconf automake libtool m4 pkg-config
PreReq:         %insserv_prereq  %fillup_prereq
Requires:       logrotate cron
Requires:       boinc-doc = %{version}-%{release}
BuildRoot:      %{_tmppath}/%{name}-%{version}-build

%description
The Berkeley Open Infrastructure for Network Computing (BOINC) is an
open-source software platform which supports distributed computing,
primarily in the form of "volunteer" computing and "desktop Grid"
computing. It is well suited for problems which are often described as
"trivially parallel".

BOINC is the underlying software used by projects such as SETI@home,
Einstein@Home, ClimatePrediciton.net, the World Community Grid, and
many other distributed computing projects.



Authors:
--------
    University of California, Berkeley
    Dr. David P. Anderson <davea@ssl.berkeley.edu>
    Rom Walton <rwalton@ssl.berkeley.edu>
    Charlie Fenton

%package -n boinc-gui
License:        LGPL v2.1 only
Summary:        The Berkeley Open Infrastructure for Network Computing (BOINC)
Group:          Productivity/Clustering/Computing
Requires:       boinc-client = %{version}-%{release}
Requires:       boinc-doc = %{version}-%{release}
Requires:       boinc-gui-lang = %{version}-%{release}

%description -n boinc-gui
The Berkeley Open Infrastructure for Network Computing (BOINC) is an
open-source software platform which supports distributed computing,
primarily in the form of "volunteer" computing and "desktop Grid"
computing. It is well suited for problems which are often described as
"trivially parallel".

BOINC is the underlying software used by projects such as SETI@home,
Einstein@Home, ClimatePrediciton.net, the World Community Grid, and
many other distributed computing projects.



Authors:
--------
    University of California, Berkeley
    Dr. David P. Anderson <davea@ssl.berkeley.edu>
    Rom Walton <rwalton@ssl.berkeley.edu>
    Charlie Fenton

%package devel
License:        LGPL v2.1 only
Summary:        The Berkeley Open Infrastructure for Network Computing (BOINC)
Group:          Productivity/Clustering/Computing
Requires:       boinc-client = %{version}-%{release}

%description devel
The Berkeley Open Infrastructure for Network Computing (BOINC) is an
open-source software platform which supports distributed computing,
primarily in the form of "volunteer" computing and "desktop Grid"
computing. It is well suited for problems which are often described as
"trivially parallel".

BOINC is the underlying software used by projects such as SETI@home,
Einstein@Home, ClimatePrediciton.net, the World Community Grid, and
many other distributed computing projects.



Authors:
--------
    University of California, Berkeley
    Dr. David P. Anderson <davea@ssl.berkeley.edu>
    Rom Walton <rwalton@ssl.berkeley.edu>
    Charlie Fenton

%package -n boinc-doc
License:        LGPL v2.1 only
Summary:        The Berkeley Open Infrastructure for Network Computing (BOINC)
Group:          Productivity/Clustering/Computing
Requires:       boinc-client = %{version}-%{release}
Requires:       boinc-gui = %{version}-%{release}

%description -n boinc-doc
The Berkeley Open Infrastructure for Network Computing (BOINC) is an
open-source software platform which supports distributed computing,
primarily in the form of "volunteer" computing and "desktop Grid"
computing. It is well suited for problems which are often described as
"trivially parallel".

BOINC is the underlying software used by projects such as SETI@home,
Einstein@Home, ClimatePrediciton.net, the World Community Grid, and
many other distributed computing projects.



Authors:
--------
    University of California, Berkeley
    Dr. David P. Anderson <davea@ssl.berkeley.edu>
    Rom Walton <rwalton@ssl.berkeley.edu>
    Charlie Fenton

%package -n boinc-gui-lang
License:        LGPL v2.1 only
Summary:        The Berkeley Open Infrastructure for Network Computing (BOINC)
Group:          Productivity/Clustering/Computing
Requires:       boinc-client = %{version}-%{release}
Requires:       boinc-gui = %{version}-%{release}

%description -n boinc-gui-lang
The Berkeley Open Infrastructure for Network Computing (BOINC) is an
open-source software platform which supports distributed computing,
primarily in the form of "volunteer" computing and "desktop Grid"
computing. It is well suited for problems which are often described as
"trivially parallel".

BOINC is the underlying software used by projects such as SETI@home,
Einstein@Home, ClimatePrediciton.net, the World Community Grid, and
many other distributed computing projects.



Authors:
--------
    University of California, Berkeley
    Dr. David P. Anderson <davea@ssl.berkeley.edu>
    Rom Walton <rwalton@ssl.berkeley.edu>
    Charlie Fenton

%prep
%setup -q -n boinc_core_release_6_4_5
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1
%patch7 -p1
%patch8 -p1
%patch9 -p1
%patch10 -p1
%patch11 -p1
tar -xvjf %{S:1}

%build
export CFLAGS="%{optflags} -fno-strict-aliasing"
export CXXFLAGS="%{optflags} -fno-strict-aliasing"
./_autosetup
%configure --prefix=%{_prefix} \
	   --libdir=%{_libdir} \
	   --mandir=%{_mandir} \
	   --disable-server \
	   --disable-static \
	   --enable-client \
	   --enable-unicode 
make %{?jobs:-j %jobs}

%install
%makeinstall
# create symlink for boinc_client
ln -s %{_bindir}/boinc_client $RPM_BUILD_ROOT%{_bindir}/boinc
# remove /etc/sysconfig/boinc-client
rm -f %{buildroot}%{_sysconfdir}/sysconfig/boinc
# install logrotate and create symlink to /etc/int.d/boinc-client
install -d -m755 $RPM_BUILD_ROOT%{_sbindir}
ln -s %{_sysconfdir}/init.d/boinc $RPM_BUILD_ROOT%{_sbindir}/rcboinc-client
install -D -m644 %{S:2} $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/boinc-client
# install desktop-file and icons
%suse_update_desktop_file -i boinc-gui Utility
install -D -m644 boinc-gui-128.png $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/128x128/apps/boinc-gui.png
install -D -m644 boinc-gui-64.png $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/64x64/apps/boinc-gui.png
install -D -m644 boinc-gui-48.png $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/48x48/apps/boinc-gui.png
install -D -m644 boinc-gui-32.png $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/apps/boinc-gui.png
install -D -m644 boinc-gui-22.png $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/22x22/apps/boinc-gui.png
install -D -m644 boinc-gui-16.png $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/16x16/apps/boinc-gui.png
# install boincmgr
install -D -m755 %{S:4} $RPM_BUILD_ROOT%{_bindir}/boincmgr
# install template for sysconfig
install -D -m644 %{S:5} %{buildroot}/var/adm/fillup-templates/sysconfig.boinc
# remove static Libs
rm %{buildroot}%{_libdir}/*.a

%clean
rm -rf $RPM_BUILD_ROOT

%post
# Macro to use an sysconfig File
%{fillup_and_insserv -y boinc}

%preun
%stop_on_removal boinc

%postun
%restart_on_update boinc
%insserv_cleanup

%files
%defattr(-,root,root)
%{_bindir}/boinc
%{_bindir}/boinc_client
%{_bindir}/boinc_cmd
%{_bindir}/crypt_prog
%{_bindir}/switcher
%{_sbindir}/*
%config %{_sysconfdir}/boinc-client.conf
/var/adm/fillup-templates/sysconfig.boinc
%config %{_sysconfdir}/init.d/*
%config(noreplace) %{_sysconfdir}/logrotate.d/*
%{_mandir}/man*/*

%files -n boinc-doc
%defattr(-,root,root)
%doc COPYING COPYRIGHT checkin_* INSTALL notes todo TODO_OLD doc/*.txt doc/bolt doc/logo doc/*.php doc/*.png doc/*.html

%files -n boinc-gui
%defattr(-,root,root)
%{_bindir}/boincmgr
%{_bindir}/boinc_gui
%{_datadir}/applications/*
%{_datadir}/icons/hicolor/*/apps/* 

%files -n boinc-gui-lang
%defattr(-,root,root)
%{_datadir}/locale/*/LC_MESSAGES/*
%dir %{_datadir}/locale/ko_KR
%dir %{_datadir}/locale/ko_KR/LC_MESSAGES
%dir %{_datadir}/locale/sv_SE
%dir %{_datadir}/locale/sv_SE/LC_MESSAGES

%files devel
%defattr(-,root,root)
%dir %{_includedir}/boinc
%{_includedir}/boinc/*.h
# %{_libdir}/*a

%changelog
* Sun May 31 2009 saigkill@opensuse.org
- fixed str_util.h while using newer gcc (THX to Jan)
* Fri May 22 2009 saigkill@opensuse.org
- fixed Errors while using newer wx Version
* Fri Mar 27 2009 saigkill@opensuse.org
- removed boinctray depency
* Sat Mar 14 2009 saigkill@opensuse.org
- added rpmlintrc
* Wed Feb 25 2009 pth@suse.de
- Use wxWindowList::compatibility_iterator instead of wxWindowListNode*
  as the latter is not defined when wxWindows is compiled to use
  the STL.
- Include standard compiler flags.
- Reformat description
- Correct spelling boinc-client-README.SuSE
* Thu Feb 12 2009 saigkill@opensuse.org
- added wxstring_conversion.patch (fix Bug #774 Berkeley Bug)
* Wed Feb 11 2009 saigkill@opensuse.org
- first stable Version
- fixed boincmgr to copy gui_rpc_auth.cfg to every /home
* Wed Feb 11 2009 saigkill@opensuse.org
- Export %%changelog to boinc-client.changes
* Tue Feb 10 2009 saigkill@opensuse.org
- changed $BOINCEXE from boinc_client to boinc
* Wed Feb 04 2009 saigkill@opensuse.org
- Fixed OpenSUSE Bugzilla Bug #468414
* Tue Feb 03 2009 saigkill@opensuse.org
- updated to Version 6.4
- deleted bnc_465676 (was fixed in sourcecode by boinc-team)
* Mon Feb 02 2009 dl9pf@gmx.de
- tweaked -doc package
* Mon Feb 02 2009 saigkill@opensuse.org
- added README.SuSE to %%doc
- added own Patches:
  + boinc-docbook2x (fix using docbook2x)
  + boinc-LC_MESSAGES (fix handling .mo LC Messages)
  + boinc-rcscript (fix using init.d instead of rc.d)
  (fix BOINC User root)
  + boinc-sysconfig (fix installing conf in /etc/boinc-client.conf)
  (fix init File as boinc)
  + ca_cert_deactivate (fix deactivate using of ca_cert)
  + fs_start_included (fix add $fs_network to init.d Script)
* Sun Feb 01 2009 saigkill@opensuse.org
- added fillup Macro to use sysconfig
- use sysconfig.boinc as source from fillup macro
* Sat Jan 31 2009 saigkill@opensuse.org
- deleted bnc_431510 not relevant (for Mac).
- deleted bnc_439037 not relevant
- deleted bnc_442904 for Win. In my Package no Win/Mac Source
- added bnc_465676.patch fix CVE-ID: CVE-2009-0126
- branched for Factory:Contrib
* Fri Jan 23 2009 saigkill@opensuse.org
- deleted mac/mac_build/win Folders from the Sourcecode
* Wed Jan 14 2009 mauro@suse.de
- Added bnc_465676.patch to fix bnc#465676.
  + Fixes CVE-2008-5077
  + check return values of RSA_*() functions.
  + fix a memory leak, missing RSA_free().
* Tue Dec 23 2008 mauro@suse.de
- Added bnc_442904.patch to fix bnc#442904.
  + Use the proper delete.
* Mon Nov 03 2008 mauro@suse.de
- Add bnc_439037.patch to fix bnc#439037. We now use strcmp
  instead of the original ==.
* Fri Oct 03 2008 mauro@suse.de
- Add bnc-431510.patch to fix bnc#431510.
* Mon Sep 08 2008 mauro@suse.de
- initial package for SuSE. boinc 6.2.18 (based on the enzokiel's
  (opensuse version).
openSUSE Build Service is sponsored by