summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sci-misc')
-rw-r--r--sci-misc/boinc/boinc-9999.ebuild62
1 files changed, 38 insertions, 24 deletions
diff --git a/sci-misc/boinc/boinc-9999.ebuild b/sci-misc/boinc/boinc-9999.ebuild
index c47d056ff117..cf696e8c6bc7 100644
--- a/sci-misc/boinc/boinc-9999.ebuild
+++ b/sci-misc/boinc/boinc-9999.ebuild
@@ -1,11 +1,12 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
+MY_PV=$(ver_cut 1-2)
WX_GTK_VER=3.0-gtk3
-inherit autotools gnome2-utils linux-info systemd user wxwidgets
+inherit autotools desktop linux-info systemd wxwidgets xdg-utils
DESCRIPTION="The Berkeley Open Infrastructure for Network Computing"
HOMEPAGE="https://boinc.ssl.berkeley.edu/"
@@ -15,13 +16,12 @@ if [[ ${PV} == *9999 ]] ; then
EGIT_REPO_URI="https://github.com/BOINC/${PN}.git"
inherit git-r3
else
- MY_PV="7.14"
SRC_URI+=" https://github.com/BOINC/boinc/archive/client_release/${MY_PV}/${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+ KEYWORDS="~amd64 ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
S="${WORKDIR}/${PN}-client_release-${MY_PV}-${PV}"
fi
-LICENSE="LGPL-2.1"
+LICENSE="LGPL-3"
SLOT="0"
IUSE="X cuda curl_ssl_gnutls curl_ssl_libressl +curl_ssl_openssl"
@@ -30,6 +30,8 @@ REQUIRED_USE="^^ ( curl_ssl_gnutls 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.
COMMON_DEPEND="
+ acct-group/boinc
+ acct-user/boinc
>=app-misc/ca-certificates-20080809
cuda? (
>=dev-util/nvidia-cuda-toolkit-2.1
@@ -43,8 +45,13 @@ COMMON_DEPEND="
media-libs/freeglut
virtual/jpeg:0=
x11-libs/gtk+:3
+ x11-libs/libICE
>=x11-libs/libnotify-0.7
+ x11-libs/libSM
+ x11-libs/libXi
+ x11-libs/libXmu
x11-libs/wxGTK:${WX_GTK_VER}[X,opengl,webkit]
+ virtual/jpeg
)
"
DEPEND="${RDEPEND}
@@ -59,7 +66,9 @@ RDEPEND="${COMMON_DEPEND}
PATCHES=(
# >=x11-libs/wxGTK-3.0.2.0-r3 has webview removed, bug 587462
- "${FILESDIR}"/fix_webview.patch
+ "${FILESDIR}"/${PN}-${MY_PV}-fix_webview.patch
+ # bug #732024
+ "${FILESDIR}"/${PN}-${MY_PV}-remove-usr_lib.patch
)
pkg_setup() {
@@ -86,16 +95,28 @@ pkg_setup() {
}
src_prepare() {
+ # bug #732024
+ if test "x$(get_libdir)" = "xlib64"; then
+ sed -i -e 's,/:/lib:/usr/lib:,:/lib64:/usr/lib64:,g' m4/sah_check_lib.m4 || die
+ fi
+
default
# prevent bad changes in compile flags, bug 286701
sed -i -e "s:BOINC_SET_COMPILE_FLAGS::" configure.ac || die "sed failed"
eautoreconf
+
+ use X && setup-wxwidgets
+
+ # bug #732024
+ if test "x$(get_libdir)" = "xlib64"; then
+ sed -i -e 's,/lib\([ /;:"]\),/lib64\1,g' configure || die
+ fi
}
src_configure() {
- use X && setup-wxwidgets unicode
+ LDFLAGS="-L${EPREFIX}/usr/$(get_libdir) -L${EPREFIX}/$(get_libdir) ${LDFLAGS}" \
econf --disable-server \
--enable-client \
--enable-dynamic-client-linkage \
@@ -122,12 +143,12 @@ src_install() {
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 || \
+ mv "${ED}"/usr/share/applications/boincmgr{-${PN},}.desktop || \
die "Failed to rename desktop file"
fi
# cleanup cruft
- rm -rf "${ED%/}"/etc || die "rm failed"
+ 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
@@ -135,20 +156,11 @@ src_install() {
newconfd "${FILESDIR}"/${PN}.conf ${PN}
}
-pkg_preinst() {
- gnome2_icon_savelist
-
- 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}"
- groups+=",video"
- enewuser ${PN} -1 -1 /var/lib/${PN} "${groups}"
-}
-
pkg_postinst() {
- if [[ -n ${GNOME2_ECLASS_ICONS} ]]; then
- gnome2_icon_cache_update
+ if use X; then
+ xdg_desktop_database_update
+ xdg_mimeinfo_database_update
+ xdg_icon_cache_update
fi
elog
@@ -185,7 +197,9 @@ pkg_postinst() {
}
pkg_postrm() {
- if [[ -n ${GNOME2_ECLASS_ICONS} ]]; then
- gnome2_icon_cache_update
+ if use X; then
+ xdg_desktop_database_update
+ xdg_mimeinfo_database_update
+ xdg_icon_cache_update
fi
}