From 1913ba5d8941206c7f5a2d555ae3e0b41d6c9296 Mon Sep 17 00:00:00 2001 From: Walter Reiner Date: Sat, 3 Feb 2018 21:35:57 +0000 Subject: [PATCH] Various fixes for building with gcc 7.2.1 Fix from Intense Coin project for -Werror=stringop-overflow error: https://github.com/valiant1x/intensecoin/issues/10#issuecomment-355038612 Fix from rocksdb upstream for missing includes: https://github.com/facebook/rocksdb/commit/816c1e30ca73615c75fc208ddcc4b05012b30951.diff Dirty fix from Ceph project for build error when jemalloc is present: https://www.spinics.net/lists/ceph-devel/msg31819.html --- CMakeLists.txt | 2 +- external/rocksdb/db/db_impl.cc | 2 +- external/rocksdb/db/db_iterator_test.cc | 2 ++ external/rocksdb/db/file_indexer.cc | 2 ++ external/rocksdb/db/version_builder.cc | 1 + external/rocksdb/db/write_callback_test.cc | 1 + external/rocksdb/include/rocksdb/env.h | 1 + external/rocksdb/java/rocksjni/portal.h | 1 + external/rocksdb/java/rocksjni/rocksjni.cc | 1 + external/rocksdb/tools/ldb_cmd.cc | 1 + external/rocksdb/util/dynamic_bloom_test.cc | 1 + external/rocksdb/util/fault_injection_test_env.cc | 1 + external/rocksdb/util/sync_point.cc | 1 + external/rocksdb/util/thread_local.h | 1 + external/rocksdb/util/xfunc.h | 1 + external/rocksdb/utilities/backupable/backupable_db.cc | 1 + external/rocksdb/utilities/persistent_cache/block_cache_tier_file.cc | 1 + external/rocksdb/utilities/persistent_cache/hash_table_evictable.h | 1 + external/rocksdb/utilities/persistent_cache/volatile_tier_impl.cc | 1 + external/rocksdb/utilities/transactions/optimistic_transaction_test.cc | 1 + external/rocksdb/utilities/transactions/transaction_test.cc | 1 + 21 files changed, 23 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index e727d64..fe34f2d 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -53,7 +53,7 @@ else() else() set(ARCH_FLAG "-march=${ARCH}") endif() - set(WARNINGS "-Wall -Wextra -Wpointer-arith -Wundef -Wvla -Wwrite-strings -Werror -Wno-error=extra -Wno-error=unused-function -Wno-error=deprecated-declarations -Wno-error=sign-compare -Wno-error=strict-aliasing -Wno-error=type-limits -Wno-unused-parameter -Wno-error=unused-variable -Wno-error=undef -Wno-error=uninitialized -Wno-error=unused-result") + set(WARNINGS "-Wall -Wextra -Wpointer-arith -Wundef -Wvla -Wwrite-strings -Wno-error=extra -Wno-error=unused-function -Wno-error=deprecated-declarations -Wno-error=sign-compare -Wno-error=strict-aliasing -Wno-error=type-limits -Wno-unused-parameter -Wno-error=unused-variable -Wno-error=undef -Wno-error=uninitialized -Wno-error=unused-result") if(CMAKE_C_COMPILER_ID STREQUAL "Clang") set(WARNINGS "${WARNINGS} -Wno-error=mismatched-tags -Wno-error=null-conversion -Wno-overloaded-shift-op-parentheses -Wno-error=shift-count-overflow -Wno-error=tautological-constant-out-of-range-compare -Wno-error=unused-private-field -Wno-error=unneeded-internal-declaration -Wno-error=unused-function -Wno-error=missing-braces") else() diff --git a/external/rocksdb/db/db_impl.cc b/external/rocksdb/db/db_impl.cc index f750ef8..727b451 100755 --- a/external/rocksdb/db/db_impl.cc +++ b/external/rocksdb/db/db_impl.cc @@ -592,7 +592,7 @@ static void DumpMallocStats(std::string* stats) { std::unique_ptr buf{new char[kMallocStatusLen + 1]}; mstat.cur = buf.get(); mstat.end = buf.get() + kMallocStatusLen; - malloc_stats_print(GetJemallocStatus, &mstat, ""); + //malloc_stats_print(GetJemallocStatus, &mstat, ""); stats->append(buf.get()); #endif // ROCKSDB_JEMALLOC } diff --git a/external/rocksdb/db/db_iterator_test.cc b/external/rocksdb/db/db_iterator_test.cc index a971835..069eab6 100755 --- a/external/rocksdb/db/db_iterator_test.cc +++ b/external/rocksdb/db/db_iterator_test.cc @@ -7,6 +7,8 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. See the AUTHORS file for names of contributors. +#include + #include "db/db_test_util.h" #include "port/stack_trace.h" #include "rocksdb/iostats_context.h" diff --git a/external/rocksdb/db/file_indexer.cc b/external/rocksdb/db/file_indexer.cc index 9b31c2b..dc614a8 100755 --- a/external/rocksdb/db/file_indexer.cc +++ b/external/rocksdb/db/file_indexer.cc @@ -7,6 +7,8 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. See the AUTHORS file for names of contributors. +#include + #include "db/file_indexer.h" #include #include "rocksdb/comparator.h" diff --git a/external/rocksdb/db/version_builder.cc b/external/rocksdb/db/version_builder.cc index 2837686..d4c9c2f 100755 --- a/external/rocksdb/db/version_builder.cc +++ b/external/rocksdb/db/version_builder.cc @@ -13,6 +13,7 @@ #define __STDC_FORMAT_MACROS #endif +#include #include #include #include diff --git a/external/rocksdb/db/write_callback_test.cc b/external/rocksdb/db/write_callback_test.cc index 33aaab7..8e167b4 100755 --- a/external/rocksdb/db/write_callback_test.cc +++ b/external/rocksdb/db/write_callback_test.cc @@ -5,6 +5,7 @@ #ifndef ROCKSDB_LITE +#include #include #include #include diff --git a/external/rocksdb/include/rocksdb/env.h b/external/rocksdb/include/rocksdb/env.h index 2d33da2..57212d0 100755 --- a/external/rocksdb/include/rocksdb/env.h +++ b/external/rocksdb/include/rocksdb/env.h @@ -21,6 +21,7 @@ #include #include #include +#include #include #include #include "rocksdb/status.h" diff --git a/external/rocksdb/java/rocksjni/portal.h b/external/rocksdb/java/rocksjni/portal.h index 4d7e502..e12a9ee 100755 --- a/external/rocksdb/java/rocksjni/portal.h +++ b/external/rocksdb/java/rocksjni/portal.h @@ -11,6 +11,7 @@ #define JAVA_ROCKSJNI_PORTAL_H_ #include +#include #include #include #include diff --git a/external/rocksdb/java/rocksjni/rocksjni.cc b/external/rocksdb/java/rocksjni/rocksjni.cc index 4c68178..6712083 100755 --- a/external/rocksdb/java/rocksjni/rocksjni.cc +++ b/external/rocksdb/java/rocksjni/rocksjni.cc @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include diff --git a/external/rocksdb/tools/ldb_cmd.cc b/external/rocksdb/tools/ldb_cmd.cc index b56eb4c..66ae9dd 100755 --- a/external/rocksdb/tools/ldb_cmd.cc +++ b/external/rocksdb/tools/ldb_cmd.cc @@ -40,6 +40,7 @@ #include #include #include +#include namespace rocksdb { diff --git a/external/rocksdb/util/dynamic_bloom_test.cc b/external/rocksdb/util/dynamic_bloom_test.cc index 5b8ec74..0886f79 100755 --- a/external/rocksdb/util/dynamic_bloom_test.cc +++ b/external/rocksdb/util/dynamic_bloom_test.cc @@ -21,6 +21,7 @@ int main() { #include #include #include +#include #include #include "dynamic_bloom.h" diff --git a/external/rocksdb/util/fault_injection_test_env.cc b/external/rocksdb/util/fault_injection_test_env.cc index 9898a0d..2123a5c 100755 --- a/external/rocksdb/util/fault_injection_test_env.cc +++ b/external/rocksdb/util/fault_injection_test_env.cc @@ -13,6 +13,7 @@ #include "util/fault_injection_test_env.h" #include +#include namespace rocksdb { diff --git a/external/rocksdb/util/sync_point.cc b/external/rocksdb/util/sync_point.cc index 2aba000..f0d84bd 100755 --- a/external/rocksdb/util/sync_point.cc +++ b/external/rocksdb/util/sync_point.cc @@ -5,6 +5,7 @@ #include "util/sync_point.h" #include +#include #include "port/port.h" #include "util/random.h" diff --git a/external/rocksdb/util/thread_local.h b/external/rocksdb/util/thread_local.h index 08eabd0..de31018 100755 --- a/external/rocksdb/util/thread_local.h +++ b/external/rocksdb/util/thread_local.h @@ -9,6 +9,7 @@ #pragma once +#include #include #include #include diff --git a/external/rocksdb/util/xfunc.h b/external/rocksdb/util/xfunc.h index e19a03f..7c6482c 100755 --- a/external/rocksdb/util/xfunc.h +++ b/external/rocksdb/util/xfunc.h @@ -4,6 +4,7 @@ // of patent rights can be found in the PATENTS file in the same directory. #pragma once +#include #include #include diff --git a/external/rocksdb/utilities/backupable/backupable_db.cc b/external/rocksdb/utilities/backupable/backupable_db.cc index fb2a68b..67cde26 100755 --- a/external/rocksdb/utilities/backupable/backupable_db.cc +++ b/external/rocksdb/utilities/backupable/backupable_db.cc @@ -26,6 +26,7 @@ #define __STDC_FORMAT_MACROS #endif // __STDC_FORMAT_MACROS +#include #include #include #include diff --git a/external/rocksdb/utilities/persistent_cache/block_cache_tier_file.cc b/external/rocksdb/utilities/persistent_cache/block_cache_tier_file.cc index ef77252..99ffb7b 100755 --- a/external/rocksdb/utilities/persistent_cache/block_cache_tier_file.cc +++ b/external/rocksdb/utilities/persistent_cache/block_cache_tier_file.cc @@ -6,6 +6,7 @@ #include "utilities/persistent_cache/block_cache_tier_file.h" +#include #include #include #include diff --git a/external/rocksdb/utilities/persistent_cache/hash_table_evictable.h b/external/rocksdb/utilities/persistent_cache/hash_table_evictable.h index da13c0e..4fd97e2 100755 --- a/external/rocksdb/utilities/persistent_cache/hash_table_evictable.h +++ b/external/rocksdb/utilities/persistent_cache/hash_table_evictable.h @@ -7,6 +7,7 @@ #ifndef ROCKSDB_LITE +#include #include "util/random.h" #include "utilities/persistent_cache/hash_table.h" #include "utilities/persistent_cache/lrulist.h" diff --git a/external/rocksdb/utilities/persistent_cache/volatile_tier_impl.cc b/external/rocksdb/utilities/persistent_cache/volatile_tier_impl.cc index aca9fca..87dbd37 100755 --- a/external/rocksdb/utilities/persistent_cache/volatile_tier_impl.cc +++ b/external/rocksdb/utilities/persistent_cache/volatile_tier_impl.cc @@ -7,6 +7,7 @@ #include "utilities/persistent_cache/volatile_tier_impl.h" +#include #include namespace rocksdb { diff --git a/external/rocksdb/utilities/transactions/optimistic_transaction_test.cc b/external/rocksdb/utilities/transactions/optimistic_transaction_test.cc index fd90f24..2ce0c24 100755 --- a/external/rocksdb/utilities/transactions/optimistic_transaction_test.cc +++ b/external/rocksdb/utilities/transactions/optimistic_transaction_test.cc @@ -5,6 +5,7 @@ #ifndef ROCKSDB_LITE +#include #include #include diff --git a/external/rocksdb/utilities/transactions/transaction_test.cc b/external/rocksdb/utilities/transactions/transaction_test.cc index 5d8e40c..9966649 100755 --- a/external/rocksdb/utilities/transactions/transaction_test.cc +++ b/external/rocksdb/utilities/transactions/transaction_test.cc @@ -5,6 +5,7 @@ #ifndef ROCKSDB_LITE +#include #include #include -- 2.16.1