When GTSAM_BUILD_TYPE_POSTFIXES is enabled, install Matlab toolboxes for different build modes in different directories. Also now using CMake generator expressions to control wrap flags so that build type switching within the IDE works for visual studio and xcode.
parent
b7b655cb7f
commit
fedf276160
|
@ -3,23 +3,39 @@
|
||||||
include(GtsamMatlabWrap)
|
include(GtsamMatlabWrap)
|
||||||
|
|
||||||
# Tests
|
# Tests
|
||||||
message(STATUS "Installing Matlab Toolbox Tests")
|
#message(STATUS "Installing Matlab Toolbox")
|
||||||
install(DIRECTORY "${GTSAM_SOURCE_ROOT_DIR}/matlab/gtsam_tests" DESTINATION "${GTSAM_TOOLBOX_INSTALL_PATH}" FILES_MATCHING PATTERN "*.m" PATTERN ".svn" EXCLUDE)
|
install_matlab_scripts("${GTSAM_SOURCE_ROOT_DIR}/matlab/" "*.m;*.fig")
|
||||||
|
install_matlab_scripts("${GTSAM_SOURCE_ROOT_DIR}/matlab/" "README-gtsam-toolbox.txt")
|
||||||
|
|
||||||
# Examples
|
# Examples
|
||||||
message(STATUS "Installing Matlab Toolbox Examples")
|
#message(STATUS "Installing Matlab Toolbox Examples")
|
||||||
# Matlab files: *.m and *.fig
|
# Matlab files: *.m and *.fig
|
||||||
install(DIRECTORY "${GTSAM_SOURCE_ROOT_DIR}/matlab/gtsam_examples" DESTINATION "${GTSAM_TOOLBOX_INSTALL_PATH}" FILES_MATCHING PATTERN "*.m" PATTERN "*.fig" PATTERN ".svn" EXCLUDE)
|
#install_matlab_scripts("${GTSAM_SOURCE_ROOT_DIR}/matlab/gtsam_examples" "*.m;*.fig")
|
||||||
|
|
||||||
# Utilities
|
# Utilities
|
||||||
message(STATUS "Installing Matlab Toolbox Utilities")
|
#message(STATUS "Installing Matlab Toolbox Utilities")
|
||||||
install(DIRECTORY "${GTSAM_SOURCE_ROOT_DIR}/matlab/+gtsam" DESTINATION "${GTSAM_TOOLBOX_INSTALL_PATH}" FILES_MATCHING PATTERN "*.m" PATTERN ".svn" EXCLUDE)
|
#install_matlab_scripts("${GTSAM_SOURCE_ROOT_DIR}/matlab/+gtsam" "*.m")
|
||||||
install(FILES "${GTSAM_SOURCE_ROOT_DIR}/matlab/README-gtsam-toolbox.txt" DESTINATION "${GTSAM_TOOLBOX_INSTALL_PATH}")
|
|
||||||
|
|
||||||
message(STATUS "Installing Matlab Toolbox Examples (Data)")
|
#message(STATUS "Installing Matlab Toolbox Example Data")
|
||||||
# Data files: *.graph and *.txt
|
# Data files: *.graph, *.mat, and *.txt
|
||||||
file(GLOB matlab_examples_data_graph "${GTSAM_SOURCE_ROOT_DIR}/examples/Data/*.graph")
|
file(GLOB matlab_examples_data_graph "${GTSAM_SOURCE_ROOT_DIR}/examples/Data/*.graph")
|
||||||
file(GLOB matlab_examples_data_mat "${GTSAM_SOURCE_ROOT_DIR}/examples/Data/*.mat")
|
file(GLOB matlab_examples_data_mat "${GTSAM_SOURCE_ROOT_DIR}/examples/Data/*.mat")
|
||||||
file(GLOB matlab_examples_data_txt "${GTSAM_SOURCE_ROOT_DIR}/examples/Data/*.txt")
|
file(GLOB matlab_examples_data_txt "${GTSAM_SOURCE_ROOT_DIR}/examples/Data/*.txt")
|
||||||
set(matlab_examples_data ${matlab_examples_data_graph} ${matlab_examples_data_mat} ${matlab_examples_data_txt})
|
set(matlab_examples_data ${matlab_examples_data_graph} ${matlab_examples_data_mat} ${matlab_examples_data_txt})
|
||||||
install(FILES ${matlab_examples_data} DESTINATION ${GTSAM_TOOLBOX_INSTALL_PATH}/gtsam_examples/Data)
|
if(GTSAM_BUILD_TYPE_POSTFIXES)
|
||||||
|
foreach(build_type ${CMAKE_CONFIGURATION_TYPES})
|
||||||
|
string(TOUPPER "${build_type}" build_type_upper)
|
||||||
|
if("${build_type_upper}" STREQUAL "RELEASE")
|
||||||
|
set(build_type_tag "") # Don't create release mode tag on installed directory
|
||||||
|
else()
|
||||||
|
set(build_type_tag "${build_type}")
|
||||||
|
endif()
|
||||||
|
# Split up filename to strip trailing '/' in GTSAM_TOOLBOX_INSTALL_PATH if there is one
|
||||||
|
get_filename_component(location "${GTSAM_TOOLBOX_INSTALL_PATH}" PATH)
|
||||||
|
get_filename_component(name "${GTSAM_TOOLBOX_INSTALL_PATH}" NAME)
|
||||||
|
install(FILES ${matlab_examples_data} DESTINATION "${location}/${name}${build_type_tag}/gtsam_examples/Data" CONFIGURATIONS "${build_type}")
|
||||||
|
endforeach()
|
||||||
|
else()
|
||||||
|
install(FILES ${matlab_examples_data} DESTINATION ${GTSAM_TOOLBOX_INSTALL_PATH}/gtsam_examples/Data)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue