metadata.xml: Add maintainer-needed comment to packages without maintainer.
[gentoo.git] / sci-misc / boinc / boinc-7.2.0.ebuild
1 # Copyright 1999-2015 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3 # $Id$
4
5 EAPI=5
6
7 #WANT_AUTOMAKE="1.11"
8
9 AUTOTOOLS_AUTORECONF=true
10
11 inherit autotools-utils flag-o-matic eutils wxwidgets user
12
13 DESCRIPTION="The Berkeley Open Infrastructure for Network Computing"
14 HOMEPAGE="http://boinc.ssl.berkeley.edu/"
15 SRC_URI="https://dev.gentoo.org/~jlec/distfiles/${P}.tar.xz"
16
17 LICENSE="LGPL-2.1"
18 SLOT="0"
19 KEYWORDS="~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
20 IUSE="X cuda static-libs"
21
22 RDEPEND="
23         !sci-misc/boinc-bin
24         !app-admin/quickswitch
25         >=app-misc/ca-certificates-20080809
26         dev-libs/openssl:0=
27         net-misc/curl[ssl,-gnutls(-),-nss(-),curl_ssl_openssl(+)]
28         sys-apps/util-linux
29         sys-libs/zlib
30         cuda? (
31                 >=dev-util/nvidia-cuda-toolkit-2.1
32                 >=x11-drivers/nvidia-drivers-180.22
33         )
34         X? (
35                 dev-db/sqlite:3
36                 media-libs/freeglut
37                 sys-libs/glibc:2.2
38                 virtual/jpeg:0=
39                 x11-libs/gtk+:2
40                 >=x11-libs/libnotify-0.7
41                 x11-libs/wxGTK:2.8[X,opengl]
42         )
43 "
44 DEPEND="${RDEPEND}
45         sys-devel/gettext
46         app-text/docbook-xml-dtd:4.4
47         app-text/docbook2X
48 "
49
50 PATCHES=(
51         "${FILESDIR}"/${P}-fix_subdirs.patch
52 )
53
54 AUTOTOOLS_IN_SOURCE_BUILD=1
55
56 src_prepare() {
57         # prevent bad changes in compile flags, bug 286701
58         sed -i -e "s:BOINC_SET_COMPILE_FLAGS::" configure.ac || die "sed failed"
59
60         autotools-utils_src_prepare
61 }
62
63 src_configure() {
64         local wxconf=""
65
66         # add gtk includes
67         append-flags "$(pkg-config --cflags gtk+-2.0)"
68
69         # look for wxGTK
70         if use X; then
71                 WX_GTK_VER="2.8"
72                 need-wxwidgets unicode
73                 wxconf+=" --with-wx-config=${WX_CONFIG}"
74         else
75                 wxconf+=" --without-wxdir"
76         fi
77
78         local myeconfargs=(
79                 --disable-server
80                 --enable-client
81                 --enable-dynamic-client-linkage
82                 --disable-static
83                 --enable-unicode
84                 --with-ssl
85                 $(use_with X x)
86                 $(use_enable X manager)
87                 ${wxconf}
88         )
89         autotools-utils_src_configure
90 }
91
92 src_install() {
93         autotools-utils_src_install
94
95         dodir /var/lib/${PN}/
96         keepdir /var/lib/${PN}/
97
98         if use X; then
99                 newicon "${S}"/packages/generic/sea/${PN}mgr.48x48.png ${PN}.png || die
100                 make_desktop_entry boincmgr "${PN}" "${PN}" "Math;Science" "Path=/var/lib/${PN}"
101         fi
102
103         # cleanup cruft
104         rm -rf "${ED}"/etc/
105
106         newinitd "${FILESDIR}"/${PN}.init ${PN}
107         newconfd "${FILESDIR}"/${PN}.conf ${PN}
108 }
109
110 pkg_preinst() {
111         enewgroup ${PN}
112         # note this works only for first install so we have to
113         # elog user about the need of being in video group
114         if use cuda; then
115                 enewuser ${PN} -1 -1 /var/lib/${PN} "${PN},video"
116         else
117                 enewuser ${PN} -1 -1 /var/lib/${PN} "${PN}"
118         fi
119 }
120
121 pkg_postinst() {
122         echo
123         elog "You are using the source compiled version of ${PN}."
124         use X && elog "The graphical manager can be found at /usr/bin/${PN}mgr"
125         elog
126         elog "You need to attach to a project to do anything useful with ${PN}."
127         elog "You can do this by running /etc/init.d/${PN} attach"
128         elog "The howto for configuration is located at:"
129         elog "http://boinc.berkeley.edu/wiki/Anonymous_platform"
130         elog
131         # Add warning about the new password for the client, bug 121896.
132         if use X; then
133                 elog "If you need to use the graphical manager the password is in:"
134                 elog "/var/lib/${PN}/gui_rpc_auth.cfg"
135                 elog "Where /var/lib/ is default RUNTIMEDIR, that can be changed in:"
136                 elog "/etc/conf.d/${PN}"
137                 elog "You should change this password to something more memorable (can be even blank)."
138                 elog "Remember to launch init script before using manager. Or changing the password."
139                 elog
140         fi
141         if use cuda; then
142                 elog "To be able to use CUDA you should add boinc user to video group."
143                 elog "Run as root:"
144                 elog "gpasswd -a boinc video"
145         fi
146 }