- Update to 5.2.15

- Take over maintainership
- Stop supporting this on FreeBSD 4.X

Approved by:	old maintainer (takeover)
This commit is contained in:
Pav Lucistnik 2006-03-15 10:44:46 +00:00
parent 1b4423b757
commit 2571a1881c
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=157220
27 changed files with 99 additions and 922 deletions

View file

@ -6,22 +6,42 @@
#
PORTNAME= boinc-client
PORTVERSION= 4.68.20050601
PORTREVISION= 3
PORTVERSION= 5.2.15
CATEGORIES= net
MASTER_SITES= http://boinc.berkeley.edu/source/nightly/ \
${MASTER_SITE_LOCAL}
MASTER_SITES= ${MASTER_SITE_LOCAL}
MASTER_SITE_SUBDIR= pav
DISTNAME= boinc-cvs-2005-06-01
MAINTAINER= fbsd@opal.com
MAINTAINER= pav@FreeBSD.org
COMMENT= Berkeley Open Infrastructure for Network Computing client
LIB_DEPENDS= curl:${PORTSDIR}/ftp/curl
USE_BZIP2= yes
USE_GNOME= gnometarget
GNU_CONFIGURE= yes
BOINC_USER?= boinc
BOINC_GROUP?= nobody
BOINC_HOME?= /var/db/boinc
PLIST_SUB= BOINC_HOME="${BOINC_HOME}" BOINC_USER="${BOINC_USER}" BOINC_GROUP="${BOINC_GROUP}"
SUB_FILES= pkg-install
SUB_LIST= BOINC_HOME="${BOINC_HOME}" BOINC_USER="${BOINC_USER}" BOINC_GROUP="${BOINC_GROUP}"
USE_RC_SUBR= boinc.sh
CONFIGURE_ARGS= --disable-server
CONFIGURE_ENV= CPPFLAGS=-I${X11BASE}/include CXXFLAGS="-I${X11BASE}/include -I${LOCALBASE}/include -O3" CFLAGS="${CFLAGS} -O3"
OPTIONS= X11 "Build Boinc Manager GUI" on
.include <bsd.port.pre.mk>
# Disable GUI on FreeBSD 4.x due to problems with wxgtk lib
.if ${OSVERSION} < 500000
WITHOUT_X11= yes
.if !defined(WITHOUT_X11)
CONFIGURE_ARGS+= --with-wx-config=wxgtk2-2.6-config
.else
CONFIGURE_ARGS+= --with-wx-config=false
.endif
.if !defined(WITHOUT_X11)
@ -29,88 +49,22 @@ LIB_DEPENDS+= iconv:${PORTSDIR}/converters/libiconv \
wx_base:${PORTSDIR}/x11-toolkits/wxgtk26 \
jpeg:${PORTSDIR}/graphics/jpeg \
glut:${PORTSDIR}/graphics/libglut
USE_XLIBS= yes
.endif
USE_AUTOTOOLS= automake:19 autoheader:259 autoconf:259 libtool:15
USE_REINPLACE= yes
GNU_CONFIGURE= yes
MAN1= boinc.1
.if !defined(WITHOUT_X11)
MLINKS= boinc.1 boincmgr.1
.endif
BOINC_USER= boinc
BOINC_GROUP= nobody
BOINC_HOME= /var/db/boinc
BOINC_BINARY= boinc-client
PLIST_SUB= BOINC_BINARY="${BOINC_BINARY}" BOINC_HOME="${BOINC_HOME}" \
BOINC_USER="${BOINC_USER}" BOINC_GROUP="${BOINC_GROUP}"
.if !defined(WITHOUT_X11)
PLIST_SUB+= BOINC_GUI=""
.else
PLIST_SUB+= BOINC_GUI="@comment "
.endif
SUB_FILES= bin-boinc.sh boinc.1 boinc.sh pkg-install
SUB_LIST= BOINC_BINARY="${BOINC_BINARY}" BOINC_HOME="${BOINC_HOME}" \
BOINC_USER="${BOINC_USER}" BOINC_GROUP="${BOINC_GROUP}"
USE_RC_SUBR= boinc.sh
CONFIGURE_ARGS= --disable-server
.if !defined(WITHOUT_X11)
CONFIGURE_ARGS+= --with-wx-config=wxgtk2-2.6-config
.else
CONFIGURE_ARGS+= --with-wx-config=false
.endif
CONFIGURE_ENV= CPPFLAGS=-I${X11BASE}/include CXXFLAGS="-I${X11BASE}/include -I${LOCALBASE}/include"
FIND_BOINC_BINARY=(cd ${WRKSRC}/client; make -V CLIENT_BIN_FILENAME)
FIND_BOINCMGR_BINARY=(cd ${WRKSRC}/client; make -V CLIENT_GUI_BIN_FILENAME)
WRKSRC= ${WRKDIR}/boinc
PKGINSTALL= ${WRKDIR}/pkg-install
PKGPLIST= ${WRKDIR}/pkg-plist
.if ${OSVERSION} < 500000
EXTRA_PATCHES+= ${FILESDIR}/extra-patch-client-time_stats.C
EXTRA_PATCHES+= ${FILESDIR}/extra-patch-clientgui-MainDocument.cpp
EXTRA_PATCHES+= ${FILESDIR}/extra-patch-clientgui-MainFrame.cpp
EXTRA_PATCHES+= ${FILESDIR}/extra-patch-clientgui-ViewProjects.cpp
EXTRA_PATCHES+= ${FILESDIR}/extra-patch-clientgui-ViewResources.cpp
EXTRA_PATCHES+= ${FILESDIR}/extra-patch-clientgui-ViewTransfers.cpp
EXTRA_PATCHES+= ${FILESDIR}/extra-patch-clientgui-ViewWork.cpp
EXTRA_PATCHES+= ${FILESDIR}/extra-patch-clientgui-stdwx.h
EXTRA_PATCHES+= ${FILESDIR}/extra-patch-lib-acct_mgr_client.C
EXTRA_PATCHES+= ${FILESDIR}/extra-patch-lib-diagnostics.h
EXTRA_PATCHES+= ${FILESDIR}/extra-patch-lib-gui_rpc_client.C
EXTRA_PATCHES+= ${FILESDIR}/extra-patch-lib-parse.C
EXTRA_PATCHES+= ${FILESDIR}/extra-patch-zip-boinc_zip.cpp
BROKEN= Does not compile. Consider upgrading your FreeBSD to at least 5.X
.endif
pre-configure:
cd ${WRKSRC}; ${ACLOCAL} -I m4
do-install:
${MKDIR} ${PREFIX}/lib/boinc
${INSTALL_PROGRAM} ${WRKSRC}/client/`${FIND_BOINC_BINARY}` ${PREFIX}/lib/boinc/${BOINC_BINARY}
.if !defined(WITHOUT_X11)
${INSTALL_PROGRAM} ${WRKSRC}/clientgui/`${FIND_BOINCMGR_BINARY}` ${PREFIX}/bin
.endif
${MKDIR} ${PREFIX}/include/BOINC
${INSTALL} ${WRKSRC}/api/*.h ${PREFIX}/include/BOINC
${INSTALL} ${WRKSRC}/lib/*.h ${PREFIX}/include/BOINC
${INSTALL} ${WRKSRC}/zip/*.h ${PREFIX}/include/BOINC
${INSTALL} ${WRKSRC}/api/*.a ${PREFIX}/lib
${INSTALL} ${WRKSRC}/lib/*.a ${PREFIX}/lib
${INSTALL} ${WRKSRC}/zip/*.a ${PREFIX}/lib
${INSTALL} ${WRKSRC}/RSAEuro/source/librsaeuro.a ${PREFIX}/lib
${INSTALL_SCRIPT} ${WRKDIR}/bin-boinc.sh ${PREFIX}/bin/boinc
${INSTALL_MAN} ${WRKDIR}/boinc.1 ${PREFIX}/man/man1
${CAT} ${PKGMESSAGE}
post-patch:
@${REINPLACE_CMD} -e 's|gui_rpc_auth.cfg|${BOINC_HOME}/gui_rpc_auth.cfg|g' \
${WRKSRC}/client/file_names.h ${WRKSRC}/lib/boinc_cmd.C \
${WRKSRC}/clientgui/MainDocument.cpp
post-install:
@PKG_PREFIX=${PREFIX} ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL

View file

@ -1,3 +1,3 @@
MD5 (boinc-cvs-2005-06-01.tar.gz) = 0be934587d5380e430f048a59d7e58fe
SHA256 (boinc-cvs-2005-06-01.tar.gz) = e56bf72e1a3bc582026f3f4de20777f9c191507fb130d8170df7a56ac5afcc90
SIZE (boinc-cvs-2005-06-01.tar.gz) = 5685970
MD5 (boinc-client-5.2.15.tar.bz2) = 37eb7dbd2eb2c2d6becb0026e58d22d6
SHA256 (boinc-client-5.2.15.tar.bz2) = 6cd4ae648c57ac05977820a1c4c8126abb5284361f62fdd06656b07b37b25325
SIZE (boinc-client-5.2.15.tar.bz2) = 1987217

View file

@ -1,7 +0,0 @@
#!/bin/sh
export LD_LIBRARY_PATH=%%PREFIX%%/lib/boinc
args=${@+"$@"}
exec idprio 31 su - %%BOINC_USER%% -c "%%PREFIX%%/lib/boinc/%%BOINC_BINARY%% $args"

View file

@ -1,235 +0,0 @@
.TH boinc 1 "October 1, 2004" "" "BOINC"
.SH NAME
boinc \- client for Berkeley Open Infrastructure for Network Computing
.SH SYNOPSIS
boinc [ options ]
.PP
boincmgr
.PP
sh %%PREFIX%%/etc/rc.d/boinc.sh start|stop|restart|status
.SH DESCRIPTION
.I boinc
is the client for the Berkeley Open Infrastructure for Network
Computing (BOINC) service. It is used by projects such as SETI@HOME
and ClimatePredictor to offer your spare CPU cycles to such projects.
BOINC allows you to configure one or more projects to which you offer
your spare CPU cycles for their computations.
.PP
BOINC is a scheduler; you configure projects under BOINC and BOINC
then runs each one according to what percentage of time you have
specified for that project.
When a project is run, BOINC runs the project's client program to
download computational work units from the project, then perform the
work unit computation, and finally upload the results back to the
project. If no work is available for one of your projects, BOINC
will run another of your projects.
.PP
BOINC runs project clients at low priority, with an
.IR idprio (1)
value of 31, to ensure that as soon as you need your computer for
any other work, BOINC projects stop so that you are not delayed
by them.
.PP
After choosing which projects to participate in, you must register
with each on the project's website. You can find out about BOINC
projects on the BOINC website. Upon registering with a project,
you will receive an account ID for the project.
Run
.I "boinc -attach_project"
to add new projects to your BOINC configuration using the project
URL and your account ID.
Depending on what operating system platforms the project supports
you may be able to immediately start the project or you may need to
download the project client's source code and compile it. For
further information, see the BOINC web site and the project's own
website. Some projects are already available as FreeBSD ports
(e.g., SETI@HOME in port astro/boinc-setiathome). Not all projects
support FreeBSD and some do not make their client's source code
available. In such cases, you will not be able to participate in
that project from FreeBSD.
.PP
Running
.I boinc
with no arguments starts the service and any configured projects.
.PP
You can edit both BOINC general preferences and project-specific
preferences on the website of any BOINC projects which you are
registered with. Preferences will take effect next time BOINC
contacts that project's server, e.g., to download more work or
to upload results.
.PP
The user
.I %%BOINC_USER%%
needs to exist; all invocations of boinc will run as this
user. If you want users other than root to be able to start
BOINC, set a password on this account so that anyone can run
.I boinc_client
and supply the password.
.PP
IMPORTANT NOTE: The project clients are programs running
on your computer with full access (as the user
.IR %%BOINC_USER%% )
to all files and resources of your computer. Before running any
project client, you should establish for yourself that the
program is trustworthy and will not abuse your computer. The
BOINC scheduler does not restrict clients in any way other than to
run them as the user
.IR %%BOINC_USER%% .
.SH "GRAPHICAL MANAGEMENT INTERFACE"
Running
.I "boinc -allow_remote_gui_rpc"
allows the
.I boincmgr
graphical management interface to interact with the client.
.PP
The
.I boincmgr
program provides a graphical management interface to the core
boinc. After
.I boinc
has been started, run
.I boincmgr
to add new projects, to see the status of existing projects'
work units, and to control the client.
.PP
.I boincmgr
can also be used to monitor and manage BOINC clients on other
hosts.
.PP
On the
.I Work
tab, there is a
.I "Show graphics"
button which displays a graphical status window from the client
application.
For the
.I "Show graphics"
option to have effect, it must be understood that it is the
client application that opens up the status window. The value
of the
.I DISPLAY
environment variable of the
.I boincmgr
process is passed to the BOINC core and then to the client
application, and must have meaning to that client. A value
of
.I ":0.0"
will work for local clients, but for clients on remote hosts,
a value such as
.I "hostname:0.0"
or
.I "hostname.domain.com:0.0"
will be needed.
In addition, the local X-server host access permissions must
allow access to the display by the client.
For local clients, the simplest way to allow this is to use
.IR xhost (1),
e.g.,
.IR "xhost\ +local:" .
.PP
Full documentation of
.I boincmgr
is not provided here, but may be added in a future release.
.SH "STARTING BOINC AT BOOT TIME"
The
.I %%PREFIX%%/etc/rc.d/boinc.sh
script is run automatically at system boot time.
Several variables can be set in
.I %%RC_SUBR%%
to control the BOINC client's behavior.
.IP boinc_enable
set to
.I "YES"
to start BOINC at boot time
.IP boinc_flags
passed to the BOINC client, e.g.,
.I boinc_flags="-allow_remote_gui_rpc"
to allow access from the
.I boincmgr
graphical management interface.
.SH OPTIONS
The command-line client has the following command-line options:
.IP -attach_project
Attach this computer to a new project.
You must have an account with that project.
You will be asked for the project URL and the account ID.
.IP -show_projects
Print a list of projects to which this computer is attached.
.IP -detach_project URL
Detach this computer from a project.
.IP -reset_project URL
Clear pending work for a project.
Use this if there is a problem that is preventing
your computer from working.
.IP -update_prefs URL
Contact a project's server to obtain new preferences.
This will also report completed results
and get new work if needed.
.IP -return_results_immediately
Contact scheduler as soon as any result done.
.IP -run_cpu_benchmarks
Run CPU benchmarks.
Do this if you have modified your computer's hardware.
.IP -check_all_logins
If 'run if user active' preference is off,
check for input activity on all current logins;
default is to check only local mouse/keyboard
.IP -exit_when_idle
Get, process and report work, then exit.
.IP -redirectio
Redirect stdout and stderr to log files.
.IP -allow_remote_gui_rpc
Allow GUI RPCs from remote hosts
.IP -help
Show client options.
.IP -version
Show client version.
.SH "ENVIRONMENT VARIABLES"
The command-line client has the following optional environment variables:
.IP HTTP_PROXY
URL of HTTP proxy
.IP HTTP_USER_NAME
User name for proxy authentication
.IP HTTP_USER_PASSWD
Password for proxy authentication
.IP SOCKS4_SERVER
URL of SOCKS 4 server
.IP SOCKS5_SERVER
URL of SOCKS 5 server
.IP SOCKS5_USER
User name for SOCKS authentication
.IP SOCKS5_PASSWD
Password for SOCKS authentication
.SH FILES
.IP %%BOINC_HOME%%
default home directory for
.I %%BOINC_USER%%
user
.IP %%BOINC_HOME%%/*
boinc configuration files
.IP %%BOINC_HOME%%/projects/*
BOINC projects
.IP %%BOINC_HOME%%/projects/*/*
BOINC project work unit files
.SH BUGS
Suspending
.I boinc
using ^Z works, but resuming using
.I fg
or
.I bg
does not resume any client processes (e.g., SETI). These need to be
restarted using
.I "kill -CONT"
for each process.
.PP
Placing files in %%BOINC_HOME%% or its subdirectories can cause work
to fail as those files will be counted in disk usage limit checks. In
addition to configurable overall disk usage limits, each client may
further restrict the size of its project or slot directories.
.PP
On a hyperthreadded processor, performance may be limited due to shared
use of processor modules such as the FPU.
.SH "SEE ALSO"
.IR xhost (1),
http://boinc.berkeley.edu/

View file

@ -13,8 +13,9 @@ rcvar=`set_rcvar`
boinc_user=%%BOINC_USER%%
boinc_home=%%BOINC_HOME%%
program_file=%%BOINC_BINARY%%
program_path=%%PREFIX%%/lib/boinc/${program_file}
boinc_flags="-dir ${boinc_home}"
program_file=boinc_client
program_path=%%PREFIX%%/bin/${program_file}
syslog_facility=daemon.err
load_rc_config $name
@ -38,7 +39,6 @@ boinc_start() {
exit 72
fi
echo "Starting BOINC client."
export LD_LIBRARY_PATH=%%LOCALBASE%%/lib/boinc
idprio 31 su - ${boinc_user} -c "${program_path} ${boinc_flags} >/dev/null &"
fi
}

View file

@ -1,10 +0,0 @@
--- client/time_stats.C.orig Thu May 5 22:09:35 2005
+++ client/time_stats.C Thu Jun 2 09:43:04 2005
@@ -28,6 +28,7 @@
#endif
#ifdef HAVE_SYS_SOCKET_H
+#include <sys/types.h>
#include <sys/socket.h>
#endif

View file

@ -1,101 +0,0 @@
--- clientgui/MainDocument.cpp.orig Sun May 29 03:29:00 2005
+++ clientgui/MainDocument.cpp Wed Jun 1 20:36:08 2005
@@ -553,7 +553,7 @@
m_fProjectTotalResourceShare = 0.0;
for (i=0; i < (long)project_status.projects.size(); i++) {
- m_fProjectTotalResourceShare += project_status.projects.at(i)->resource_share;
+ m_fProjectTotalResourceShare += project_status.projects[i]->resource_share;
}
}
@@ -685,7 +685,7 @@
pProject = state.lookup_project(str);
if (pProject) {
- Url = pProject->gui_urls.at(iWebsiteIndex);
+ Url = pProject->gui_urls[iWebsiteIndex];
strBuffer = Url.name.c_str();
}
@@ -706,7 +706,7 @@
pProject = state.lookup_project(str);
if (pProject) {
- Url = pProject->gui_urls.at(iWebsiteIndex);
+ Url = pProject->gui_urls[iWebsiteIndex];
strBuffer = Url.description.c_str();
}
@@ -727,7 +727,7 @@
pProject = state.lookup_project(str);
if (pProject) {
- Url = pProject->gui_urls.at(iWebsiteIndex);
+ Url = pProject->gui_urls[iWebsiteIndex];
strBuffer = Url.url.c_str();
}
@@ -843,7 +843,7 @@
// pointer when the exception is thrown.
try {
if (!project_status.projects.empty())
- pProject = project_status.projects.at(i);
+ pProject = project_status.projects[i];
}
catch (std::out_of_range e) {
pProject = NULL;
@@ -1148,7 +1148,7 @@
// pointer when the exception is thrown.
try {
if (!results.results.empty())
- pResult = results.results.at(i);
+ pResult = results.results[i];
}
catch (std::out_of_range e) {
pResult = NULL;
@@ -1169,7 +1169,7 @@
}
if (messages.messages.size() != 0)
- m_iMessageSequenceNumber = messages.messages.at(messages.messages.size()-1)->seqno;
+ m_iMessageSequenceNumber = messages.messages[messages.messages.size()-1]->seqno;
}
return iRetVal;
@@ -1257,7 +1257,7 @@
// pointer when the exception is thrown.
try {
if (!messages.messages.empty())
- pMessage = messages.messages.at(i);
+ pMessage = messages.messages[i];
}
catch (std::out_of_range e) {
pMessage = NULL;
@@ -1454,7 +1454,7 @@
// pointer when the exception is thrown.
try {
if (!ft.file_transfers.empty())
- pFT = ft.file_transfers.at(i);
+ pFT = ft.file_transfers[i];
}
catch (std::out_of_range e) {
pFT = NULL;
@@ -1534,7 +1534,7 @@
// pointer when the exception is thrown.
try {
if (!resource_status.projects.empty()) {
- pProject = resource_status.projects.at(i);
+ pProject = resource_status.projects[i];
}
}
catch (std::out_of_range e) {
@@ -1605,7 +1605,7 @@
// pointer when the exception is thrown.
try {
if (!statistics_status.projects.empty())
- pProject = statistics_status.projects.at(i);
+ pProject = statistics_status.projects[i];
}
catch (std::out_of_range e) {
pProject = NULL;

View file

@ -1,10 +0,0 @@
--- clientgui/MainFrame.cpp.orig Sun May 29 03:12:00 2005
+++ clientgui/MainFrame.cpp Wed Jun 1 20:58:56 2005
@@ -1323,7 +1323,6 @@
wxString strComputerName = wxEmptyString;
wxString strStatusText = wxEmptyString;
wxString strTitle = m_strBaseTitle;
- wxString strLocale = setlocale(LC_NUMERIC, NULL);
if (pDoc->IsReconnecting())
pDoc->GetConnectingComputerName(strComputerName);

View file

@ -1,20 +0,0 @@
--- clientgui/ViewProjects.cpp.orig Sun May 29 03:12:00 2005
+++ clientgui/ViewProjects.cpp Wed Jun 1 20:44:38 2005
@@ -446,7 +446,7 @@
wxString CViewProjects::OnListGetItemText(long item, long column) const {
- CProject* project = m_ProjectCache.at(item);
+ CProject* project = m_ProjectCache[item];
wxString strBuffer = wxEmptyString;
switch(column) {
@@ -546,7 +546,7 @@
wxInt32 CViewProjects::UpdateCache(long item, long column, wxString& strNewData) {
- CProject* project = m_ProjectCache.at(item);
+ CProject* project = m_ProjectCache[item];
switch(column) {
case COLUMN_PROJECT:

View file

@ -1,20 +0,0 @@
--- clientgui/ViewResources.cpp.orig Wed Apr 27 02:55:26 2005
+++ clientgui/ViewResources.cpp Wed Jun 1 20:47:46 2005
@@ -111,7 +111,7 @@
wxString CViewResources::OnListGetItemText(long item, long column) const {
- CResource* resource = m_ResourceCache.at(item);
+ CResource* resource = m_ResourceCache[item];
wxString strBuffer = wxEmptyString;
switch(column)
@@ -178,7 +178,7 @@
wxInt32 CViewResources::UpdateCache(long item, long column, wxString& strNewData) {
- CResource* resource = m_ResourceCache.at(item);
+ CResource* resource = m_ResourceCache[item];
switch(column) {
case COLUMN_PROJECT:

View file

@ -1,20 +0,0 @@
--- clientgui/ViewTransfers.cpp.orig Sun May 29 03:12:00 2005
+++ clientgui/ViewTransfers.cpp Wed Jun 1 20:49:11 2005
@@ -226,7 +226,7 @@
wxString CViewTransfers::OnListGetItemText(long item, long column) const {
- CTransfer* transfer = m_TransferCache.at(item);
+ CTransfer* transfer = m_TransferCache[item];
wxString strBuffer = wxEmptyString;
switch(column) {
@@ -322,7 +322,7 @@
wxInt32 CViewTransfers::UpdateCache(long item, long column, wxString& strNewData) {
- CTransfer* transfer = m_TransferCache.at(item);
+ CTransfer* transfer = m_TransferCache[item];
switch(column) {
case COLUMN_PROJECT:

View file

@ -1,31 +0,0 @@
--- clientgui/ViewWork.cpp.orig Sun May 29 03:12:00 2005
+++ clientgui/ViewWork.cpp Wed Jun 1 20:50:34 2005
@@ -302,7 +302,7 @@
wxString CViewWork::OnListGetItemText(long item, long column) const {
- CWork* work = m_WorkCache.at(item);
+ CWork* work = m_WorkCache[item];
wxString strBuffer = wxEmptyString;
switch(column) {
@@ -404,7 +404,7 @@
wxInt32 CViewWork::UpdateCache(long item, long column, wxString& strNewData) {
- CWork* work = m_WorkCache.at(item);
+ CWork* work = m_WorkCache[item];
switch(column) {
case COLUMN_PROJECT:
@@ -497,10 +497,7 @@
pDoc->GetWorkApplicationName(item, strTempName);
pDoc->GetWorkApplicationVersion(item, iBuffer);
- wxString strLocale = setlocale(LC_NUMERIC, NULL);
- setlocale(LC_NUMERIC, "C");
strBuffer.Printf(wxT("%s %.2f"), strTempName.c_str(), iBuffer/100.0);
- setlocale(LC_NUMERIC, strLocale.c_str());
return 0;
}

View file

@ -1,10 +0,0 @@
--- clientgui/stdwx.h.orig Thu Feb 17 18:44:35 2005
+++ clientgui/stdwx.h Sun Mar 20 21:38:15 2005
@@ -136,7 +136,6 @@
#include <sstream>
#include <vector>
#include <list>
-#include <locale>
#ifdef __WXMSW__

View file

@ -1,24 +0,0 @@
--- lib/acct_mgr_client.C.orig Sat Mar 12 01:51:33 2005
+++ lib/acct_mgr_client.C Thu Mar 24 10:12:20 2005
@@ -65,8 +65,8 @@
}
void ACCT_MGR::clear() {
- name.clear();
- url.clear();
+ name = "";
+ url = "";
}
ACCT_MGR_LOGIN::ACCT_MGR_LOGIN() {
@@ -93,8 +93,8 @@
}
void ACCT_MGR_LOGIN::clear() {
- login.clear();
- password.clear();
+ login = "";
+ password = "";
}

View file

@ -1,11 +0,0 @@
--- lib/diagnostics.h.orig Fri Mar 25 07:51:07 2005
+++ lib/diagnostics.h Thu Jun 2 08:43:04 2005
@@ -149,7 +149,7 @@
#else // _DEBUG
#define BOINCASSERT(expr)
-#define BOINCTRACE(...)
+#define BOINCTRACE
#define BOINCINFO boinc_info_release
#endif // _DEBUG

View file

@ -1,125 +0,0 @@
--- lib/gui_rpc_client.C.orig Thu Mar 17 16:04:53 2005
+++ lib/gui_rpc_client.C Sun Mar 20 22:32:04 2005
@@ -164,11 +164,11 @@
}
void PROJECT::clear() {
- master_url.clear();
+ master_url = "";
resource_share = 0.0;
- project_name.clear();
- user_name.clear();
- team_name.clear();
+ project_name = "";
+ user_name = "";
+ team_name = "";
user_total_credit = 0.0;
user_expavg_credit = 0.0;
host_total_credit = 0.0;
@@ -209,7 +209,7 @@
}
void APP::clear() {
- name.clear();
+ name = "";
project = NULL;
}
@@ -238,7 +238,7 @@
}
void APP_VERSION::clear() {
- app_name.clear();
+ app_name = "";
version_num = 0;
app = NULL;
project = NULL;
@@ -276,8 +276,8 @@
}
void WORKUNIT::clear() {
- name.clear();
- app_name.clear();
+ name = "";
+ app_name = "";
version_num = 0;
rsc_fpops_est = 0.0;
rsc_fpops_bound = 0.0;
@@ -376,9 +376,9 @@
}
void RESULT::clear() {
- name.clear();
- wu_name.clear();
- project_url.clear();
+ name = "";
+ wu_name = "";
+ project_url = "";
report_deadline = 0;
ready_to_report = false;
got_server_ack = false;
@@ -389,7 +389,7 @@
signal = 0;
active_task_state = 0;
active_task = false;
- stderr_out.clear();
+ stderr_out = "";
app_version_num = 0;
checkpoint_cpu_time = 0.0;
current_cpu_time = 0.0;
@@ -463,9 +463,9 @@
}
void FILE_TRANSFER::clear() {
- name.clear();
- project_url.clear();
- project_name.clear();
+ name = "";
+ project_url = "";
+ project_name = "";
nbytes = 0.0;
generated_locally = false;
uploaded = false;
@@ -481,7 +481,7 @@
bytes_xferred = 0.0;
file_offset = 0.0;
xfer_speed = 0.0;
- hostname.clear();
+ hostname = "";
project = NULL;
}
@@ -516,10 +516,10 @@
}
void MESSAGE::clear() {
- project.clear();
+ project = "";
priority = 0;
timestamp = 0;
- body.clear();
+ body = "";
}
PROXY_INFO::PROXY_INFO() {
@@ -570,14 +570,14 @@
use_socks_proxy = false;
use_http_authentication = false;
socks_version = 0;
- socks_server_name.clear();
- http_server_name.clear();
+ socks_server_name = "";
+ http_server_name = "";
socks_server_port = 0;
http_server_port = 0;
- http_user_name.clear();
- http_user_passwd.clear();
- socks5_user_name.clear();
- socks5_user_passwd.clear();
+ http_user_name = "";
+ http_user_passwd = "";
+ socks5_user_name = "";
+ socks5_user_passwd = "";
}
HOST_INFO::HOST_INFO() {

View file

@ -1,32 +0,0 @@
--- lib/parse.C.orig Tue May 31 17:59:28 2005
+++ lib/parse.C Wed Jun 1 20:56:12 2005
@@ -32,7 +32,6 @@
#ifndef _WIN32
#include <cstring>
#include <cstdlib>
-#include <locale>
#include <string>
#if HAVE_IEEEFP_H
#include <ieeefp.h>
@@ -67,10 +66,7 @@
bool parse_int(const char* buf, const char* tag, int& x) {
char* p = strstr(buf, tag);
if (!p) return false;
- std::string strLocale = setlocale(LC_NUMERIC, NULL);
- setlocale(LC_NUMERIC, "C");
x = strtol(p+strlen(tag), 0, 0); // this parses 0xabcd correctly
- setlocale(LC_NUMERIC, strLocale.c_str());
return true;
}
@@ -80,10 +76,7 @@
double y;
char* p = strstr(buf, tag);
if (!p) return false;
- std::string strLocale = setlocale(LC_NUMERIC, NULL);
- setlocale(LC_NUMERIC, "C");
y = atof(p+strlen(tag));
- setlocale(LC_NUMERIC, strLocale.c_str());
if (finite(y)) {
x = y;
return true;

View file

@ -1,20 +0,0 @@
--- zip/boinc_zip.cpp.orig Sun Jan 2 13:29:37 2005
+++ zip/boinc_zip.cpp Sun Mar 20 21:49:07 2005
@@ -129,7 +129,7 @@
//sz 3 onward will be each vector
int jj;
for (jj=0; jj<nVecSize; jj++)
- strcpy(av[3+jj], pvectszFileIn->at(jj).c_str());
+ strcpy(av[3+jj], (*pvectszFileIn)[jj].c_str());
}
else
{
@@ -141,7 +141,7 @@
// if they passed in a directory unzip there
if (carg == 4)
- sprintf(av[3], "-d%s", pvectszFileIn->at(0).c_str());
+ sprintf(av[3], "-d%s", (*pvectszFileIn)[0].c_str());
}
// strcpy(av[carg-1], ""); // null arg
// printf("args: %s %s %s %s\n", av[0], av[1], av[2], av[3]);

View file

@ -1,11 +0,0 @@
--- Makefile.am.orig Thu Feb 3 01:44:31 2005
+++ Makefile.am Fri May 20 12:37:31 2005
@@ -17,7 +17,7 @@
endif
if BUILD_CLIENTGUI
- CLIENTGUI_SUBDIRS = clientgui sea
+ CLIENTGUI_SUBDIRS = clientgui
endif
# ORDER MATTERS below. One must build dependencies FIRST, then things

View file

@ -1,59 +0,0 @@
--- api/boinc_api.C.orig Mon May 23 03:50:50 2005
+++ api/boinc_api.C Wed Jun 8 16:52:34 2005
@@ -59,7 +59,7 @@
#ifndef _WIN32
static pthread_t timer_thread_handle;
-static pthread_t worker_thread;
+static void * timer_thread();
static struct rusage worker_thread_ru;
#endif
@@ -534,14 +534,6 @@
}
}
-#ifndef _WIN32
-static void timer_signal_handler(int) {
- if (pthread_equal(pthread_self(), worker_thread)) {
- getrusage(RUSAGE_SELF, &worker_thread_ru);
- }
-}
-
-#endif
#ifdef _WIN32
static void CALLBACK worker_timer(
@@ -619,6 +611,7 @@
while(1) {
usleep((useconds_t)(TIMER_PERIOD*1000000));
worker_timer(0);
+ getrusage(RUSAGE_SELF, &worker_thread_ru);
}
/*NOTREACHED*/
}
@@ -659,24 +652,6 @@
retval = pthread_create(&timer_thread_handle, NULL, timer_thread, NULL);
if (retval) {
perror("set_worker_timer(): pthread_create(): %d");
- }
- worker_thread = pthread_self();
-
- struct sigaction sa;
- itimerval value;
- sa.sa_handler = timer_signal_handler;
- sa.sa_flags = SA_RESTART;
- retval = sigaction(SIGALRM, &sa, NULL);
- if (retval) {
- perror("boinc set_worker_timer() sigaction");
- return retval;
- }
- value.it_value.tv_sec = TIMER_PERIOD;
- value.it_value.tv_usec = 0;
- value.it_interval = value.it_value;
- retval = setitimer(ITIMER_REAL, &value, NULL);
- if (retval) {
- perror("boinc set_worker_timer() setitimer");
}
#endif
return retval;

View file

@ -1,13 +0,0 @@
--- clientgui/BOINCGUIApp.cpp.orig Wed May 25 15:48:01 2005
+++ clientgui/BOINCGUIApp.cpp Wed Jun 1 14:55:36 2005
@@ -110,10 +110,6 @@
BOINC_DIAG_DUMPCALLSTACKENABLED |
BOINC_DIAG_HEAPCHECKENABLED |
BOINC_DIAG_MEMORYLEAKCHECKENABLED |
-#if defined(__WXMSW__) || defined(__WXMAC__)
- BOINC_DIAG_REDIRECTSTDERR |
- BOINC_DIAG_REDIRECTSTDOUT |
-#endif
BOINC_DIAG_TRACETOSTDOUT;
diagnostics_init(

View file

@ -1,11 +0,0 @@
--- clientgui/ViewWork.cpp.orig Sun May 29 03:12:00 2005
+++ clientgui/ViewWork.cpp Wed Jun 8 15:30:28 2005
@@ -569,7 +569,7 @@
strBuffer.Clear();
RESULT* rp = pDoc->result(item);
- if (rp->active_task) {
+ if (! rp->active_task) {
if(rp->state < RESULT_COMPUTE_ERROR)
strBuffer.Printf(wxT("%.2f%%"), 0.0);
else

View file

@ -1,29 +0,0 @@
--- configure.ac.orig Mon May 23 18:01:12 2005
+++ configure.ac Wed Jun 1 17:43:25 2005
@@ -361,6 +361,8 @@
dnl check for wxWidgets
+enable_client_release=no
+disable_static_client=yes
if test "${enable_client_release}" = yes ; then
if test "${enable_debug}" = yes ; then
AM_PATH_WXCONFIG([2.6.0], [wxWin=1], [wxWin=0], --static=yes --unicode=no --debug=yes)
@@ -426,6 +428,8 @@
disable_static_client=yes])
dnl Some platform specific settings
+enable_client_release=no
+disable_static_client=yes
case $target in
*linux* | *sun* )
if ( test "${enable_client_release}" = yes ) && ( test "${enable_client}" != yes ); then
@@ -491,6 +495,8 @@
CLIENTGUILIBS=${WX_LIBS}
+enable_client_release=no
+disable_static_client=yes
if test "${enable_client_release}" = "yes" ; then
SAH_STATICIZE_LDFLAGS([${WX_LIBS_STATIC}],[CLIENTGUILIBS])
SAH_STATICIZE_LDFLAGS([${GLUT_LIBS}],[GLUT_LIBS])

View file

@ -0,0 +1,43 @@
--- client/cs_account.C.orig Mon Oct 3 20:05:58 2005
+++ client/cs_account.C Wed Mar 8 18:41:37 2006
@@ -346,7 +346,7 @@
}
int CLIENT_STATE::add_project(const char* master_url, const char* _auth) {
- char path[256], canonical_master_url[256], auth[256];
+ char path[256], canonical_master_url[256], auth[256], dir[256];
PROJECT* project;
FILE* f;
int retval;
@@ -366,7 +366,7 @@
return ERR_AUTHENTICATOR;
}
- // check if this project is already running
+ // check if we're already attached to this project
//
if (lookup_project(canonical_master_url)) {
msg_printf(0, MSG_ERROR, "Already attached to %s", canonical_master_url);
@@ -392,8 +392,21 @@
if (retval) return retval;
// remove any old files
+ // (unless PROJECT/app_info.xml is found, so that
+ // people using anonymous platform don't have to get apps again)
//
- retval = remove_project_dir(*project);
+ get_project_dir(project, dir);
+ sprintf(path, "%s/%s", dir, APP_INFO_FILE_NAME);
+ if (boinc_file_exists(path)) {
+ project->anonymous_platform = true;
+ f = fopen(path, "r");
+ if (f) {
+ parse_app_info(project, f);
+ fclose(f);
+ }
+ } else {
+ retval = remove_project_dir(*project);
+ }
retval = make_project_dir(*project);
if (retval) return retval;

View file

@ -0,0 +1,11 @@
--- lib/Makefile.in.orig Tue Mar 7 15:06:14 2006
+++ lib/Makefile.in Sat Mar 11 20:15:04 2006
@@ -403,7 +403,7 @@
proxy_info.h \
util.h \
msg_log.h \
- crypt.h
+ crypt.h std_fixes.h error_numbers.h
md5_test_SOURCES = md5_test.C md5.c md5_file.C
shmem_test_SOURCES = shmem_test.C shmem.C

View file

@ -1,13 +0,0 @@
--- ltmain.sh.orig Thu Apr 28 17:56:47 2005
+++ ltmain.sh Wed Jun 1 17:01:36 2005
@@ -1348,10 +1348,6 @@
# These systems don't actually have a C library (as such)
test "X$arg" = "X-lc" && continue
;;
- *-*-openbsd* | *-*-freebsd*)
- # Do not include libc due to us having libc/libc_r.
- test "X$arg" = "X-lc" && continue
- ;;
*-*-rhapsody* | *-*-darwin1.[012])
# Rhapsody C and math libraries are in the System framework
deplibs="$deplibs -framework System"

View file

@ -1,11 +1,9 @@
bin/boinc
%%BOINC_GUI%%bin/boincmgr
include/BOINC/acct_mgr_client.h
bin/boinc_client
bin/boinc_cmd
bin/crypt_prog
%%BOINC_GUI%%bin/boinc_gui
include/BOINC/app_ipc.h
include/BOINC/base64.h
include/BOINC/bmplib.h
include/BOINC/boinc_api.h
include/BOINC/boinc_gl.h
include/BOINC/boinc_win.h
include/BOINC/boinc_zip.h
include/BOINC/crypt.h
@ -14,43 +12,26 @@ include/BOINC/error_numbers.h
include/BOINC/exception.h
include/BOINC/filesys.h
include/BOINC/graphics_api.h
include/BOINC/graphics_data.h
include/BOINC/graphics_impl.h
include/BOINC/graphics_lib.h
include/BOINC/gui_rpc_client.h
include/BOINC/gutil.h
include/BOINC/hostinfo.h
include/BOINC/language.h
include/BOINC/md5.h
include/BOINC/md5_file.h
include/BOINC/mem_usage.h
include/BOINC/mfile.h
include/BOINC/miofile.h
include/BOINC/msg_log.h
include/BOINC/msg_queue.h
include/BOINC/network.h
include/BOINC/parse.h
include/BOINC/prefs.h
include/BOINC/proxy_info.h
include/BOINC/reduce.h
include/BOINC/result_state.h
include/BOINC/shmem.h
include/BOINC/stackwalker_win.h
include/BOINC/std_fixes.h
include/BOINC/synch.h
include/BOINC/tgalib.h
include/BOINC/util.h
include/BOINC/x_opengl.h
lib/boinc/%%BOINC_BINARY%%
lib/libbenchmark.a
lib/libboinc.a
lib/libboinc_api.a
%%BOINC_GUI%%lib/libboinc_graphics_api.a
%%BOINC_GUI%%lib/libboinc_graphics_impl.a
%%BOINC_GUI%%lib/libboinc_graphics_lib.a
lib/librsaeuro.a
lib/libboinc_zip.a
@dirrm include/BOINC
@dirrm lib/boinc
@unexec if [ -d %%BOINC_HOME%% ]; then echo "If you are deinstalling boinc completely, remove the %%BOINC_HOME%% directory."; fi
@unexec if [ -d %%BOINC_HOME%% ]; then echo -n "Also, d"; else echo -n "D"; fi
@unexec echo "on't forget to remove the \"%%BOINC_USER%%\" user."