Build caffe inside build/externals directory (#382)
author박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 <jh1302.park@samsung.com>
Wed, 27 Jun 2018 06:40:12 +0000 (15:40 +0900)
committerGitHub Enterprise <noreply-CODE@samsung.com>
Wed, 27 Jun 2018 06:40:12 +0000 (15:40 +0900)
Currently, caffe is built inside the binary directory of the first subproejct
that finds caffe.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
cmake/packages/Caffe/CMakeLists.txt [new file with mode: 0644]
cmake/packages/CaffeConfig.cmake

diff --git a/cmake/packages/Caffe/CMakeLists.txt b/cmake/packages/Caffe/CMakeLists.txt
new file mode 100644 (file)
index 0000000..51b723e
--- /dev/null
@@ -0,0 +1,15 @@
+file(GLOB CORE_SOURCES "${CaffeSource_DIR}/src/caffe/*.cpp" "${CaffeSource_DIR}/src/caffe/util/*.cpp")
+file(GLOB LAYER_SOURCES "${CaffeSource_DIR}/src/caffe/layers/*.cpp")
+
+add_library(caffe SHARED ${CORE_SOURCES} ${LAYER_SOURCES})
+target_compile_definitions(caffe PUBLIC CPU_ONLY)
+target_include_directories(caffe PUBLIC ${CaffeSource_DIR}/include)
+target_include_directories(caffe PRIVATE ${Boost_INCLUDE_DIRS})
+target_include_directories(caffe PRIVATE ${HDF5_INCLUDE_DIRS})
+target_include_directories(caffe PRIVATE ${Atlas_INCLUDE_DIRS})
+target_link_libraries(caffe caffeproto)
+target_link_libraries(caffe glog)
+target_link_libraries(caffe gflags)
+target_link_libraries(caffe ${Boost_LIBRARIES})
+target_link_libraries(caffe ${HDF5_LIBRARIES} ${HDF5_HL_LIBRARIES})
+target_link_libraries(caffe ${Atlas_LIBRARIES})
index 01b5352..c3b2f29 100644 (file)
@@ -51,21 +51,8 @@ function(_Caffe_import)
   endif()
 
   if(NOT TARGET caffe)
-    file(GLOB CORE_SOURCES "${CaffeSource_DIR}/src/caffe/*.cpp" "${CaffeSource_DIR}/src/caffe/util/*.cpp")
-    file(GLOB LAYER_SOURCES "${CaffeSource_DIR}/src/caffe/layers/*.cpp")
-
-    add_library(caffe SHARED ${CORE_SOURCES} ${LAYER_SOURCES})
-    target_compile_definitions(caffe PUBLIC CPU_ONLY)
-    target_include_directories(caffe PUBLIC ${CaffeSource_DIR}/include)
-    target_include_directories(caffe PRIVATE ${Boost_INCLUDE_DIRS})
-    target_include_directories(caffe PRIVATE ${HDF5_INCLUDE_DIRS})
-    target_include_directories(caffe PRIVATE ${Atlas_INCLUDE_DIRS})
-    target_link_libraries(caffe caffeproto)
-    target_link_libraries(caffe glog)
-    target_link_libraries(caffe gflags)
-    target_link_libraries(caffe ${Boost_LIBRARIES})
-    target_link_libraries(caffe ${HDF5_LIBRARIES} ${HDF5_HL_LIBRARIES})
-    target_link_libraries(caffe ${Atlas_LIBRARIES})
+    nncc_find_package(ExternalProjectTools REQUIRED)
+    add_extdirectory("${CMAKE_CURRENT_LIST_DIR}/Caffe" caffe)
   endif(NOT TARGET caffe)
 
   set(Caffe_FOUND TRUE PARENT_SCOPE)