Improve CMake structure.

This commit is contained in:
2018-03-18 21:21:00 +01:00
parent 512c4e8c95
commit c0cf5e6ff0
4 changed files with 20 additions and 47 deletions

View File

@@ -21,54 +21,35 @@ target_compile_options(fmri PRIVATE "-Wall" "-Wextra" "-pedantic")
# Enable CUDA if available # Enable CUDA if available
find_package(CUDA) find_package(CUDA)
if (CUDA_FOUND) if (CUDA_FOUND)
include_directories(${CUDA_INCLUDE_DIRS}) target_include_directories(fmri PUBLIC ${CUDA_INCLUDE_DIRS})
target_link_libraries(fmri ${CUDA_LIBS}) target_link_libraries(fmri PUBLIC ${CUDA_LIBS})
else() else()
add_definitions(-DCPU_ONLY) add_definitions(-DCPU_ONLY)
endif() endif()
# Find dependencies
# Library dependencies
# Require OpenCV
find_package(OpenCV REQUIRED) find_package(OpenCV REQUIRED)
include_directories(${OpenCV_INCLUDE_DIRS})
target_link_libraries(fmri ${OpenCV_LIBS})
# Require Boost
find_package(Boost REQUIRED COMPONENTS system) find_package(Boost REQUIRED COMPONENTS system)
include_directories(${Boost_INCLUDE_DIRS})
target_link_libraries(fmri ${Boost_LIBRARIES})
# Require Caffe
find_package(Caffe REQUIRED) find_package(Caffe REQUIRED)
include_directories(${Caffe_INCLUDE_DIRS})
target_link_libraries(fmri ${Caffe_LIBRARIES})
# Require glog
find_package(Glog REQUIRED) find_package(Glog REQUIRED)
include_directories(${GLOG_INCLUDE_DIRS})
target_link_libraries(fmri ${GLOG_LIBRARIES})
# Require png++ (dumping to file)
find_package(png++ REQUIRED)
include_directories(${png++_INCLUDE_DIRS})
target_link_libraries(fmri ${png++_LIBRARIES})
# Require GLUT (visualisation)
find_package(GLUT REQUIRED)
include_directories(${GLUT_INCLUDE_DIRS})
target_link_libraries(fmri ${GLUT_LIBRARIES})
# Require OpenGL (visualisation)
find_package(OpenGL REQUIRED) find_package(OpenGL REQUIRED)
include_directories(${OPENGL_INCLUDE_DIRS}) find_package(GLUT REQUIRED)
target_link_libraries(fmri ${OPENGL_LIBRARIES}) find_package(png++ REQUIRED)
# Require GLEW (visulalisation) target_include_directories(fmri PUBLIC ${OpenCV_INCLUDE_DIRS})
find_package(GLEW REQUIRED) target_link_libraries(fmri PUBLIC
include_directories(${GLEW_INCLUDE_DIRS}) ${OpenCV_LIBS}
target_link_libraries(fmri ${GLEW_LIBRARIES}) ${Caffe_LIBRARIES}
${png++_LIBRARIES}
${GLOG_LIBRARIES}
Boost::system
GLUT::GLUT
OpenGL::GLU
)
target_include_directories(fmri PUBLIC
${Caffe_INCLUDE_DIRS}
)
# Allow the package to be installed # Allow the package to be installed
install(TARGETS fmri DESTINATION bin) install(TARGETS fmri DESTINATION bin)

View File

@@ -1,7 +1,6 @@
#include <cstdint> #include <cstdint>
#include <memory> #include <memory>
#include <vector> #include <vector>
#include <GL/glew.h>
#include <cstring> #include <cstring>
#include <glog/logging.h> #include <glog/logging.h>
#include <chrono> #include <chrono>
@@ -18,7 +17,7 @@ static void handleGLError(GLenum error) {
return; return;
default: default:
cerr << "OpenGL error: " << (const char*) glewGetErrorString(error) << endl; cerr << "OpenGL error: " << (const char*) gluGetString(error) << endl;
} }
} }

View File

@@ -1,7 +1,6 @@
#include <algorithm> #include <algorithm>
#include <iostream> #include <iostream>
#include <glog/logging.h> #include <glog/logging.h>
#include <GL/glew.h>
#include <GL/glut.h> #include <GL/glut.h>
#include <map> #include <map>
@@ -192,12 +191,6 @@ int main(int argc, char *argv[])
Camera::instance().registerControls(); Camera::instance().registerControls();
glewInit();
if (!GLEW_VERSION_2_0) {
cerr << "OpenGL 2.0 not available" << endl;
return 2;
}
rendererData.currentData = rendererData.data.begin(); rendererData.currentData = rendererData.data.begin();
updateVisualisers(); updateVisualisers();

View File

@@ -1,6 +1,6 @@
#include <algorithm> #include <algorithm>
#include <numeric> #include <numeric>
#include <util/math_functions.hpp> #include <caffe/util/math_functions.hpp>
#include "visualisations.hpp" #include "visualisations.hpp"
#include "DummyLayerVisualisation.hpp" #include "DummyLayerVisualisation.hpp"
#include "MultiImageVisualisation.hpp" #include "MultiImageVisualisation.hpp"