diff options
author | Gluzskiy Alexandr <sss123next@list.ru> | 2012-06-23 02:18:43 +0300 |
---|---|---|
committer | Gluzskiy Alexandr <sss123next@list.ru> | 2012-06-23 02:18:43 +0300 |
commit | 7e1f9f39d5b5a528601623e3c94a4a02f469eae8 (patch) | |
tree | 60977449519d50516f9e6dbb4a2a65ba19ca8291 /sci-misc | |
parent | fcb20780c793758d96e2890f6c5eb1ae033c2313 (diff) |
new file: sci-misc/boinc/boinc-7.0.25.ebuild
new file: sci-misc/boinc/files/7.0.2-fix_subdirs.patch
new file: sci-misc/boinc/files/wxwidgets-2.8.0.12-menufix.patch
Diffstat (limited to 'sci-misc')
-rw-r--r-- | sci-misc/boinc/boinc-7.0.25.ebuild | 148 | ||||
-rw-r--r-- | sci-misc/boinc/files/7.0.2-fix_subdirs.patch | 10 | ||||
-rw-r--r-- | sci-misc/boinc/files/wxwidgets-2.8.0.12-menufix.patch | 14 |
3 files changed, 172 insertions, 0 deletions
diff --git a/sci-misc/boinc/boinc-7.0.25.ebuild b/sci-misc/boinc/boinc-7.0.25.ebuild new file mode 100644 index 0000000..1571b08 --- /dev/null +++ b/sci-misc/boinc/boinc-7.0.25.ebuild @@ -0,0 +1,148 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sci-misc/boinc/boinc-6.12.42.ebuild,v 1.2 2011/11/04 19:22:44 scarabeus Exp $ + +EAPI=4 + +inherit flag-o-matic eutils wxwidgets autotools base + +DESCRIPTION="The Berkeley Open Infrastructure for Network Computing" +HOMEPAGE="http://boinc.ssl.berkeley.edu/" +SRC_URI="http://dev.gentooexperimental.org/~scarabeus/${P}.tar.xz" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86" +IUSE="X cuda" + +RDEPEND=" + !sci-misc/boinc-bin + !app-admin/quickswitch + >=app-misc/ca-certificates-20080809 + dev-libs/openssl + net-misc/curl[ssl,-gnutls(-),-nss(-),curl_ssl_openssl(+)] + 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 + x11-libs/gtk+:2 + >=x11-libs/libnotify-0.7 + x11-libs/wxGTK:2.8[X,opengl] + ) +" +DEPEND="${RDEPEND} + sys-devel/gettext + app-text/docbook-xml-dtd:4.4 + app-text/docbook2X +" + +PATCHES=( + "${FILESDIR}/7.0.2-fix_subdirs.patch" + "${FILESDIR}/wxwidgets-2.8.0.12-menufix.patch" +) + +AUTOTOOLS_IN_SOURCE_BUILD=1 + +src_prepare() { + # use system ssl certificates + mkdir "${S}"/curl + ln -s /etc/ssl/certs/ca-certificates.crt "${S}"/curl/ca-bundle.crt + + # prevent bad changes in compile flags, bug 286701 + sed -i -e "s:BOINC_SET_COMPILE_FLAGS::" configure.ac || die "sed failed" + + base_src_prepare + + eautoreconf +} + +src_configure() { + local wxconf="" + + # add gtk includes + append-flags "$(pkg-config --cflags gtk+-2.0)" + + # look for wxGTK + if use X; then + WX_GTK_VER="2.8" + need-wxwidgets unicode + wxconf+=" --with-wx-config=${WX_CONFIG}" + else + wxconf+=" --without-wxdir" + fi + + econf \ + --disable-server \ + --enable-client \ + --enable-dynamic-client-linkage \ + --disable-static \ + --enable-unicode \ + --with-ssl \ + $(use_with X x) \ + $(use_enable X manager) \ + ${wxconf} +} + +src_install() { + default + find "${ED}" -name '*.la' -exec rm -f {} + + + dodir /var/lib/${PN}/ + keepdir /var/lib/${PN}/ + + if use X; then + newicon "${S}"/packages/generic/sea/${PN}mgr.48x48.png ${PN}.png || die + make_desktop_entry boincmgr "${PN}" "${PN}" "Math;Science" "Path=/var/lib/${PN}" + fi + + # cleanup cruft + rm -rf "${D}"/etc/ + + newinitd "${FILESDIR}"/${PN}.init ${PN} + newconfd "${FILESDIR}"/${PN}.conf ${PN} +} + +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 + if use cuda; then + enewuser ${PN} -1 -1 /var/lib/${PN} "${PN},video" + else + enewuser ${PN} -1 -1 /var/lib/${PN} "${PN}" + fi +} + +pkg_postinst() { + echo + elog "You are using the source compiled version of ${PN}." + use X && elog "The graphical manager can be found at /usr/bin/${PN}mgr" + elog + elog "You need to attach to a project to do anything useful with ${PN}." + elog "You can do this by running /etc/init.d/${PN} 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/${PN}/gui_rpc_auth.cfg" + elog "Where /var/lib/ is default RUNTIMEDIR, that can be changed in:" + elog "/etc/conf.d/${PN}" + 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 +} diff --git a/sci-misc/boinc/files/7.0.2-fix_subdirs.patch b/sci-misc/boinc/files/7.0.2-fix_subdirs.patch new file mode 100644 index 0000000..133fb51 --- /dev/null +++ b/sci-misc/boinc/files/7.0.2-fix_subdirs.patch @@ -0,0 +1,10 @@ +--- boinc-7.0.2.old/configure.ac 2011-12-25 08:48:12.000000000 +0800 ++++ boinc-7.0.2/configure.ac 2011-12-25 08:50:29.000000000 +0800 +@@ -901,7 +901,6 @@ + apps/Makefile + clientgui/Makefile + clientgui/res/Makefile +- clientscr/Makefile + client/Makefile + client/win/boinc_path_config.py:py/boinc_path_config.py.in + client/scripts/Makefile diff --git a/sci-misc/boinc/files/wxwidgets-2.8.0.12-menufix.patch b/sci-misc/boinc/files/wxwidgets-2.8.0.12-menufix.patch new file mode 100644 index 0000000..8394a13 --- /dev/null +++ b/sci-misc/boinc/files/wxwidgets-2.8.0.12-menufix.patch @@ -0,0 +1,14 @@ +--- boinc-7.0.28/clientgui/AdvancedFrame.cpp.old 2011-10-21 20:17:10.000000000 +0800 ++++ boinc-7.0.28/clientgui/AdvancedFrame.cpp 2012-05-20 05:50:38.000000000 +0800 +@@ -701,6 +701,11 @@ + + wxMenuBar* m_pOldMenubar = GetMenuBar(); + SetMenuBar(m_pMenubar); ++#ifdef __WXGTK__ ++ /* Force WX to recalculate the size of the (new) menu bar */ ++ /* courtesy Huibert (Huib Boinc Forums) */ ++ SendSizeEvent(); ++#endif + #ifdef __WXMAC__ + m_pMenubar->MacInstallMenuBar(); + MacLocalizeBOINCMenu(); |