commit:     635fd3c9ba53e5e2550200b8d924e82368d4f65b
Author:     Ultrabug <ultrabug <AT> gentoo <DOT> org>
AuthorDate: Mon May 12 15:11:13 2014 +0000
Commit:     Alexys Jacob <ultrabug <AT> gentoo <DOT> org>
CommitDate: Mon May 12 15:11:13 2014 +0000
URL:        
http://git.overlays.gentoo.org/gitweb/?p=dev/ultrabug.git;a=commit;h=635fd3c9

work on bug #508190

---
 dev-db/mongodb/Manifest                            |  11 ++
 dev-db/mongodb/files/mms-agent.initd-r2            |  24 +++
 dev-db/mongodb/files/mongodb-2.6.1-fix-scons.patch |  35 +++++
 dev-db/mongodb/files/mongodb.conf-r2               |  33 +++++
 dev-db/mongodb/files/mongodb.confd-r2              |  12 ++
 dev-db/mongodb/files/mongodb.initd-r2              |  26 ++++
 dev-db/mongodb/files/mongos.conf-r2                |  30 ++++
 dev-db/mongodb/files/mongos.confd-r2               |  12 ++
 dev-db/mongodb/files/mongos.initd-r2               |  26 ++++
 dev-db/mongodb/mongodb-2.6.1.ebuild                | 164 +++++++++++++++++++++
 10 files changed, 373 insertions(+)

diff --git a/dev-db/mongodb/Manifest b/dev-db/mongodb/Manifest
index c5a53ce..f6f2ac8 100644
--- a/dev-db/mongodb/Manifest
+++ b/dev-db/mongodb/Manifest
@@ -1,16 +1,27 @@
 AUX mms-agent.confd 205 SHA256 
29e678e722268311fb59f5af57ac3fbadb9e930cd3cb1ce9e4dc33d30e021e40 SHA512 
e81e68ebad2d409a9e631de0aaf264eab99b3faa5c313a7c96a6672a6c51d3243100f5ef599bf2a347b4f9e1b1a6ebf95fa890cb614d9745c58430fadd8ee13a
 WHIRLPOOL 
24d98082e138dbcee0a276c4874d88a23f7f53d1bf0f6a7f2e979c005413f14809269622ecd013913221a267eb1fc806130d69915ce5cd38a646b498912ca729
 AUX mms-agent.initd 1277 SHA256 
fda9a9eb7e2abceef572ffbad0987b74670b6b5e0c50d93f58ef8141825a2cea SHA512 
32bdcadf7395f371809b253934f8c3dd0074e6aafccfab091f8bf699524eb32ffdc787b479e08056e2fac933f1627a5f1cc03842a2f8b939f8b68bb2e6da71c2
 WHIRLPOOL 
a9f78afe5286e2762c27ab0a272e4e5719e070cbd9ab5f551ef322346bb3ff46d0b49c76906fe63f8c78c9bf6a11d720d2908044d5666e5dd98afdef55fca76e
+AUX mms-agent.initd-r2 608 SHA256 
6c44dcd08fbf15a84673f6475ee0996d9cf0afea3a5ff9c3f82dee1e7990b11f SHA512 
e0e780c4ad8097f912cc88d645af8fab08b9cd6562963c42dfddaa99dc4956959ae249dcc79c2f9998d180523c058de4fe8ced62f1b9d25bcab96d81cdda898a
 WHIRLPOOL 
5a36fec62ea36bc16114f093a047a7225df7e53b47ba830b0944473981d9b12f6c847ec9826b1598ced3d963ffa9685852d9e6aece14e753021fd60b67cd21c1
 AUX mongodb-2.2-r1-fix-boost.patch 870 SHA256 
885991e16aecc66d88b40418531a66449ab8e434ca677acc7814e7485231e841 SHA512 
902c11e15e26be6c64053b4f3c0d0fda1670373fa3a5805063b49957843173b3663f6271ae541bb07aedf884a9861099bb1f452761f7baeaa819f14eb0755336
 WHIRLPOOL 
b5df66a5e90202db903989c66b7423103ca1a666a477175c1746c94d5cf250ac4ceb2d237737ee2bfc158a8f9c611916e91d5133ba94e544abbaaec8b0d0361a
 AUX mongodb-2.4.8-fix-grsec.patch 824 SHA256 
65a50faa697f4e76eaf87b459121b8ba7c04d028a5524939296db2ca701cf2fb SHA512 
7dac727a63dab7713a85f7d483f68a6fe9ed7c5ef06324a899a558d118857e9937c5e48e1fe2ae2063d1442c17b68b60b6c14934184a2badf4ecc9b3f68731bd
 WHIRLPOOL 
feef78707135bd128c21a5c344bbf25eef1ef796b236461656baa6299a0335759fff42103c36aebca1afcb23697f4ff42df382ceb2d05d0f90e913cfdac0e597
 AUX mongodb-2.5.4-fix-scons.patch 1355 SHA256 
02b90cf2a6f35df5021d8985b1bddd8c0f65d4764f59469c3c51e46864bac02f SHA512 
f2f0e1439bab449951696f6d49f32e89dba0f848391475354d0b4d34e325a88604c8e87d2fe85701b5dcb7958a22714df283e79ba61bbd0b93f5b20d0914923c
 WHIRLPOOL 
7fb2929f03744819395c00ef2eefc3fcb91fa00dc436348a69dbca55d2ac1c18c9d76c7d29dfb47aff751088d9798061f588bb4b22a94353229d39d65f6090af
+AUX mongodb-2.6.1-fix-scons.patch 1386 SHA256 
18c454168e6c4feac4b67a3ff18e811d486284cb014ba0ededc039433c1caf28 SHA512 
a67a1b2f75783ac3520f3ea5765e7a57669c23969a8242f481594e3a28e400a3656068e65ebaac0765b66433eb56c30280762fe3f6fe49b9b255c3b80dd24a29
 WHIRLPOOL 
7828f0314e6fa8e44cdfdbe90255e94158aa3136e71a3afff001c2308b4ef31bc8f0001083d68f00a767baff69c8bb0034f65a50e970deda45acd540fe5de772
 AUX mongodb.conf 246 SHA256 
8010ce728d657524cd76b5afda7ffbc1cc389642336b12b89cec5df2b09fc0e4 SHA512 
05dead727d3ea5fe8af1a3c3888693f6b3e2b8cb7f197a5d793352e10d2c524e96c9a5c55ad2e88c1114643a9612ec0b26a2574b48a5260a9b51ec8941461f1c
 WHIRLPOOL 
17a27daaa7892140d741256cf9acaf2f2909a545f350c936183aeb7b6671c25a3dc11f191b01ed008195965b8cc39b49f1a3a8c69cfd90c4ca57b9fa2732beff
+AUX mongodb.conf-r2 696 SHA256 
8c1ecfd94e0a6f3acebd5d3ac7a75a19818772b86dcd4c066c33d9d790c420b9 SHA512 
973b0ad866498c2696ee63080b61aeca2a917065a2b3bd0f470b2a70dee4630c8a80fe8d99a4bcc166f14d944c7de1debec24df8c97fb7f9b5fb0d781985ca58
 WHIRLPOOL 
290631e082228076a366356c142efb91d7d1e1c5ae7ef937cac3d9c20930fdabfc3b1bb42a2e0e80f2b85daac6c399a6f7d0a0a1eafe45c54795bb2bfb22291f
 AUX mongodb.confd 361 SHA256 
a4ca29c577428c02cd0b0a8b46756df5f53a05519c9d13c270533cf99b9b819d SHA512 
9bcd870742c31bf25f34188ddc3c414de1103e9860dea9f54eee276b89bc2cf1226abab1749c5cda6a6fb0880e541373754e5e83d63cc7189d4b9c274fd555c3
 WHIRLPOOL 
35d785763d0cb1e21516a3fa15332d6c93d35e6faea02b60f81c389878dd89fe026504c6cfce5e9abfc8353f74b0e959a7501373d2a389f269c6952d33e8d2e8
+AUX mongodb.confd-r2 549 SHA256 
6275df7b1bbee218545331d68da3814d0e0fa89d3b30e21370bbeb776dd19e0a SHA512 
75f11e8350e98b90eccafd577d794e4b05f36ede8d95e7839e9fa1eb77ea7bd9cdd2fdd07719abb78a714cd7d72109c177d265d6417ef198a4217453c0a4db68
 WHIRLPOOL 
974eeb5dd58d52670121b2e8e687250cae4d5c49ec020dc30746bf39356762d63f41371526744f2b9fdd657134e7570d7501a3ce5995e830e039cc9eeb8a427e
 AUX mongodb.initd-r1 1215 SHA256 
d56c5e301a7c35bcc60fa60859eee56342be7e4911edd19e519804bcf08a5ef0 SHA512 
d09b6786f986edafceba4042dbfd29f336996af93f11cd92c3dcc267d7cb522946e6800cb75fae9d02ee1490856b218be96012b132766deb0240fdaf4a65e6b7
 WHIRLPOOL 
416fdef48831961d410fb85f18148f70455bfc005e1f788c0f3fa035e8a4fc0c1001b1a1b37878018bdd3ba927843d7b0a0ca4c2850c9d57e21c74388cb1e077
+AUX mongodb.initd-r2 710 SHA256 
d971ad9c61bb4d0c52bcd6992cbfb036ac0c701df8dc9036b5f006239967d7a1 SHA512 
8c5d92d6332c01c7f627292bffe08e493027f2ffe7e34434fa025c0da87d559ea9f3497f12b3310372908e86930aab19fb8969a890aa4c30dfb1f444cd57a304
 WHIRLPOOL 
548902e26ef87731209eb29c6d8c077ace5aeb328adc1958d75aa3cd60ba0310ca4e631509a4b54780c828ebfa129a6297352b101306a6d7424867bc45ee18aa
 AUX mongodb.logrotate 205 SHA256 
76994c32d999def5c925bd7be3f96687b3406f1d67b89aa6a4df8053025b1e01 SHA512 
8c089b1a11f494e4148fb4646265964c925bf937633a65e395ee1361d42facf837871dd493a9a2e0f480ae0e0829dbd3ed60794c5334e2716332e131fc5c2c51
 WHIRLPOOL 
c1d94339a6e58363ba37bfd0f878ea6db403eaee02aa030891bfd54af1a61e34622286e560ba5217201435a745217b2da55d857fece83d5a94b12d915ad2940c
 AUX mongodb.service 220 SHA256 
19f55ab28652b3817e98fc3f15cc2f6f3255a5e1dfd7b0d5a27c9ba22fd2703e SHA512 
177251404b2e818ae2b546fe8b13cb76e348c99e85c7bef22a04b0f07b600fd515a309ede50214f4198594388a6d2b31f46e945b9dae84aabb4dfa13b1123bb9
 WHIRLPOOL 
0f6e032acbc7f625b03dcec990126cef064925a341e38c27cddbed5a951c8cfeded00ee3b8b0d9044245c833e86748262434665342e6baa98500fb02c07f4281
+AUX mongos.conf-r2 648 SHA256 
d1bf479cee999b4e59e5100c134cd3e7af4bb126342418100cf8f9a08a26f6a7 SHA512 
5aa8ced8d83572358e008c0df45dbe72a2e9c0003c9f49514d6b91bf9b75d4fb48b189ffe00d14e5675679943a05215a9873c5c9bde9ab1be4ed4813e75714e3
 WHIRLPOOL 
f1036ea1bd7efa54d28d131dd1bfd1e06c1c3ffbf247ee68a33eee0383d87bf3bfa6639040e6b68a0a14cce0bd77bd5b91a8e245f615007fccccb0cbe2becd84
 AUX mongos.confd 345 SHA256 
2afd582564623da0e928ca667d37bef467334c82d08b49301f1f6c16ba177767 SHA512 
61d8734cef644187eeadc821c89e63a3fbf61860fe2db6e74557b1c6760fe83ba7549cb04f9e3aacea4d8e7e4d81a3b1bc0d5e29715eca33c4761adb17ea9ab7
 WHIRLPOOL 
39c338211f2dcc4dacc4e6463657339287a5da6f20b02c68f1bb5b084d5db14eed4da435b3ed2319d3bf9c415dd6a9d4a6a84c105872fd5513c6146c2b5afc1b
+AUX mongos.confd-r2 546 SHA256 
1378a880ffde0efae213ac6d6d4bbe2181c92fbb06535a58c2dab06ef88ee8e3 SHA512 
30e208690b5f28bd0442b7ed302d9be991aedd27203f24e5849201d33291ad7f0f9153ae3a00b55697d79a45c40d7b3792ff45f0c24ef2cf4e88222f88ea1400
 WHIRLPOOL 
68b8eed779e19261c4d13ebd6be8c11b6df94e748bb8f03d632ecbfc5fcd151a693e51c5a4ad4f0af9439d07dedafc29bd9b86b5a532bad48d570fca73002987
 AUX mongos.initd-r1 1370 SHA256 
d4c9f32f0f001ae7cfe2b35034fd8e5a24a83fd1bc89941550c68fd98a3c9454 SHA512 
28aea696b53bb557d41c5cb501ae30a72470750eb49e59442df67e98b087008fdc75e41d516443b7cc5cb5eb9aa710b98455d7955a4c1b76869ef841e67417b4
 WHIRLPOOL 
db36b6250ef6fdbd4aec5bd249593ba81a2af44aefc26ad3ab2b04af5a4b6e84e416e0b90c4f3bb98dcaf182aeb1eab93bb8bebcdbe539881ca2c595e3e5d137
+AUX mongos.initd-r2 710 SHA256 
8ac97c52b389e47d2d6d57aa76f80e78abc5ca6bc5891186caabfa02b811edf9 SHA512 
9bfbaec60edd16642fa11a194685aa9f142a6a2412cbecc84916b7a0f72736f78c4700e6e7e1935a4d4f535c4a237c8dd206f7f302c6f8fc8b0463587d2053f9
 WHIRLPOOL 
7ed82226c189c26128b481502efc4ec356ae1849426fe088a3e7ff00c3664ce2191c7b88206df4e3f394f8ac60015ac32cddcfb5523f55ecb3d97d41d2b4a7cc
 DIST 20130821-10gen-mms-agent.zip 31918 SHA256 
b48f35fe2ad058dc4ebcab01dad1229c0597e78a9011b57cd1030a05cdd16e7c SHA512 
9467d229829076733a023d81e377479e1e4c71c4d2c1d163928abf7215bc87809a304768f83b531b6f585d19b18585f9d0d35fd74762cf180586be11536eb1a8
 WHIRLPOOL 
d632c1761d1f47f2139a046d58af09641a0c8d9f3168d7ebc99dac5c6a3b5b0846cba8eac581b67d35c5e7580c6910759503b85e7ca74e5930c0e0dac3d77c97
+DIST 20140409-mms-monitoring-agent.zip 40122 SHA256 
9c4f89cfba10b4604512ab21eb082248104aeabe7e813b852db2b86f47d7ecb2 SHA512 
5290a813c407251b5e4def813ce6fe7e09d6c3a1907fd409e326b15b07aed39f7db3a28710ecdaffe2771136c9433253c5d1857c823844a4b75dd38f1d15eefd
 WHIRLPOOL 
ce80870e2618f3d9ed80af41b1069ed5bd97af475089564eed1bc111e820c048bc5cbaa03f859349e772fe232f876127e0627c75c135a9b2e196ab13258ed9f1
 DIST mongodb-src-r2.5.4.tar.gz 14198740 SHA256 
18a83049fabb3bbc6e9519c3e20b6c4e412ae1f0f8e4c7684994e3ed919f969c SHA512 
23bda909d4c74aef080e0a3c1ead92cb2a96a68f85e6835da1b2a2edfb88271cd5ca6379a4bfcba1902dd9c7c192efc6bd22795efd8c9be6290c7575b80b098a
 WHIRLPOOL 
8932c85cd759fb67db1655e24278c90beb27d01696959e2e9c07848a51442d23197dc7bb94e59231c722a8754c551fc77b3b231a968578298c30b7e5f5b0b03c
+DIST mongodb-src-r2.6.1.tar.gz 14425586 SHA256 
a3199666acff3d8e236a93118de497a20b47309cf91495099f9a22b9787d262b SHA512 
a07168a8fa609d2a22b04db6b761e486e58fb63c66ea4974e5cc53a1255d514cd065a84b4dc62efbb27c39a6e3881d98a3f7025c2391a78d91d5cd515b8a2e56
 WHIRLPOOL 
d6a0aea1724b02a2444e2ce58f2971bb01bb571f13342f8b11a2f0f4ded69143eaa3eb11d0d0778f89fb627cb057b40f0321e1765c0e883d2d1be76cf48b5f13
 EBUILD mongodb-2.5.4.ebuild 3676 SHA256 
4e79b23d37a5a168d26dc9d01b86eb836dc992efca0a8dab1a4b6e789a68bd99 SHA512 
83e3fa6f61d97d23c16c167b7d5011338eac82d4d1188ec3f7e981aefbc1eb5ce17419c2a123bb2af973ce754edf1c686759f74933b9d42f04e53db4245b7e3e
 WHIRLPOOL 
d77ade6020bafe46d9ef4a88745ed15a88bcf6c3ad199354e60563ab3588dcf7ff72589ec38d1a49b8736ac4a03e50f3008db5ce06050c743fd8fbd693cbfbdc
+EBUILD mongodb-2.6.1.ebuild 4324 SHA256 
b3367182bb43ce837e47f3b8313997cfceba5ca1f984b81afdbcb754d77aa72e SHA512 
414d627e84ed8abd737969e255f563f5ac74db876053320a80e4cc0854d6ab7f14da43b24ae2e2f6998aef998b578dc8cb1ad3b18fa7b82f36162171f8945663
 WHIRLPOOL 
bd2ada65012357831e34e6455734a5e74a42f80f2d6858ca587ec4e8bf76d886098a91ca5793a666c3f44cca3e35c7e02e0686ac3cb6efae178f277425337987
 MISC metadata.xml 1090 SHA256 
bb0066679f4a7ee9f21238becfdf1cb6e38489c1a9d46e0671d4098455f886ea SHA512 
b4e4fec0815ac98c85b437f2155f4620b91fe24e81f559b92901038f68534e07dc91ae77ac609311e9febbe64b8ef0ad5ad164346cdb466e28bf1732ed18048a
 WHIRLPOOL 
b5305d0cbc7398d66d9e26b14adeaccfeeee8d0d24fad8bb957517273b97f94b0feb1afc1bdefaa01ea06502c570376e8e7a0ce68dca76c8ae5dbbf686d6458a

diff --git a/dev-db/mongodb/files/mms-agent.initd-r2 
b/dev-db/mongodb/files/mms-agent.initd-r2
new file mode 100644
index 0000000..ca645b0
--- /dev/null
+++ b/dev-db/mongodb/files/mms-agent.initd-r2
@@ -0,0 +1,24 @@
+#!/sbin/runscript
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-db/mongodb/files/mms-agent.initd-r1,v 
1.1 2014/04/09 15:40:20 ultrabug Exp $
+
+logfile=/var/log/mongodb/mms-agent.log
+run_dir=${run_dir:-/run/mongodb}
+
+command="/usr/bin/python2 agent.py &>${logfile}"
+command_background="true"
+
+pidfile=${run_dir}/${SVCNAME}.pid
+user=${user:-mongodb}
+group=${group:-mongodb}
+
+depend() {
+       need net
+       use syslog
+}
+
+start_pre() {
+    checkpath -d -m 0750 -o "${user}":"${group}" "${run_dir}"
+    cd /opt/mms-agent
+}

diff --git a/dev-db/mongodb/files/mongodb-2.6.1-fix-scons.patch 
b/dev-db/mongodb/files/mongodb-2.6.1-fix-scons.patch
new file mode 100644
index 0000000..031d843
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb-2.6.1-fix-scons.patch
@@ -0,0 +1,35 @@
+diff --git SConstruct SConstruct
+index 3886d1b..81c59a9 100644
+--- SConstruct
++++ SConstruct
+@@ -811,19 +811,17 @@ if nix:
+     # -Winvalid-pch Warn if a precompiled header (see Precompiled Headers) is 
found in the search path but can't be used.
+     env.Append( CCFLAGS=["-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 or darwin:
+-        env.Append( CCFLAGS=["-Werror", "-pipe"] )
+ 
+     env.Append( CPPDEFINES=["_FILE_OFFSET_BITS=64"] )
+-    env.Append( CXXFLAGS=["-Wnon-virtual-dtor", "-Woverloaded-virtual"] )
+     env.Append( LINKFLAGS=["-fPIC", "-pthread"] )
++    env.Append( CXXFLAGS=os.environ['CXXFLAGS'])
++    env.Append( LINKFLAGS=os.environ['LDFLAGS'] )
+ 
+     # SERVER-9761: Ensure early detection of missing symbols in dependent 
libraries at program
+     # startup.
+@@ -840,7 +838,7 @@ if nix:
+     if not darwin:
+         env.Append( LINKFLAGS=["-rdynamic"] )
+ 
+-    env.Append( LIBS=[] )
++    env.Append( LIBS=['pcre', 'pcrecpp', 'snappy', 'yaml-cpp'] )
+ 
+     #make scons colorgcc friendly
+     for key in ('HOME', 'TERM'):

diff --git a/dev-db/mongodb/files/mongodb.conf-r2 
b/dev-db/mongodb/files/mongodb.conf-r2
new file mode 100644
index 0000000..337e6b6
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb.conf-r2
@@ -0,0 +1,33 @@
+# !! IMPORTANT !!
+#
+# This file uses the YAML format as described in the documentation:
+#   http://docs.mongodb.org/manual/reference/configuration-options/
+
+storage:
+    dbPath: "/var/lib/mongodb"
+
+systemLog:
+    destination: file
+    path: "/var/log/mongodb/mongodb.log"
+    quiet: true
+    logAppend: true
+
+net:
+    port: 27017
+    bindIp: 127.0.0.1
+    ssl:
+        mode: disabled
+
+#security:
+    #keyFile:
+    #clusterAuthMode:
+
+#replication:
+    #replSetName:
+
+# Specifies one of the MongoDB parameters described here:
+#   http://docs.mongodb.org/manual/reference/parameters/
+#
+# You can specify multiple setParameter fields such as:
+#   setParameter: {enableTestCommands: 1}
+#setParameter:

diff --git a/dev-db/mongodb/files/mongodb.confd-r2 
b/dev-db/mongodb/files/mongodb.confd-r2
new file mode 100644
index 0000000..dddb67e
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb.confd-r2
@@ -0,0 +1,12 @@
+# !! IMPORTANT !!
+#
+# This file is ONLY used to override some of the init script configuration.
+#
+# You should NOT use this file to configure your mongodb instance,
+# see the /etc/mongodb.conf file instead.
+#
+# Available init script modifiers :
+# - config_file : the configuration file to use (default : /etc/mongodb.conf)
+# - user : the user used to run your mongodb instance (default : mongodb)
+# - group : the group used to run your mongodb instance (default : mongodb)
+# - run_dir : the run directory for your PID files (default : /run/mongodb)

diff --git a/dev-db/mongodb/files/mongodb.initd-r2 
b/dev-db/mongodb/files/mongodb.initd-r2
new file mode 100644
index 0000000..68dafb9
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb.initd-r2
@@ -0,0 +1,26 @@
+#!/sbin/runscript
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-db/mongodb/files/mongodb.initd-r1,v 1.1 
2013/08/16 12:54:44 ultrabug Exp $
+
+config_file=${config_file:-/etc/${SVCNAME}.conf}
+run_dir=${run_dir:-/run/mongodb}
+
+command="/usr/bin/mongod"
+command_args="--config ${config_file}"
+command_background="true"
+pidfile=${run_dir}/${SVCNAME}.pid
+user=${user:-mongodb}
+group=${group:-mongodb}
+
+depend() {
+       use net
+}
+
+start_pre() {
+    checkpath -d -m 0750 -o "${user}":"${group}" "${run_dir}"
+    if [ ! -f ${config_file} ]; then
+       eerror "Missing configuration file ${config_file}"
+       return 1
+    fi
+}

diff --git a/dev-db/mongodb/files/mongos.conf-r2 
b/dev-db/mongodb/files/mongos.conf-r2
new file mode 100644
index 0000000..fc00689
--- /dev/null
+++ b/dev-db/mongodb/files/mongos.conf-r2
@@ -0,0 +1,30 @@
+# !! IMPORTANT !!
+#
+# This file uses the YAML format as described in the documentation:
+#   http://docs.mongodb.org/manual/reference/configuration-options/
+
+systemLog:
+    destination: file
+    path: "/var/log/mongodb/mongos.log"
+    quiet: true
+    logAppend: true
+
+net:
+    port: 27017
+    bindIp: 127.0.0.1
+    ssl:
+        mode: disabled
+
+#security:
+    #keyFile:
+    #clusterAuthMode:
+
+#sharding:
+    #configDB:
+
+# Specifies one of the MongoDB parameters described here:
+#   http://docs.mongodb.org/manual/reference/parameters/
+#
+# You can specify multiple setParameter fields such as:
+#   setParameter: {enableTestCommands: 1}
+#setParameter:

diff --git a/dev-db/mongodb/files/mongos.confd-r2 
b/dev-db/mongodb/files/mongos.confd-r2
new file mode 100644
index 0000000..0dc2a18
--- /dev/null
+++ b/dev-db/mongodb/files/mongos.confd-r2
@@ -0,0 +1,12 @@
+# !! IMPORTANT !!
+#
+# This file is ONLY used to override some of the init script configuration.
+#
+# You should NOT use this file to configure your mongos instance,
+# see the /etc/mongos.conf file instead.
+#
+# Available init script modifiers :
+# - config_file : the configuration file to use (default : /etc/mongos.conf)
+# - user : the user used to run your mongodb instance (default : mongodb)
+# - group : the group used to run your mongodb instance (default : mongodb)
+# - run_dir : the run directory for your PID files (default : /run/mongodb)

diff --git a/dev-db/mongodb/files/mongos.initd-r2 
b/dev-db/mongodb/files/mongos.initd-r2
new file mode 100644
index 0000000..44d39b0
--- /dev/null
+++ b/dev-db/mongodb/files/mongos.initd-r2
@@ -0,0 +1,26 @@
+#!/sbin/runscript
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-db/mongodb/files/mongodb.initd-r1,v 1.1 
2013/08/16 12:54:44 ultrabug Exp $
+
+config_file=${config_file:-/etc/${SVCNAME}.conf}
+run_dir=${run_dir:-/run/mongodb}
+
+command="/usr/bin/mongos"
+command_args="--config ${config_file}"
+command_background="true"
+pidfile=${run_dir}/${SVCNAME}.pid
+user=${user:-mongodb}
+group=${group:-mongodb}
+
+depend() {
+       use net
+}
+
+start_pre() {
+    checkpath -d -m 0750 -o "${user}":"${group}" "${run_dir}"
+    if [ ! -f ${config_file} ]; then
+       eerror "Missing configuration file ${config_file}"
+       return 1
+    fi
+}

diff --git a/dev-db/mongodb/mongodb-2.6.1.ebuild 
b/dev-db/mongodb/mongodb-2.6.1.ebuild
new file mode 100644
index 0000000..35f0769
--- /dev/null
+++ b/dev-db/mongodb/mongodb-2.6.1.ebuild
@@ -0,0 +1,164 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-db/mongodb/mongodb-2.4.10-r1.ebuild,v 
1.2 2014/04/09 15:42:11 ultrabug Exp $
+
+EAPI=5
+SCONS_MIN_VERSION="1.2.0"
+CHECKREQS_DISK_BUILD="2400M"
+CHECKREQS_DISK_USR="512M"
+CHECKREQS_MEMORY="1024M"
+
+inherit eutils flag-o-matic multilib scons-utils systemd user versionator 
check-reqs
+
+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/20140409-mms-monitoring-agent.zip )"
+
+LICENSE="AGPL-3 Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="kerberos mms-agent ssl static-libs"
+
+PDEPEND="mms-agent? ( dev-python/pymongo app-arch/unzip )"
+RDEPEND="
+       app-arch/snappy
+       >=dev-cpp/yaml-cpp-0.5.1
+       >=dev-libs/boost-1.50[threads(+)]
+       >=dev-libs/libpcre-8.30[cxx]
+       dev-libs/snowball-stemmer
+       dev-util/google-perftools[-minimal]
+       net-libs/libpcap
+       ssl? ( >=dev-libs/openssl-1.0.1g )"
+DEPEND="${RDEPEND}
+       sys-libs/ncurses
+       sys-libs/readline
+       kerberos? ( dev-libs/cyrus-sasl[kerberos] )"
+
+S=${WORKDIR}/${MY_P}
+
+pkg_setup() {
+       enewgroup mongodb
+       enewuser mongodb -1 -1 /var/lib/${PN} mongodb
+
+       scons_opts="--variant-dir=build --cc=$(tc-getCC) --cxx=$(tc-getCXX)"
+       scons_opts+=" --use-system-boost"
+       scons_opts+=" --use-system-pcre"
+       scons_opts+=" --use-system-snappy"
+       scons_opts+=" --use-system-stemmer"
+       scons_opts+=" --use-system-tcmalloc"
+       scons_opts+=" --use-system-yaml"
+       scons_opts+=" --usev8"
+
+       if use prefix; then
+               scons_opts+=" --cpppath=${EPREFIX}/usr/include"
+               scons_opts+=" --libpath=${EPREFIX}/usr/$(get_libdir)"
+       fi
+
+       if use kerberos; then
+               scons_opts+=" --use-sasl-client"
+       fi
+
+       if use ssl; then
+               scons_opts+=" --ssl"
+       fi
+}
+
+src_prepare() {
+       epatch "${FILESDIR}/${PN}-2.6.1-fix-scons.patch"
+
+       # fix yaml-cpp detection
+       sed -i -e "s/\[\"yaml\"\]/\[\"yaml-cpp\"\]/" SConstruct || die
+
+       # bug #462606
+       sed -i -e "s@\$INSTALL_DIR/lib@\$INSTALL_DIR/$(get_libdir)@g" 
src/SConscript.client || die
+
+       # bug #482576
+       sed -i -e "/-Werror/d" src/third_party/v8/SConscript || die
+}
+
+src_compile() {
+       escons ${scons_opts} all
+}
+
+src_install() {
+       escons ${scons_opts} --full --nostrip install --prefix="${ED}"/usr
+
+       use static-libs || find "${ED}"/usr/ -type f -name "*.a" -delete
+
+       for x in /var/{lib,log}/${PN}; do
+               keepdir "${x}"
+               fowners mongodb:mongodb "${x}"
+       done
+
+       doman debian/mongo*.1
+       dodoc README docs/building.md
+
+       newinitd "${FILESDIR}/${PN}.initd-r2" ${PN}
+       newconfd "${FILESDIR}/${PN}.confd-r2" ${PN}
+       newinitd "${FILESDIR}/${PN/db/s}.initd-r2" ${PN/db/s}
+       newconfd "${FILESDIR}/${PN/db/s}.confd-r2" ${PN/db/s}
+
+       insinto /etc
+       newins "${FILESDIR}/${PN}.conf-r2" ${PN}.conf
+       newins "${FILESDIR}/${PN/db/s}.conf-r2" ${PN/db/s}.conf
+
+       systemd_dounit "${FILESDIR}/${PN}.service"
+
+       insinto /etc/logrotate.d/
+       newins "${FILESDIR}/${PN}.logrotate" ${PN}
+
+       if use mms-agent; then
+               local MY_PN="mms-agent"
+               local MY_D="/opt/${MY_PN}"
+
+               insinto /etc
+               newins "${WORKDIR}/${MY_PN}/settings.py" mms-agent.conf
+               rm "${WORKDIR}/${MY_PN}/settings.py"
+
+               insinto ${MY_D}
+               doins "${WORKDIR}/${MY_PN}/"*
+               dosym /etc/mms-agent.conf ${MY_D}/settings.py
+
+               fowners -R mongodb:mongodb ${MY_D}
+               newinitd "${FILESDIR}/${MY_PN}.initd-r2" ${MY_PN}
+       fi
+}
+
+pkg_preinst() {
+       # wrt bug #461466
+       if [[ "$(get_libdir)" == "lib64" ]]; then
+               rmdir "${ED}"/usr/lib/ &>/dev/null
+       fi
+}
+
+src_test() {
+       escons ${scons_opts} test
+       "${S}"/test --dbpath=unittest || die
+}
+
+pkg_postinst() {
+       if [[ ${REPLACING_VERSIONS} < 3.6 ]]; then
+               ewarn "!! IMPORTANT !!"
+               ewarn " "
+               ewarn "${PN} configuration files have changed !"
+               ewarn " "
+               ewarn "Make sure you migrate from /etc/conf.d/${PN} to the new 
YAML standard in /etc/${PN}"
+               ewarn "  
http://docs.mongodb.org/manual/reference/configuration-options/";
+               ewarn " "
+               ewarn "Make sure you also follow the upgrading process :"
+               ewarn "  
http://docs.mongodb.org/master/release-notes/2.6-upgrade/";
+               ewarn " "
+               if use mms-agent; then
+                       ewarn "MMS Agent configuration file has been moved to :"
+                       ewarn "  /etc/mms-agent.conf"
+               fi
+       else
+               if use mms-agent; then
+                       elog "Edit your MMS Agent configuration file :"
+                       elog "  /etc/mms-agent.conf"
+               fi
+       fi
+}

Reply via email to