50 строки
1.5 KiB
CMake
50 строки
1.5 KiB
CMake
cmake_minimum_required(VERSION 2.8)
|
|
|
|
PROJECT(MULTIVERSO)
|
|
|
|
OPTION(USE_HDFS "won't use hdfs on default, set ON to enable" OFF)
|
|
OPTION(TEST "Build all tests." ON)
|
|
OPTION(USE_ZMQ "weather to build with ZeroMQ.(default: OFF)" OFF)
|
|
OPTION(INSTALL_MULTIVERSO "whether install Multiverso to /usr/local/lib" ON)
|
|
option(ENABLE_DCASGD "Build with DC-ASGD supported" OFF)
|
|
|
|
find_package(MPI REQUIRED)
|
|
|
|
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -std=c++11")
|
|
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC")
|
|
|
|
if(USE_HDFS)
|
|
ADD_DEFINITIONS(-DMULTIVERSO_USE_HDFS)
|
|
SET(JVM_LIB /usr/local/java/default/jre/lib/amd64/server)
|
|
SET(HDFS_LIB /usr/local/hadoop/lib/native)
|
|
LINK_DIRECTORIES(${HDFS_LIB})
|
|
LINK_DIRECTORIES(${JVM_LIB})
|
|
endif(USE_HDFS)
|
|
|
|
if(ENABLE_DCASGD)
|
|
ADD_DEFINITIONS(-DENABLE_DCASGD)
|
|
endif(ENABLE_DCASGD)
|
|
|
|
include_directories(${PROJECT_SOURCE_DIR}/include)
|
|
|
|
set(MULTIVERSO_DIR ${PROJECT_SOURCE_DIR})
|
|
ADD_SUBDIRECTORY(src)
|
|
ADD_SUBDIRECTORY(Test)
|
|
ADD_SUBDIRECTORY(Test/unittests)
|
|
ADD_SUBDIRECTORY(Applications/WordEmbedding)
|
|
ADD_SUBDIRECTORY(Applications/LogisticRegression)
|
|
|
|
if(INSTALL_MULTIVERSO)
|
|
install (DIRECTORY ${PROJECT_SOURCE_DIR}/include/multiverso DESTINATION include)
|
|
endif(INSTALL_MULTIVERSO)
|
|
|
|
|
|
# uninstall target
|
|
configure_file(
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/cmake_uninstall.cmake.in"
|
|
"${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake"
|
|
IMMEDIATE @ONLY)
|
|
|
|
add_custom_target(uninstall
|
|
COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake)
|