Skip to content
Snippets Groups Projects
Commit 7a0d7f4b authored by Joan Vallvé Navarro's avatar Joan Vallvé Navarro
Browse files

Resolve "Change destination of libxxx.so for WOLF and dependencies"

parent 89e7331e
No related branches found
No related tags found
3 merge requests!28release after RAL,!27After 2nd RAL submission,!24Resolve "Change destination of libxxx.so for WOLF and dependencies"
# Pre-requisites about cmake itself
CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
if(COMMAND cmake_policy)
cmake_policy(SET CMP0005 NEW)
......@@ -12,6 +12,8 @@ SET(CMAKE_MACOSX_RPATH 1)
PROJECT(gnss)
set(PLUGIN_NAME wolf${PROJECT_NAME})
MESSAGE("Starting ${PROJECT_NAME} CMakeLists ...")
SET(EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_SOURCE_DIR}/bin)
SET(LIBRARY_OUTPUT_PATH ${CMAKE_CURRENT_SOURCE_DIR}/lib)
SET(CMAKE_INSTALL_PREFIX /usr/local)
......@@ -41,7 +43,6 @@ if(UNIX)
"${CMAKE_CXX_FLAGS} -Werror=all -Werror=extra -Wno-unknown-pragmas -Wno-sign-compare -Wno-unused-parameter -Wno-missing-field-initializers")
endif(UNIX)
IF(NOT BUILD_TESTS)
OPTION(BUILD_TESTS "Build Unit tests" ON)
ENDIF(NOT BUILD_TESTS)
......@@ -66,16 +67,11 @@ if(BUILD_TESTS)
enable_testing()
endif()
MESSAGE("Starting ${PROJECT_NAME} CMakeLists ...")
CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
#CMAKE modules
SET(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake_modules")
MESSAGE(STATUS ${CMAKE_MODULE_PATH})
# Some wolf compilation options
IF((CMAKE_BUILD_TYPE MATCHES DEBUG) OR (CMAKE_BUILD_TYPE MATCHES debug) OR (CMAKE_BUILD_TYPE MATCHES Debug))
set(_WOLF_DEBUG true)
ENDIF()
......@@ -90,26 +86,11 @@ IF(BUILD_EXAMPLES OR BUILD_TESTS)
set(_WOLF_ROOT_DIR ${CMAKE_SOURCE_DIR})
ENDIF(BUILD_EXAMPLES OR BUILD_TESTS)
#find dependencies.
# ============EXAMPLE==================
FIND_PACKAGE(wolfcore REQUIRED)
FIND_PACKAGE(gnss_utils REQUIRED)
#FIND_PATH(
# Suitesparse_INCLUDE_DIRS
# NAMES SuiteSparse_config.h
# PATHS /usr/include/suitesparse /usr/local/include/suitesparse)
#MESSAGE("Found suitesparse_INCLUDE_DIRS:" ${Suitesparse_INCLUDE_DIRS})
#IF(Suitesparse_INCLUDE_DIRS)
# SET(Suitesparse_FOUND TRUE)
# MESSAGE("Suitesparse FOUND: wolf_solver will be built.")
#ELSE (Suitesparse_INCLUDE_DIRS)
# SET(Suitesparse_FOUND FALSE)
# MESSAGE(FATAL_ERROR "Suitesparse NOT FOUND")
#ENDIF (Suitesparse_INCLUDE_DIRS)
# Define the directory where will be the configured config.h
SET(WOLF_CONFIG_DIR ${PROJECT_BINARY_DIR}/conf/${PROJECT_NAME}/internal)
......@@ -134,14 +115,6 @@ INCLUDE_DIRECTORIES(${gnss_utils_INCLUDE_DIRS})
INCLUDE_DIRECTORIES(BEFORE "include")
#HEADERS
SET(HDRS_COMMON
)
SET(HDRS_MATH
)
SET(HDRS_UTILS
)
SET(HDRS_STATE_BLOCK
)
SET(HDRS_CAPTURE
include/gnss/capture/capture_gnss.h
include/gnss/capture/capture_gnss_fix.h
......@@ -161,8 +134,6 @@ SET(HDRS_FEATURE
include/gnss/feature/feature_gnss_tdcp.h
include/gnss/feature/feature_gnss_satellite.h
)
SET(HDRS_LANDMARK
)
SET(HDRS_PROCESSOR
include/gnss/processor/processor_gnss_fix.h
include/gnss/processor/processor_gnss_tdcp.h
......@@ -171,31 +142,15 @@ SET(HDRS_PROCESSOR
SET(HDRS_SENSOR
include/gnss/sensor/sensor_gnss.h
)
SET(HDRS_SOLVER
)
SET(HDRS_TREE_MANAGER
include/gnss/tree_manager/tree_manager_sliding_window_tdcp.h
)
#SOURCES
SET(SRCS_COMMON
)
SET(SRCS_MATH
)
SET(SRCS_UTILS
)
SET(SRCS_STATE_BLOCK
)
SET(SRCS_CAPTURE
src/capture/capture_gnss.cpp
src/capture/capture_gnss_fix.cpp
)
SET(SRCS_FACTOR
)
SET(SRCS_FEATURE
)
SET(SRCS_LANDMARK
)
SET(SRCS_PROCESSOR
src/processor/processor_gnss_fix.cpp
src/processor/processor_gnss_tdcp.cpp
......@@ -204,54 +159,17 @@ SET(SRCS_PROCESSOR
SET(SRCS_SENSOR
src/sensor/sensor_gnss.cpp
)
SET(SRCS_SOLVER
)
SET(SRCS_TREE_MANAGER
src/tree_manager/tree_manager_sliding_window_tdcp.cpp
)
SET(SRCS_YAML
)
#OPTIONALS
#optional HDRS and SRCS
# ==================EXAMPLE===============
# IF (Ceres_FOUND)
# SET(HDRS_WRAPPER
# include/base/solver_suitesparse/sparse_utils.h
# include/base/solver/solver_manager.h
# include/base/ceres_wrapper/ceres_manager.h
# include/base/ceres_wrapper/cost_function_wrapper.h
# include/base/ceres_wrapper/create_numeric_diff_cost_function.h
# include/base/ceres_wrapper/local_parametrization_wrapper.h
# )
# SET(SRCS_WRAPPER
# src/solver/solver_manager.cpp
# src/ceres_wrapper/ceres_manager.cpp
# src/ceres_wrapper/local_parametrization_wrapper.cpp
# )
# ELSE(Ceres_FOUND)
# SET(HDRS_WRAPPER)
# SET(SRCS_WRAPPER)
# ENDIF(Ceres_FOUND)
# create the shared library
ADD_LIBRARY(${PLUGIN_NAME}
SHARED
${SRCS_CAPTURE}
${SRCS_COMMON}
${SRCS_DTASSC}
${SRCS_FACTOR}
${SRCS_FEATURE}
${SRCS_LANDMARK}
${SRCS_MATH}
${SRCS_PROCESSOR}
${SRCS_SENSOR}
${SRCS_SOLVER}
${SRCS_STATE_BLOCK}
${SRCS_TREE_MANAGER}
${SRCS_UTILS}
${SRCS_WRAPPER}
${SRCS_YAML}
)
# Set compiler options
......@@ -266,13 +184,11 @@ elseif (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
# using GCC
endif()
#Link the created libraries
#===============EXAMPLE=========================
TARGET_LINK_LIBRARIES(${PLUGIN_NAME} ${wolfcore_LIBRARIES})
TARGET_LINK_LIBRARIES(${PLUGIN_NAME} ${gnss_utils_LIBRARIES})
#Build tests
#===============EXAMPLE=========================
IF(BUILD_TESTS)
......@@ -284,35 +200,23 @@ ENDIF(BUILD_TESTS)
#=============================================================
INSTALL(TARGETS ${PLUGIN_NAME} EXPORT ${PLUGIN_NAME}Targets
RUNTIME DESTINATION bin
LIBRARY DESTINATION lib/iri-algorithms
ARCHIVE DESTINATION lib/iri-algorithms)
LIBRARY DESTINATION lib
ARCHIVE DESTINATION lib)
install(EXPORT ${PLUGIN_NAME}Targets DESTINATION lib/cmake/${PLUGIN_NAME})
#install headers
INSTALL(FILES ${HDRS_STATE_BLOCK}
DESTINATION include/iri-algorithms/wolf/plugin_${PROJECT_NAME}/${PROJECT_NAME}/state_block)
INSTALL(FILES ${HDRS_CAPTURE}
DESTINATION include/iri-algorithms/wolf/plugin_${PROJECT_NAME}/${PROJECT_NAME}/capture)
INSTALL(FILES ${HDRS_FACTOR}
DESTINATION include/iri-algorithms/wolf/plugin_${PROJECT_NAME}/${PROJECT_NAME}/factor)
INSTALL(FILES ${HDRS_FEATURE}
DESTINATION include/iri-algorithms/wolf/plugin_${PROJECT_NAME}/${PROJECT_NAME}/feature)
INSTALL(FILES ${HDRS_SENSOR}
DESTINATION include/iri-algorithms/wolf/plugin_${PROJECT_NAME}/${PROJECT_NAME}/sensor)
INSTALL(FILES ${HDRS_PROCESSOR}
DESTINATION include/iri-algorithms/wolf/plugin_${PROJECT_NAME}/${PROJECT_NAME}/processor)
INSTALL(FILES ${HDRS_LANDMARK}
DESTINATION include/iri-algorithms/wolf/plugin_${PROJECT_NAME}/${PROJECT_NAME}/landmark)
INSTALL(FILES ${HDRS_WRAPPER}
DESTINATION include/iri-algorithms/wolf/plugin_${PROJECT_NAME}/${PROJECT_NAME}/ceres_wrapper)
#INSTALL(FILES ${HDRS_SOLVER_SUITESPARSE}
# DESTINATION include/iri-algorithms/wolf/plugin_${PROJECT_NAME}/${PROJECT_NAME}/solver_suitesparse)
INSTALL(FILES ${HDRS_SOLVER}
DESTINATION include/iri-algorithms/wolf/plugin_${PROJECT_NAME}/${PROJECT_NAME}/solver)
INSTALL(FILES ${HDRS_SENSOR}
DESTINATION include/iri-algorithms/wolf/plugin_${PROJECT_NAME}/${PROJECT_NAME}/sensor)
INSTALL(FILES ${HDRS_TREE_MANAGER}
DESTINATION include/iri-algorithms/wolf/plugin_${PROJECT_NAME}/${PROJECT_NAME}/tree_manager)
INSTALL(FILES ${HDRS_YAML}
DESTINATION include/iri-algorithms/wolf/plugin_${PROJECT_NAME}/${PROJECT_NAME}/yaml)
FILE(WRITE ${PROJECT_NAME}.found "")
INSTALL(FILES ${PROJECT_NAME}.found
......
......@@ -12,7 +12,7 @@ ENDIF(wolfgnss_INCLUDE_DIRS)
FIND_LIBRARY(
wolfgnss_LIBRARIES
NAMES libwolfgnss.so
PATHS /usr/local/lib/iri-algorithms)
PATHS /usr/local/lib)
IF(wolfgnss_LIBRARIES)
MESSAGE("Found gnss lib: ${wolfgnss_LIBRARIES}")
ELSE(wolfgnss_LIBRARIES)
......@@ -80,4 +80,9 @@ if(NOT wolf_FOUND)
list(REVERSE wolfgnss_LIBRARIES)
list(APPEND wolfgnss_LIBRARIES ${wolfcore_LIBRARIES})
list(REVERSE wolfgnss_LIBRARIES)
endif()
\ No newline at end of file
endif()
# provide both INCLUDE_DIR and INCLUDE_DIRS
SET(wolfgnss_INCLUDE_DIR ${wolfgnss_INCLUDE_DIRS})
# provide both LIBRARY and LIBRARIES
SET(wolfgnss_LIBRARY ${wolfgnss_LIBRARIES})
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment