1
0
forked from pool/boinc-client

Accepting request 626119 from home:aaronpuchert

- Update to version 7.12.1.
- Remove doc package, since the files have been removed from the
  source. Actually it wasn't even the documentation, but the
  server code.
- Disable idle detection via the XSS API and remove dependency to
  libXScrnSaver-devel. This feature requires access to a running
  X server, which the BOINC client does not have in OpenSUSE.
- Rename the devel package and provide the correct dependency.
  The devel package provides the headers for libboinc, and has
  nothing to do with the BOINC client.
- Add conflict to original devel package.
- Remove unnecessary dependency to libxslt.
- Update systemd service file with changes from upstream: start
  after network-online.target, and use "ProtectHome=true".
- Move bash completion file to /usr/share tree to fix rpmlint.
- Declare license files as %license.
- Don't install `notes` and `todo` - these are internal notes of
  the developers and not helpful to users.
- Drop 0001-MGR-support-wxWidgets-without-webview.patch, which has
  landed upstream (commit 27bb3c9e).
- libboinc-shared.patch: Build shared libraries for client and
  static libraries for science apps. Science apps are distributed
  as binaries over the BOINC network, so dynamic linking doesn't
  make sense. But we can use dynamic linking for the client.
- build-client-scripts.patch: Add some targets to fix build.
- Fix default path for boincscr.

OBS-URL: https://build.opensuse.org/request/show/626119
OBS-URL: https://build.opensuse.org/package/show/network/boinc-client?expand=0&rev=72
This commit is contained in:
Jan Engelhardt 2018-08-06 13:31:58 +00:00 committed by Git OBS Bridge
parent 506460a09b
commit 035c59ea4a
9 changed files with 224 additions and 193 deletions

View File

@ -1,111 +0,0 @@
From 84c17bc232a7721ab0687228af5b3acfba12ad75 Mon Sep 17 00:00:00 2001
From: Jan Engelhardt <jengelh@inai.de>
Date: Fri, 8 Sep 2017 01:55:57 +0200
Subject: [PATCH] MGR: support wxWidgets without webview
If wxWidgets is built without support for the webview widget, make do
with a wxHtmlWindow instead.
---
clientgui/NoticeListCtrl.cpp | 25 +++++++++++++++++++++++++
clientgui/NoticeListCtrl.h | 8 ++++++++
2 files changed, 33 insertions(+)
Index: boinc-client_release-7.8-7.8.3/clientgui/NoticeListCtrl.cpp
===================================================================
--- boinc-client_release-7.8-7.8.3.orig/clientgui/NoticeListCtrl.cpp
+++ boinc-client_release-7.8-7.8.3/clientgui/NoticeListCtrl.cpp
@@ -49,10 +49,14 @@ IMPLEMENT_DYNAMIC_CLASS( CNoticeListCtrl
BEGIN_EVENT_TABLE( CNoticeListCtrl, wxWindow )
+#if wxUSE_WEBVIEW
////@begin CNoticeListCtrl event table entries
EVT_WEBVIEW_NAVIGATING(ID_LIST_NOTIFICATIONSVIEW, CNoticeListCtrl::OnLinkClicked)
EVT_WEBVIEW_ERROR(ID_LIST_NOTIFICATIONSVIEW, CNoticeListCtrl::OnWebViewError)
////@end CNoticeListCtrl event table entries
+#else
+ EVT_HTML_LINK_CLICKED(ID_LIST_NOTIFICATIONSVIEW, CNoticeListCtrl::OnLinkClicked)
+#endif
END_EVENT_TABLE()
@@ -84,7 +88,11 @@ bool CNoticeListCtrl::Create( wxWindow*
wxWindow::Create( parent, ID_LIST_NOTIFICATIONSVIEW, wxDefaultPosition, wxDefaultSize,
wxSUNKEN_BORDER | wxTAB_TRAVERSAL );
+#if wxUSE_WEBVIEW
m_browser = wxWebView::New( this, ID_LIST_NOTIFICATIONSVIEW );
+#else
+ m_browser = new wxHtmlWindow(this, ID_LIST_NOTIFICATIONSVIEW);
+#endif
////@end CNoticeListCtrl creation
wxBoxSizer *topsizer;
@@ -238,7 +246,11 @@ void CNoticeListCtrl::SetItemCount(int n
m_noticesBody += wxT("</font></body></html>");
// baseURL is not needed here (see comments above) and it
// must be an empty string for this to work under OS 10.12.4
+#if wxUSE_WEBVIEW
m_browser->SetPage(m_noticesBody, wxEmptyString);
+#else
+ m_browser->SetPage(m_noticesBody);
+#endif
}
@@ -248,6 +260,7 @@ void CNoticeListCtrl::Clear() {
}
+#if wxUSE_WEBVIEW
void CNoticeListCtrl::OnLinkClicked( wxWebViewEvent& event ) {
if (event.GetURL().StartsWith(wxT("http://")) || event.GetURL().StartsWith(wxT("https://"))) {
event.Veto(); // Tell wxWebView not to follow link
@@ -264,6 +277,18 @@ void CNoticeListCtrl::OnWebViewError( wx
event.Skip();
}
+#else
+void CNoticeListCtrl::OnLinkClicked(wxHtmlLinkEvent &event)
+{
+ wxString url = event.GetLinkInfo().GetHref();
+ if (!url.StartsWith(wxT("http://")) && !url.StartsWith(wxT("https://"))) {
+ event.Skip();
+ return;
+ }
+ event.Skip(); // Tell element not to follow link
+ wxLaunchDefaultBrowser(url);
+}
+#endif
/*!
Index: boinc-client_release-7.8-7.8.3/clientgui/NoticeListCtrl.h
===================================================================
--- boinc-client_release-7.8-7.8.3.orig/clientgui/NoticeListCtrl.h
+++ boinc-client_release-7.8-7.8.3/clientgui/NoticeListCtrl.h
@@ -45,8 +45,12 @@ public:
////@begin CNoticeListCtrl event handler declarations
+#if defined(wxUSE_WEBVIEW) && wxUSE_WEBVIEW
void OnLinkClicked( wxWebViewEvent& event );
void OnWebViewError( wxWebViewEvent& event );
+#else
+ void OnLinkClicked(wxHtmlLinkEvent &);
+#endif
////@end CNoticeListCtrl event handler declarations
@@ -56,7 +60,11 @@ public:
bool m_bDisplayFetchingNotices;
bool m_bDisplayEmptyNotice;
private:
+#if wxUSE_WEBVIEW
wxWebView* m_browser;
+#else
+ wxHtmlWindow *m_browser;
+#endif
bool m_bNeedsReloading;
int m_itemCount;
wxString m_noticesBody;

3
7.12.1.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:8fcfa84d2c1c90f65b0f1a5b0edf8353341f0211acfaa7538428845d9817e2d7
size 50378728

View File

@ -1,3 +1,33 @@
-------------------------------------------------------------------
Tue Jul 24 20:06:29 UTC 2018 - aaronpuchert@alice-dsl.net
- Update to version 7.12.1.
- Remove doc package, since the files have been removed from the
source. Actually it wasn't even the documentation, but the
server code.
- Disable idle detection via the XSS API and remove dependency to
libXScrnSaver-devel. This feature requires access to a running
X server, which the BOINC client does not have in OpenSUSE.
- Rename the devel package and provide the correct dependency.
The devel package provides the headers for libboinc, and has
nothing to do with the BOINC client.
- Add conflict to original devel package.
- Remove unnecessary dependency to libxslt.
- Update systemd service file with changes from upstream: start
after network-online.target, and use "ProtectHome=true".
- Move bash completion file to /usr/share tree to fix rpmlint.
- Declare license files as %license.
- Don't install `notes` and `todo` - these are internal notes of
the developers and not helpful to users.
- Drop 0001-MGR-support-wxWidgets-without-webview.patch, which has
landed upstream (commit 27bb3c9e).
- libboinc-shared.patch: Build shared libraries for client and
static libraries for science apps. Science apps are distributed
as binaries over the BOINC network, so dynamic linking doesn't
make sense. But we can use dynamic linking for the client.
- build-client-scripts.patch: Add some targets to fix build.
- Fix default path for boincscr.
------------------------------------------------------------------- -------------------------------------------------------------------
Wed Jul 11 15:36:12 UTC 2018 - chris@computersalat.de Wed Jul 11 15:36:12 UTC 2018 - chris@computersalat.de

View File

@ -1,19 +1,23 @@
[Unit] [Unit]
Description=Berkeley Open Infrastructure Network Computing Client Description=Berkeley Open Infrastructure Network Computing Client
After=network.target Documentation=man:boinc(1)
After=network-online.target
[Service] [Service]
Type=simple
EnvironmentFile=-/etc/sysconfig/boinc-client EnvironmentFile=-/etc/sysconfig/boinc-client
Nice=10 Nice=10
User=boinc User=boinc
ProtectHome=true
CPUSchedulingPolicy=batch CPUSchedulingPolicy=batch
Slice=background.slice Slice=background.slice
PermissionsStartOnly=yes
### boinc logs (with --redirectio) to stdoutdae.txt and stderrdae.txt ### boinc logs (with --redirectio) to stdoutdae.txt and stderrdae.txt
#PermissionsStartOnly=yes
#ExecStartPre=/bin/sleep 1 #ExecStartPre=/bin/sleep 1
#ExecStartPre=/usr/bin/touch /var/log/boinc-client.log /var/log/boinc-client.err.log #ExecStartPre=/usr/bin/touch /var/log/boinc-client.log /var/log/boinc-client.err.log
#ExecStartPre=/usr/bin/chown $BOINC_BOINC_USR:$BOINC_BOINC_GRP /var/log/boinc-client.log /var/log/boinc-client.err.log #ExecStartPre=/usr/bin/chown $BOINC_BOINC_USR:$BOINC_BOINC_GRP /var/log/boinc-client.log /var/log/boinc-client.err.log
ExecStart=/usr/bin/boinc --dir $BOINC_BOINC_DIR $BOINC_BOINC_OPTS ExecStart=/usr/bin/boinc --dir $BOINC_BOINC_DIR $BOINC_BOINC_OPTS
ExecStop=/usr/bin/boinccmd --quit
ExecReload=/usr/bin/boinccmd --read_cc_config ExecReload=/usr/bin/boinccmd --read_cc_config
ExecStopPost=/bin/rm -f $BOINC_BOINC_DIR/lockfile ExecStopPost=/bin/rm -f $BOINC_BOINC_DIR/lockfile

View File

@ -35,8 +35,8 @@
Name: boinc-client Name: boinc-client
%define rel_name %{name}_release %define rel_name %{name}_release
%define minor_version 7.8 %define minor_version 7.12
Version: %{minor_version}.6 Version: %{minor_version}.1
Release: 0 Release: 0
Summary: The BOINC client Summary: The BOINC client
License: GPL-3.0-or-later OR LGPL-3.0-or-later License: GPL-3.0-or-later OR LGPL-3.0-or-later
@ -44,8 +44,7 @@ Group: Productivity/Clustering/Computing
Url: http://boinc.berkeley.edu/ Url: http://boinc.berkeley.edu/
#Git-Clone: git://github.com/BOINC/boinc #Git-Clone: git://github.com/BOINC/boinc
#Source0: https://github.com/BOINC/boinc/archive/client_release/%{minor_version}/%{version}.tar.gz Source0: https://github.com/BOINC/boinc/archive/client_release/%{minor_version}/%{version}.tar.gz
Source0: %{name}_release-%{minor_version}-%{version}.tar.gz
Source1: boinc-icons.tar.bz2 Source1: boinc-icons.tar.bz2
Source2: boinc-gui.desktop Source2: boinc-gui.desktop
Source3: README.SUSE Source3: README.SUSE
@ -58,7 +57,8 @@ Source100: %{name}-rpmlintrc
Patch1: boinc-guirpcauth.patch Patch1: boinc-guirpcauth.patch
Patch2: boinc-docbook2x.patch Patch2: boinc-docbook2x.patch
Patch4: xlocale.patch Patch4: xlocale.patch
Patch5: 0001-MGR-support-wxWidgets-without-webview.patch Patch5: build-client-scripts.patch
Patch6: libboinc-shared.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRoot: %{_tmppath}/%{name}-%{version}-build
# #
BuildRequires: Mesa-devel BuildRequires: Mesa-devel
@ -73,7 +73,6 @@ BuildRequires: libcurl-devel >= 7.17.1
BuildRequires: libjpeg-devel BuildRequires: libjpeg-devel
BuildRequires: libnotify-devel BuildRequires: libnotify-devel
BuildRequires: libtool BuildRequires: libtool
BuildRequires: libxslt
BuildRequires: openssl-devel BuildRequires: openssl-devel
BuildRequires: pkg-config BuildRequires: pkg-config
BuildRequires: pwdutils BuildRequires: pwdutils
@ -85,7 +84,6 @@ Recommends: boinc-client-lang = %{version}
Recommends: logrotate Recommends: logrotate
# #
%if 0%{?suse_version} >= 1310 %if 0%{?suse_version} >= 1310
BuildRequires: libXScrnSaver-devel
BuildRequires: libXi-devel BuildRequires: libXi-devel
BuildRequires: libxcb-devel BuildRequires: libxcb-devel
BuildRequires: xcb-util-devel BuildRequires: xcb-util-devel
@ -137,15 +135,6 @@ monitoring. The BOINC Manager has two modes of operation, the "Simple View" in
which it only displays the most important information and the "Advanced View" which it only displays the most important information and the "Advanced View"
in which all information and all control elements are available. in which all information and all control elements are available.
%package devel
Summary: Development files for boinc-client
Group: Development/Libraries/C and C++
Requires: %{name} = %{version}-%{release}
Requires: openssl-devel
%description devel
This package contains development files for %{name}.
%package -n libboinc%{sonum} %package -n libboinc%{sonum}
Summary: Berkeley Open Infrastructure For Network Computing library Summary: Berkeley Open Infrastructure For Network Computing library
Group: System/Libraries Group: System/Libraries
@ -157,21 +146,25 @@ monitoring. The BOINC Manager has two modes of operation, the "Simple View" in
which it only displays the most important information and the "Advanced View" which it only displays the most important information and the "Advanced View"
in which all information and all control elements are available. in which all information and all control elements are available.
%package doc %package -n libboinc-devel
Summary: Documentation files for boinc-client Summary: Development files for libboinc
Group: Documentation/Other Group: Development/Libraries/C and C++
%if 0%{?suse_version} >= 1120 Requires: libboinc%{sonum} = %{version}-%{release}
BuildArch: noarch Conflicts: %{name}-devel
%endif Requires: openssl-devel
%description doc %description -n libboinc-devel
This package contains documentation files for the BOINC client. This package contains development files for libboinc.
%prep %prep
%setup -q -n %{name}_release-%{minor_version}-%{version} -D -a 1 %setup -q -n %{name}_release-%{minor_version}-%{version} -D -a 1
%patch -P 1 -P 2 -P 4 -P 5 -p1 %patch -P 1 -P 2 -P 4 -P 5 -P 6 -p1
%build %build
# Fix default path for boincscr
sed -i -e "s,/var/lib/boinc-client,%{boinc_dir},g" \
clientscr/screensaver_x11.cpp
# Install user hints # Install user hints
install -m0644 %{SOURCE3} README.SUSE install -m0644 %{SOURCE3} README.SUSE
@ -191,10 +184,7 @@ done
rm -r coprocs/NVIDIA rm -r coprocs/NVIDIA
# Remove unnecessary components and files for other platforms. # Remove unnecessary components and files for other platforms.
rm -r android drupal mac_build mac_installer mac3rdParty win_build xcompile rm -r android drupal mac_build mac_installer win_build xcompile
# Remove dangling symlink
rm doc/sim_web.php
autoreconf -fi autoreconf -fi
%configure \ %configure \
@ -207,9 +197,6 @@ autoreconf -fi
--disable-fcgi \ --disable-fcgi \
%if ! %{with manager} %if ! %{with manager}
--disable-manager \ --disable-manager \
%endif
%if %{with manager}
--with-x \
%endif %endif
--with-ssl --with-ssl
@ -290,7 +277,7 @@ install -Dm0644 %{SOURCE4} %{buildroot}%{_fillupdir}/sysconfig.%{name}
install -Dm0644 %{SOURCE5} %{buildroot}%{_sysconfdir}/logrotate.d/%{name} install -Dm0644 %{SOURCE5} %{buildroot}%{_sysconfdir}/logrotate.d/%{name}
# Install bash completion # Install bash completion
install -Dpm0644 client/scripts/boinc.bash %{buildroot}%{_sysconfdir}/bash_completion.d/boinc install -Dpm0644 client/scripts/boinc.bash %{buildroot}%{_datadir}/bash-completion/completions/boinc
%if %{with manager} %if %{with manager}
# Install desktop-file and icons # Install desktop-file and icons
@ -306,7 +293,7 @@ install -Dm0644 boinc-gui-16.png %{buildroot}%{_datadir}/icons/hicolor/16x16/app
%endif %endif
# Remove static libraries, libtool archives # Remove static libraries, libtool archives
rm %{buildroot}%{_libdir}/*.{a,la} rm %{buildroot}%{_libdir}/*.la
# Relinking Manpages # Relinking Manpages
%if %{with manager} %if %{with manager}
@ -315,14 +302,6 @@ ln -s -f boincmgr.1.gz %{buildroot}%{_mandir}/man1/boinc-manager.1.gz
ln -s -f boinccmd.1.gz %{buildroot}%{_mandir}/man1/boinccmd.1.gz ln -s -f boinccmd.1.gz %{buildroot}%{_mandir}/man1/boinccmd.1.gz
ln -s -f boinc.1.gz %{buildroot}%{_mandir}/man1/boinc.1.gz ln -s -f boinc.1.gz %{buildroot}%{_mandir}/man1/boinc.1.gz
### rm wrong link
cd doc
rm -f sim_web.php
ln -s sim/sim_web.php
cd -
# Fix spurious-executable-perm
chmod 0644 doc/*.php
# Install fake /var/lib/boinc # Install fake /var/lib/boinc
install -dm0755 %{buildroot}%{_var}/lib/boinc install -dm0755 %{buildroot}%{_var}/lib/boinc
@ -331,7 +310,7 @@ install -dm0755 %{buildroot}%{_var}/lib/boinc
%if %{with manager} %if %{with manager}
%find_lang BOINC-Manager %find_lang BOINC-Manager
%else %else
find %{buildroot}/%{_datadir}/locale/ -name "BOINC-Manager.mo" -print0 | xargs -0 rm -f -- find %{buildroot}/%{_datadir}/locale/ -name "BOINC-Manager.mo" -exec rm -f \{\} \;
%endif %endif
%fdupes -s %{buildroot} %fdupes -s %{buildroot}
@ -392,15 +371,16 @@ fi
%postun -n libboinc%{sonum} -p /sbin/ldconfig %postun -n libboinc%{sonum} -p /sbin/ldconfig
%post devel -p /sbin/ldconfig %post -n libboinc-devel -p /sbin/ldconfig
%postun devel -p /sbin/ldconfig %postun -n libboinc-devel -p /sbin/ldconfig
%files %files
%defattr(-,root,root,-) %defattr(-,root,root,-)
%doc COPYING* COPYRIGHT notes todo README.SUSE %license COPYING* COPYRIGHT
%doc README.SUSE
%config(noreplace) %{_sysconfdir}/logrotate.d/%{name} %config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
%config(noreplace) %{_sysconfdir}/bash_completion.d/* %{_datadir}/bash-completion/completions/*
%{_bindir}/boinc %{_bindir}/boinc
%{_bindir}/%{name} %{_bindir}/%{name}
%{_bindir}/boinccmd %{_bindir}/boinccmd
@ -415,12 +395,7 @@ fi
%{_sbindir}/rc%{name} %{_sbindir}/rc%{name}
%{_fillupdir}/sysconfig.%{name} %{_fillupdir}/sysconfig.%{name}
%defattr(-,boinc,boinc,-) %defattr(-,boinc,boinc,-)
%{_localstatedir}/lib/boinc/ %{boinc_dir}/
%files doc
%defattr(-,root,root,-)
%doc checkin_*
%doc doc/*.txt doc/bolt doc/logo doc/*.php doc/*.png doc/*.html
%files -n %{name}-lang -f BOINC-Client.lang %files -n %{name}-lang -f BOINC-Client.lang
%defattr(-,root,root) %defattr(-,root,root)
@ -450,8 +425,9 @@ fi
%defattr(-,root,root,-) %defattr(-,root,root,-)
%{_libdir}/*.so.* %{_libdir}/*.so.*
%files devel %files -n libboinc-devel
%defattr(-,root,root,-) %defattr(-,root,root,-)
%{_libdir}/*.a
%{_libdir}/*.so %{_libdir}/*.so
%{_includedir}/boinc %{_includedir}/boinc

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ed5f3dcdc8d1cc5277529afb701377e77d1ff89711368a7456553bf249940bad
size 52037690

View File

@ -0,0 +1,10 @@
--- a/client/scripts/Makefile.am
+++ b/client/scripts/Makefile.am
@@ -1,5 +1,7 @@
## -*- mode: makefile; tab-width: 4 -*-
+all-local: boinc-client boinc-client.service
+
install-exec-hook:
chmod +x boinc-client
if [ -d /etc/init.d ] ; then \

136
libboinc-shared.patch Normal file
View File

@ -0,0 +1,136 @@
Build shared libraries for client and static libraries for science apps.
diff --git a/api/Makefile.am b/api/Makefile.am
--- a/api/Makefile.am
+++ b/api/Makefile.am
@@ -43,18 +43,18 @@ endif
lib_LTLIBRARIES = libboinc_api.la
libboinc_api_la_SOURCES = $(api_files)
-libboinc_api_la_LDFLAGS = -version-number $(LIBBOINC_VERSION)
+libboinc_api_la_LDFLAGS = -static -version-number $(LIBBOINC_VERSION)
if BUILD_GRAPHICS_API
lib_LTLIBRARIES += libboinc_graphics2.la
libboinc_graphics2_la_SOURCES = $(graphics2_files)
libboinc_graphics2_la_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/lib -I$(top_srcdir)/samples/image_libs
-libboinc_graphics2_la_LDFLAGS = -version-number $(LIBBOINC_VERSION) -ljpeg
+libboinc_graphics2_la_LDFLAGS = -static -version-number $(LIBBOINC_VERSION) -ljpeg
endif #BUILD_GRAPHICS_API
lib_LTLIBRARIES += libboinc_opencl.la
libboinc_opencl_la_SOURCES = $(opencl_files)
-libboinc_opencl_la_LDFLAGS = -version-number $(LIBBOINC_VERSION)
+libboinc_opencl_la_LDFLAGS = -static -version-number $(LIBBOINC_VERSION)
if INSTALL_HEADERS
## install only headers that are meant for exporting the API !!
diff --git a/apps/Makefile.am b/apps/Makefile.am
--- a/apps/Makefile.am
+++ b/apps/Makefile.am
@@ -8,15 +8,15 @@ example_PROGRAMS = upper_case concat 1sec
upper_case_SOURCES = upper_case.cpp
upper_case_CXXFLAGS = $(PTHREAD_CFLAGS)
-upper_case_LDFLAGS = -static-libtool-libs $(PTHREAD_CFLAGS)
+upper_case_LDFLAGS = $(PTHREAD_CFLAGS)
upper_case_LDADD = $(APPLIBS)
concat_SOURCES = concat.cpp
concat_CXXFLAGS = $(PTHREAD_CFLAGS)
-concat_LDFLAGS = -static-libtool-libs $(PTHREAD_CFLAGS)
+concat_LDFLAGS = $(PTHREAD_CFLAGS)
concat_LDADD = $(APPLIBS)
1sec_SOURCES = 1sec.cpp
1sec_CXXFLAGS = $(PTHREAD_CFLAGS)
-1sec_LDFLAGS = -static-libtool-libs $(PTHREAD_CFLAGS)
+1sec_LDFLAGS = $(PTHREAD_CFLAGS)
1sec_LDADD = $(APPLIBS)
diff --git a/client/Makefile.am b/client/Makefile.am
--- a/client/Makefile.am
+++ b/client/Makefile.am
@@ -4,7 +4,6 @@
include $(top_srcdir)/Makefile.incl
if ENABLE_CLIENT_RELEASE
- AM_LDFLAGS += -static-libtool-libs
## for an entirely statically linked library, you may want to try
## -all-static instead. There's a good chance it won't work properly,
## so we'll use the safer "-static-libtool-libs" by default.
diff --git a/clientgui/Makefile.am b/clientgui/Makefile.am
--- a/clientgui/Makefile.am
+++ b/clientgui/Makefile.am
@@ -7,7 +7,6 @@
include $(top_srcdir)/Makefile.incl
if ENABLE_CLIENT_RELEASE
- AM_LDFLAGS += -static-libtool-libs
## for an entirely statically linked library, you may want to try
## -all-static instead. There's a good chance it won't work properly,
## so we'll use the safer "-static-libtool-libs" by default.
diff --git a/clientscr/Makefile.am b/clientscr/Makefile.am
--- a/clientscr/Makefile.am
+++ b/clientscr/Makefile.am
@@ -5,7 +5,6 @@ include $(top_srcdir)/Makefile.incl
AM_LDFLAGS += -lpthread
if ENABLE_CLIENT_RELEASE
- AM_LDFLAGS += -static-libtool-libs
## for an entirely statically linked library, you may want to try
## -all-static instead. There's a good chance it won't work properly,
## so we'll use the safer "-static-libtool-libs" by default.
diff --git a/lib/Makefile.am b/lib/Makefile.am
--- a/lib/Makefile.am
+++ b/lib/Makefile.am
@@ -182,7 +182,7 @@ lib_LTLIBRARIES = libboinc.la
libboinc_la_SOURCES = $(generic_sources) $(mac_sources) $(win_sources)
libboinc_la_CFLAGS = $(AM_CFLAGS) $(PICFLAGS) $(PTHREAD_CFLAGS)
libboinc_la_CXXFLAGS = $(AM_CXXFLAGS) $(PICFLAGS) $(PTHREAD_CFLAGS)
-libboinc_la_LDFLAGS = -static -version-number $(LIBBOINC_VERSION)
+libboinc_la_LDFLAGS = -version-number $(LIBBOINC_VERSION)
libboinc_la_LIBADD =
if ENABLE_BOINCCRYPT
@@ -190,7 +190,7 @@ lib_LTLIBRARIES += libboinc_crypt.la
libboinc_crypt_la_SOURCES = crypt.cpp
libboinc_crypt_la_CFLAGS = $(AM_CFLAGS) $(PICFLAGS) $(PTHREAD_CFLAGS) $(SSL_CFLAGS)
libboinc_crypt_la_CXXFLAGS = $(AM_CXXFLAGS) $(PICFLAGS) $(PTHREAD_CFLAGS) $(SSL_CXXFLAGS)
-libboinc_crypt_la_LDFLAGS = -static -version-number $(LIBBOINC_VERSION)
+libboinc_crypt_la_LDFLAGS = -version-number $(LIBBOINC_VERSION)
libboinc_crypt_la_LIBADD =
endif
diff --git a/sched/Makefile.am b/sched/Makefile.am
--- a/sched/Makefile.am
+++ b/sched/Makefile.am
@@ -4,7 +4,6 @@
include $(top_srcdir)/Makefile.incl
AM_CPPFLAGS += $(MYSQL_CFLAGS) $(PTHREAD_CFLAGS)
-AM_LDFLAGS += -static
if ENABLE_LIBRARIES
diff --git a/tools/Makefile.am b/tools/Makefile.am
--- a/tools/Makefile.am
+++ b/tools/Makefile.am
@@ -43,7 +43,6 @@ dist_tools_DATA = \
project.xml
AM_CXXFLAGS += $(MYSQL_CFLAGS)
-AM_LDFLAGS += -static
cancel_jobs_SOURCES = cancel_jobs.cpp
cancel_jobs_LDADD = $(SERVERLIBS)
diff --git a/vda/Makefile.am b/vda/Makefile.am
--- a/vda/Makefile.am
+++ b/vda/Makefile.am
@@ -4,7 +4,6 @@ vdadir=$(prefix)/lib/boinc-server-maker/vda
vda_PROGRAMS = vda vdad ssim
AM_CXXFLAGS += $(MYSQL_CFLAGS)
-AM_LDFLAGS += -static
vda_SOURCES = vda.cpp vda_lib.cpp vda_lib2.cpp vda_policy.cpp stats.cpp
vda_LDADD = $(SERVERLIBS)

View File

@ -5,33 +5,19 @@ build: use locale.h instead of xlocale.h
glibc-2.26 has dropped xlocale.h. glibc-2.26 has dropped xlocale.h.
--- ---
clientgui/AsyncRPC.cpp | 2 +- clientgui/AsyncRPC.cpp | 4 +---
lib/gui_rpc_client.h | 2 +- 1 file changed, 1 insertion(+), 3 deletions(-)
2 files changed, 2 insertions(+), 2 deletions(-)
Index: boinc-client_release-7.8-7.8.3/clientgui/AsyncRPC.cpp --- a/clientgui/AsyncRPC.cpp
=================================================================== +++ b/clientgui/AsyncRPC.cpp
--- boinc-client_release-7.8-7.8.3.orig/clientgui/AsyncRPC.cpp @@ -24,9 +24,7 @@
+++ boinc-client_release-7.8-7.8.3/clientgui/AsyncRPC.cpp
@@ -20,7 +20,7 @@
#endif #endif
#include "config.h"
#if !(defined(_WIN32) || (defined(__WXMAC__) && (MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_4))) -#if HAVE_XLOCALE_H
-#include <xlocale.h> -#include <xlocale.h>
-#endif
+#include <locale.h> +#include <locale.h>
#endif
#include "stdwx.h" #include "stdwx.h"
Index: boinc-client_release-7.8-7.8.3/lib/gui_rpc_client.h #include "BOINCGUIApp.h"
===================================================================
--- boinc-client_release-7.8-7.8.3.orig/lib/gui_rpc_client.h
+++ boinc-client_release-7.8-7.8.3/lib/gui_rpc_client.h
@@ -807,7 +807,7 @@ struct RPC {
#elif defined(__APPLE__) && (MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_4)
// uselocale() is not available in OS 10.3.9 so use weak linking
-#include <xlocale.h>
+#include <locale.h>
extern int freelocale(locale_t) __attribute__((weak_import));
extern locale_t newlocale(int, __const char *, locale_t) __attribute__((weak_import));
extern locale_t uselocale(locale_t) __attribute__((weak_import));