You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mesos.apache.org by jo...@apache.org on 2015/10/04 02:46:19 UTC

[1/5] mesos git commit: CMake: Added `ENABLE_LIBEVENT` to libprocess config scripts.

Repository: mesos
Updated Branches:
  refs/heads/master 126e7327e -> 442295746


CMake: Added `ENABLE_LIBEVENT` to libprocess config scripts.

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


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

Branch: refs/heads/master
Commit: 6523d92adc7a3b745d3a723a1bfe8dc7dd07c8d1
Parents: 126e732
Author: Alex Clemmer <cl...@gmail.com>
Authored: Sat Oct 3 16:51:13 2015 -0700
Committer: Joris Van Remoortere <jo...@gmail.com>
Committed: Sat Oct 3 17:11:23 2015 -0700

----------------------------------------------------------------------
 3rdparty/libprocess/3rdparty/CMakeLists.txt     |  6 ++--
 .../cmake/Process3rdpartyConfigure.cmake        | 15 ++++++----
 .../libprocess/cmake/ProcessConfigure.cmake     | 29 +++++++++++++++++---
 3 files changed, 39 insertions(+), 11 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mesos/blob/6523d92a/3rdparty/libprocess/3rdparty/CMakeLists.txt
----------------------------------------------------------------------
diff --git a/3rdparty/libprocess/3rdparty/CMakeLists.txt b/3rdparty/libprocess/3rdparty/CMakeLists.txt
index 31d77d5..f0de224 100644
--- a/3rdparty/libprocess/3rdparty/CMakeLists.txt
+++ b/3rdparty/libprocess/3rdparty/CMakeLists.txt
@@ -104,9 +104,11 @@ if (NOT WIN32)
   # MESOS-3250)" comment above for explanation.
   set(LIBEV_CONFIG_CMD  ${LIBEV_ROOT}/configure --prefix=${LIBEV_ROOT}-lib)
   set(LIBEV_BUILD_CMD   make)
-  set(LIBEV_INSTALL_CMD mkdir -p ${LIBEV_ROOT}-lib/lib && cp -r ${LIBEV_ROOT}-build/.libs/. ${LIBEV_ROOT}-lib/lib)
+  set(LIBEV_INSTALL_CMD mkdir -p ${LIBEV_LIB_ROOT} && cp -r ${LIBEV_ROOT}-build/.libs/. ${LIBEV_LIB_ROOT})
   # Patch libev to keep it from reaping child processes.
   PATCH_CMD(${PROCESS_3RD_SRC}/libev-4.15.patch LIBEV_PATCH_CMD)
+
+  set(LIBEVENT_INSTALL_CMD mkdir -p ${LIBEVENT_LIB_ROOT} && cp -r ${LIBEVENT_ROOT}-build/lib/. ${LIBEVENT_LIB_DIR} && cp -r ${LIBEVENT_ROOT}-build/include/. ${LIBEVENT_INCLUDE_DIR} && cp -r ${LIBEVENT_ROOT}/include/. ${LIBEVENT_INCLUDE_DIR})
 elseif (WIN32)
   set(GLOG_PATCH_CMD   ${CMAKE_NOOP})
   set(GLOG_CONFIG_CMD  ${CMAKE_NOOP})
@@ -245,7 +247,7 @@ endif (NOT WIN32)
 
 if (NOT WIN32)
   set(PROTOBUF_PATCH_CMD   ${CMAKE_NOOP})
-  set(PROTOBUF_CONFIG_CMD  ${PROTOBUF_ROOT}/src/../configure --prefix=${PROTOBUF_LIB})
+  set(PROTOBUF_CONFIG_CMD  ${PROTOBUF_ROOT}/src/../configure --prefix=${PROTOBUF_LIB_ROOT})
   set(PROTOBUF_BUILD_CMD   make)
   set(PROTOBUF_INSTALL_CMD make install)
 elseif (WIN32)

http://git-wip-us.apache.org/repos/asf/mesos/blob/6523d92a/3rdparty/libprocess/cmake/Process3rdpartyConfigure.cmake
----------------------------------------------------------------------
diff --git a/3rdparty/libprocess/cmake/Process3rdpartyConfigure.cmake b/3rdparty/libprocess/cmake/Process3rdpartyConfigure.cmake
index 9c369e2..ee1c74d 100644
--- a/3rdparty/libprocess/cmake/Process3rdpartyConfigure.cmake
+++ b/3rdparty/libprocess/cmake/Process3rdpartyConfigure.cmake
@@ -42,8 +42,10 @@ elseif (WIN32)
 endif (NOT WIN32)
 
 # Intermediate convenience variables for oddly-structured directories.
-set(GLOG_LIB_ROOT ${GLOG_ROOT}-lib/lib)
-set(PROTOBUF_LIB  ${PROTOBUF_ROOT}-lib/lib)
+set(GLOG_LIB_ROOT     ${GLOG_ROOT}-lib/lib)
+set(PROTOBUF_LIB_ROOT ${PROTOBUF_ROOT}-lib/lib)
+set(LIBEV_LIB_ROOT    ${LIBEV_ROOT}-lib/lib)
+set(LIBEVENT_LIB_ROOT ${LIBEVENT_ROOT}-lib/lib)
 
 # Convenience variables for include directories of third-party dependencies.
 set(PROCESS_INCLUDE_DIR     ${PROCESS_3RD_SRC}/../include)
@@ -53,8 +55,9 @@ set(BOOST_INCLUDE_DIR       ${BOOST_ROOT})
 set(GPERFTOOLS_INCLUDE_DIR  ${GPERFTOOLS}/src)
 set(HTTP_PARSER_INCLUDE_DIR ${HTTP_PARSER_ROOT})
 set(LIBEV_INCLUDE_DIR       ${LIBEV_ROOT})
+set(LIBEVENT_INCLUDE_DIR    ${LIBEVENT_LIB_ROOT}/include)
 set(PICOJSON_INCLUDE_DIR    ${PICOJSON_ROOT})
-set(PROTOBUF_INCLUDE_DIR    ${PROTOBUF_LIB}/include)
+set(PROTOBUF_INCLUDE_DIR    ${PROTOBUF_LIB_ROOT}/include)
 
 if (WIN32)
   set(CURL_INCLUDE_DIR ${CURL_ROOT}/include)
@@ -66,6 +69,7 @@ endif (WIN32)
 # Convenience variables for `lib` directories of built third-party dependencies.
 set(HTTP_PARSER_LIB_DIR ${HTTP_PARSER_ROOT}-build)
 set(LIBEV_LIB_DIR       ${LIBEV_ROOT}-build/.libs)
+set(LIBEVENT_LIB_DIR    ${LIBEVENT_LIB_ROOT}/lib)
 
 if (WIN32)
   set(CURL_LIB_DIR     ${CURL_ROOT}/lib)
@@ -73,13 +77,14 @@ if (WIN32)
   set(PROTOBUF_LIB_DIR ${PROTOBUF_ROOT}/vsprojects/Debug)
 else (WIN32)
   set(GLOG_LIB_DIR     ${GLOG_LIB_ROOT}/lib)
-  set(PROTOBUF_LIB_DIR ${PROTOBUF_LIB}/lib)
+  set(PROTOBUF_LIB_DIR ${PROTOBUF_LIB_ROOT}/lib)
 endif (WIN32)
 
 # Convenience variables for "lflags", the symbols we pass to CMake to generate
 # things like `-L/path/to/glog` or `-lglog`.
 set(HTTP_PARSER_LFLAG http_parser)
 set(LIBEV_LFLAG       ev)
+set(LIBEVENT_LFLAG    event)
 
 if (WIN32)
   # Necessary because the lib names for (e.g.) glog are generated incorrectly
@@ -96,7 +101,7 @@ else (WIN32)
 endif (WIN32)
 
 # Convenience variable for `protoc`, the Protobuf compiler.
-set(PROTOC ${PROTOBUF_LIB}/bin/protoc)
+set(PROTOC ${PROTOBUF_LIB_ROOT}/bin/protoc)
 
 # Configure the process library, the last of our third-party libraries.
 #######################################################################

http://git-wip-us.apache.org/repos/asf/mesos/blob/6523d92a/3rdparty/libprocess/cmake/ProcessConfigure.cmake
----------------------------------------------------------------------
diff --git a/3rdparty/libprocess/cmake/ProcessConfigure.cmake b/3rdparty/libprocess/cmake/ProcessConfigure.cmake
index 076c883..60108ff 100755
--- a/3rdparty/libprocess/cmake/ProcessConfigure.cmake
+++ b/3rdparty/libprocess/cmake/ProcessConfigure.cmake
@@ -53,10 +53,15 @@ set(PROCESS_DEPENDENCIES
   ${GLOG_TARGET}
   ${PICOJSON_TARGET}
   ${HTTP_PARSER_TARGET}
-  ${LIBEV_TARGET}
   ${PROTOBUF_TARGET}
   )
 
+if (NOT ENABLE_LIBEVENT)
+  set(PROCESS_DEPENDENCIES ${PROCESS_DEPENDENCIES} ${LIBEV_TARGET})
+elseif (ENABLE_LIBEVENT)
+  set(PROCESS_DEPENDENCIES ${PROCESS_DEPENDENCIES} ${LIBEVENT_TARGET})
+endif (NOT ENABLE_LIBEVENT)
+
 # Define third-party include directories. Tells compiler toolchain where to get
 # headers for our third party libs (e.g., -I/path/to/glog on Linux).
 ###############################################################################
@@ -65,12 +70,17 @@ set(PROCESS_INCLUDE_DIRS
   ${PROCESS_INCLUDE_DIR}
   ${STOUT_INCLUDE_DIR}
   ${BOOST_INCLUDE_DIR}
-  ${LIBEV_INCLUDE_DIR}
   ${PICOJSON_INCLUDE_DIR}
   ${GLOG_INCLUDE_DIR}
   ${HTTP_PARSER_INCLUDE_DIR}
   )
 
+if (NOT ENABLE_LIBEVENT)
+  set(PROCESS_INCLUDE_DIRS ${PROCESS_INCLUDE_DIRS} ${LIBEV_INCLUDE_DIR})
+elseif (ENABLE_LIBEVENT)
+  set(PROCESS_INCLUDE_DIRS ${PROCESS_INCLUDE_DIRS} ${LIBEVENT_INCLUDE_DIR})
+endif (NOT ENABLE_LIBEVENT)
+
 if (HAS_GPERFTOOLS)
   set(PROCESS_INCLUDE_DIRS ${PROCESS_INCLUDE_DIRS} ${GPERFTOOLS_INCLUDE_DIR})
 endif (HAS_GPERFTOOLS)
@@ -82,10 +92,16 @@ endif (HAS_GPERFTOOLS)
 set(PROCESS_LIB_DIRS
   ${PROCESS_LIB_DIRS}
   ${GLOG_LIB_DIR}
-  ${LIBEV_LIB_DIR}
   ${HTTP_PARSER_LIB_DIR}
   )
 
+if (NOT ENABLE_LIBEVENT)
+  set(PROCESS_LIB_DIRS ${PROCESS_LIB_DIRS} ${LIBEV_LIB_DIR})
+elseif (ENABLE_LIBEVENT)
+  set(PROCESS_LIB_DIRS ${PROCESS_LIB_DIRS} ${LIBEVENT_LIB_DIR})
+endif (NOT ENABLE_LIBEVENT)
+
+
 # Define third-party libs. Used to generate flags that the linker uses to
 # include our third-party libs (e.g., -lglog on Linux).
 #########################################################################
@@ -95,11 +111,16 @@ set(PROCESS_LIBS
   ${PROCESS_LIBS}
   ${PROCESS_TARGET}
   ${GLOG_LFLAG}
-  ${LIBEV_LFLAG}
   ${HTTP_PARSER_LFLAG}
   ${CMAKE_THREAD_LIBS_INIT}
   )
 
+if (NOT ENABLE_LIBEVENT)
+  set(PROCESS_LIBS ${PROCESS_LIBS} ${LIBEV_LFLAG})
+elseif (ENABLE_LIBEVENT)
+  set(PROCESS_LIBS ${PROCESS_LIBS} ${LIBEVENT_LFLAG})
+endif (NOT ENABLE_LIBEVENT)
+
 if (NOT WIN32)
   find_package(ZLIB REQUIRED)
 


[5/5] mesos git commit: CMake: Removed unused libsvn binaries from `FindSvn.cmake`.

Posted by jo...@apache.org.
CMake: Removed unused libsvn binaries from `FindSvn.cmake`.

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


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

Branch: refs/heads/master
Commit: 442295746fc445428e38443a3f0ed500bf0868b3
Parents: 7f0906a
Author: Alex Clemmer <cl...@gmail.com>
Authored: Sat Oct 3 16:51:45 2015 -0700
Committer: Joris Van Remoortere <jo...@gmail.com>
Committed: Sat Oct 3 17:36:37 2015 -0700

----------------------------------------------------------------------
 3rdparty/libprocess/3rdparty/stout/cmake/FindSvn.cmake | 13 ++-----------
 1 file changed, 2 insertions(+), 11 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mesos/blob/44229574/3rdparty/libprocess/3rdparty/stout/cmake/FindSvn.cmake
----------------------------------------------------------------------
diff --git a/3rdparty/libprocess/3rdparty/stout/cmake/FindSvn.cmake b/3rdparty/libprocess/3rdparty/stout/cmake/FindSvn.cmake
index 8773739..c975a16 100644
--- a/3rdparty/libprocess/3rdparty/stout/cmake/FindSvn.cmake
+++ b/3rdparty/libprocess/3rdparty/stout/cmake/FindSvn.cmake
@@ -43,20 +43,11 @@ set(POSSIBLE_SVN_INCLUDE_DIRECTORIES
 
 set(SVN_LIB_NAMES
   ${SVN_LIB_NAMES}
-  svn_client-1
   svn_delta-1
   svn_diff-1
-  svn_fs-1
-  svn_fs_fs-1
-  svn_fs_util-1
-  svn_ra-1
-  svn_ra_local-1
-  svn_ra_serf-1
-  svn_ra_svn-1
-  svn_repos-1
   svn_subr-1
-  svn_wc-1
-  )
+   )
+
 
 set(POSSIBLE_SVN_LIB_DIRECTORIES
   ${POSSIBLE_SVN_LIB_DIRECTORIES}


[4/5] mesos git commit: CMake: Disabled agent build on Windows.

Posted by jo...@apache.org.
CMake: Disabled agent build on Windows.

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


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

Branch: refs/heads/master
Commit: 7f0906af84c18a8ee9f4b6de4eff1e56a7e38243
Parents: 1e3ced3
Author: Alex Clemmer <cl...@gmail.com>
Authored: Sat Oct 3 16:51:36 2015 -0700
Committer: Joris Van Remoortere <jo...@gmail.com>
Committed: Sat Oct 3 17:32:17 2015 -0700

----------------------------------------------------------------------
 CMakeLists.txt | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mesos/blob/7f0906af/CMakeLists.txt
----------------------------------------------------------------------
diff --git a/CMakeLists.txt b/CMakeLists.txt
index beacdc2..a5a66c1 100755
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -88,4 +88,7 @@ include(MesosConfigure)
 # SUBDIRECTORIES.
 #################
 add_subdirectory(3rdparty)
-add_subdirectory(src)
+
+if (NOT WIN32)
+  add_subdirectory(src)
+endif (NOT WIN32)


[3/5] mesos git commit: CMake: Expanded support for compiling much of the master.

Posted by jo...@apache.org.
CMake: Expanded support for compiling much of the master.

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


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

Branch: refs/heads/master
Commit: 1e3ced35069c8417635cf39547613f2aac5a6b5e
Parents: 2afe3b9
Author: Alex Clemmer <cl...@gmail.com>
Authored: Sat Oct 3 16:51:30 2015 -0700
Committer: Joris Van Remoortere <jo...@gmail.com>
Committed: Sat Oct 3 17:21:07 2015 -0700

----------------------------------------------------------------------
 cmake/CompilationConfigure.cmake |   1 +
 src/CMakeLists.txt               | 132 +++++++++++++++++++++++++++++++++-
 2 files changed, 132 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mesos/blob/1e3ced35/cmake/CompilationConfigure.cmake
----------------------------------------------------------------------
diff --git a/cmake/CompilationConfigure.cmake b/cmake/CompilationConfigure.cmake
index 98a08ee..d1d7509 100644
--- a/cmake/CompilationConfigure.cmake
+++ b/cmake/CompilationConfigure.cmake
@@ -114,3 +114,4 @@ add_definitions(-D__STDC_FORMAT_MACROS)
 add_definitions(-DPKGLIBEXECDIR="${PKG_LIBEXEC_INSTALL_DIR}")
 add_definitions(-DLIBDIR="${LIB_INSTALL_DIR}")
 add_definitions(-DVERSION="${PACKAGE_VERSION}")
+add_definitions(-DPKGDATADIR="${DATA_INSTALL_PREFIX}")

http://git-wip-us.apache.org/repos/asf/mesos/blob/1e3ced35/src/CMakeLists.txt
----------------------------------------------------------------------
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index f90101b..c653311 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -37,6 +37,8 @@ PROTOC_TO_INCLUDE_DIR(OVERSUBSCRIPTION mesos/slave/oversubscription)
 
 PROTOC_TO_SRC_DIR(MESSAGES messages/messages)
 PROTOC_TO_SRC_DIR(FLAGS    messages/flags)
+PROTOC_TO_SRC_DIR(STATE    messages/state)
+PROTOC_TO_SRC_DIR(REGISTRY master/registry)
 
 set(MESOS_PROTOBUF_SRC
   ${MESOS_PROTO_CC}
@@ -52,10 +54,12 @@ set(MESOS_PROTOBUF_SRC
   ${MODULE_PROTO_CC}
   ${SCHEDULER_PROTO_CC}
   ${V1_SCHEDULER_PROTO_CC}
+  ${OVERSUBSCRIPTION_PROTO_CC}
   ${MESSAGES_PROTO_CC}
   ${FLAGS_PROTO_CC}
+  ${STATE_PROTO_CC}
   ${ISOLATOR_PROTO_CC}
-  ${OVERSUBSCRIPTION_PROTO_CC}
+  ${REGISTRY_PROTO_CC}
   )
 
 # Configure Mesos files.
@@ -67,6 +71,91 @@ configure_file(
 
 # SOURCE FILES FOR THE MESOS LIBRARY.
 #####################################
+set(AUTHENTICATION_SRC
+  authentication/cram_md5/authenticatee.cpp
+  authentication/cram_md5/authenticator.cpp
+  authentication/cram_md5/auxprop.cpp
+  )
+
+set(AUTHORIZER_SRC
+  authorizer/authorizer.cpp
+  authorizer/local/authorizer.cpp
+  )
+
+set(COMMON_SRC
+  common/attributes.cpp
+  common/date_utils.cpp
+  common/http.cpp
+  common/protobuf_utils.cpp
+  common/resources.cpp
+  common/resources_utils.cpp
+  common/type_utils.cpp
+  common/values.cpp
+  )
+
+set(DOCKER_SRC
+  docker/docker.hpp
+  docker/docker.cpp
+  docker/executor.hpp
+  )
+
+set(EXEC_SRC
+  exec/exec.cpp
+  )
+
+set(FILES_SRC
+  files/files.cpp
+  )
+
+set(HOOK_SRC
+  hook/manager.cpp
+  )
+
+set(INTERNAL_SRC
+  internal/devolve.cpp
+  internal/evolve.cpp
+  )
+
+set(LOCAL_SRC
+  local/local.cpp
+  )
+
+set(LOGGING_SRC
+  logging/flags.cpp
+  logging/logging.cpp
+  )
+
+set(MASTER_SRC
+  master/contender.cpp
+  master/constants.cpp
+  master/detector.cpp
+  master/flags.cpp
+  master/http.cpp
+  master/maintenance.cpp
+  master/master.cpp
+  master/metrics.cpp
+  master/registry.hpp
+  master/registry.proto
+  master/registrar.cpp
+  master/repairer.cpp
+  master/validation.cpp
+  master/allocator/allocator.cpp
+  master/allocator/sorter/drf/sorter.cpp
+  )
+
+set(MODULE_SRC
+  module/manager.cpp
+  )
+
+set(SCHED_SRC
+  sched/constants.cpp
+  sched/sched.cpp
+  )
+
+set(SCHEDULER_SRC
+  scheduler/scheduler.cpp
+  )
+
 set(AGENT_SRC
   slave/constants.cpp
   slave/gc.cpp
@@ -107,9 +196,50 @@ set(AGENT_SRC
   slave/resource_estimators/noop.cpp
   )
 
+set(USAGE_SRC
+  usage/usage.cpp
+  )
+
+set(V1_SRC
+  v1/attributes.cpp
+  v1/mesos.cpp
+  v1/resources.cpp
+  v1/values.cpp
+  )
+
+set(WATCHER_SRC
+  watcher/whitelist_watcher.cpp
+  )
+
+set(ZOOKEEPER_SRC
+  zookeeper/contender.cpp
+  zookeeper/detector.cpp
+  zookeeper/zookeeper.cpp
+  zookeeper/authentication.cpp
+  zookeeper/group.cpp
+  )
+
 set(MESOS_SRC
   ${MESOS_SRC}
+  ${AUTHENTICATION_SRC}
+  ${AUTHORIZER_SRC}
+  ${COMMON_SRC}
+  ${DOCKER_SRC}
+  ${EXEC_SRC}
+  ${FILES_SRC}
+  ${HOOK_SRC}
+  ${INTERNAL_SRC}
+  ${LOCAL_SRC}
+  ${LOGGING_SRC}
+  ${MASTER_SRC}
+  ${MODULE_SRC}
+  ${SCHED_SRC}
+  ${SCHEDULER_SRC}
   ${AGENT_SRC}
+  ${USAGE_SRC}
+  ${V1_SRC}
+  ${WATCHER_SRC}
+  ${ZOOKEEPER_SRC}
   ${MESOS_PROTOBUF_SRC}
   )
 


[2/5] mesos git commit: CMake: Added support for libevent for Unix builds.

Posted by jo...@apache.org.
CMake: Added support for libevent for Unix builds.

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


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

Branch: refs/heads/master
Commit: 2afe3b9f1a8dd9f4219388ffd2243b41a7cb85c5
Parents: 6523d92
Author: Alex Clemmer <cl...@gmail.com>
Authored: Sat Oct 3 16:51:26 2015 -0700
Committer: Joris Van Remoortere <jo...@gmail.com>
Committed: Sat Oct 3 17:12:42 2015 -0700

----------------------------------------------------------------------
 CMakeLists.txt                       | 9 ---------
 src/CMakeLists.txt                   | 9 +++++++++
 src/slave/cmake/SlaveConfigure.cmake | 7 +++++++
 3 files changed, 16 insertions(+), 9 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mesos/blob/2afe3b9f/CMakeLists.txt
----------------------------------------------------------------------
diff --git a/CMakeLists.txt b/CMakeLists.txt
index c866f6d..beacdc2 100755
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -44,15 +44,6 @@ option(
   )
 set(CMAKE_VERBOSE_MAKEFILE ${VERBOSE})
 
-# TODO(hausdorff): add the code to allow libevent on Unix builds.
-if ((NOT WIN32) AND ENABLE_LIBEVENT)
-  message(
-    FATAL_ERROR
-    "The Mesos CMake-based build system currently only supports libevent on "
-    "Windows builds."
-    )
-endif ((NOT WIN32) AND ENABLE_LIBEVENT)
-
 if (REBUNDLED AND ENABLE_LIBEVENT)
   message(
     WARNING

http://git-wip-us.apache.org/repos/asf/mesos/blob/2afe3b9f/src/CMakeLists.txt
----------------------------------------------------------------------
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 891f951..f90101b 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -118,6 +118,11 @@ set(MESOS_SRC
 #########################################################################
 include_directories(${AGENT_INCLUDE_DIRS})
 
+# LINKING LIBRARIES BY DIRECTORY (might generate, e.g., -L/path/to/thing on
+# Linux).
+###########################################################################
+link_directories(${AGENT_LIB_DIRS})
+
 # THE MESOS LIBRARY (generates, e.g., libmesos.so, etc., on Linux).
 ###################################################################
 add_library(${MESOS_TARGET} ${MESOS_SRC})
@@ -127,3 +132,7 @@ set_target_properties(
   SOVERSION ${MESOS_PACKAGE_SOVERSION}
   )
 add_dependencies(${MESOS_TARGET} ${AGENT_DEPENDENCIES})
+
+# ADD LINKER FLAGS (generates, e.g., -lglog on Linux).
+######################################################
+target_link_libraries(${MESOS_TARGET} ${AGENT_LIBS})

http://git-wip-us.apache.org/repos/asf/mesos/blob/2afe3b9f/src/slave/cmake/SlaveConfigure.cmake
----------------------------------------------------------------------
diff --git a/src/slave/cmake/SlaveConfigure.cmake b/src/slave/cmake/SlaveConfigure.cmake
index 230e574..5817547 100644
--- a/src/slave/cmake/SlaveConfigure.cmake
+++ b/src/slave/cmake/SlaveConfigure.cmake
@@ -66,6 +66,13 @@ set(AGENT_LIB_DIRS
 # include our third-party libs (e.g., -lglog on Linux).
 #########################################################################
 set(AGENT_LIBS
+  ${AGENT_LIBS}
   ${PROCESS_LIBS}
   ${GLOG_LFLAG}
   )
+
+if (NOT ENABLE_LIBEVENT)
+  set(AGENT_LIBS ${AGENT_LIBS} ${LIBEV_LFLAG})
+elseif (ENABLE_LIBEVENT)
+  set(AGENT_LIBS ${AGENT_LIBS} ${LIBEVENT_LFLAG})
+endif (NOT ENABLE_LIBEVENT)