Hi Apollon, On Thu, Jun 30, 2016 at 6:11 PM, Apollon Oikonomopoulos <apoi...@debian.org> wrote: > I think MongoDB 2.4 in unstable is already dead enough[1] that we should > drop it before it gets a chance to build against GCC 6 in a couple of > months. The attached patch fixes the FTBFS for the 2.6 package in > experimental by disabling the newly-introduced warnings and patching > (some) C++11 compatibility, but then again 2.6 will also be EOL by > October[1]. Yes, 2.6 has not too many time left. Still I think as a _first step_ it should be the next upload target. Reasons: - proven, Ubuntu uses 2.6.11 from experimental without problems, - easier and safer upgrade from the previous, 2.4 release. I attach a debdiff for it, which builds with GCC 5.x and 6.y as well. Please check it if you may have time. I plan to upload it in a week timeline, maybe sooner if I don't find any problems with it.
> Note that most (if not all) of these warnings seem to be fixed in the > 3.2 branch which IMHO should be the target version for Stretch. For the final Stretch release yes, 3.2 or 3.4 should be in the archives. > I started a discussion with Làszlo quite a while ago regarding an > updated MongoDB package, but didn't have the time to finish it, so I'd > be happy to join you as well :) I'm always open to continue that with you. Sorry for the slow response, I had big network problems at DebConf. This is not the last place where I say thanks to Martin F. Krafft and Jeffrey Walton for hardware donations, Wouter Verhelst and Gustavo Panizzo for installer related helping. I owe you guys! While my hardware problems don't end here, it's highly softened. Thanks, Laszlo/GCS
diff -Nur mongodb-2.6.11/debian/changelog mongodb-2.6.12/debian/changelog --- mongodb-2.6.11/debian/changelog 2016-03-15 14:33:09.000000000 +0000 +++ mongodb-2.6.12/debian/changelog 2016-07-12 20:17:34.000000000 +0000 @@ -1,3 +1,16 @@ +mongodb (1:2.6.12-1) unstable; urgency=low + + * New upstream release. + * Update Standards-Version to 3.9.8 . + * Upload to unstable. + + [ Apollon Oikonomopoulos <apoi...@debian.org> ] + * Fix building with GCC 6 (closes: #811606): + - disabling the newly-introduced warnings, + - patching (some) C++11 compatibility. + + -- Laszlo Boszormenyi (GCS) <g...@debian.org> Tue, 12 Jul 2016 16:20:17 +0000 + mongodb (1:2.6.11-1) experimental; urgency=medium * New upstream release (closes: #748490). diff -Nur mongodb-2.6.11/debian/control mongodb-2.6.12/debian/control --- mongodb-2.6.11/debian/control 2016-03-15 11:16:17.000000000 +0000 +++ mongodb-2.6.12/debian/control 2016-07-12 18:03:26.000000000 +0000 @@ -23,7 +23,7 @@ libv8-dev (>= 3.12) [!arm64 !ppc64el], python-pymongo, scons -Standards-Version: 3.9.7 +Standards-Version: 3.9.8 Vcs-Git: https://anonscm.debian.org/git/collab-maint/mongodb.git Vcs-Browser: https://anonscm.debian.org/cgit/collab-maint/mongodb.git/ Homepage: https://www.mongodb.org diff -Nur mongodb-2.6.11/debian/patches/fix-gcc-6-ftbfs.patch mongodb-2.6.12/debian/patches/fix-gcc-6-ftbfs.patch --- mongodb-2.6.11/debian/patches/fix-gcc-6-ftbfs.patch 1970-01-01 00:00:00.000000000 +0000 +++ mongodb-2.6.12/debian/patches/fix-gcc-6-ftbfs.patch 2016-07-12 18:02:36.000000000 +0000 @@ -0,0 +1,67 @@ +Index: mongodb-2.6.11/SConstruct +=================================================================== +--- mongodb-2.6.11.orig/SConstruct ++++ mongodb-2.6.11/SConstruct +@@ -858,6 +858,10 @@ if nix: + "-Wno-unused-variable", + "-Wno-maybe-uninitialized", + "-Wno-unknown-pragmas", ++ "-Wno-misleading-indentation", ++ "-Wno-deprecated-declarations", ++ "-Wno-nonnull-compare", ++ "-Wno-error=overflow", + "-Winvalid-pch"] ) + # env.Append( " -Wconversion" ) TODO: this doesn't really work yet + if linux or darwin: +Index: mongodb-2.6.11/src/mongo/db/exec/working_set.cpp +=================================================================== +--- mongodb-2.6.11.orig/src/mongo/db/exec/working_set.cpp ++++ mongodb-2.6.11/src/mongo/db/exec/working_set.cpp +@@ -119,7 +119,7 @@ namespace mongo { + } + + bool WorkingSetMember::hasComputed(const WorkingSetComputedDataType type) const { +- return _computed[type]; ++ return _computed[type].get(); + } + + const WorkingSetComputedData* WorkingSetMember::getComputed(const WorkingSetComputedDataType type) const { +Index: mongodb-2.6.11/src/mongo/db/pipeline/document_source_sort.cpp +=================================================================== +--- mongodb-2.6.11.orig/src/mongo/db/pipeline/document_source_sort.cpp ++++ mongodb-2.6.11/src/mongo/db/pipeline/document_source_sort.cpp +@@ -99,7 +99,7 @@ namespace mongo { + bool DocumentSourceSort::coalesce(const intrusive_ptr<DocumentSource> &pNextSource) { + if (!limitSrc) { + limitSrc = dynamic_cast<DocumentSourceLimit*>(pNextSource.get()); +- return limitSrc; // false if next is not a $limit ++ return limitSrc.get(); // false if next is not a $limit + } + else { + return limitSrc->coalesce(pNextSource); +Index: mongodb-2.6.11/src/mongo/db/pipeline/document_source_cursor.cpp +=================================================================== +--- mongodb-2.6.11.orig/src/mongo/db/pipeline/document_source_cursor.cpp ++++ mongodb-2.6.11/src/mongo/db/pipeline/document_source_cursor.cpp +@@ -141,7 +141,7 @@ namespace mongo { + + if (!_limit) { + _limit = dynamic_cast<DocumentSourceLimit*>(nextSource.get()); +- return _limit; // false if next is not a $limit ++ return _limit.get(); // false if next is not a $limit + } + else { + return _limit->coalesce(nextSource); +Index: mongodb-2.6.11/src/mongo/s/chunk_manager_targeter.cpp +=================================================================== +--- mongodb-2.6.11.orig/src/mongo/s/chunk_manager_targeter.cpp ++++ mongodb-2.6.11/src/mongo/s/chunk_manager_targeter.cpp +@@ -48,7 +48,7 @@ namespace mongo { + *errMsg = ex.toString(); + } + +- return config; ++ return config.get(); + } + + ChunkManagerTargeter::ChunkManagerTargeter() : diff -Nur mongodb-2.6.11/debian/patches/hardened-build.patch mongodb-2.6.12/debian/patches/hardened-build.patch --- mongodb-2.6.11/debian/patches/hardened-build.patch 2016-03-15 11:16:17.000000000 +0000 +++ mongodb-2.6.12/debian/patches/hardened-build.patch 2016-07-12 16:41:31.000000000 +0000 @@ -1,8 +1,8 @@ -Index: mongodb-2.6.11/SConstruct +Index: mongodb-2.6.12/SConstruct =================================================================== ---- mongodb-2.6.11.orig/SConstruct 2016-01-15 17:29:08.000000000 +0200 -+++ mongodb-2.6.11/SConstruct 2016-01-15 17:37:54.000000000 +0200 -@@ -474,7 +474,12 @@ +--- mongodb-2.6.12.orig/SConstruct 2016-01-15 17:29:08.000000000 +0200 ++++ mongodb-2.6.12/SConstruct 2016-01-15 17:37:54.000000000 +0200 +@@ -484,7 +484,12 @@ env = Environment( variables=env_vars, PCRE_VERSION='8.37', CONFIGUREDIR = '#' + scons_data_dir + '/sconf_temp', @@ -15,4 +15,4 @@ + LINKFLAGS=os.environ.get("LDFLAGS", "").split(), ) - if has_option("cache"): + # Report any unknown variables as an error. diff -Nur mongodb-2.6.11/debian/patches/series mongodb-2.6.12/debian/patches/series --- mongodb-2.6.11/debian/patches/series 2016-03-15 11:16:17.000000000 +0000 +++ mongodb-2.6.12/debian/patches/series 2016-07-12 18:03:10.000000000 +0000 @@ -11,3 +11,4 @@ fix-yaml-detection.patch add-option-to-disable-javascript.patch hardened-build.patch +fix-gcc-6-ftbfs.patch