summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexys Jacob <ultrabug@gentoo.org>2011-07-29 15:35:14 +0000
committerAlexys Jacob <ultrabug@gentoo.org>2011-07-29 15:35:14 +0000
commit4bd5957b1a40366c42520f77d82f81d60d3abdd1 (patch)
tree517aa2708370a85db6ffc3ec4c324ee0bd55d18d /dev-db/mongodb
parentVersion bump. Simplify ebuild and switch to EAPI4 (diff)
downloadgentoo-2-4bd5957b1a40366c42520f77d82f81d60d3abdd1.tar.gz
gentoo-2-4bd5957b1a40366c42520f77d82f81d60d3abdd1.tar.bz2
gentoo-2-4bd5957b1a40366c42520f77d82f81d60d3abdd1.zip
Fix linux-3 kernel compilation wrt #375353
(Portage version: 2.1.10.7/cvs/Linux x86_64)
Diffstat (limited to 'dev-db/mongodb')
-rw-r--r--dev-db/mongodb/ChangeLog9
-rw-r--r--dev-db/mongodb/files/mongodb-linux3.patch48
-rw-r--r--dev-db/mongodb/mongodb-1.8.2-r1.ebuild83
3 files changed, 139 insertions, 1 deletions
diff --git a/dev-db/mongodb/ChangeLog b/dev-db/mongodb/ChangeLog
index 469749c94210..e589a634fe24 100644
--- a/dev-db/mongodb/ChangeLog
+++ b/dev-db/mongodb/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for dev-db/mongodb
# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-db/mongodb/ChangeLog,v 1.19 2011/06/22 17:26:09 ultrabug Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-db/mongodb/ChangeLog,v 1.20 2011/07/29 15:35:14 ultrabug Exp $
+
+*mongodb-1.8.2-r1 (29 Jul 2011)
+
+ 29 Jul 2011; Ultrabug <ultrabug@gentoo.org> +files/mongodb-linux3.patch,
+ +mongodb-1.8.2-r1.ebuild:
+ Fix linux-3 kernel compilation. Fix #375353. Thanks to Priit Laes, Johan
+ Bergström and SchAmane.
*mongodb-1.8.2 (22 Jun 2011)
diff --git a/dev-db/mongodb/files/mongodb-linux3.patch b/dev-db/mongodb/files/mongodb-linux3.patch
new file mode 100644
index 000000000000..5c7d11c28c09
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb-linux3.patch
@@ -0,0 +1,48 @@
+From b1ec2058673f8ca582a490c2dd4a8405698221ae Mon Sep 17 00:00:00 2001
+From: Eliot Horowitz <eliot@10gen.com>
+Date: Thu, 28 Jul 2011 19:54:51 -0400
+Subject: [PATCH] compile on linux3 SERVER-3457
+
+---
+ SConstruct | 4 +++-
+ distsrc/client/SConstruct | 2 +-
+ 2 files changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/SConstruct b/SConstruct
+index 55d34d5..c47d3f6 100644
+--- a/SConstruct
++++ b/SConstruct
+@@ -343,6 +343,8 @@ processInfoFiles = [ "util/processinfo.cpp" ]
+
+ if os.path.exists( "util/processinfo_" + os.sys.platform + ".cpp" ):
+ processInfoFiles += [ "util/processinfo_" + os.sys.platform + ".cpp" ]
++elif os.sys.platform == "linux3":
++ processInfoFiles += [ "util/processinfo_linux2.cpp" ]
+ else:
+ processInfoFiles += [ "util/processinfo_none.cpp" ]
+
+@@ -474,7 +476,7 @@ if "darwin" == os.sys.platform:
+ env.Append( CPPPATH=filterExists(["/sw/include" , "/opt/local/include"]) )
+ env.Append( LIBPATH=filterExists(["/sw/lib/", "/opt/local/lib"]) )
+
+-elif "linux2" == os.sys.platform:
++elif "linux2" == os.sys.platform or "linux3" == os.sys.platform:
+ linux = True
+ platform = "linux"
+
+diff --git a/distsrc/client/SConstruct b/distsrc/client/SConstruct
+index c2d309a..54fc943 100755
+--- a/distsrc/client/SConstruct
++++ b/distsrc/client/SConstruct
+@@ -41,7 +41,7 @@ linux = False
+ if "darwin" == os.sys.platform:
+ addExtraLibs( "/opt/local/" )
+ nix = True
+-elif "linux2" == os.sys.platform:
++elif "linux2" == os.sys.platform or "linux3" == os.sys.platform:
+ nix = True
+ linux = True
+
+--
+1.7.5.4
+
diff --git a/dev-db/mongodb/mongodb-1.8.2-r1.ebuild b/dev-db/mongodb/mongodb-1.8.2-r1.ebuild
new file mode 100644
index 000000000000..36cfe0e18817
--- /dev/null
+++ b/dev-db/mongodb/mongodb-1.8.2-r1.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-db/mongodb/mongodb-1.8.2-r1.ebuild,v 1.1 2011/07/29 15:35:14 ultrabug Exp $
+
+EAPI=4
+SCONS_MIN_VERSION="1.2.0"
+
+inherit eutils multilib scons-utils versionator
+
+MY_P=${PN}-src-r${PV/_rc/-rc}
+
+DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
+HOMEPAGE="http://www.mongodb.org"
+SRC_URI="http://downloads.mongodb.org/src/${MY_P}.tar.gz"
+
+LICENSE="AGPL-3 Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="static-libs v8"
+
+RDEPEND="!v8? ( >=dev-lang/spidermonkey-1.8 )
+ v8? ( dev-lang/v8 )
+ dev-libs/boost
+ dev-libs/libpcre[cxx]
+ net-libs/libpcap"
+DEPEND="${RDEPEND}
+ sys-libs/readline
+ sys-libs/ncurses"
+
+S=${WORKDIR}/${MY_P}
+
+pkg_setup() {
+ enewgroup mongodb
+ enewuser mongodb -1 -1 /var/lib/${PN} mongodb
+
+ scons_opts=" --cxx=$(tc-getCXX) --sharedclient"
+ if use v8; then
+ scons_opts+=" --usev8"
+ else
+ scons_opts+=" --usesm"
+ fi
+}
+
+src_prepare() {
+ epatch "${FILESDIR}/${PN}-1.8-fix-scons.patch"
+ epatch "${FILESDIR}/${PN}-linux3.patch"
+}
+
+src_compile() {
+ escons ${scons_opts} all
+}
+
+src_install() {
+ escons ${scons_opts} --full --nostrip install --prefix="${D}"/usr
+
+ use static-libs || rm "${D}/usr/$(get_libdir)/libmongoclient.a"
+
+ for x in /var/{lib,log,run}/${PN}; do
+ keepdir "${x}"
+ fowners mongodb:mongodb "${x}"
+ done
+
+ doman debian/mongo*.1
+ dodoc README docs/building.md
+
+ newinitd "${FILESDIR}/${PN}.initd" ${PN}
+ newconfd "${FILESDIR}/${PN}.confd" ${PN}
+ newinitd "${FILESDIR}/${PN/db/s}.initd" ${PN/db/s}
+ newconfd "${FILESDIR}/${PN/db/s}.confd" ${PN/db/s}
+}
+
+src_test() {
+ escons ${scons_opts} test
+ "${S}"/test --dbpath=unittest || die
+}
+
+pkg_postinst() {
+ if [[ ${REPLACING_VERSIONS} < 1.8 ]]; then
+ ewarn "You just upgraded from a previous version of mongodb !"
+ ewarn "Make sure you run 'mongod --upgrade' before using this version."
+ fi
+ elog "Journaling is now enabled by default, see /etc/conf.d/${PN}.conf"
+}