You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mesos.apache.org by ne...@apache.org on 2017/05/17 17:48:35 UTC

[3/6] mesos git commit: Updated GMock/GTest to version 1.8.0.

Updated GMock/GTest to version 1.8.0.

This will fix various issues that occured with version 1.7.0.
As GTest is now using 'std::tuple' instead of 'std::tr1::tuple', some
test cases have been updated accordingly.

Review: https://reviews.apache.org/r/58349/


Project: http://git-wip-us.apache.org/repos/asf/mesos/repo
Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/95455644
Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/95455644
Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/95455644

Branch: refs/heads/master
Commit: 954556444205d6e25e0f7f597eaa5d022c4e41d9
Parents: d4fcff0
Author: Jan Schlicht <ja...@mesosphere.io>
Authored: Wed May 17 10:21:54 2017 -0700
Committer: Neil Conway <ne...@gmail.com>
Committed: Wed May 17 10:47:54 2017 -0700

----------------------------------------------------------------------
 3rdparty/CMakeLists.txt                         |  24 ++++++++---------
 3rdparty/Makefile.am                            |  11 ++++----
 3rdparty/cmake/Versions.cmake                   |   2 +-
 3rdparty/gmock-1.7.0.tar.gz                     | Bin 1907242 -> 0 bytes
 3rdparty/googletest-release-1.8.0.tar.gz        | Bin 0 -> 1281617 bytes
 3rdparty/versions.am                            |   2 +-
 LICENSE                                         |   2 +-
 configure.ac                                    |   3 ---
 src/Makefile.am                                 |   5 ++--
 src/tests/cmake/MesosTestsConfigure.cmake       |   2 +-
 .../linux_capabilities_isolator_tests.cpp       |   2 +-
 src/tests/fetcher_cache_tests.cpp               |   2 +-
 src/tests/hierarchical_allocator_tests.cpp      |  26 +++++++++----------
 src/tests/scheduler_tests.cpp                   |   6 ++---
 src/tests/sorter_tests.cpp                      |  22 ++++++++--------
 support/mesos-style.py                          |   4 +--
 support/mesos-tidy/entrypoint.sh                |   2 +-
 17 files changed, 57 insertions(+), 58 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mesos/blob/95455644/3rdparty/CMakeLists.txt
----------------------------------------------------------------------
diff --git a/3rdparty/CMakeLists.txt b/3rdparty/CMakeLists.txt
index cb118f6..03f314f 100755
--- a/3rdparty/CMakeLists.txt
+++ b/3rdparty/CMakeLists.txt
@@ -282,7 +282,7 @@ list(
 include(StoutConfigure)
 include(StoutTestsConfigure)
 
-set(GMOCK_URL    ${FETCH_URL}/gmock-${GMOCK_VERSION}.tar.gz)
+set(GOOGLETEST_URL ${FETCH_URL}/googletest-release-${GOOGLETEST_VERSION}.tar.gz)
 # NOTE: The Windows version of protobuf is patched and only available in the
 # 3rdparty repo, not the local repo.
 if (NOT WIN32)
@@ -291,12 +291,12 @@ elseif (WIN32)
   set(PROTOBUF_URL ${3RDPARTY_DEPENDENCIES}/protobuf-${PROTOBUF_VERSION}.tar.gz)
 endif (NOT WIN32)
 
-# NOTE: `gmock` is "installed" into a lib directory, see "NOTE: (fix for
+# NOTE: `googletest` is "installed" into a lib directory, see "NOTE: (fix for
 # MESOS-3250)" comment above for explanation.
 if (NOT WIN32)
-  set(GMOCK_INSTALL_CMD mkdir -p ${GMOCK_ROOT}-lib/lib && cp -r ${GMOCK_ROOT}-build/. ${GMOCK_ROOT}-lib/lib && cp -r ${GMOCK_ROOT}-build/gtest/. ${GMOCK_ROOT}-lib/lib)
+  set(GOOGLETEST_INSTALL_CMD mkdir -p ${GOOGLETEST_ROOT}-lib/lib && cp -r ${GOOGLETEST_ROOT}-build/googlemock/. ${GOOGLETEST_ROOT}-lib/lib)
 elseif (WIN32)
-  set(GMOCK_INSTALL_CMD ${CMAKE_NOOP})
+  set(GOOGLETEST_INSTALL_CMD ${CMAKE_NOOP})
 endif (NOT WIN32)
 
 if (NOT WIN32)
@@ -313,17 +313,17 @@ endif (NOT WIN32)
 # NOTE: An implicit consequence of the following code is that on non-Windows
 # platforms, gmock and gtest are assumed to be CMake projects, and are thus
 # configured and built using default CMake commands. The reason is that on
-# non-Windows platforms, we choose to set `GMOCK_CONFIG_CMD` and
-# `GMOCK_BUILD_CMD` with stub commands, which cause CMake to "fall back" to
+# non-Windows platforms, we choose to set `GOOGLETEST_CONFIG_CMD` and
+# `GOOGLETEST_BUILD_CMD` with stub commands, which cause CMake to "fall back" to
 # trying to build them with CMake.
 ExternalProject_Add(
-  ${GMOCK_TARGET}
-  PREFIX            ${GMOCK_CMAKE_ROOT}
+  ${GOOGLETEST_TARGET}
+  PREFIX            ${GOOGLETEST_CMAKE_ROOT}
   CMAKE_ARGS        -DBUILD_SHARED_LIBS=FALSE
-  CONFIGURE_COMMAND ${GMOCK_CONFIG_CMD}
-  BUILD_COMMAND     ${GMOCK_BUILD_CMD}
-  INSTALL_COMMAND   ${GMOCK_INSTALL_CMD}
-  URL               ${GMOCK_URL}
+  CONFIGURE_COMMAND ${GOOGLETEST_CONFIG_CMD}
+  BUILD_COMMAND     ${GOOGLETEST_BUILD_CMD}
+  INSTALL_COMMAND   ${GOOGLETEST_INSTALL_CMD}
+  URL               ${GOOGLETEST_URL}
   )
 
 ExternalProject_Add(

http://git-wip-us.apache.org/repos/asf/mesos/blob/95455644/3rdparty/Makefile.am
----------------------------------------------------------------------
diff --git a/3rdparty/Makefile.am b/3rdparty/Makefile.am
index 61d832b2..8706e78 100644
--- a/3rdparty/Makefile.am
+++ b/3rdparty/Makefile.am
@@ -45,9 +45,10 @@ include versions.am
 BOOST = boost-$(BOOST_VERSION)
 ELFIO = elfio-$(ELFIO_VERSION)
 GLOG = glog-$(GLOG_VERSION)
-GMOCK = gmock-$(GMOCK_VERSION)
+GOOGLETEST = googletest-release-${GOOGLETEST_VERSION}
+GMOCK = $(GOOGLETEST)/googlemock
 GPERFTOOLS = gperftools-$(GPERFTOOLS_VERSION)
-GTEST = $(GMOCK)/gtest
+GTEST = $(GOOGLETEST)/googletest
 HTTP_PARSER = http-parser-$(HTTP_PARSER_VERSION)
 LEVELDB = leveldb-$(LEVELDB_VERSION)
 LIBEV = libev-$(LIBEV_VERSION)
@@ -63,7 +64,7 @@ EXTRA_DIST =		\
   $(BOOST).tar.gz	\
   $(ELFIO).tar.gz	\
   $(GLOG).tar.gz	\
-  $(GMOCK).tar.gz	\
+  $(GOOGLETEST).tar.gz	\
   $(GPERFTOOLS).tar.gz	\
   $(HTTP_PARSER).tar.gz	\
   $(LEVELDB).tar.gz	\
@@ -107,7 +108,7 @@ CLEAN_EXTRACTED =	\
   $(BOOST)		\
   $(ELFIO)		\
   $(GLOG)		\
-  $(GMOCK)		\
+  $(GOOGLETEST)		\
   $(GPERFTOOLS)		\
   $(HTTP_PARSER)	\
   $(LEVELDB)		\
@@ -277,7 +278,7 @@ libgmock_la_CPPFLAGS =			\
   -I$(GTEST)/include -I$(GTEST) -I$(GTEST)/src	\
   -I$(GMOCK)/include -I$(GMOCK) -I$(GMOCK)/src
 
-  gmock_sources.cc: $(GMOCK)-stamp
+  gmock_sources.cc: $(GOOGLETEST)-stamp
 
 $(GMOCK)-build-stamp: libgmock.la
 	touch $@

http://git-wip-us.apache.org/repos/asf/mesos/blob/95455644/3rdparty/cmake/Versions.cmake
----------------------------------------------------------------------
diff --git a/3rdparty/cmake/Versions.cmake b/3rdparty/cmake/Versions.cmake
index 728f88f..d3f572c 100644
--- a/3rdparty/cmake/Versions.cmake
+++ b/3rdparty/cmake/Versions.cmake
@@ -1,7 +1,7 @@
 set(BOOST_VERSION       "1.53.0")
 set(CURL_VERSION        "7.43.0")
 set(ELFIO_VERSION       "3.2")
-set(GMOCK_VERSION       "1.7.0")
+set(GOOGLETEST_VERSION  "1.8.0")
 set(HTTP_PARSER_VERSION "2.6.2")
 set(LEVELDB_VERSION     "1.19")
 set(LIBAPR_VERSION      "1.5.2")

http://git-wip-us.apache.org/repos/asf/mesos/blob/95455644/3rdparty/gmock-1.7.0.tar.gz
----------------------------------------------------------------------
diff --git a/3rdparty/gmock-1.7.0.tar.gz b/3rdparty/gmock-1.7.0.tar.gz
deleted file mode 100644
index 09f5ea3..0000000
Binary files a/3rdparty/gmock-1.7.0.tar.gz and /dev/null differ

http://git-wip-us.apache.org/repos/asf/mesos/blob/95455644/3rdparty/googletest-release-1.8.0.tar.gz
----------------------------------------------------------------------
diff --git a/3rdparty/googletest-release-1.8.0.tar.gz b/3rdparty/googletest-release-1.8.0.tar.gz
new file mode 100644
index 0000000..a40df33
Binary files /dev/null and b/3rdparty/googletest-release-1.8.0.tar.gz differ

http://git-wip-us.apache.org/repos/asf/mesos/blob/95455644/3rdparty/versions.am
----------------------------------------------------------------------
diff --git a/3rdparty/versions.am b/3rdparty/versions.am
index b814470..55e170a 100644
--- a/3rdparty/versions.am
+++ b/3rdparty/versions.am
@@ -22,7 +22,7 @@
 BOOST_VERSION = 1.53.0
 ELFIO_VERSION = 3.2
 GLOG_VERSION = 0.3.3
-GMOCK_VERSION = 1.7.0
+GOOGLETEST_VERSION = 1.8.0
 GPERFTOOLS_VERSION = 2.5
 HTTP_PARSER_VERSION = 2.6.2
 LEVELDB_VERSION = 1.19

http://git-wip-us.apache.org/repos/asf/mesos/blob/95455644/LICENSE
----------------------------------------------------------------------
diff --git a/LICENSE b/LICENSE
index 512b089..1b3e72c 100644
--- a/LICENSE
+++ b/LICENSE
@@ -394,7 +394,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 
 ======================================================================
-For gmock-1.7.0 (3rdparty/gmock-1.7.0.tar.gz):
+For googletest-release-1.8.0 (3rdparty/googletest-release-1.8.0.tar.gz):
 ======================================================================
 
 Copyright 2008, Google Inc.

http://git-wip-us.apache.org/repos/asf/mesos/blob/95455644/configure.ac
----------------------------------------------------------------------
diff --git a/configure.ac b/configure.ac
index fe5b20b..8c17307 100644
--- a/configure.ac
+++ b/configure.ac
@@ -542,9 +542,6 @@ case "$host_os" in
     if test "x$ax_cv_cxx_compiler_vendor" = "xclang"; then
       CXXFLAGS="$CXXFLAGS -stdlib=libc++"
     fi
-
-    # GTEST on OSX and FreeBSD needs its own tr1 tuple.
-    CXXFLAGS="$CXXFLAGS -DGTEST_USE_OWN_TR1_TUPLE=1 -DGTEST_LANG_CXX11"
     ;;
   freebsd* )
     # If we're using clang, we need to pass -stdlib=libc++ too.

http://git-wip-us.apache.org/repos/asf/mesos/blob/95455644/src/Makefile.am
----------------------------------------------------------------------
diff --git a/src/Makefile.am b/src/Makefile.am
index 1522c5b..434a00e 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -35,8 +35,9 @@ STOUT = 3rdparty/stout
 BOOST = 3rdparty/boost-$(BOOST_VERSION)
 ELFIO = 3rdparty/elfio-$(ELFIO_VERSION)
 GLOG = 3rdparty/glog-$(GLOG_VERSION)
-GMOCK = 3rdparty/gmock-$(GMOCK_VERSION)
-GTEST = $(GMOCK)/gtest
+GOOGLETEST = 3rdparty/googletest-release-$(GOOGLETEST_VERSION)
+GMOCK = $(GOOGLETEST)/googlemock
+GTEST = $(GOOGLETEST)/googletest
 PROTOBUF = 3rdparty/protobuf-$(PROTOBUF_VERSION)
 PICOJSON = 3rdparty/picojson-$(PICOJSON_VERSION)
 NVML = 3rdparty/nvml-$(NVML_VERSION)

http://git-wip-us.apache.org/repos/asf/mesos/blob/95455644/src/tests/cmake/MesosTestsConfigure.cmake
----------------------------------------------------------------------
diff --git a/src/tests/cmake/MesosTestsConfigure.cmake b/src/tests/cmake/MesosTestsConfigure.cmake
index 62e2741..e06789c 100644
--- a/src/tests/cmake/MesosTestsConfigure.cmake
+++ b/src/tests/cmake/MesosTestsConfigure.cmake
@@ -52,7 +52,7 @@ add_definitions(-DSBINDIR="${S_BIN_DIR}")
 set(MESOS_TESTS_DEPENDENCIES
   ${MESOS_TESTS_DEPENDENCIES}
   ${MESOS_TARGET}
-  ${GMOCK_TARGET}
+  ${GOOGLETEST_TARGET}
   )
 
 # DEFINE THIRD-PARTY INCLUDE DIRECTORIES. Tells compiler toolchain where to get

http://git-wip-us.apache.org/repos/asf/mesos/blob/95455644/src/tests/containerizer/linux_capabilities_isolator_tests.cpp
----------------------------------------------------------------------
diff --git a/src/tests/containerizer/linux_capabilities_isolator_tests.cpp b/src/tests/containerizer/linux_capabilities_isolator_tests.cpp
index f9d2a53..40376a0 100644
--- a/src/tests/containerizer/linux_capabilities_isolator_tests.cpp
+++ b/src/tests/containerizer/linux_capabilities_isolator_tests.cpp
@@ -167,7 +167,7 @@ ACTION_TEMPLATE(PushTaskStatus,
                 HAS_1_TEMPLATE_PARAMS(int, k),
                 AND_1_VALUE_PARAMS(statuses))
 {
-  statuses->put(std::tr1::get<k>(args));
+  statuses->put(std::get<k>(args));
 }
 
 

http://git-wip-us.apache.org/repos/asf/mesos/blob/95455644/src/tests/fetcher_cache_tests.cpp
----------------------------------------------------------------------
diff --git a/src/tests/fetcher_cache_tests.cpp b/src/tests/fetcher_cache_tests.cpp
index 3bd63ed..c6ba79a 100644
--- a/src/tests/fetcher_cache_tests.cpp
+++ b/src/tests/fetcher_cache_tests.cpp
@@ -479,7 +479,7 @@ ACTION_TEMPLATE(PushIndexedTaskStatus,
                 HAS_1_TEMPLATE_PARAMS(int, k),
                 AND_1_VALUE_PARAMS(tasks))
 {
-  const TaskStatus& taskStatus = ::std::tr1::get<k>(args);
+  const TaskStatus& taskStatus = ::std::get<k>(args);
   Try<int> taskId = numify<int>(taskStatus.task_id().value());
   ASSERT_SOME(taskId);
   Queue<TaskStatus> queue = (tasks)[taskId.get()].statusQueue;

http://git-wip-us.apache.org/repos/asf/mesos/blob/95455644/src/tests/hierarchical_allocator_tests.cpp
----------------------------------------------------------------------
diff --git a/src/tests/hierarchical_allocator_tests.cpp b/src/tests/hierarchical_allocator_tests.cpp
index 08180b9..6dee229 100644
--- a/src/tests/hierarchical_allocator_tests.cpp
+++ b/src/tests/hierarchical_allocator_tests.cpp
@@ -4805,7 +4805,7 @@ TEST_P(HierarchicalAllocatorTestWithParam, AllocateSharedResources)
 
 class HierarchicalAllocator_BENCHMARK_Test
   : public HierarchicalAllocatorTestBase,
-    public WithParamInterface<std::tr1::tuple<size_t, size_t>> {};
+    public WithParamInterface<std::tuple<size_t, size_t>> {};
 
 
 // The Hierarchical Allocator benchmark tests are parameterized
@@ -4823,8 +4823,8 @@ INSTANTIATE_TEST_CASE_P(
 // add a framework after the slaves are added.
 TEST_P(HierarchicalAllocator_BENCHMARK_Test, AddAndUpdateSlave)
 {
-  size_t slaveCount = std::tr1::get<0>(GetParam());
-  size_t frameworkCount = std::tr1::get<1>(GetParam());
+  size_t slaveCount = std::get<0>(GetParam());
+  size_t frameworkCount = std::get<1>(GetParam());
 
   vector<SlaveInfo> slaves;
   slaves.reserve(slaveCount);
@@ -4938,8 +4938,8 @@ TEST_P(HierarchicalAllocator_BENCHMARK_Test, AddAndUpdateSlave)
 // subsequent offers.
 TEST_P(HierarchicalAllocator_BENCHMARK_Test, DeclineOffers)
 {
-  size_t slaveCount = std::tr1::get<0>(GetParam());
-  size_t frameworkCount = std::tr1::get<1>(GetParam());
+  size_t slaveCount = std::get<0>(GetParam());
+  size_t frameworkCount = std::get<1>(GetParam());
 
   // Pause the clock because we want to manually drive the allocations.
   Clock::pause();
@@ -5092,8 +5092,8 @@ static Labels createLabels(
 // TODO(neilc): Refactor to reduce code duplication with `DeclineOffers` test.
 TEST_P(HierarchicalAllocator_BENCHMARK_Test, ResourceLabels)
 {
-  size_t slaveCount = std::tr1::get<0>(GetParam());
-  size_t frameworkCount = std::tr1::get<1>(GetParam());
+  size_t slaveCount = std::get<0>(GetParam());
+  size_t frameworkCount = std::get<1>(GetParam());
 
   // Pause the clock because we want to manually drive the allocations.
   Clock::pause();
@@ -5266,8 +5266,8 @@ TEST_P(HierarchicalAllocator_BENCHMARK_Test, ResourceLabels)
 // on allocation times.
 TEST_P(HierarchicalAllocator_BENCHMARK_Test, SuppressOffers)
 {
-  size_t agentCount = std::tr1::get<0>(GetParam());
-  size_t frameworkCount = std::tr1::get<1>(GetParam());
+  size_t agentCount = std::get<0>(GetParam());
+  size_t frameworkCount = std::get<1>(GetParam());
 
   // Pause the clock because we want to manually drive the allocations.
   Clock::pause();
@@ -5423,8 +5423,8 @@ TEST_P(HierarchicalAllocator_BENCHMARK_Test, SuppressOffers)
 // TODO(bmahler): Add allocations to this benchmark.
 TEST_P(HierarchicalAllocator_BENCHMARK_Test, Metrics)
 {
-  size_t slaveCount = std::tr1::get<0>(GetParam());
-  size_t frameworkCount = std::tr1::get<1>(GetParam());
+  size_t slaveCount = std::get<0>(GetParam());
+  size_t frameworkCount = std::get<1>(GetParam());
 
   // Pause the clock because we want to manually drive the allocations.
   Clock::pause();
@@ -5503,8 +5503,8 @@ TEST_P(HierarchicalAllocator_BENCHMARK_Test, Metrics)
 // batching (MESOS-6904).
 TEST_P(HierarchicalAllocator_BENCHMARK_Test, AllocatorBacklog)
 {
-  size_t agentCount = std::tr1::get<0>(GetParam());
-  size_t frameworkCount = std::tr1::get<1>(GetParam());
+  size_t agentCount = std::get<0>(GetParam());
+  size_t frameworkCount = std::get<1>(GetParam());
 
   // Pause the clock because we want to manually drive the allocations.
   Clock::pause();

http://git-wip-us.apache.org/repos/asf/mesos/blob/95455644/src/tests/scheduler_tests.cpp
----------------------------------------------------------------------
diff --git a/src/tests/scheduler_tests.cpp b/src/tests/scheduler_tests.cpp
index 0f5d9ad..d23a393 100644
--- a/src/tests/scheduler_tests.cpp
+++ b/src/tests/scheduler_tests.cpp
@@ -1828,7 +1828,7 @@ TEST_P(SchedulerReconcileTasks_BENCHMARK_Test, SchedulerDriver)
 // or disabled.
 class SchedulerSSLTest
   : public MesosTest,
-    public WithParamInterface<std::tr1::tuple<ContentType, string>>
+    public WithParamInterface<std::tuple<ContentType, string>>
 {
 // These test setup/teardown methods are only needed when compiled with SSL.
 #ifdef USE_SSL_SOCKET
@@ -1837,7 +1837,7 @@ protected:
   {
     MesosTest::SetUp();
 
-    if (std::tr1::get<1>(GetParam()) == "https") {
+    if (std::get<1>(GetParam()) == "https") {
       generate_keys_and_certs();
       set_environment_variables({
           {"LIBPROCESS_SSL_ENABLED", "true"},
@@ -1918,7 +1918,7 @@ TEST_P(SchedulerSSLTest, RunTaskAndTeardown)
     .WillOnce(FutureSatisfy(&connected))
     .WillRepeatedly(Return()); // Ignore future invocations.
 
-  ContentType contentType = std::tr1::get<0>(GetParam());
+  ContentType contentType = std::get<0>(GetParam());
 
   v1::scheduler::TestMesos mesos(master.get()->pid, contentType, scheduler);
 

http://git-wip-us.apache.org/repos/asf/mesos/blob/95455644/src/tests/sorter_tests.cpp
----------------------------------------------------------------------
diff --git a/src/tests/sorter_tests.cpp b/src/tests/sorter_tests.cpp
index 8e7ff79..2389664 100644
--- a/src/tests/sorter_tests.cpp
+++ b/src/tests/sorter_tests.cpp
@@ -1467,7 +1467,7 @@ TEST(SorterTest, RemoveSharedResources)
 
 class Sorter_BENCHMARK_Test
   : public ::testing::Test,
-    public ::testing::WithParamInterface<std::tr1::tuple<size_t, size_t>> {};
+    public ::testing::WithParamInterface<std::tuple<size_t, size_t>> {};
 
 
 // The sorter benchmark tests are parameterized by
@@ -1485,8 +1485,8 @@ INSTANTIATE_TEST_CASE_P(
 // different amount of allocations.
 TEST_P(Sorter_BENCHMARK_Test, FullSort)
 {
-  size_t agentCount = std::tr1::get<0>(GetParam());
-  size_t clientCount = std::tr1::get<1>(GetParam());
+  size_t agentCount = std::get<0>(GetParam());
+  size_t clientCount = std::get<1>(GetParam());
 
   cout << "Using " << agentCount << " agents and "
        << clientCount << " clients" << endl;
@@ -1617,7 +1617,7 @@ TEST_P(Sorter_BENCHMARK_Test, FullSort)
 class HierarchicalSorter_BENCHMARK_Test
   : public ::testing::Test,
     public ::testing::WithParamInterface<
-        std::tr1::tuple<size_t, std::tr1::tuple<size_t, size_t>>> {};
+        std::tuple<size_t, std::tuple<size_t, size_t>>> {};
 
 
 INSTANTIATE_TEST_CASE_P(
@@ -1627,9 +1627,9 @@ INSTANTIATE_TEST_CASE_P(
       ::testing::Values(1000U, 5000U, 10000U, 20000U, 30000U, 50000U),
       ::testing::Values(
           // ~1000 clients with different heights and branching factors.
-          std::tr1::tuple<size_t, size_t>{3U, 32U},   // 1056 clients.
-          std::tr1::tuple<size_t, size_t>{7U, 3U},    // 1092 clients.
-          std::tr1::tuple<size_t, size_t>{10U, 2U}))  // 1022 clients.
+          std::tuple<size_t, size_t>{3U, 32U},   // 1056 clients.
+          std::tuple<size_t, size_t>{7U, 3U},    // 1092 clients.
+          std::tuple<size_t, size_t>{10U, 2U}))  // 1022 clients.
     );
 
 
@@ -1640,10 +1640,10 @@ INSTANTIATE_TEST_CASE_P(
 // of each internal node).
 TEST_P(HierarchicalSorter_BENCHMARK_Test, FullSort)
 {
-  const size_t agentCount = std::tr1::get<0>(GetParam());
-  const std::tr1::tuple<size_t, size_t> tuple = std::tr1::get<1>(GetParam());
-  const size_t treeHeight = std::tr1::get<0>(tuple);
-  const size_t branchingFactor = std::tr1::get<1>(tuple);
+  const size_t agentCount = std::get<0>(GetParam());
+  const std::tuple<size_t, size_t> tuple = std::get<1>(GetParam());
+  const size_t treeHeight = std::get<0>(tuple);
+  const size_t branchingFactor = std::get<1>(tuple);
 
   vector<SlaveID> agents;
   agents.reserve(agentCount);

http://git-wip-us.apache.org/repos/asf/mesos/blob/95455644/support/mesos-style.py
----------------------------------------------------------------------
diff --git a/support/mesos-style.py b/support/mesos-style.py
index 53ffe3b..f9c8528 100755
--- a/support/mesos-style.py
+++ b/support/mesos-style.py
@@ -191,7 +191,7 @@ class CppLinter(LinterBase):
                    os.path.join('3rdparty', 'libprocess'),
                    os.path.join('3rdparty', 'stout')]
 
-    exclude_files = '(protobuf\-2\.4\.1|gmock\-1\.6\.0|glog\-0\.3\.3|boost\-1\.53\.0|libev\-4\.15|java/jni|\.pb\.cc|\.pb\.h|\.md|\.virtualenv)'
+    exclude_files = '(protobuf\-2\.4\.1|googletest\-release\-1\.8\.0|glog\-0\.3\.3|boost\-1\.53\.0|libev\-4\.15|java/jni|\.pb\.cc|\.pb\.h|\.md|\.virtualenv)'
 
     source_files = '\.(cpp|hpp|cc|h)$'
 
@@ -248,7 +248,7 @@ class PyLinter(LinterBase):
 
     source_dirs = ['src/cli_new']
 
-    exclude_files = '(protobuf\-2\.4\.1|gmock\-1\.6\.0|glog\-0\.3\.3|boost\-1\.53\.0|libev\-4\.15|java/jni|\.virtualenv)'
+    exclude_files = '(protobuf\-2\.4\.1|googletest\-release\-1\.8\.0|glog\-0\.3\.3|boost\-1\.53\.0|libev\-4\.15|java/jni|\.virtualenv)'
 
     source_files = '\.(py)$'
 

http://git-wip-us.apache.org/repos/asf/mesos/blob/95455644/support/mesos-tidy/entrypoint.sh
----------------------------------------------------------------------
diff --git a/support/mesos-tidy/entrypoint.sh b/support/mesos-tidy/entrypoint.sh
index 5dbaa60..5a7d85d 100755
--- a/support/mesos-tidy/entrypoint.sh
+++ b/support/mesos-tidy/entrypoint.sh
@@ -36,7 +36,7 @@ cmake -DCMAKE_BUILD_TYPE=Release \
 cmake --build 3rdparty --target boost-1.53.0 -- -j $(nproc)
 cmake --build 3rdparty --target elfio-3.2 -- -j $(nproc)
 cmake --build 3rdparty --target glog-0.3.3 -- -j $(nproc)
-cmake --build 3rdparty --target gmock-1.7.0 -- -j $(nproc)
+cmake --build 3rdparty --target googletest-release-1.8.0 -- -j $(nproc)
 cmake --build 3rdparty --target http_parser-2.6.2 -- -j $(nproc)
 
 # TODO(mpark): The `|| true` is a hack to try both `libev` and `libevent` and