Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 425190 - dev-db/mongodb-2.0.6 fails to build with Boost 1.50
Summary: dev-db/mongodb-2.0.6 fails to build with Boost 1.50
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All All
: Normal normal (vote)
Assignee: Ultrabug
URL:
Whiteboard:
Keywords:
: 439182 (view as bug list)
Depends on:
Blocks: boost-1.50
  Show dependency tree
 
Reported: 2012-07-07 20:25 UTC by Arfrever Frehtes Taifersar Arahesis
Modified: 2012-11-04 17:20 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
mongodb-2.0.6:20120707-201703.log (mongodb-2.0.6:20120707-201703.log,4.35 KB, text/plain)
2012-07-07 20:25 UTC, Arfrever Frehtes Taifersar Arahesis
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Arfrever Frehtes Taifersar Arahesis 2012-07-07 20:25:01 UTC
Created attachment 317532 [details]
mongodb-2.0.6:20120707-201703.log

In file included from /usr/include/boost/filesystem/operations.hpp:24:0,
                 from /usr/include/boost/filesystem/convenience.hpp:22,
                 from pch.h:83,
                 from pch.cpp:18:
/usr/include/boost/filesystem/config.hpp:16:5: error: #error Compiling Filesystem version 3 file with BOOST_FILESYSTEM_VERSION defined != 3
In file included from util/goodies.h:22:0,
                 from pch.h:161,
                 from pch.cpp:18:
util/concurrency/mutex.h: In function 'boost::xtime mongo::incxtimemillis(long long int)':
util/concurrency/mutex.h:32:31: error: 'TIME_UTC' is not a member of 'boost'


Boost.Filesystem Version 2 has been deleted in Boost 1.50.
boost::TIME_UTC has been renamed to boost::TIME_UTC_ in Boost 1.50.
Comment 2 Diego Elio Pettenò (RETIRED) gentoo-dev 2012-10-31 18:48:06 UTC
*** Bug 439182 has been marked as a duplicate of this bug. ***
Comment 3 Ultrabug gentoo-dev 2012-10-31 19:13:35 UTC
Just checking in, I will do my best to fix all mongodb bugs next week, I'm just too busy for now sorry.

Thanks for your help Johan & Diego
Comment 4 Ultrabug gentoo-dev 2012-11-04 14:26:02 UTC
All done along with a lot of other fixes :)

>=boost-1.50 users should use the new -r2 versions of the 2.x series of their choice.

*mongodb-2.2.1 (04 Nov 2012)
*mongodb-2.2.0-r2 (04 Nov 2012)
*mongodb-2.0.7-r2 (04 Nov 2012)
*mongodb-2.0.7-r1 (04 Nov 2012)

  04 Nov 2012; <alexys@gentoo.org> +files/mongodb-2.0-r1-boost-1.50.patch,
  -mongodb-2.0.7.ebuild, +mongodb-2.0.7-r1.ebuild, +mongodb-2.0.7-r2.ebuild,
  -mongodb-2.2.0.ebuild, +mongodb-2.2.0-r2.ebuild,
  +files/mongodb-2.2-r2-boost-1.50.patch, +mongodb-2.2.1.ebuild:
  Fix boost-1.50 build for 2.x series, fix #425190, use -r1 versions for older
  boost, use -r2 for >=1.50 boost. No longer depend on spidermonkey-1.7 for all
  the 2.x series wrt #390631. Note that v1.8.5 will be dropped later wrt
  #376983. Version bump fix #441586. Drop old stuff.
Comment 5 Hank Leininger 2012-11-04 16:16:49 UTC
Ultrabug, quick sanity check.  Last night I had created a patch for mongodb 2.2.x 
to fix the boost 1.51 issue based on this changeset: https://github.com/mongodb/mongo/commit/b3b1949de30b5dc1bde3d91aa197a8587d17d193

I was waiting for a coworker who actually uses mongodb to test my patched version before submitting my patch to this ticket for you.  And then you beat me to it ;)

*However* I noticed one difference when comparing my patch derived from the above, vs what you just checked in.  In this hunk of your patch:

--- a/src/mongo/tools/restore.cpp       2012-08-28 08:28:11.000000000 +0300
+++ b/src/mongo/tools/restore.cpp       2012-10-21 18:25:50.000000000 +0300
@@ -174,7 +174,7 @@
         log(2) << "drillDown: " << root.string() << endl;

         // skip hidden files and directories
-        if (root.leaf()[0] == '.' && root.leaf() != ".")
+        if (root.leaf().string()[0] == '.' && root.leaf() != ".")
             return;

         if ( is_directory( root ) ) {


What is in the upstream changeset above, is:

+        if (root.leaf().string()[0] == '.' && root.leaf().string() != ".")

And looking at other uses of .leaf(), they all appear to be .leaf().string() except for this one.  Now, it's entirely possible you did that on purpose and it's the correct change.  But in case it was a cut & paste oversight or something, I wanted to draw it to your attention.  Thanks!
Comment 6 Ultrabug gentoo-dev 2012-11-04 17:20:36 UTC
(In reply to comment #5)
> And looking at other uses of .leaf(), they all appear to be .leaf().string()
> except for this one.  Now, it's entirely possible you did that on purpose
> and it's the correct change.  But in case it was a cut & paste oversight or
> something, I wanted to draw it to your attention.  Thanks!

Hey Hank,

I overlooked it indeed, thanks for spotting this :) I fixed the patch in tree.

+  04 Nov 2012; <alexys@gentoo.org> files/mongodb-2.2-r2-boost-1.50.patch:
+  Correct 2.2.x boost-1.50 patch thanks to Hank Leininger for spotting.
+