Last active
March 20, 2019 16:48
-
-
Save matlabbe/383be55b5cb682fea217d45ef9a37ef8 to your computer and use it in GitHub Desktop.
OKVIS with -march=native disabled and use shared libraries
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
diff --git a/.gitignore b/.gitignore | |
index 7ee7366..f764f90 100644 | |
--- a/.gitignore | |
+++ b/.gitignore | |
@@ -29,3 +29,5 @@ | |
# Docu | |
documentation/html/ | |
+ | |
+build | |
diff --git a/CMakeLists.txt b/CMakeLists.txt | |
index 8c7415a..7e1974a 100644 | |
--- a/CMakeLists.txt | |
+++ b/CMakeLists.txt | |
@@ -8,6 +8,8 @@ set(OKVIS_PATCH_VERSION 3) | |
set(OKVIS_VERSION | |
${OKVIS_MAJOR_VERSION}.${OKVIS_MINOR_VERSION}.${OKVIS_PATCH_VERSION}) | |
+OPTION( BUILD_SHARED_LIBS "Set to OFF to build static libraries" ON ) | |
+ | |
# options for build configuration | |
option (USE_SYSTEM_BRISK | |
"Use brisk via find_package rather than downloading it as part of okvis" OFF) | |
@@ -60,7 +62,7 @@ if(APPLE) | |
# possible on OSX just yet. | |
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=native -Wall -std=c++11 -fPIC") | |
else() | |
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=native -Wall -std=c++11 -fPIC") | |
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -std=c++11 -fPIC") | |
endif() | |
if(${CMAKE_HOST_SYSTEM_PROCESSOR} MATCHES "arm*") | |
@@ -113,22 +115,25 @@ else() | |
ExternalProject_Add(brisk_external | |
URL "https://www.doc.ic.ac.uk/~sleutene/software/brisk-2.0.3.zip" | |
INSTALL_DIR ${CMAKE_BINARY_DIR} | |
+ PATCH_COMMAND # forcing static libs | |
+ COMMAND ${CMAKE_COMMAND} -E copy ${PROJECT_SOURCE_DIR}/cmake/brisk/CMakeLists.txt ${CMAKE_CURRENT_BINARY_DIR}/brisk/src/brisk_external/CMakeLists.txt | |
+ COMMAND ${CMAKE_COMMAND} -E copy ${PROJECT_SOURCE_DIR}/cmake/brisk/agast/CMakeLists.txt ${CMAKE_CURRENT_BINARY_DIR}/brisk/src/brisk_external/agast/CMakeLists.txt | |
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR> -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE} | |
PREFIX ${CMAKE_CURRENT_BINARY_DIR}/brisk | |
BUILD_IN_SOURCE 0 | |
BUILD_COMMAND make -j${N_CORES} | |
INSTALL_COMMAND make install | |
) | |
- add_library(brisk STATIC IMPORTED) | |
- add_library(agast STATIC IMPORTED) | |
+ add_library(brisk SHARED IMPORTED) | |
+ add_library(agast SHARED IMPORTED) | |
set(BRISK_LIBRARIES brisk agast) | |
- set_target_properties(brisk PROPERTIES IMPORTED_LOCATION ${CMAKE_BINARY_DIR}/lib/libbrisk.a) | |
- set_target_properties(agast PROPERTIES IMPORTED_LOCATION ${CMAKE_BINARY_DIR}/lib/libagast.a) | |
+ set_target_properties(brisk PROPERTIES IMPORTED_LOCATION ${CMAKE_BINARY_DIR}/lib/libbrisk.so) | |
+ set_target_properties(agast PROPERTIES IMPORTED_LOCATION ${CMAKE_BINARY_DIR}/lib/libagast.so) | |
add_dependencies(brisk brisk_external) | |
add_dependencies(agast brisk_external) | |
# install it once built | |
- install(FILES ${CMAKE_BINARY_DIR}/lib/libbrisk.a ${CMAKE_BINARY_DIR}/lib/libagast.a | |
+ install(FILES ${CMAKE_BINARY_DIR}/lib/libbrisk.so ${CMAKE_BINARY_DIR}/lib/libagast.so | |
DESTINATION ${CMAKE_INSTALL_PREFIX}/lib) | |
install(DIRECTORY ${CMAKE_BINARY_DIR}/include/brisk/ | |
DESTINATION ${CMAKE_INSTALL_PREFIX}/include/brisk/) | |
@@ -155,6 +160,7 @@ else() | |
CMAKE_ARGS | |
-DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR> | |
-DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE} | |
+ -DBUILD_SHARED_LIBS:BOOL=ON | |
-DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS} | |
-DBUILD_EXAMPLES:BOOL=OFF | |
-DBUILD_TESTING:BOOL=OFF | |
@@ -181,10 +187,10 @@ else() | |
if ("${CMAKE_BUILD_TYPE}" STREQUAL "Debug") | |
set_property(TARGET ceres PROPERTY IMPORTED_LOCATION | |
- ${CMAKE_BINARY_DIR}/${CERES_LIB_PREFIX}/libceres-debug.a ) | |
+ ${CMAKE_BINARY_DIR}/${CERES_LIB_PREFIX}/libceres-debug.so ) | |
else () | |
set_property(TARGET ceres PROPERTY IMPORTED_LOCATION | |
- ${CMAKE_BINARY_DIR}/${CERES_LIB_PREFIX}/libceres.a ) | |
+ ${CMAKE_BINARY_DIR}/${CERES_LIB_PREFIX}/libceres.so ) | |
endif () | |
find_package(OpenMP QUIET) | |
@@ -199,7 +205,11 @@ else() | |
add_dependencies(${CERES_LIBRARIES} ceres_external) | |
# install it once built | |
- install(FILES ${CMAKE_BINARY_DIR}/${CERES_LIB_PREFIX}/libceres.a | |
+ install(FILES ${CMAKE_BINARY_DIR}/${CERES_LIB_PREFIX}/libceres.so | |
+ DESTINATION ${CMAKE_INSTALL_PREFIX}/lib) | |
+ install(FILES ${CMAKE_BINARY_DIR}/${CERES_LIB_PREFIX}/libceres.so.1 | |
+ DESTINATION ${CMAKE_INSTALL_PREFIX}/lib) | |
+ install(FILES ${CMAKE_BINARY_DIR}/${CERES_LIB_PREFIX}/libceres.so.${CERES_VERSION} | |
DESTINATION ${CMAKE_INSTALL_PREFIX}/lib) | |
install(DIRECTORY ${CMAKE_BINARY_DIR}/include/ceres/ | |
DESTINATION ${CMAKE_INSTALL_PREFIX}/include/ceres/) | |
@@ -230,13 +240,13 @@ ExternalProject_Add(opengv_external | |
BUILD_COMMAND make -j${N_CORES} | |
INSTALL_COMMAND make install | |
) | |
-add_library(opengv STATIC IMPORTED) | |
+add_library(opengv SHARED IMPORTED) | |
set(OpenGV_LIBRARIES opengv) | |
-set_target_properties(opengv PROPERTIES IMPORTED_LOCATION ${CMAKE_BINARY_DIR}/lib/libopengv.a) | |
+set_target_properties(opengv PROPERTIES IMPORTED_LOCATION ${CMAKE_BINARY_DIR}/lib/libopengv.so) | |
add_dependencies(${OpenGV_LIBRARIES} opengv_external) | |
# install it once built | |
-install(FILES ${CMAKE_BINARY_DIR}/lib/libopengv.a | |
+install(FILES ${CMAKE_BINARY_DIR}/lib/libopengv.so | |
DESTINATION ${CMAKE_INSTALL_PREFIX}/lib) | |
install(DIRECTORY ${CMAKE_BINARY_DIR}/include/opengv/ | |
DESTINATION ${CMAKE_INSTALL_PREFIX}/include/opengv/) | |
@@ -315,6 +325,7 @@ add_dependencies(okvis_multisensor_processing okvis_util) | |
# also build the apps | |
if(BUILD_APPS) | |
FIND_PACKAGE(Boost COMPONENTS filesystem system REQUIRED) | |
+FIND_PACKAGE(OpenCV COMPONENTS REQUIRED) | |
include_directories(${Boost_INCLUDE_DIRS}) | |
add_executable(okvis_app_synchronous okvis_apps/src/okvis_app_synchronous.cpp) | |
target_link_libraries(okvis_app_synchronous | |
@@ -330,6 +341,10 @@ if(BUILD_APPS) | |
okvis_multisensor_processing | |
pthread | |
${Boost_LIBRARIES} | |
+${CERES_LIBRARIES} | |
+${OpenGV_LIBRARIES} | |
+${OpenCV_LIBRARIES} | |
+ | |
) | |
if(${VISENSORDRIVER_FOUND}) | |
target_link_libraries(okvis_app_synchronous ${VISensorDriver_LIBRARY}) | |
diff --git a/cmake/brisk/CMakeLists.txt b/cmake/brisk/CMakeLists.txt | |
new file mode 100755 | |
index 0000000..4349a4f | |
--- /dev/null | |
+++ b/cmake/brisk/CMakeLists.txt | |
@@ -0,0 +1,161 @@ | |
+cmake_minimum_required(VERSION 2.8.11) | |
+include(CheckIncludeFiles) | |
+ | |
+project(brisk) | |
+# The version number. | |
+set(BRISK_MAJOR_VERSION 2) | |
+set(BRISK_MINOR_VERSION 0) | |
+set(BRISK_PATCH_VERSION 2) | |
+set(BRISK_VERSION | |
+ ${BRISK_MAJOR_VERSION}.${BRISK_MINOR_VERSION}.${BRISK_PATCH_VERSION}) | |
+ | |
+# Offer the user the choice of overriding the installation directories | |
+set(INSTALL_LIB_DIR lib CACHE PATH "Installation directory for libraries") | |
+set(INSTALL_BIN_DIR bin CACHE PATH "Installation directory for executables") | |
+set(INSTALL_INCLUDE_DIR include CACHE PATH | |
+ "Installation directory for header files") | |
+if(WIN32 AND NOT CYGWIN) | |
+ set(DEF_INSTALL_CMAKE_DIR CMake) | |
+else() | |
+ set(DEF_INSTALL_CMAKE_DIR lib/CMake/brisk) | |
+endif() | |
+set(INSTALL_CMAKE_DIR ${DEF_INSTALL_CMAKE_DIR} CACHE PATH | |
+ "Installation directory for CMake files") | |
+ | |
+# Make relative paths absolute (needed later on) | |
+foreach(p LIB BIN INCLUDE CMAKE) | |
+ set(var INSTALL_${p}_DIR) | |
+ if(NOT IS_ABSOLUTE "${${var}}") | |
+ set(${var} "${CMAKE_INSTALL_PREFIX}/${${var}}") | |
+ endif() | |
+endforeach() | |
+ | |
+# make sure we use Release and warn otherwise | |
+if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES) | |
+ message(STATUS "Setting build type to 'Release' as none was specified.") | |
+ set(CMAKE_BUILD_TYPE Release CACHE STRING "Choose the type of build." FORCE) | |
+ # Set the possible values of build type for cmake-gui | |
+ set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS "Debug" "Release" | |
+ "MinSizeRel" "RelWithDebInfo") | |
+endif() | |
+if (NOT "${CMAKE_BUILD_TYPE}" STREQUAL "Release") | |
+ message(WARNING "CMAKE_BUILD_TYPE not set to 'Release'. Performance may be terrible.") | |
+else() | |
+ message(STATUS "Building with build type '${CMAKE_BUILD_TYPE}'") | |
+endif() | |
+ | |
+# require OpenCV | |
+find_package( OpenCV REQUIRED ) | |
+include_directories(BEFORE ${OpenCV_INCLUDE_DIRS}) | |
+ | |
+if(${CMAKE_HOST_SYSTEM_PROCESSOR} MATCHES "arm*") | |
+ message(STATUS "ARM processor detected, will attempt to use NEON.") | |
+ add_definitions(-mfpu=neon -DHAVE_OPENCV -Wall -pedantic -std=c++0x -fPIC) | |
+else() | |
+ message(STATUS "Assuming SSE instructions available.") | |
+ add_definitions(-mssse3 -DHAVE_OPENCV -Wall -pedantic -std=c++0x -fPIC) | |
+endif() | |
+ | |
+# set up the output tree | |
+set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) | |
+set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) | |
+set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin) | |
+ | |
+# check include file safely | |
+get_property(dirs DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY INCLUDE_DIRECTORIES) | |
+foreach(dir ${dirs}) | |
+ if(EXISTS "${dir}/opencv2/nonfree/nonfree.hpp") | |
+ set(HAVE_OPENCV_NONFREE_H TRUE) | |
+ #message(STATUS "Found ${dir}/opencv2/nonfree/nonfree.hpp, setting HAVE_OPENCV_NONFREE_H=TRUE") | |
+ endif() | |
+endforeach() | |
+if(${OpenCV_VERSION_MAJOR} STREQUAL 3) | |
+ message(WARNING "Nonfree module disabled, demo application with limited functionality") | |
+endif() | |
+ | |
+if(NOT APPLE) | |
+ # The clang compiler (on osx) is somehow much more strict | |
+ # than the compilers on ubuntu and so this does not seem | |
+ # possible on OSX just yet. | |
+ add_definitions( -Werror ) | |
+endif() | |
+ | |
+# the absolute path to the demo images | |
+set(BRISK_IMAGE_PATH \"${PROJECT_SOURCE_DIR}/images\") | |
+add_definitions(-DBRISK_IMAGE_PATH=${BRISK_IMAGE_PATH}) | |
+ | |
+# build agast | |
+include_directories(agast/include) | |
+include_directories(include) | |
+add_subdirectory(agast) | |
+ | |
+# build brisk | |
+add_library(${PROJECT_NAME} SHARED | |
+ src/brisk-descriptor-extractor.cc | |
+ src/brisk-feature-detector.cc | |
+ src/brisk-layer.cc | |
+ src/brisk-scale-space.cc | |
+ src/brute-force-matcher.cc | |
+ src/harris-feature-detector.cc | |
+ src/harris-score-calculator.cc | |
+ src/harris-score-calculator-float.cc | |
+ src/harris-scores.cc | |
+ src/image-down-sampling.cc | |
+ src/pattern-provider.cc | |
+ src/vectorized-filters.cc) | |
+ | |
+# and link it | |
+target_link_libraries(${PROJECT_NAME} PUBLIC ${OpenCV_LIBS} agast) | |
+ | |
+if(HAVE_OPENCV_NONFREE_H) | |
+ # build the nonfree demo version | |
+ add_executable(demo src/demo.cc) | |
+ target_link_libraries(demo ${PROJECT_NAME}) | |
+else() | |
+ # build the free demo version | |
+ add_executable(demo src/demo-free.cc) | |
+ target_link_libraries(demo ${PROJECT_NAME}) | |
+endif() | |
+ | |
+# installation if required | |
+install(TARGETS ${PROJECT_NAME} EXPORT briskTargets ARCHIVE DESTINATION ${INSTALL_LIB_DIR} LIBRARY DESTINATION ${INSTALL_LIB_DIR}) | |
+install(TARGETS demo EXPORT briskTargets DESTINATION ${INSTALL_BIN_DIR}) | |
+install(DIRECTORY include/ DESTINATION ${INSTALL_INCLUDE_DIR} COMPONENT dev FILES_MATCHING PATTERN "*.h") | |
+ | |
+# installation is invoked in the individual modules... | |
+export (TARGETS | |
+ brisk | |
+ agast | |
+ demo | |
+ FILE "${PROJECT_BINARY_DIR}/briskTargets.cmake") | |
+export ( PACKAGE brisk ) | |
+ | |
+# Create the briskConfig.cmake and briskConfigVersion files | |
+file(RELATIVE_PATH REL_INCLUDE_DIR "${INSTALL_CMAKE_DIR}" | |
+ "${INSTALL_INCLUDE_DIR}") | |
+# ... for the build tree | |
+set(CONF_INCLUDE_DIRS | |
+ "${PROJECT_SOURCE_DIR}/include" | |
+ "${PROJECT_SOURCE_DIR}/agast/include" | |
+ "${PROJECT_BINARY_DIR}" | |
+) | |
+configure_file(cmake/briskConfig.cmake.in | |
+ "${PROJECT_BINARY_DIR}/briskConfig.cmake" @ONLY) | |
+# ... for the install tree | |
+set(CONF_INCLUDE_DIRS "\${BRISK_CMAKE_DIR}/${REL_INCLUDE_DIR}") | |
+configure_file(cmake/briskConfig.cmake.in | |
+ "${PROJECT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/briskConfig.cmake" @ONLY) | |
+# ... for both | |
+configure_file(cmake/briskConfigVersion.cmake.in | |
+ "${PROJECT_BINARY_DIR}/briskConfigVersion.cmake" @ONLY) | |
+ | |
+# Install the briskConfig.cmake and briskConfigVersion.cmake | |
+install(FILES | |
+ "${PROJECT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/briskConfig.cmake" | |
+ "${PROJECT_BINARY_DIR}/briskConfigVersion.cmake" | |
+ DESTINATION "${INSTALL_CMAKE_DIR}") | |
+ | |
+# Install the export set for use with the install-tree | |
+install(EXPORT briskTargets DESTINATION | |
+ "${INSTALL_CMAKE_DIR}") | |
+ | |
diff --git a/cmake/brisk/agast/CMakeLists.txt b/cmake/brisk/agast/CMakeLists.txt | |
new file mode 100755 | |
index 0000000..3df111d | |
--- /dev/null | |
+++ b/cmake/brisk/agast/CMakeLists.txt | |
@@ -0,0 +1,37 @@ | |
+cmake_minimum_required(VERSION 2.8.11) | |
+ | |
+project(agast) | |
+ | |
+if(NOT DEFINED CMAKE_BUILD_TYPE) | |
+ set(CMAKE_BUILD_TYPE Release) | |
+endif() | |
+ | |
+# require OpenCV | |
+find_package( OpenCV REQUIRED ) | |
+include_directories(${OpenCV_INCLUDE_DIRS}) | |
+ | |
+if(APPLE) | |
+ add_definitions(-Wall -pedantic -DHAVE_OPENCV -DAGAST_GLOG -std=c++11) | |
+else() | |
+ add_definitions(-Wall -Werror -pedantic -DHAVE_OPENCV -DAGAST_GLOG -std=c++0x) | |
+endif() | |
+ | |
+# build the agast library | |
+add_library(${PROJECT_NAME} SHARED | |
+ src/agast5-8.cc | |
+ src/agast5-8-nms.cc | |
+ src/agast7-12d.cc | |
+ src/agast7-12d-nms.cc | |
+ src/agast7-12s.cc | |
+ src/agast7-12s-nms.cc | |
+ src/ast-detector.cc | |
+ src/non-maximum-suppression.cc | |
+ src/oast9-16.cc | |
+ src/oast9-16-nms.cc) | |
+ | |
+# and link it | |
+target_link_libraries(${PROJECT_NAME} ${OpenCV_LIBS}) | |
+ | |
+# installation if required | |
+install(TARGETS ${PROJECT_NAME} EXPORT briskTargets ARCHIVE DESTINATION ${INSTALL_LIB_DIR} LIBRARY DESTINATION ${INSTALL_LIB_DIR}) | |
+install(DIRECTORY include/ DESTINATION ${INSTALL_INCLUDE_DIR} COMPONENT dev FILES_MATCHING PATTERN "*.h") | |
diff --git a/cmake/opengv/CMakeLists.txt b/cmake/opengv/CMakeLists.txt | |
index 907aa31..70db13c 100644 | |
--- a/cmake/opengv/CMakeLists.txt | |
+++ b/cmake/opengv/CMakeLists.txt | |
@@ -42,7 +42,7 @@ set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin) | |
#set the default path for built libraries to the "lib" directory | |
set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib) | |
-add_definitions (-Wall -march=native -O3) #TODO use correct c++11 def once everybody has moved to gcc 4.7 # for now I even removed std=gnu++0x | |
+add_definitions (-Wall -O3) #TODO use correct c++11 def once everybody has moved to gcc 4.7 # for now I even removed std=gnu++0x | |
# get eigen (and boost under windows) | |
IF(WIN32) | |
@@ -184,9 +184,9 @@ IF(WIN32) | |
test/time_measurement.hpp ) | |
endif() | |
ELSE() | |
- add_library( opengv STATIC ${OPENGV_SOURCE_FILES} ${OPENGV_HEADER_FILES} ) | |
+ add_library( opengv SHARED ${OPENGV_SOURCE_FILES} ${OPENGV_HEADER_FILES} ) | |
if(DEFINED BUILD_TESTS) | |
- add_library( random_generators STATIC | |
+ add_library( random_generators SHARED | |
test/random_generators.cpp | |
test/random_generators.hpp | |
test/experiment_helpers.cpp | |
@@ -252,6 +252,7 @@ endif() | |
install(TARGETS opengv | |
EXPORT opengvTargets | |
ARCHIVE DESTINATION "${INSTALL_LIB_DIR}" COMPONENT lib | |
+ LIBRARY DESTINATION "${INSTALL_LIB_DIR}" COMPONENT lib | |
) | |
install(DIRECTORY include/ DESTINATION ${INSTALL_INCLUDE_DIR} COMPONENT dev FILES_MATCHING PATTERN "*.hpp") | |
diff --git a/okvis_ceres/CMakeLists.txt b/okvis_ceres/CMakeLists.txt | |
index 5519c95..d4e9547 100644 | |
--- a/okvis_ceres/CMakeLists.txt | |
+++ b/okvis_ceres/CMakeLists.txt | |
@@ -38,7 +38,7 @@ target_link_libraries(${PROJECT_NAME} | |
# installation if required | |
install(TARGETS ${PROJECT_NAME} | |
EXPORT okvisTargets | |
- ARCHIVE DESTINATION "${INSTALL_LIB_DIR}" COMPONENT lib | |
+ LIBRARY DESTINATION "${INSTALL_LIB_DIR}" COMPONENT lib | |
) | |
install(DIRECTORY include/ DESTINATION ${INSTALL_INCLUDE_DIR} COMPONENT dev FILES_MATCHING PATTERN "*.hpp") | |
diff --git a/okvis_common/CMakeLists.txt b/okvis_common/CMakeLists.txt | |
index a02de0a..97d063b 100644 | |
--- a/okvis_common/CMakeLists.txt | |
+++ b/okvis_common/CMakeLists.txt | |
@@ -12,7 +12,7 @@ find_package( Eigen REQUIRED ) | |
include_directories(${EIGEN_INCLUDE_DIR}) | |
# build the library | |
-add_library(${PROJECT_NAME} STATIC | |
+add_library(${PROJECT_NAME} | |
src/VioInterface.cpp | |
src/VioParametersReader.cpp | |
include/okvis/FrameTypedefs.hpp | |
@@ -34,6 +34,6 @@ target_link_libraries(${PROJECT_NAME} | |
# installation if required | |
install(TARGETS ${PROJECT_NAME} | |
EXPORT okvisTargets | |
- ARCHIVE DESTINATION "${INSTALL_LIB_DIR}" COMPONENT lib | |
+ LIBRARY DESTINATION "${INSTALL_LIB_DIR}" COMPONENT lib | |
) | |
install(DIRECTORY include/ DESTINATION ${INSTALL_INCLUDE_DIR} COMPONENT dev FILES_MATCHING PATTERN "*.hpp") | |
diff --git a/okvis_cv/CMakeLists.txt b/okvis_cv/CMakeLists.txt | |
index 4278bbd..9a2a916 100644 | |
--- a/okvis_cv/CMakeLists.txt | |
+++ b/okvis_cv/CMakeLists.txt | |
@@ -11,7 +11,7 @@ find_package( OpenCV COMPONENTS core highgui imgproc features2d REQUIRED ) | |
include_directories(BEFORE ${OpenCV_INCLUDE_DIRS}) | |
# build the library | |
-add_library(${PROJECT_NAME} STATIC | |
+add_library(${PROJECT_NAME} | |
src/CameraBase.cpp | |
src/NCameraSystem.cpp | |
) | |
@@ -28,7 +28,7 @@ target_link_libraries(${PROJECT_NAME} | |
# installation if required | |
install(TARGETS ${PROJECT_NAME} | |
EXPORT okvisTargets | |
- ARCHIVE DESTINATION "${INSTALL_LIB_DIR}" COMPONENT lib | |
+ LIBRARY DESTINATION "${INSTALL_LIB_DIR}" COMPONENT lib | |
) | |
install(DIRECTORY include/ DESTINATION ${INSTALL_INCLUDE_DIR} COMPONENT dev FILES_MATCHING PATTERN "*.hpp") | |
diff --git a/okvis_frontend/CMakeLists.txt b/okvis_frontend/CMakeLists.txt | |
index f768cf0..d90d143 100644 | |
--- a/okvis_frontend/CMakeLists.txt | |
+++ b/okvis_frontend/CMakeLists.txt | |
@@ -42,6 +42,6 @@ target_link_libraries(${PROJECT_NAME} | |
# installation if required | |
install(TARGETS ${PROJECT_NAME} | |
EXPORT okvisTargets | |
- ARCHIVE DESTINATION "${INSTALL_LIB_DIR}" COMPONENT lib | |
+ LIBRARY DESTINATION "${INSTALL_LIB_DIR}" COMPONENT lib | |
) | |
install(DIRECTORY include/ DESTINATION ${INSTALL_INCLUDE_DIR} COMPONENT dev FILES_MATCHING PATTERN "*.hpp") | |
diff --git a/okvis_kinematics/CMakeLists.txt b/okvis_kinematics/CMakeLists.txt | |
index 0f87e16..a7f3733 100644 | |
--- a/okvis_kinematics/CMakeLists.txt | |
+++ b/okvis_kinematics/CMakeLists.txt | |
@@ -7,7 +7,7 @@ find_package( Eigen REQUIRED ) | |
include_directories(${EIGEN_INCLUDE_DIR}) | |
# build the library | |
-add_library(${PROJECT_NAME} STATIC src/dependency-tracker.cc) | |
+add_library(${PROJECT_NAME} src/dependency-tracker.cc) | |
# and link it | |
target_link_libraries(${PROJECT_NAME} | |
@@ -17,7 +17,7 @@ target_link_libraries(${PROJECT_NAME} | |
# installation if required | |
install(TARGETS ${PROJECT_NAME} | |
EXPORT okvisTargets | |
- ARCHIVE DESTINATION "${INSTALL_LIB_DIR}" COMPONENT lib | |
+ LIBRARY DESTINATION "${INSTALL_LIB_DIR}" COMPONENT lib | |
) | |
install(DIRECTORY include/ DESTINATION ${INSTALL_INCLUDE_DIR} COMPONENT dev FILES_MATCHING PATTERN "*.hpp") | |
diff --git a/okvis_matcher/CMakeLists.txt b/okvis_matcher/CMakeLists.txt | |
index ee7af38..6a5c353 100644 | |
--- a/okvis_matcher/CMakeLists.txt | |
+++ b/okvis_matcher/CMakeLists.txt | |
@@ -19,7 +19,7 @@ target_link_libraries(${PROJECT_NAME} | |
# installation if required | |
install(TARGETS ${PROJECT_NAME} | |
EXPORT okvisTargets | |
- ARCHIVE DESTINATION "${INSTALL_LIB_DIR}" COMPONENT lib | |
+ LIBRARY DESTINATION "${INSTALL_LIB_DIR}" COMPONENT lib | |
PUBLIC_HEADER DESTINATION "${INSTALL_INCLUDE_DIR}/okvis" COMPONENT dev | |
) | |
install(DIRECTORY include/ DESTINATION ${INSTALL_INCLUDE_DIR} COMPONENT dev FILES_MATCHING PATTERN "*.hpp") | |
diff --git a/okvis_multisensor_processing/CMakeLists.txt b/okvis_multisensor_processing/CMakeLists.txt | |
index ab131c2..969c187 100644 | |
--- a/okvis_multisensor_processing/CMakeLists.txt | |
+++ b/okvis_multisensor_processing/CMakeLists.txt | |
@@ -50,7 +50,7 @@ set_target_properties(${PROJECT_NAME} PROPERTIES PUBLIC_HEADER ${CMAKE_CURRENT_B | |
# installation if required | |
install(TARGETS ${PROJECT_NAME} | |
EXPORT okvisTargets | |
- ARCHIVE DESTINATION "${INSTALL_LIB_DIR}" COMPONENT lib | |
+ LIBRARY DESTINATION "${INSTALL_LIB_DIR}" COMPONENT lib | |
PUBLIC_HEADER DESTINATION "${INSTALL_INCLUDE_DIR}/okvis" COMPONENT dev | |
) | |
install(DIRECTORY include/ DESTINATION ${INSTALL_INCLUDE_DIR} COMPONENT dev FILES_MATCHING PATTERN "*.hpp") | |
diff --git a/okvis_time/CMakeLists.txt b/okvis_time/CMakeLists.txt | |
index 0f6fded..99affda 100644 | |
--- a/okvis_time/CMakeLists.txt | |
+++ b/okvis_time/CMakeLists.txt | |
@@ -15,6 +15,6 @@ add_library(${PROJECT_NAME} | |
# installation if required | |
install(TARGETS ${PROJECT_NAME} | |
EXPORT okvisTargets | |
- ARCHIVE DESTINATION "${INSTALL_LIB_DIR}" COMPONENT lib | |
+ LIBRARY DESTINATION "${INSTALL_LIB_DIR}" COMPONENT lib | |
) | |
install(DIRECTORY include/ DESTINATION ${INSTALL_INCLUDE_DIR} COMPONENT dev FILES_MATCHING PATTERN "*.hpp") | |
diff --git a/okvis_timing/CMakeLists.txt b/okvis_timing/CMakeLists.txt | |
index 186d430..911fe12 100644 | |
--- a/okvis_timing/CMakeLists.txt | |
+++ b/okvis_timing/CMakeLists.txt | |
@@ -11,6 +11,6 @@ target_link_libraries(${PROJECT_NAME} PUBLIC okvis_util) | |
# installation if required | |
install(TARGETS ${PROJECT_NAME} | |
EXPORT okvisTargets | |
- ARCHIVE DESTINATION "${INSTALL_LIB_DIR}" COMPONENT lib | |
+ LIBRARY DESTINATION "${INSTALL_LIB_DIR}" COMPONENT lib | |
) | |
install(DIRECTORY include/ DESTINATION ${INSTALL_INCLUDE_DIR} COMPONENT dev FILES_MATCHING PATTERN "*.hpp") | |
diff --git a/okvis_util/CMakeLists.txt b/okvis_util/CMakeLists.txt | |
index 3f2f1ba..c93e1d2 100644 | |
--- a/okvis_util/CMakeLists.txt | |
+++ b/okvis_util/CMakeLists.txt | |
@@ -2,12 +2,12 @@ cmake_minimum_required(VERSION 2.8.11) | |
project(okvis_util) | |
# nothing to build for now... | |
-add_library(${PROJECT_NAME} STATIC src/dependency-tracker.cc) | |
+add_library(${PROJECT_NAME} src/dependency-tracker.cc) | |
# installation if required | |
install(TARGETS ${PROJECT_NAME} | |
EXPORT okvisTargets | |
- ARCHIVE DESTINATION "${INSTALL_LIB_DIR}" COMPONENT lib | |
+ LIBRARY DESTINATION "${INSTALL_LIB_DIR}" COMPONENT lib | |
PUBLIC_HEADER DESTINATION "${INSTALL_INCLUDE_DIR}/okvis" COMPONENT dev | |
) | |
install(DIRECTORY include/ DESTINATION ${INSTALL_INCLUDE_DIR} COMPONENT dev FILES_MATCHING PATTERN "*.hpp") | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment