On 08/04/2011 19:34, Benedikt Boehm wrote: > commit: d9be143486caa83951aae4d6c72c58fea90ed451 > Author: Benedikt Böhm xnull de> > AuthorDate: Fri Apr 8 17:27:47 2011 +0000 > Commit: Benedikt Boehm gentoo org> > CommitDate: Fri Apr 8 17:33:26 2011 +0000 > URL: http://git.overlays.gentoo.org/gitweb/?p=proj/betagarden.git;a=commit;h=d9be1434 > > dev-db/mongodb: version bump to 1.8.1 > > - #329167 - dev-db/mongodb missing dependency on net-libs/libpcap > - #334081 - dev-db/mongodb does not respect LDFLAGS > - #337593 - dev-db/mongodb should depend on libpcre being compiled with > the cxx useflag > - #337973 - dev-db/mongodb-1.8.0 version bump > - #338039 - dev-db/mongodb starts as root > - #340032 - dev-db/mongodb: add server logging > - #356731 - dev-db/mongodb should create /var/run/mongodb > > --- > dev-db/mongodb/files/mongodb-1.6.3-fix-scons.patch | 25 -------- > dev-db/mongodb/files/mongodb-1.8.1-fix-scons.patch | 37 +++++++++++ > dev-db/mongodb/files/mongodb.confd | 16 ++--- > dev-db/mongodb/files/mongodb.initd | 15 +++-- > dev-db/mongodb/mongodb-1.6.3.ebuild | 65 -------------------- > dev-db/mongodb/mongodb-1.7.5.ebuild | 65 -------------------- > dev-db/mongodb/mongodb-1.8.0_rc1.ebuild | 65 -------------------- > .../{mongodb-1.8.0.ebuild => mongodb-1.8.1.ebuild} | 38 ++++++++---- > 8 files changed, 76 insertions(+), 250 deletions(-) > > diff --git a/dev-db/mongodb/files/mongodb-1.6.3-fix-scons.patch b/dev-db/mongodb/files/mongodb-1.6.3-fix-scons.patch > deleted file mode 100644 > index 1c26ce6..0000000 > --- a/dev-db/mongodb/files/mongodb-1.6.3-fix-scons.patch > +++ /dev/null > @@ -1,25 +0,0 @@ > -diff --git a/SConstruct b/SConstruct > -index b759094..5d667f4 100644 > ---- a/SConstruct > -+++ b/SConstruct > -@@ -745,9 +745,9 @@ else: > - > - if nix: > - env.Append( CPPFLAGS="-fPIC -fno-strict-aliasing -ggdb -pthread -Wall -Wsign-compare -Wno-unknown-pragmas -Winvalid-pch" ) > -- if linux: > -- env.Append( CPPFLAGS=" -Werror " ) > -+ env.Append( CXXFLAGS=os.environ['CXXFLAGS']) > - env.Append( CXXFLAGS=" -Wnon-virtual-dtor " ) > -+ env.Append( LINKFLAGS=os.environ['LDFLAGS'] ) > - env.Append( LINKFLAGS=" -fPIC -pthread -rdynamic" ) > - env.Append( LIBS=[] ) > - > -@@ -757,8 +757,6 @@ if nix: > - if debugBuild: > - env.Append( CPPFLAGS=" -O0 -fstack-protector " ); > - env['ENV']['GLIBCXX_FORCE_NEW'] = 1; # play nice with valgrind > -- else: > -- env.Append( CPPFLAGS=" -O3" ) > - > - if debugLogging: > - env.Append( CPPFLAGS=" -D_DEBUG" ); > > diff --git a/dev-db/mongodb/files/mongodb-1.8.1-fix-scons.patch b/dev-db/mongodb/files/mongodb-1.8.1-fix-scons.patch > new file mode 100644 > index 0000000..25a6a6f > --- /dev/null > +++ b/dev-db/mongodb/files/mongodb-1.8.1-fix-scons.patch > @@ -0,0 +1,37 @@ > +From 4ce35e34e646b6ccf151449bd2b47cef543152e5 Mon Sep 17 00:00:00 2001 > +From: =?UTF-8?q?Benedikt=20B=C3=B6hm?= > +Date: Fri, 8 Apr 2011 16:33:37 +0200 > +Subject: [PATCH] fix scons > + > +--- > + SConstruct | 5 ++--- > + 1 files changed, 2 insertions(+), 3 deletions(-) > + > +diff --git a/SConstruct b/SConstruct > +index 41383b1..35c7ea6 100644 > +--- a/SConstruct > ++++ b/SConstruct > +@@ -671,9 +671,10 @@ if nix: > + env.Append( CPPFLAGS="-fPIC -fno-strict-aliasing -ggdb -pthread -Wall -Wsign-compare -Wno-unknown-pragmas -Winvalid-pch" ) > + # env.Append( " -Wconversion" ) TODO: this doesn't really work yet > + if linux: > +- env.Append( CPPFLAGS=" -Werror " ) > + env.Append( CPPFLAGS=" -fno-builtin-memcmp " ) # glibc's memcmp is faster than gcc's > ++ env.Append( CXXFLAGS=os.environ['CXXFLAGS'] ) > + env.Append( CXXFLAGS=" -Wnon-virtual-dtor " ) > ++ env.Append( LINKFLAGS=os.environ['LDFLAGS'] ) > + env.Append( LINKFLAGS=" -fPIC -pthread -rdynamic" ) > + env.Append( LIBS=[] ) > + > +@@ -687,8 +688,6 @@ if nix: > + if debugBuild: > + env.Append( CPPFLAGS=" -O0 -fstack-protector " ); > + env['ENV']['GLIBCXX_FORCE_NEW'] = 1; # play nice with valgrind > +- else: > +- env.Append( CPPFLAGS=" -O3" ) > + #env.Append( CPPFLAGS=" -fprofile-generate" ) > + #env.Append( LINKFLAGS=" -fprofile-generate" ) > + # then: > +-- > +1.7.3.4 > + > > diff --git a/dev-db/mongodb/files/mongodb.confd b/dev-db/mongodb/files/mongodb.confd > index 41585ff..2e087ac 100644 > --- a/dev-db/mongodb/files/mongodb.confd > +++ b/dev-db/mongodb/files/mongodb.confd > @@ -1,11 +1,5 @@ > -# Mongodb essentials > -#MONGODB_EXEC="/usr/bin/mongod" > -#MONGODB_DATA="/var/lib/mongodb" > -#MONGODB_USER="mongodb" > -#MONGODB_PID_FILE="/var/run/mongodb/mongodb.pid" > - > -#MONGODB_IP="127.0.0.1" > -#MONGODB_PORT="27017" > - > -# Set extra options here, such as disabling the admin web server > -#MONGODB_OPTIONS="" > +MONGODB_USER="mongodb" > +MONGODB_EXEC="/usr/bin/mongod" > +MONGODB_IP="127.0.0.1" > +MONGODB_PORT="27012" > +MONGODB_OPTIONS="--rest --dbpath /var/lib/mongodb" > > diff --git a/dev-db/mongodb/files/mongodb.initd b/dev-db/mongodb/files/mongodb.initd > index e2614dc..2684359 100644 > --- a/dev-db/mongodb/files/mongodb.initd > +++ b/dev-db/mongodb/files/mongodb.initd > @@ -8,23 +8,24 @@ depend() { > } > > start() { > + mkdir -p /var/run/mongodb > + chown ${MONGODB_USER}: /var/run/mongodb > + > ebegin "Starting ${SVCNAME}" > start-stop-daemon --background --start --make-pidfile \ > + --pidfile /var/run/mongodb/${SVCNAME}.pid \ > --user ${MONGODB_USER:-mongodb} \ > - --pidfile "${MONGODB_PID_FILE:-/var/run/mongodb/mongodb.pid}" \ > --exec ${MONGODB_EXEC:-/usr/bin/mongod} \ > -- \ > - --dbpath "${MONGODB_DATA:-/var/lib/mongodb}" \ > - --port ${MONGODB_PORT:-27017} \ > --bind_ip ${MONGODB_IP:-127.0.0.1} \ > - --logappend --logpath ${MONGODB_LOGPATH:-/var/log/mongodb/server.log} \ > - ${MONGODB_OPTIONS} \ > - run > + --port ${MONGODB_PORT:-27017} \ > + --logappend --logpath /var/log/mongodb/${SVCNAME}.log \ > + ${MONGODB_OPTIONS} > eend $? > } > > stop() { > ebegin "Stopping ${SVCNAME}" > - start-stop-daemon --stop --pidfile "${MONGODB_PID_FILE:-/var/run/mongodb/mongodb.pid}" > + start-stop-daemon --stop --pidfile /var/run/mongodb/${SVCNAME}.pid > eend $? > } > > diff --git a/dev-db/mongodb/mongodb-1.6.3.ebuild b/dev-db/mongodb/mongodb-1.6.3.ebuild > deleted file mode 100644 > index 8640850..0000000 > --- a/dev-db/mongodb/mongodb-1.6.3.ebuild > +++ /dev/null > @@ -1,65 +0,0 @@ > -# Copyright 1999-2010 Gentoo Foundation > -# Distributed under the terms of the GNU General Public License v2 > -# $Header: $ > - > -EAPI="2" > - > -SCONS_MIN_VERSION="1.2.0-r1" > -MY_P="${PN}-src-r${PV}" > - > -inherit eutils scons-utils versionator > - > -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="" > - > -RDEPEND=" > - dev-lang/spidermonkey[unicode] > - dev-libs/boost > - dev-libs/libpcre > - 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 > -} > - > -src_prepare() { > - epatch "${FILESDIR}/${P}-fix-scons.patch" > -} > - > -src_compile() { > - escons all || die "Compile failed" > -} > - > -src_install() { > - escons --full --nostrip install --prefix="${D}"/usr || die "Install failed" > - > - for x in /var/{lib,log,run}/${PN}; do > - dodir "${x}" || die "Install failed" > - fowners mongodb:mongodb "${x}" > - done > - > - doman debian/mongo*.1 || die "Install failed" > - dodoc README docs/building.md > - > - newinitd "${FILESDIR}/${PN}.initd" ${PN} || die "Install failed" > - newconfd "${FILESDIR}/${PN}.confd" ${PN} || die "Install failed" > -} > - > -src_test() { > - escons smoke --smokedbprefix='testdir' test || die "Tests failed" > -} > > diff --git a/dev-db/mongodb/mongodb-1.7.5.ebuild b/dev-db/mongodb/mongodb-1.7.5.ebuild > deleted file mode 100644 > index c25a8a4..0000000 > --- a/dev-db/mongodb/mongodb-1.7.5.ebuild > +++ /dev/null > @@ -1,65 +0,0 @@ > -# Copyright 1999-2010 Gentoo Foundation > -# Distributed under the terms of the GNU General Public License v2 > -# $Header: $ > - > -EAPI="2" > - > -SCONS_MIN_VERSION="1.2.0-r1" > -MY_P="${PN}-src-r${PV}" > - > -inherit eutils scons-utils versionator > - > -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="" > - > -RDEPEND=" > - dev-lang/spidermonkey[unicode] > - dev-libs/boost > - dev-libs/libpcre > - 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 > -} > - > -#src_prepare() { > -# epatch "${FILESDIR}/${PN}-1.6.3-fix-scons.patch" > -#} > - > -src_compile() { > - escons all || die "Compile failed" > -} > - > -src_install() { > - escons --full --nostrip install --prefix="${D}"/usr || die "Install failed" > - > - for x in /var/{lib,log,run}/${PN}; do > - dodir "${x}" || die "Install failed" > - fowners mongodb:mongodb "${x}" > - done > - > - doman debian/mongo*.1 || die "Install failed" > - dodoc README docs/building.md > - > - newinitd "${FILESDIR}/${PN}.initd" ${PN} || die "Install failed" > - newconfd "${FILESDIR}/${PN}.confd" ${PN} || die "Install failed" > -} > - > -src_test() { > - escons smoke --smokedbprefix='testdir' test || die "Tests failed" > -} > > diff --git a/dev-db/mongodb/mongodb-1.8.0_rc1.ebuild b/dev-db/mongodb/mongodb-1.8.0_rc1.ebuild > deleted file mode 100644 > index 25f1299..0000000 > --- a/dev-db/mongodb/mongodb-1.8.0_rc1.ebuild > +++ /dev/null > @@ -1,65 +0,0 @@ > -# Copyright 1999-2010 Gentoo Foundation > -# Distributed under the terms of the GNU General Public License v2 > -# $Header: $ > - > -EAPI="2" > - > -SCONS_MIN_VERSION="1.2.0-r1" > -MY_P="${PN}-src-r${PV/_rc/-rc}" > - > -inherit eutils scons-utils versionator > - > -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="" > - > -RDEPEND=" > - dev-lang/spidermonkey[unicode] > - dev-libs/boost > - dev-libs/libpcre > - 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 > -} > - > -#src_prepare() { > -# epatch "${FILESDIR}/${PN}-1.6.3-fix-scons.patch" > -#} > - > -src_compile() { > - escons all || die "Compile failed" > -} > - > -src_install() { > - escons --full --nostrip install --prefix="${D}"/usr || die "Install failed" > - > - for x in /var/{lib,log,run}/${PN}; do > - dodir "${x}" || die "Install failed" > - fowners mongodb:mongodb "${x}" > - done > - > - doman debian/mongo*.1 || die "Install failed" > - dodoc README docs/building.md > - > - newinitd "${FILESDIR}/${PN}.initd" ${PN} || die "Install failed" > - newconfd "${FILESDIR}/${PN}.confd" ${PN} || die "Install failed" > -} > - > -src_test() { > - escons smoke --smokedbprefix='testdir' test || die "Tests failed" > -} > > diff --git a/dev-db/mongodb/mongodb-1.8.0.ebuild b/dev-db/mongodb/mongodb-1.8.1.ebuild > similarity index 58% > rename from dev-db/mongodb/mongodb-1.8.0.ebuild > rename to dev-db/mongodb/mongodb-1.8.1.ebuild > index 3849f20..74b7af6 100644 > --- a/dev-db/mongodb/mongodb-1.8.0.ebuild > +++ b/dev-db/mongodb/mongodb-1.8.1.ebuild > @@ -16,36 +16,50 @@ SRC_URI="http://downloads.mongodb.org/src/${MY_P}.tar.gz" > LICENSE="AGPL-3 Apache-2.0" > SLOT="0" > KEYWORDS="~amd64 ~x86" > -IUSE="" > +IUSE="v8" > > -RDEPEND=" > - dev-lang/spidermonkey[unicode] > +RDEPEND="!v8? ( >=dev-lang/spidermonkey-1.9.2.15 ) > + v8? ( dev-lang/v8 ) > dev-libs/boost > - dev-libs/libpcre > - net-libs/libpcap > -" > + dev-libs/libpcre[cxx] > + net-libs/libpcap" > > DEPEND="${RDEPEND} > sys-libs/readline > - sys-libs/ncurses > -" > + sys-libs/ncurses" > > S="${WORKDIR}/${MY_P}" > > pkg_setup() { > enewgroup mongodb > enewuser mongodb -1 -1 /var/lib/${PN} mongodb > + > + if use v8; then > + scons_opts="--usev8" > + else > + scons_opts="--usesm" > + fi > +} > + > +src_prepare() { > + epatch "${FILESDIR}/${PN}-1.8.1-fix-scons.patch" > + > + if use v8; then > + # Suppress known test failure with v8: > + # http://jira.mongodb.org/browse/SERVER-1147 > + sed -e '/add< NumberLong >/d' -i dbtests/jstests.cpp || die > + fi > } > > src_compile() { > - escons all || die "Compile failed" > + escons ${scons_opts} all || die "Compile failed" > } > > src_install() { > - escons --full --nostrip install --prefix="${D}"/usr || die "Install failed" > + scons ${scons_opts} --full --nostrip install --prefix="${D}"/usr || die "Install failed" > > for x in /var/{lib,log,run}/${PN}; do > - dodir "${x}" || die "Install failed" > + dodir "${x}" > fowners mongodb:mongodb "${x}" > done > > @@ -57,5 +71,5 @@ src_install() { > } > > src_test() { > - escons smoke --smokedbprefix='testdir' test || die "Tests failed" > + scons ${scons_opts} smoke --smokedbprefix='testdir' test || die "Tests failed" > } > Hi mate, thanks for working on mongodb fix/bump ! Just so you know, I'm working with @jbergstroem on this aswell, maybe you could have a look at my overlay (ultrabug) and give your feedback please ? Regards -- Ultrabug Gentoo / cluster