2017-08-02 18:14:14 -07:00
|
|
|
cmake_minimum_required(VERSION 3.4)
|
2017-01-17 16:56:40 -08:00
|
|
|
|
|
|
|
project(ray)
|
|
|
|
|
2017-12-14 14:54:09 -08:00
|
|
|
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/Modules")
|
|
|
|
|
2018-03-01 14:29:56 -08:00
|
|
|
include(${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/scripts/thirdparty.cmake)
|
2017-12-26 16:22:04 -08:00
|
|
|
|
|
|
|
find_package(Arrow)
|
|
|
|
find_package(Plasma)
|
|
|
|
|
2017-12-14 14:54:09 -08:00
|
|
|
# This ensures that things like gnu++11 get passed correctly
|
|
|
|
set(CMAKE_CXX_STANDARD 11)
|
|
|
|
|
|
|
|
# We require a C++11 compliant compiler
|
|
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
|
|
|
|
|
|
option(RAY_BUILD_STATIC
|
2017-12-26 16:22:04 -08:00
|
|
|
"Build the libray static libraries"
|
2017-12-14 14:54:09 -08:00
|
|
|
ON)
|
|
|
|
|
|
|
|
option(RAY_BUILD_SHARED
|
2017-12-26 16:22:04 -08:00
|
|
|
"Build the libray shared libraries"
|
2017-12-14 14:54:09 -08:00
|
|
|
ON)
|
|
|
|
|
|
|
|
option(RAY_BUILD_TESTS
|
|
|
|
"Build the Ray googletest unit tests"
|
|
|
|
ON)
|
|
|
|
|
2018-01-31 11:01:12 -08:00
|
|
|
option(RAY_USE_NEW_GCS
|
|
|
|
"Use the new GCS implementation"
|
|
|
|
OFF)
|
|
|
|
|
|
|
|
if (RAY_USE_NEW_GCS)
|
|
|
|
add_definitions(-DRAY_USE_NEW_GCS)
|
|
|
|
endif()
|
|
|
|
|
2017-12-14 14:54:09 -08:00
|
|
|
include(ExternalProject)
|
|
|
|
include(GNUInstallDirs)
|
|
|
|
include(BuildUtils)
|
|
|
|
enable_testing()
|
|
|
|
|
|
|
|
include(ThirdpartyToolchain)
|
|
|
|
|
2017-12-26 16:22:04 -08:00
|
|
|
include_directories(SYSTEM ${ARROW_INCLUDE_DIR})
|
|
|
|
include_directories(SYSTEM ${PLASMA_INCLUDE_DIR})
|
2017-12-14 14:54:09 -08:00
|
|
|
include_directories("${CMAKE_CURRENT_LIST_DIR}/src/")
|
2017-07-31 21:04:15 -07:00
|
|
|
|
2017-12-14 14:54:09 -08:00
|
|
|
add_subdirectory(${CMAKE_CURRENT_LIST_DIR}/src/ray/)
|
2017-01-17 16:56:40 -08:00
|
|
|
add_subdirectory(${CMAKE_CURRENT_LIST_DIR}/src/common/)
|
|
|
|
add_subdirectory(${CMAKE_CURRENT_LIST_DIR}/src/plasma/)
|
2017-02-27 12:24:07 -08:00
|
|
|
add_subdirectory(${CMAKE_CURRENT_LIST_DIR}/src/local_scheduler/)
|
2017-01-17 16:56:40 -08:00
|
|
|
add_subdirectory(${CMAKE_CURRENT_LIST_DIR}/src/global_scheduler/)
|