From 11dbc8299826bf8401befae47ff1645c52eec84f Mon Sep 17 00:00:00 2001
From: amichelo <andrea.michelotti@lnf.infn.it>
Date: Fri, 12 May 2017 00:14:26 +0200
Subject: [PATCH] fix, disable compilation WAN by default, added support for
 C11

---
 CMakeLists.txt                                               | 2 +-
 ChaosDataService/ChaosDataService.cpp                        | 2 +-
 ChaosDataService/cache_system/CacheDriverMetricCollector.cpp | 4 ++--
 ChaosMetadataService/ChaosMetadataService.cpp                | 2 +-
 .../cache_system/CacheDriverMetricCollector.cpp              | 2 +-
 chaos/common/metadata_logging/MetadataLoggingManager.cpp     | 4 ++--
 config/CMakeChaos.txt                                        | 5 ++++-
 7 files changed, 12 insertions(+), 9 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 15eb49f46..a9f053467 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -10,7 +10,7 @@ option(CHAOS_MEMCACHE_TEST "Memcached test" OFF)
 option(CHAOS_ARCHITECTURE_TEST "Architecture tests" OFF)
 option(CHAOS_CDS "Chaos Data Service" ON)
 option(CHAOS_MDS "Chaos MetaData Service" ON)
-option(CHAOS_WAN "Chaos Wan Service" ON)
+option(CHAOS_WAN "Chaos Wan Service" OFF)
 option(CHAOS_AGENT "Chaos Agent Service" ON)
 option(CHAOS_DATA_EXPORT "Chaos Data Export" ON)
 option(CHAOS_EXAMPLES "Chaos Examples" ON)
diff --git a/ChaosDataService/ChaosDataService.cpp b/ChaosDataService/ChaosDataService.cpp
index 70fcd9088..f70552b93 100644
--- a/ChaosDataService/ChaosDataService.cpp
+++ b/ChaosDataService/ChaosDataService.cpp
@@ -89,7 +89,7 @@ void ChaosDataService::fillKVParameter(std::map<std::string, std::string>& kvmap
                                 boost::algorithm::is_any_of(":"),
                                 boost::algorithm::token_compress_on);
         // add key/value pair
-        kvmap.insert(make_pair(kv_splitted[0], kv_splitted[1]));
+        kvmap.insert(std::pair<std::string,std::string>(kv_splitted[0], kv_splitted[1]));
     }
     
 }
diff --git a/ChaosDataService/cache_system/CacheDriverMetricCollector.cpp b/ChaosDataService/cache_system/CacheDriverMetricCollector.cpp
index e2ca191f0..36e2c1441 100644
--- a/ChaosDataService/cache_system/CacheDriverMetricCollector.cpp
+++ b/ChaosDataService/cache_system/CacheDriverMetricCollector.cpp
@@ -42,7 +42,7 @@ wrapped_cache_driver(_wrapped_cache_driver){
 }
 
 CacheDriverMetricCollector::~CacheDriverMetricCollector() {
-    CHK_AND_DELETE_OBJ_POINTER(wrapped_cache_driver)
+  delete wrapped_cache_driver;
 }
 
 int CacheDriverMetricCollector::putData(void *element_key,
@@ -103,4 +103,4 @@ void CacheDriverMetricCollector::deinit() throw (chaos::CException) {
     InizializableService::deinitImplementation(wrapped_cache_driver,
                                                 wrapped_cache_driver->getName(),
                                                 __PRETTY_FUNCTION__);
-}
\ No newline at end of file
+}
diff --git a/ChaosMetadataService/ChaosMetadataService.cpp b/ChaosMetadataService/ChaosMetadataService.cpp
index 5099f1f6d..4bbdc5474 100644
--- a/ChaosMetadataService/ChaosMetadataService.cpp
+++ b/ChaosMetadataService/ChaosMetadataService.cpp
@@ -311,6 +311,6 @@ void ChaosMetadataService::fillKVParameter(std::map<std::string, std::string>& k
                                 boost::algorithm::is_any_of(":"),
                                 boost::algorithm::token_compress_on);
         // add key/value pair
-        kvmap.insert(make_pair(kv_splitted[0], kv_splitted[1]));
+        kvmap.insert(std::pair<std::string,std::string>(kv_splitted[0], kv_splitted[1]));
     }
 }
diff --git a/ChaosMetadataService/cache_system/CacheDriverMetricCollector.cpp b/ChaosMetadataService/cache_system/CacheDriverMetricCollector.cpp
index 0615597b9..78dc066f2 100644
--- a/ChaosMetadataService/cache_system/CacheDriverMetricCollector.cpp
+++ b/ChaosMetadataService/cache_system/CacheDriverMetricCollector.cpp
@@ -42,7 +42,7 @@ wrapped_cache_driver(_wrapped_cache_driver){
 }
 
 CacheDriverMetricCollector::~CacheDriverMetricCollector() {
-    DELETE_OBJ_POINTER(wrapped_cache_driver)
+    delete wrapped_cache_driver;
 }
 
 int CacheDriverMetricCollector::putData(void *element_key,
diff --git a/chaos/common/metadata_logging/MetadataLoggingManager.cpp b/chaos/common/metadata_logging/MetadataLoggingManager.cpp
index cce67f1c0..3cafd8de3 100644
--- a/chaos/common/metadata_logging/MetadataLoggingManager.cpp
+++ b/chaos/common/metadata_logging/MetadataLoggingManager.cpp
@@ -89,7 +89,7 @@ void MetadataLoggingManager::deinit() throw(chaos::CException) {
 
 void MetadataLoggingManager::registerChannel(const std::string& channel_alias,
                                              chaos::common::utility::ObjectInstancer<AbstractMetadataLogChannel> *instancer) {
-    map_instancer.insert(make_pair(channel_alias, instancer));
+    map_instancer.insert(std::pair<std::string, boost::shared_ptr< chaos::common::utility::ObjectInstancer<AbstractMetadataLogChannel > > >(channel_alias, boost::shared_ptr< chaos::common::utility::ObjectInstancer<AbstractMetadataLogChannel > > (instancer)));
 }
 
 AbstractMetadataLogChannel *MetadataLoggingManager::getChannel(const std::string channel_alias) {
@@ -101,7 +101,7 @@ AbstractMetadataLogChannel *MetadataLoggingManager::getChannel(const std::string
     
     AbstractMetadataLogChannel *result = map_instancer[channel_alias]->getInstance();
     result->setLoggingManager(this);
-    map_instance.insert(make_pair(result->getInstanceUUID(), result));
+    map_instance.insert(std::pair<std::string, AbstractMetadataLogChannel*> (result->getInstanceUUID(), result));
     
     MLM_INFO << "Creted new channel instance " << result->getInstanceUUID() << " for " << channel_alias;
     return result;
diff --git a/config/CMakeChaos.txt b/config/CMakeChaos.txt
index 1affc4090..015f746a9 100644
--- a/config/CMakeChaos.txt
+++ b/config/CMakeChaos.txt
@@ -437,10 +437,13 @@ IF (NOT CACHE_DIR)
   option(CHAOS_STATIC "Set static compilation" OFF)
   option(ENABLE_MEMCACHE "Enable Memcacahe" OFF)
   option(CHAOS_DEBUG "Enable Debug" ON)
+  option(CHAOS_ENABLE_C11 "Enable C11" OFF)
   option(CHAOS_DISABLE_EVENTFD "Disable EventFD" OFF)
   option(CHAOS_BUILD_CACHE "Keep third part sources" ON)
   option(CHAOS_BUILD_UNITSERVER "Automatically build an Unit Server that includes all CUs found in distribution" ON)
-
+  IF(CHAOS_ENABLE_C11)
+  set (CHAOS_CXX_FLAGS "${CHAOS_CXX_FLAGS} -std=c++11")	
+  ENDIF()
   IF( ( DEFINED ENV{CHAOS32}) OR CHAOS_FORCE_32 )
     MESG("Enabling 32 bit Compilation")
     set (BUILD_FORCE_32 1)
-- 
GitLab