public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Florian Schmaus" <flow@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: sci-misc/boinc/
Date: Mon,  1 Aug 2022 08:35:06 +0000 (UTC)	[thread overview]
Message-ID: <1659342877.1736df328f9404f0f0841e25b9f6a158d9ad085c.flow@gentoo> (raw)

commit:     1736df328f9404f0f0841e25b9f6a158d9ad085c
Author:     Sven Eden <sven.eden <AT> prydeworx <DOT> com>
AuthorDate: Wed Jul 27 11:38:07 2022 +0000
Commit:     Florian Schmaus <flow <AT> gentoo <DOT> org>
CommitDate: Mon Aug  1 08:34:37 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1736df32

sci-misc/boinc: Bump to 7.20.2 ; plus OpenCL dependency fixes

BOINC can now detect and use the correct OpenCL implementations for
various situations. Therefore VIDEO_CARDS is questioned to pull in
the needed dependencies:

* video_cards_amdgpu   : dev-libs/rocm-opencl-runtime
  -> AMD GPUs supported by the amdgpu kernel driver. 64-bit only
* video_cards_intel    : dev-libs/intel-compute-runtime
  -> integrated Intel GPUs from Broadwell onwards. 64-bit only
* video_cards_nvidia   : media-gfx/nvidia-cg-toolkit
  -> USE="cuda" is enforced in this case
* video_cards_radeonsi : media-libs/mesa[opencl]

WARNING: Only nvidia+intel have been tested yet!

Bug: https://bugs.gentoo.org/861440

Signed-off-by: Sven Eden <sven.eden <AT> prydeworx.com>
Signed-off-by: Florian Schmaus <flow <AT> gentoo.org>

 sci-misc/boinc/Manifest               |   2 +-
 sci-misc/boinc/boinc-7.20.2-r2.ebuild | 207 ++++++++++++++++++++++++++++++++++
 sci-misc/boinc/metadata.xml           |   1 +
 3 files changed, 209 insertions(+), 1 deletion(-)

diff --git a/sci-misc/boinc/Manifest b/sci-misc/boinc/Manifest
index 97a54e30850d..8522dc31b874 100644
--- a/sci-misc/boinc/Manifest
+++ b/sci-misc/boinc/Manifest
@@ -1,2 +1,2 @@
-DIST boinc-7.18.1.tar.gz 50851883 BLAKE2B 64d321c8c56d7c34a08646dc16de5ddbb9b8e4be57b673fa77515845d967e28b5cf1fda677293e2fc8cf36a18ac0b7e7feebfbd8e434ebed41b8280c7395950d SHA512 200587a0896aec6a7e7247132811141909aa333cb2bb9350c5ba016ffdf056413b1c5346361b311c087634b2d29cdbb204486385d8561a299b68739244c5a532
+DIST boinc-7.20.2.tar.gz 46555666 BLAKE2B 4d11217739d341c5b61d86afa02eebdad80809f42caa3f6dea1d86ed53d79004d60fa362fd04d53060060472e108e0ee0aa0428e4799eb70f2e98f07dc1f39cd SHA512 0309d5585ece96a5d9021058870dce9a96c89ece269650961a9b22d5219529e242a55dc1e466f5364535033198ca5c36496ca23125a9cda0c308bfdb4372abbb
 DIST boinc.tif 288208 BLAKE2B 156a99f08dcabc62a46874830600b9d237e64b650b8edf35db67b82006a67039a3965707194e8f0b25cfd65138b8700c0bfb877507418393b9cd3df32e94d260 SHA512 548e19b87fd70dbeb05687320b86aad39981c161b5b5b7e02fc3ce886d4c464c9bb763d5652d9895dd505ce247c7ff4490caa3d407e28f54ce889ffbab22d046

diff --git a/sci-misc/boinc/boinc-7.20.2-r2.ebuild b/sci-misc/boinc/boinc-7.20.2-r2.ebuild
new file mode 100644
index 000000000000..4f714313eeff
--- /dev/null
+++ b/sci-misc/boinc/boinc-7.20.2-r2.ebuild
@@ -0,0 +1,207 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PV=$(ver_cut 1-2)
+WX_GTK_VER=3.0-gtk3
+
+inherit autotools desktop flag-o-matic linux-info wxwidgets xdg-utils
+
+DESCRIPTION="The Berkeley Open Infrastructure for Network Computing"
+HOMEPAGE="https://boinc.berkeley.edu/"
+
+SRC_URI="X? ( https://boinc.berkeley.edu/logo/boinc_glossy2_512_F.tif -> ${PN}.tif )"
+if [[ ${PV} == *9999 ]] ; then
+	EGIT_REPO_URI="https://github.com/BOINC/${PN}.git"
+	inherit git-r3
+else
+	SRC_URI+=" https://github.com/BOINC/boinc/archive/client_release/${MY_PV}/${PV}.tar.gz -> ${P}.tar.gz"
+	KEYWORDS="~amd64 ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+	S="${WORKDIR}/${PN}-client_release-${MY_PV}-${PV}"
+fi
+
+LICENSE="LGPL-3"
+SLOT="0"
+
+IUSE_VIDEO_CARDS="
+		video_cards_amdgpu
+		video_cards_intel
+		video_cards_nvidia
+		video_cards_radeonsi
+"
+
+IUSE="${IUSE_VIDEO_CARDS} X cuda curl_ssl_gnutls +curl_ssl_openssl opencl"
+
+REQUIRED_USE="
+	^^ ( curl_ssl_gnutls curl_ssl_openssl )
+	cuda? ( opencl video_cards_nvidia )
+	opencl? ( || ( ${IUSE_VIDEO_CARDS} ) )
+"
+
+# libcurl must not be using an ssl backend boinc does not support.
+# If the libcurl ssl backend changes, boinc should be recompiled.
+DEPEND="
+	acct-user/boinc
+	app-misc/ca-certificates
+	cuda? (
+		dev-util/nvidia-cuda-toolkit
+		x11-drivers/nvidia-drivers
+	)
+	opencl? (
+		video_cards_amdgpu?   ( amd64? ( dev-libs/rocm-opencl-runtime ) )
+		video_cards_intel?    ( amd64? ( dev-libs/intel-compute-runtime ) )
+		video_cards_nvidia?   ( x11-drivers/nvidia-drivers media-gfx/nvidia-cg-toolkit )
+		video_cards_radeonsi? ( media-libs/mesa[opencl] )
+	)
+	dev-libs/openssl:=
+	net-misc/curl[curl_ssl_gnutls(-)=,-curl_ssl_nss(-),curl_ssl_openssl(-)=,-curl_ssl_axtls(-),-curl_ssl_cyassl(-)]
+	sys-libs/zlib
+	X? (
+		dev-libs/glib:2
+		media-libs/freeglut
+		media-libs/libjpeg-turbo:=
+		x11-libs/gtk+:3
+		x11-libs/libnotify
+		x11-libs/libX11
+		x11-libs/libXScrnSaver
+		x11-libs/libxcb:=
+		x11-libs/wxGTK:${WX_GTK_VER}[X,opengl,webkit]
+		x11-libs/xcb-util
+	)
+"
+BDEPEND="app-text/docbook-xml-dtd:4.4
+	app-text/docbook2X
+	sys-devel/gettext
+	X? ( virtual/imagemagick-tools[png,tiff] )
+"
+RDEPEND="
+	${DEPEND}
+	sys-apps/util-linux
+	!app-admin/quickswitch
+"
+
+PATCHES=(
+	# >=x11-libs/wxGTK-3.0.2.0-r3 has webview removed, bug 587462
+	"${FILESDIR}"/${PN}-7.18-fix_webview.patch
+)
+
+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() {
+	default
+
+	# prevent bad changes in compile flags, bug 286701
+	sed -i -e "s:BOINC_SET_COMPILE_FLAGS::" configure.ac || die "sed failed"
+
+	eautoreconf
+}
+
+src_configure() {
+	use X && setup-wxwidgets
+
+	append-libs -L"${ESYSROOT}"/usr/$(get_libdir) -L"${ESYSROOT}"/$(get_libdir)
+
+	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
+		# Create new icons. bug 593362
+		local s SIZES=(16 22 24 32 36 48 64 72 96 128 192 256)
+		for s in "${SIZES[@]}"; do
+			# The convert command is not checked, because it will issue warnings and exit with
+			# an error code if imagemagick is used and was merged with USE="-xml", although the
+			# conversion has worked. See #766093
+			# Instead, newicon will fail if the conversion did not produce the icon.
+			convert "${DISTDIR}"/${PN}.tif -resize ${s}x${s} "${WORKDIR}"/boinc_${s}.png
+			newicon -s $s "${WORKDIR}"/boinc_${s}.png boinc.png
+		done
+		make_desktop_entry boincmgr "${PN}" "${PN}" "Math;Science" "Path=/var/lib/${PN}"
+
+		# Rename the desktop file to boincmgr.desktop to (hot)fix bug 599910
+		mv "${ED}"/usr/share/applications/boincmgr{-${PN},}.desktop || \
+			die "Failed to rename desktop file"
+	fi
+
+	# cleanup cruft
+	rm -r "${ED}"/etc || die "rm failed"
+	find "${D}" -name '*.la' -delete || die "Removing .la files failed"
+
+	sed -e "s/@libdir@/$(get_libdir)/" "${FILESDIR}"/${PN}.init.in > ${PN}.init || die
+	newinitd ${PN}.init ${PN}
+	newconfd "${FILESDIR}"/${PN}.conf ${PN}
+}
+
+pkg_postinst() {
+	if use X; then
+		xdg_desktop_database_update
+		xdg_mimeinfo_database_update
+		xdg_icon_cache_update
+	fi
+
+	elog
+	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
+	elog "To be able to use CUDA or OpenCL you should add the boinc user to the video group."
+	elog "Run as root:"
+	elog "gpasswd -a boinc video"
+	elog
+}
+
+pkg_postrm() {
+	if use X; then
+		xdg_desktop_database_update
+		xdg_mimeinfo_database_update
+		xdg_icon_cache_update
+	fi
+}

diff --git a/sci-misc/boinc/metadata.xml b/sci-misc/boinc/metadata.xml
index 6dbc0bf0ab56..297bc5864a8d 100644
--- a/sci-misc/boinc/metadata.xml
+++ b/sci-misc/boinc/metadata.xml
@@ -23,6 +23,7 @@
 			NOTE: works only for subset of nvidia graphic cards so make sure your card
 			is supported before opening a bug about it.
 		</flag>
+		<flag name="opencl">Use OpenCL to enable computations using your GPU.</flag>
 	</use>
 	<upstream>
 		<remote-id type="github">BOINC/boinc</remote-id>


             reply	other threads:[~2022-08-01  8:35 UTC|newest]

Thread overview: 82+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-08-01  8:35 Florian Schmaus [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-07-22 19:14 [gentoo-commits] repo/gentoo:master commit in: sci-misc/boinc/ Pacho Ramos
2024-04-12 13:08 Joonas Niilola
2024-04-11 21:34 Sam James
2024-04-11 16:46 Sam James
2024-04-11 16:37 Arthur Zamarin
2023-11-25  5:46 Sam James
2023-10-17  7:29 Andrew Ammerlaan
2023-10-17  7:29 Andrew Ammerlaan
2023-09-25  8:06 Andrew Ammerlaan
2023-06-09 15:45 Arthur Zamarin
2023-06-09 14:29 Sam James
2023-06-09 14:10 Arthur Zamarin
2023-06-03 11:15 Arthur Zamarin
2023-05-06  9:51 Arthur Zamarin
2023-04-14 19:45 Sam James
2023-04-14 19:45 Sam James
2023-04-14 19:33 Sam James
2023-04-14 19:33 Sam James
2023-04-14 19:09 Florian Schmaus
2023-04-14  8:58 Arthur Zamarin
2022-12-30 23:39 Conrad Kostecki
2022-08-09 13:12 Craig Andrews
2022-08-01  8:35 Florian Schmaus
2022-08-01  8:35 Florian Schmaus
2022-08-01  8:35 Florian Schmaus
2022-08-01  8:35 Florian Schmaus
2022-04-25  6:37 Florian Schmaus
2022-04-23 10:33 Joonas Niilola
2022-04-23 10:24 Florian Schmaus
2022-04-23 10:24 Florian Schmaus
2022-04-23 10:24 Florian Schmaus
2021-10-06  8:33 Jakov Smolić
2021-07-08  9:38 Joonas Niilola
2021-07-08  9:38 Joonas Niilola
2021-07-08  9:38 Joonas Niilola
2021-05-01 18:07 Sam James
2021-04-24 12:52 David Seifert
2021-04-24 12:52 David Seifert
2021-04-24 12:52 David Seifert
2021-04-04 20:21 David Seifert
2021-01-30 10:26 Sam James
2021-01-18 13:38 Joonas Niilola
2021-01-18 13:38 Joonas Niilola
2021-01-18 13:38 Joonas Niilola
2020-08-24 17:45 Jonas Stein
2018-12-06 21:20 Craig Andrews
2018-12-06 21:20 Craig Andrews
2018-04-24 21:57 Andreas Sturmlechner
2018-02-11 11:12 Michał Górny
2017-12-27 11:56 Mart Raudsepp
2017-12-27 11:56 Mart Raudsepp
2017-12-21 10:47 Mart Raudsepp
2017-12-21 10:47 Mart Raudsepp
2017-12-20 20:13 Craig Andrews
2017-11-02 11:39 Mart Raudsepp
2017-09-22 13:48 Michael Palimaka
2017-08-19 19:01 Michał Górny
2017-08-19 19:01 Michał Górny
2017-06-09 15:57 Anthony G. Basile
2017-06-04 17:03 Michał Górny
2017-02-17 11:28 Michael Palimaka
2017-01-04 13:42 David Seifert
2017-01-04 13:42 David Seifert
2016-11-12 15:39 David Seifert
2016-11-12 15:39 David Seifert
2016-11-12 15:39 David Seifert
2016-06-14 19:10 David Seifert
2016-06-14 19:10 David Seifert
2016-06-14 19:10 David Seifert
2016-05-07 22:32 David Seifert
2016-05-07 22:32 David Seifert
2016-05-07 22:32 David Seifert
2016-05-04 22:01 David Seifert
2016-05-04 22:01 David Seifert
2016-05-04 22:01 David Seifert
2016-05-04 22:01 David Seifert
2016-05-04 22:01 David Seifert
2016-05-04 22:01 David Seifert
2016-05-04 22:01 David Seifert
2016-03-20 20:08 David Seifert
2015-09-09 18:53 Michał Górny

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1659342877.1736df328f9404f0f0841e25b9f6a158d9ad085c.flow@gentoo \
    --to=flow@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox