1 |
commit: ef2e495cdb8f55c0530e95ba0d5a66afda9a322d |
2 |
Author: Sven Eden <yamakuzure <AT> gmx <DOT> net> |
3 |
AuthorDate: Thu Apr 28 08:12:46 2016 +0000 |
4 |
Commit: David Seifert <soap <AT> gentoo <DOT> org> |
5 |
CommitDate: Wed May 4 22:00:03 2016 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ef2e495c |
7 |
|
8 |
sci-misc/boinc: New r1 ebuild for boinc-7.6.31 with vsyscall fix |
9 |
|
10 |
Gentoo-Bug: 577490, 578750 |
11 |
|
12 |
A check against VSYSCALL kernel options was added. |
13 |
Russell Knighton found out, that some projects segfault if VSYSCALL |
14 |
mappings are completely disabled, and reported the issue in bug |
15 |
578750. |
16 |
|
17 |
The check against CONFIG_LEGACY_VSYSCALL_NONE and |
18 |
CONFIG_X86_VSYSCALL_EMULATION is based on his patch submitted in the |
19 |
bug reported by him. |
20 |
|
21 |
Package-Manager: portage-2.2.28 |
22 |
|
23 |
sci-misc/boinc/boinc-7.6.31-r1.ebuild | 158 ++++++++++++++++++++++++++++++++++ |
24 |
1 file changed, 158 insertions(+) |
25 |
|
26 |
diff --git a/sci-misc/boinc/boinc-7.6.31-r1.ebuild b/sci-misc/boinc/boinc-7.6.31-r1.ebuild |
27 |
new file mode 100644 |
28 |
index 0000000..f1c2408 |
29 |
--- /dev/null |
30 |
+++ b/sci-misc/boinc/boinc-7.6.31-r1.ebuild |
31 |
@@ -0,0 +1,158 @@ |
32 |
+# Copyright 1999-2016 Gentoo Foundation |
33 |
+# Distributed under the terms of the GNU General Public License v2 |
34 |
+# $Id$ |
35 |
+ |
36 |
+EAPI=5 |
37 |
+ |
38 |
+WX_GTK_VER=3.0 |
39 |
+ |
40 |
+inherit autotools flag-o-matic linux-info systemd user versionator wxwidgets |
41 |
+ |
42 |
+MY_PV=$(get_version_component_range 1-2) |
43 |
+ |
44 |
+DESCRIPTION="The Berkeley Open Infrastructure for Network Computing" |
45 |
+HOMEPAGE="http://boinc.ssl.berkeley.edu/" |
46 |
+SRC_URI="https://github.com/BOINC/boinc/archive/client_release/${MY_PV}/${PV}.tar.gz -> ${P}.tar.gz" |
47 |
+ |
48 |
+LICENSE="LGPL-2.1" |
49 |
+SLOT="0" |
50 |
+KEYWORDS="~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86" |
51 |
+IUSE="X cuda static-libs" |
52 |
+ |
53 |
+RDEPEND=" |
54 |
+ !sci-misc/boinc-bin |
55 |
+ !app-admin/quickswitch |
56 |
+ >=app-misc/ca-certificates-20080809 |
57 |
+ dev-libs/openssl:0= |
58 |
+ net-misc/curl[ssl,-gnutls(-),-nss(-),curl_ssl_openssl(+)] |
59 |
+ sys-apps/util-linux |
60 |
+ sys-libs/zlib |
61 |
+ cuda? ( |
62 |
+ >=dev-util/nvidia-cuda-toolkit-2.1 |
63 |
+ >=x11-drivers/nvidia-drivers-180.22 |
64 |
+ ) |
65 |
+ X? ( |
66 |
+ dev-db/sqlite:3 |
67 |
+ media-libs/freeglut |
68 |
+ sys-libs/glibc:2.2 |
69 |
+ virtual/jpeg:0= |
70 |
+ x11-libs/gtk+:2 |
71 |
+ >=x11-libs/libnotify-0.7 |
72 |
+ x11-libs/wxGTK:${WX_GTK_VER}[X,opengl,webkit] |
73 |
+ ) |
74 |
+" |
75 |
+DEPEND="${RDEPEND} |
76 |
+ sys-devel/gettext |
77 |
+ app-text/docbook-xml-dtd:4.4 |
78 |
+ app-text/docbook2X |
79 |
+" |
80 |
+ |
81 |
+S="${WORKDIR}/${PN}-client_release-${MY_PV}-${PV}" |
82 |
+ |
83 |
+pkg_setup() { |
84 |
+ if use kernel_linux; then |
85 |
+ linux-info_pkg_setup |
86 |
+ if ! linux_config_exists; then |
87 |
+ ewarn "Can't check the linux kernel configuration." |
88 |
+ ewarn "You might be missing vsyscall support." |
89 |
+ else |
90 |
+ if kernel_is -ge 4 4 \ |
91 |
+ && linux_chkconfig_present LEGACY_VSYSCALL_NONE \ |
92 |
+ && ! linux_chkconfig_present X86_VSYSCALL_EMULATION; then |
93 |
+ ewarn "You do have neither x86 vsyscall emulation" |
94 |
+ ewarn "nor legacy vsyscall support enabled." |
95 |
+ ewarn "This will prevent some boinc projects from running." |
96 |
+ ewarn "Please enable vsyscall emulation:" |
97 |
+ ewarn " CONFIG_X86_VSYSCALL_EMULATION=y" |
98 |
+ ewarn "in /usr/src/linux/.config, to be found at" |
99 |
+ ewarn " Processor type and features --->" |
100 |
+ ewarn " [*] Enable vsyscall emulation" |
101 |
+ ewarn "or set" |
102 |
+ ewarn " CONFIG_LEGACY_VSYSCALL_EMULATE=y" |
103 |
+ ewarn "in /usr/src/linux/.config, to be found at" |
104 |
+ ewarn " Processor type and features --->" |
105 |
+ ewarn " vsyscall table for legacy applications (None) --->" |
106 |
+ ewarn " (X) Emulate" |
107 |
+ ewarn "Alternatively, you can enable CONFIG_LEGACY_VSYSCALL_NATIVE." |
108 |
+ ewarn "However, this has security implications and is not recommended." |
109 |
+ fi |
110 |
+ fi |
111 |
+ fi |
112 |
+} |
113 |
+ |
114 |
+src_prepare() { |
115 |
+ # prevent bad changes in compile flags, bug 286701 |
116 |
+ sed -i -e "s:BOINC_SET_COMPILE_FLAGS::" configure.ac || die "sed failed" |
117 |
+ |
118 |
+ eautoreconf |
119 |
+ |
120 |
+ use X && need-wxwidgets unicode |
121 |
+} |
122 |
+ |
123 |
+src_configure() { |
124 |
+ econf --disable-server \ |
125 |
+ --enable-client \ |
126 |
+ --enable-dynamic-client-linkage \ |
127 |
+ --disable-static \ |
128 |
+ --enable-unicode \ |
129 |
+ --with-ssl \ |
130 |
+ $(use_with X x) \ |
131 |
+ $(use_enable X manager) \ |
132 |
+ $(usex X --with-wx-config="${WX_CONFIG}" --without-wxdir) |
133 |
+} |
134 |
+ |
135 |
+src_install() { |
136 |
+ default |
137 |
+ |
138 |
+ keepdir /var/lib/${PN} |
139 |
+ |
140 |
+ if use X; then |
141 |
+ newicon "${S}"/packages/generic/sea/${PN}mgr.48x48.png ${PN}.png |
142 |
+ make_desktop_entry boincmgr "${PN}" "${PN}" "Math;Science" "Path=/var/lib/${PN}" |
143 |
+ fi |
144 |
+ |
145 |
+ # cleanup cruft |
146 |
+ rm -rf "${ED}"/etc || die "rm failed" |
147 |
+ |
148 |
+ newinitd "${FILESDIR}"/${PN}.init ${PN} |
149 |
+ newconfd "${FILESDIR}"/${PN}.conf ${PN} |
150 |
+ systemd_dounit "${FILESDIR}"/${PN}.service |
151 |
+} |
152 |
+ |
153 |
+pkg_preinst() { |
154 |
+ enewgroup ${PN} |
155 |
+ # note this works only for first install so we have to |
156 |
+ # elog user about the need of being in video group |
157 |
+ local groups="${PN}" |
158 |
+ if use cuda; then |
159 |
+ group+=",video" |
160 |
+ fi |
161 |
+ enewuser ${PN} -1 -1 /var/lib/${PN} "${groups}" |
162 |
+} |
163 |
+ |
164 |
+pkg_postinst() { |
165 |
+ echo |
166 |
+ elog "You are using the source compiled version of boinc." |
167 |
+ use X && elog "The graphical manager can be found at /usr/bin/boincmgr" |
168 |
+ elog |
169 |
+ elog "You need to attach to a project to do anything useful with boinc." |
170 |
+ elog "You can do this by running /etc/init.d/boinc attach" |
171 |
+ elog "The howto for configuration is located at:" |
172 |
+ elog "http://boinc.berkeley.edu/wiki/Anonymous_platform" |
173 |
+ elog |
174 |
+ # Add warning about the new password for the client, bug 121896. |
175 |
+ if use X; then |
176 |
+ elog "If you need to use the graphical manager the password is in:" |
177 |
+ elog "/var/lib/boinc/gui_rpc_auth.cfg" |
178 |
+ elog "Where /var/lib/ is default RUNTIMEDIR, that can be changed in:" |
179 |
+ elog "/etc/conf.d/boinc" |
180 |
+ elog "You should change this password to something more memorable (can be even blank)." |
181 |
+ elog "Remember to launch init script before using manager. Or changing the password." |
182 |
+ elog |
183 |
+ fi |
184 |
+ if use cuda; then |
185 |
+ elog "To be able to use CUDA you should add boinc user to video group." |
186 |
+ elog "Run as root:" |
187 |
+ elog "gpasswd -a boinc video" |
188 |
+ fi |
189 |
+} |