summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSven Eden <yamakuzure@gmx.net>2016-06-08 16:35:11 +0200
committerDavid Seifert <soap@gentoo.org>2016-06-14 21:09:59 +0200
commitf001ab2981417a0f5a8f5249f3708da7ebcb3148 (patch)
treee3f15927795ff91e3c27bc740a110df6be7b634b /sci-misc/boinc
parentsci-misc/boinc: New ebuild for boinc-7.2.44 (diff)
downloadgentoo-f001ab2981417a0f5a8f5249f3708da7ebcb3148.tar.gz
gentoo-f001ab2981417a0f5a8f5249f3708da7ebcb3148.tar.bz2
gentoo-f001ab2981417a0f5a8f5249f3708da7ebcb3148.zip
sci-misc/boinc: New ebuild for boinc-7.4.43
Package-Manager: portage-2.2.28 Closes: https://github.com/gentoo/gentoo/pull/1629 Signed-off-by: David Seifert <soap@gentoo.org>
Diffstat (limited to 'sci-misc/boinc')
-rw-r--r--sci-misc/boinc/boinc-7.4.43.ebuild154
1 files changed, 154 insertions, 0 deletions
diff --git a/sci-misc/boinc/boinc-7.4.43.ebuild b/sci-misc/boinc/boinc-7.4.43.ebuild
new file mode 100644
index 000000000000..3daf627d4c98
--- /dev/null
+++ b/sci-misc/boinc/boinc-7.4.43.ebuild
@@ -0,0 +1,154 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+WX_GTK_VER=3.0
+
+inherit autotools flag-o-matic linux-info systemd user versionator wxwidgets
+
+MY_PV=$(get_version_component_range 1-2)
+
+DESCRIPTION="The Berkeley Open Infrastructure for Network Computing"
+HOMEPAGE="http://boinc.ssl.berkeley.edu/"
+SRC_URI="https://github.com/BOINC/boinc/archive/client_release/${MY_PV}/${PV}.tar.gz -> ${P}.tar.gz"
+RESTRICT="mirror"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="X cuda curl_ssl_libressl +curl_ssl_openssl static-libs"
+
+REQUIRED_USE="^^ ( curl_ssl_libressl curl_ssl_openssl ) "
+
+# libcurl must not be using an ssl backend boinc does not support.
+# If the libcurl ssl backend changes, boinc should be recompiled.
+RDEPEND="
+ !sci-misc/boinc-bin
+ !app-admin/quickswitch
+ >=app-misc/ca-certificates-20080809
+ net-misc/curl[-curl_ssl_gnutls(-),curl_ssl_libressl(-)=,-curl_ssl_nss(-),curl_ssl_openssl(-)=,-curl_ssl_axtls(-),-curl_ssl_cyassl(-),-curl_ssl_polarssl(-)]
+ sys-apps/util-linux
+ sys-libs/zlib
+ cuda? (
+ >=dev-util/nvidia-cuda-toolkit-2.1
+ >=x11-drivers/nvidia-drivers-180.22
+ )
+ X? (
+ dev-db/sqlite:3
+ media-libs/freeglut
+ sys-libs/glibc:2.2
+ virtual/jpeg:0=
+ x11-libs/gtk+:2
+ >=x11-libs/libnotify-0.7
+ x11-libs/wxGTK:${WX_GTK_VER}[X,opengl,webkit]
+ )
+"
+DEPEND="${RDEPEND}
+ sys-devel/gettext
+ app-text/docbook-xml-dtd:4.4
+ app-text/docbook2X
+"
+
+S="${WORKDIR}/${PN}-client_release-${MY_PV}-${PV}"
+
+pkg_setup() {
+ # Bug 578750
+ if use kernel_linux; then
+ linux-info_pkg_setup
+ if ! linux_config_exists; then
+ ewarn "Can't check the linux kernel configuration."
+ ewarn "You might be missing vsyscall support."
+ elif kernel_is -ge 4 4 \
+ && linux_chkconfig_present LEGACY_VSYSCALL_NONE; then
+ ewarn "You do not have vsyscall emulation enabled."
+ ewarn "This will prevent some boinc projects from running."
+ ewarn "Please enable vsyscall emulation:"
+ ewarn " CONFIG_LEGACY_VSYSCALL_EMULATE=y"
+ ewarn "in /usr/src/linux/.config, to be found at"
+ ewarn " Processor type and features --->"
+ ewarn " vsyscall table for legacy applications (None) --->"
+ ewarn " (X) Emulate"
+ ewarn "Alternatively, you can enable CONFIG_LEGACY_VSYSCALL_NATIVE."
+ ewarn "However, this has security implications and is not recommended."
+ fi
+ fi
+}
+
+src_prepare() {
+ # prevent bad changes in compile flags, bug 286701
+ sed -i -e "s:BOINC_SET_COMPILE_FLAGS::" configure.ac || die "sed failed"
+
+ eautoreconf
+
+ use X && need-wxwidgets unicode
+}
+
+src_configure() {
+ econf --disable-server \
+ --enable-client \
+ --enable-dynamic-client-linkage \
+ --disable-static \
+ --enable-unicode \
+ --with-ssl \
+ $(use_with X x) \
+ $(use_enable X manager) \
+ $(usex X --with-wx-config="${WX_CONFIG}" --without-wxdir)
+}
+
+src_install() {
+ default
+
+ keepdir /var/lib/${PN}
+
+ if use X; then
+ newicon "${S}"/packages/generic/sea/${PN}mgr.48x48.png ${PN}.png
+ make_desktop_entry boincmgr "${PN}" "${PN}" "Math;Science" "Path=/var/lib/${PN}"
+ fi
+
+ # cleanup cruft
+ rm -rf "${ED}"/etc || die "rm failed"
+
+ newinitd "${FILESDIR}"/${PN}.init ${PN}
+ newconfd "${FILESDIR}"/${PN}.conf ${PN}
+ systemd_dounit "${FILESDIR}"/${PN}.service
+}
+
+pkg_preinst() {
+ enewgroup ${PN}
+ # note this works only for first install so we have to
+ # elog user about the need of being in video group
+ local groups="${PN}"
+ if use cuda; then
+ group+=",video"
+ fi
+ enewuser ${PN} -1 -1 /var/lib/${PN} "${groups}"
+}
+
+pkg_postinst() {
+ echo
+ elog "You are using the source compiled version of boinc."
+ use X && elog "The graphical manager can be found at /usr/bin/boincmgr"
+ elog
+ elog "You need to attach to a project to do anything useful with boinc."
+ elog "You can do this by running /etc/init.d/boinc attach"
+ elog "The howto for configuration is located at:"
+ elog "http://boinc.berkeley.edu/wiki/Anonymous_platform"
+ elog
+ # Add warning about the new password for the client, bug 121896.
+ if use X; then
+ elog "If you need to use the graphical manager the password is in:"
+ elog "/var/lib/boinc/gui_rpc_auth.cfg"
+ elog "Where /var/lib/ is default RUNTIMEDIR, that can be changed in:"
+ elog "/etc/conf.d/boinc"
+ elog "You should change this password to something more memorable (can be even blank)."
+ elog "Remember to launch init script before using manager. Or changing the password."
+ elog
+ fi
+ if use cuda; then
+ elog "To be able to use CUDA you should add boinc user to video group."
+ elog "Run as root:"
+ elog "gpasswd -a boinc video"
+ fi
+}