summaryrefslogtreecommitdiff
path: root/dev-db
diff options
context:
space:
mode:
authorAlexys Jacob <ultrabug@gentoo.org>2013-04-18 10:47:08 +0000
committerAlexys Jacob <ultrabug@gentoo.org>2013-04-18 10:47:08 +0000
commit19364ae41e83f001e3328f81caf503f62ced1812 (patch)
tree256883c76008042ef6b581f31bfe4fe8fa2c952b /dev-db
parentremove old (diff)
downloadgentoo-2-19364ae41e83f001e3328f81caf503f62ced1812.tar.gz
gentoo-2-19364ae41e83f001e3328f81caf503f62ced1812.tar.bz2
gentoo-2-19364ae41e83f001e3328f81caf503f62ced1812.zip
version bump, drop old, fix #465242
(Portage version: 2.1.11.62/cvs/Linux x86_64, signed Manifest commit with key B658FA13)
Diffstat (limited to 'dev-db')
-rw-r--r--dev-db/mongodb/ChangeLog8
-rw-r--r--dev-db/mongodb/files/mongodb-2.4-fix-sharedclient.patch107
-rw-r--r--dev-db/mongodb/mongodb-2.4.2.ebuild (renamed from dev-db/mongodb/mongodb-2.2.3-r1.ebuild)57
3 files changed, 152 insertions, 20 deletions
diff --git a/dev-db/mongodb/ChangeLog b/dev-db/mongodb/ChangeLog
index 97cf23dd33c2..a4f05ad82c38 100644
--- a/dev-db/mongodb/ChangeLog
+++ b/dev-db/mongodb/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for dev-db/mongodb
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-db/mongodb/ChangeLog,v 1.64 2013/04/16 13:10:15 ultrabug Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-db/mongodb/ChangeLog,v 1.65 2013/04/18 10:47:08 ultrabug Exp $
+
+*mongodb-2.4.2 (18 Apr 2013)
+
+ 18 Apr 2013; Ultrabug <ultrabug@gentoo.org> -mongodb-2.2.3-r1.ebuild,
+ +mongodb-2.4.2.ebuild, +files/mongodb-2.4-fix-sharedclient.patch:
+ Version bump, fix #465242 thx to Christoph Koke, drop old
16 Apr 2013; Ultrabug <ultrabug@gentoo.org> mongodb-2.4.1.ebuild:
fix openssl dep #465966
diff --git a/dev-db/mongodb/files/mongodb-2.4-fix-sharedclient.patch b/dev-db/mongodb/files/mongodb-2.4-fix-sharedclient.patch
new file mode 100644
index 000000000000..ac086b97f3c8
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb-2.4-fix-sharedclient.patch
@@ -0,0 +1,107 @@
+diff --git a/src/mongo/SConscript b/src/mongo/SConscript
+index c026ce9..bbd900c 100644
+--- a/src/mongo/SConscript
++++ b/src/mongo/SConscript
+@@ -452,7 +452,7 @@
+ env.Library('stacktrace', 'util/stacktrace.cpp')
+
+ env.Program('lame_stacktrace_test', 'util/lame_stacktrace_test.cpp',
+- LIBDEPS=['stacktrace',
++ LIBDEPS=['stacktrace', 'foundation', 'mongocommon', 'alltools',
+ '$BUILD_DIR/mongo/base/base'])
+
+ serverOnlyFiles += mmapFiles
+@@ -654,10 +654,6 @@
+ "defaultversion",
+ "gridfs",
+ "notmongodormongos"])
+-env.Library("allclient", "client/clientOnly.cpp", LIBDEPS=["clientandshell"])
+-
+-if has_option( "sharedclient" ):
+- sharedClientLibName = str( env.SharedLibrary( "mongoclient", [], LIBDEPS=["allclient"] )[0] )
+
+ # dbtests test binary
+ env.StaticLibrary('testframework', ['dbtests/framework.cpp'], LIBDEPS=['unittest/unittest'])
+@@ -806,12 +802,6 @@
+ env.Install( "$INSTALL_DIR/include/" + id, Glob( id + "*.h" ) )
+ env.Install( "$INSTALL_DIR/include/" + id, Glob( id + "*.hpp" ) )
+
+-#lib
+-if installSetup.libraries:
+- env.Install('$INSTALL_DIR/$NIX_LIB_DIR', '#${LIBPREFIX}mongoclient${LIBSUFFIX}')
+- if has_option( "sharedclient" ):
+- env.Install( "$INSTALL_DIR/$NIX_LIB_DIR", '#${SHLIBPREFIX}mongoclient${SHLIBSUFFIX}')
+-
+ # Stage the top-level mongodb banners
+ distsrc = env.Dir('#distsrc')
+ env.Append(MODULE_BANNERS = [distsrc.File('README'),
+diff --git a/src/SConscript.client b/src/SConscript.client
+index b88a54f..a15bbb3 100644
+--- a/src/SConscript.client
++++ b/src/SConscript.client
+@@ -4,6 +4,7 @@
+ # programs.
+
+ Import('env clientEnv')
++Import("has_option")
+
+ env.Command(['mongo/base/error_codes.h', 'mongo/base/error_codes.cpp',],
+ ['mongo/base/generate_error_codes.py', 'mongo/base/error_codes.err'],
+@@ -36,7 +37,6 @@ clientSourceBasic = [
+ 'mongo/client/dbclient.cpp',
+ 'mongo/client/dbclient_rs.cpp',
+ 'mongo/client/dbclientcursor.cpp',
+- 'mongo/client/distlock.cpp',
+ 'mongo/client/gridfs.cpp',
+ 'mongo/client/model.cpp',
+ 'mongo/client/sasl_client_authenticate.cpp',
+@@ -83,7 +83,6 @@ clientSourceBasic = [
+ 'mongo/util/timer.cpp',
+ 'mongo/util/trace.cpp',
+ 'mongo/util/util.cpp',
+- 'mongo/util/version.cpp',
+ ]
+
+ clientSourceSasl = ['mongo/client/sasl_client_authenticate_impl.cpp',
+@@ -93,6 +92,7 @@ clientSourceAll = clientSourceBasic + clientSourceSasl
+
+ if env['MONGO_BUILD_SASL_CLIENT']:
+ clientSource = clientSourceAll
++ env.Append(LIBS="gsasl")
+ else:
+ clientSource = clientSourceBasic
+
+@@ -133,16 +133,18 @@ for path in clientHeaderDirectories:
+ clientHeaders.extend(Glob('mongo/%s/*.h' % path))
+ clientHeaders.extend(Glob('mongo/%s/*.hpp' % path))
+
+-mongoclient_lib = env.Library('mongoclient', clientSource),
+-mongoclient_install = env.Install('#/', [
+- mongoclient_lib,
+- #env.SharedLibrary('mongoclient', clientSource),
+- ])
++
++mongoclient_libs = [ env.Library('mongoclient', clientSource) ]
++if has_option( "sharedclient" ):
++ mongoclient_libs.append( env.SharedLibrary('mongoclient', clientSource) )
++
++mongoclient_install = env.Install('#/', mongoclient_libs)
++
+ env.Alias('mongoclient', mongoclient_install)
+
+ clientTests = clientEnv.Install('#/', [
+ clientEnv.Program(target,
+- [source, mongoclient_lib]) for (target, source) in exampleSourceMap])
++ [source, mongoclient_libs[-1]]) for (target, source) in exampleSourceMap])
+
+ clientTests.append(
+ clientEnv.Install('#/', clientEnv.Program('bsondemo', 'mongo/bson/bsondemo/bsondemo.cpp')))
+@@ -177,6 +179,8 @@ env.Install(
+ prefix = GetOption("prefix")
+
+ env.Install(prefix + "/lib", '${LIBPREFIX}mongoclient${LIBSUFFIX}')
++if has_option( "sharedclient" ):
++ env.Install(prefix + "/lib", '${SHLIBPREFIX}mongoclient${SHLIBSUFFIX}')
+
+ for x in clientHeaderDirectories:
+ inst = env.Install(prefix + "/include/mongo/" + x,
diff --git a/dev-db/mongodb/mongodb-2.2.3-r1.ebuild b/dev-db/mongodb/mongodb-2.4.2.ebuild
index f0170cbbebb7..f8a4bec5aed0 100644
--- a/dev-db/mongodb/mongodb-2.2.3-r1.ebuild
+++ b/dev-db/mongodb/mongodb-2.4.2.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-db/mongodb/mongodb-2.2.3-r1.ebuild,v 1.1 2013/03/11 10:12:04 ultrabug Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-db/mongodb/mongodb-2.4.2.ebuild,v 1.1 2013/04/18 10:47:08 ultrabug Exp $
EAPI=4
SCONS_MIN_VERSION="1.2.0"
@@ -12,24 +12,26 @@ 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
- mms-agent? ( http://dev.gentoo.org/~ultrabug/20121128-10gen-mms-agent.zip )"
+ mms-agent? ( http://dev.gentoo.org/~ultrabug/20130319-10gen-mms-agent.zip )"
LICENSE="AGPL-3 Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~x86"
-IUSE="mms-agent static-libs v8"
+IUSE="kerberos mms-agent sharedclient spidermonkey ssl static-libs"
PDEPEND="mms-agent? ( dev-python/pymongo )"
RDEPEND="
- v8? ( dev-lang/v8 )
+ dev-lang/v8
>=dev-libs/boost-1.50[threads(+)]
dev-libs/libpcre[cxx]
dev-util/google-perftools
net-libs/libpcap
- app-arch/snappy"
+ app-arch/snappy
+ ssl? ( >=dev-libs/openssl-1.0.1c )"
DEPEND="${RDEPEND}
sys-libs/readline
- sys-libs/ncurses"
+ sys-libs/ncurses
+ kerberos? ( net-libs/libgsasl )"
S=${WORKDIR}/${MY_P}
@@ -37,31 +39,39 @@ pkg_setup() {
enewgroup mongodb
enewuser mongodb -1 -1 /var/lib/${PN} mongodb
- scons_opts=" --cc=$(tc-getCC) --cxx=$(tc-getCXX) --sharedclient"
+ scons_opts=" --cc=$(tc-getCC) --cxx=$(tc-getCXX)"
scons_opts+=" --use-system-tcmalloc"
scons_opts+=" --use-system-pcre"
scons_opts+=" --use-system-snappy"
scons_opts+=" --use-system-boost"
- if use v8; then
- scons_opts+=" --usev8"
- else
+ if use kerberos; then
+ scons_opts+=" --use-sasl-client"
+ fi
+
+ if use sharedclient; then
+ scons_opts+=" --sharedclient"
+ fi
+
+ if use spidermonkey; then
scons_opts+=" --usesm"
+ else
+ scons_opts+=" --use-system-v8"
+ fi
+
+ if use ssl; then
+ scons_opts+=" --ssl"
fi
}
src_prepare() {
epatch "${FILESDIR}/${PN}-2.2-r1-fix-scons.patch"
epatch "${FILESDIR}/${PN}-2.2-r1-fix-boost.patch"
- epatch "${FILESDIR}/${PN}-2.2-r2-boost-1.50.patch"
- epatch "${FILESDIR}/${PN}-2.2-fix-sharedclient.patch"
+ epatch "${FILESDIR}/mongodb-2.4-fix-sharedclient.patch"
- # FIXME: apply only this fix [1] on x86 boxes as it breaks /usr/lib symlink
- # on amd64 machines [2].
- # [1] https://jira.mongodb.org/browse/SERVER-5575
- # [2] https://bugs.gentoo.org/show_bug.cgi?id=434664
+ # bug #462606
if use !prefix && [[ "$(get_libdir)" == "lib" ]]; then
- epatch "${FILESDIR}/${PN}-2.2-fix-x86client.patch"
+ sed -i -e 's/^env.Install(prefix/env.InstallAs(prefix/g' src/SConscript.client || die
fi
}
@@ -72,9 +82,11 @@ src_compile() {
src_install() {
escons ${scons_opts} --full --nostrip install --prefix="${ED}"/usr
- use static-libs || rm "${ED}/usr/$(get_libdir)/libmongoclient.a"
+ use static-libs || find "${ED}"/usr/ -type f -name "*.a" -delete
- use v8 && pax-mark m "${ED}"/usr/bin/{mongo,mongod}
+ if ! use spidermonkey; then
+ pax-mark m "${ED}"/usr/bin/{mongo,mongod}
+ fi
for x in /var/{lib,log}/${PN}; do
keepdir "${x}"
@@ -103,6 +115,13 @@ src_install() {
fi
}
+pkg_preinst() {
+ # wrt bug #461466
+ if [[ "$(get_libdir)" == "lib64" ]]; then
+ rmdir "${ED}"/usr/lib/
+ fi
+}
+
src_test() {
escons ${scons_opts} test
"${S}"/test --dbpath=unittest || die