[Pkg-mongodb-maintainers] [pkg-mongodb] 386/394: Fix FTBFS with GCC6

Apollon Oikonomopoulos apoikos at moszumanska.debian.org
Wed Sep 21 14:00:39 UTC 2016


This is an automated email from the git hooks/post-receive script.

apoikos pushed a commit to branch master
in repository pkg-mongodb.

commit 5383978201100de550f6333bb71d8c516d24cce1
Author: Apollon Oikonomopoulos <apoikos at debian.org>
Date:   Wed Jul 13 12:33:19 2016 +0300

    Fix FTBFS with GCC6
    
    Add a patch to disable newly-introduced warnings in GCC-6 and fix some
    pointer-to-bool casts which are invalid under C++11.
    
    Closes: #811606
---
 debian/patches/fix-gcc-6-ftbfs.patch | 76 ++++++++++++++++++++++++++++++++++++
 debian/patches/series                |  1 +
 2 files changed, 77 insertions(+)

diff --git a/debian/patches/fix-gcc-6-ftbfs.patch b/debian/patches/fix-gcc-6-ftbfs.patch
new file mode 100644
index 0000000..a87e144
--- /dev/null
+++ b/debian/patches/fix-gcc-6-ftbfs.patch
@@ -0,0 +1,76 @@
+Author: Apollon Oikonomopoulos <apoikos at debian.org>
+Description: Fix FTBFS with GCC6
+ Disable newly-introduced warnings in GCC6 (misleading-indentation,
+ deprecated-declarations and nonnull-compare) to have mongodb build with GCC6.
+ Also fix some C++11 pointer-to-bool casting errors by explicitly fetching the
+ pointers (cherry-picked upstream from 3.2).
+Last-Update: 2017-07-01
+Forwarded: no
+
+Index: mongodb-2.6.11/SConstruct
+===================================================================
+--- mongodb-2.6.11.orig/SConstruct
++++ mongodb-2.6.11/SConstruct
+@@ -842,6 +842,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 --git a/debian/patches/series b/debian/patches/series
index 220a5d9..c34c600 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -11,3 +11,4 @@ disable-warnings.patch
 fix-yaml-detection.patch
 add-option-to-disable-javascript.patch
 hardened-build.patch
+fix-gcc-6-ftbfs.patch

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-mongodb/pkg-mongodb.git



More information about the Pkg-mongodb-maintainers mailing list