diff options
author | Adam Kosiorek <a.kosiorek@samsung.com> | 2014-07-01 09:56:20 +0200 |
---|---|---|
committer | Jeff Donahue <jeff.donahue@gmail.com> | 2014-08-17 01:07:11 -0700 |
commit | ececfc0c0ca98e242ef3b7634f1bfcb431028bd8 (patch) | |
tree | cfc2fe8a563398d5a683efd173e7f8820f176487 /CMakeLists.txt | |
parent | 2882cda5682840a71b7ab7709ed3a350b00afd81 (diff) | |
download | caffe-ececfc0c0ca98e242ef3b7634f1bfcb431028bd8.tar.gz caffe-ececfc0c0ca98e242ef3b7634f1bfcb431028bd8.tar.bz2 caffe-ececfc0c0ca98e242ef3b7634f1bfcb431028bd8.zip |
cmake build system
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r-- | CMakeLists.txt | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 00000000..cc50a3a1 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,72 @@ +cmake_minimum_required(VERSION 2.8) +project( Caffe ) + +### Build Options ########################################################################## + +option(BUILD_PYTHON "Build Python wrapper" OFF) +option(BUILD_MATLAB "Build Matlab wrapper" OFF) +option(BUILD_EXAMPLES "Build examples" ON) +option(BUILD_SHARED_LIBS "Build SHARED libs if ON and STATIC otherwise" OFF) + +if(NOT BLAS) + set(BLAS atlas) +endif() + +if(NOT CUDA_TEST_DEVICE) + set(CUDA_TEST_DEVICE -1) +endif() + +# Install Prefix +if (CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) + set (CMAKE_INSTALL_PREFIX "${CMAKE_BINARY_DIR}/install" CACHE PATH "Default install path" FORCE ) +endif() + +### Configuration ########################################################################### + +# Enable CTest from top build directory +enable_testing() + +# Compiler Flags +set(CMAKE_CXX_COMPILER_FLAGS ${CMAKE_CXX_COMPILER_FLAGS} -Wall) +set(CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS} -fPIC) +set(CMAKE_CXX_FLAGS_RELEASE ${CMAKE_CXX_FLAGS_RELEASE} -O3) + +# Include Directories +set(${PROJECT_NAME}_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/include) +include_directories(${${PROJECT_NAME}_INCLUDE_DIRS}) +include_directories(${CMAKE_SOURCE_DIR}/src) + +# CMake module path for custom module finding +set( CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_SOURCE_DIR}/CMakeScripts) + +# CUDA is required globally +find_package(CUDA 5.5 REQUIRED) +include_directories(${CUDA_INCLUDE_DIRS}) + + +### Subdirectories ########################################################################## + +add_subdirectory(src/gtest) +add_subdirectory(src/caffe) +add_subdirectory(tools) + +if(BUILD_EXAMPLES) + message(STATUS "Examples enabled") + add_subdirectory(examples) +endif() + +if(BUILD_PYTHON) + message(STATUS "Python enabled") + add_subdirectory(python) +endif() + +if(BUILD_MATLAB) + message(STATUS "Matlab enabled") + add_subdirectory(matlab) +endif() + +### Install ################################################################################# + +# Install Includes +file(GLOB folders ${${PROJECT_NAME}_INCLUDE_DIRS}/*) +install(DIRECTORY ${folders} DESTINATION include) |