Escapes to get quotes into compile/link flags for mex
parent
d2620d2ebc
commit
dbc5ece062
|
@ -94,7 +94,10 @@ if (GTSAM_BUILD_STATIC_LIBRARY)
|
|||
install(TARGETS gtsam-static EXPORT GTSAM-exports ARCHIVE DESTINATION lib)
|
||||
list(APPEND GTSAM_EXPORTED_TARGETS gtsam-static)
|
||||
set(GTSAM_EXPORTED_TARGETS "${GTSAM_EXPORTED_TARGETS}" PARENT_SCOPE)
|
||||
set(gtsam-lib "gtsam-static")
|
||||
set(gtsam-lib gtsam-static)
|
||||
if(NOT GTSAM_BUILD_SHARED_LIBRARY)
|
||||
set(gtsam-prefer-shared gtsam-static)
|
||||
endif()
|
||||
endif (GTSAM_BUILD_STATIC_LIBRARY)
|
||||
|
||||
if (GTSAM_BUILD_SHARED_LIBRARY)
|
||||
|
@ -112,6 +115,7 @@ if (GTSAM_BUILD_SHARED_LIBRARY)
|
|||
if (NOT GTSAM_BUILD_STATIC_LIBRARY)
|
||||
set(gtsam-lib "gtsam-shared")
|
||||
endif()
|
||||
set(gtsam-prefer-shared gtsam-shared)
|
||||
endif(GTSAM_BUILD_SHARED_LIBRARY)
|
||||
|
||||
# Create the matlab toolbox for the gtsam library
|
||||
|
@ -132,9 +136,11 @@ if (GTSAM_BUILD_WRAP)
|
|||
endif()
|
||||
|
||||
# Generate, build and install toolbox
|
||||
set(mexFlags "${GTSAM_BUILD_MEX_BINARY_FLAGS} ${CMAKE_CXX_FLAGS} -I${Boost_INCLUDE_DIR} -I${MEX_INCLUDE_ROOT} -I${MEX_INCLUDE_ROOT}/gtsam -I${MEX_INCLUDE_ROOT}/gtsam/base -I${MEX_INCLUDE_ROOT}/gtsam/geometry -I${MEX_INCLUDE_ROOT}/gtsam/linear -I${MEX_INCLUDE_ROOT}/gtsam/discrete -I${MEX_INCLUDE_ROOT}/gtsam/inference -I${MEX_INCLUDE_ROOT}/gtsam/nonlinear -I${MEX_INCLUDE_ROOT}/gtsam/slam -L${GTSAM_LIB_DIR} -lgtsam")
|
||||
string(TOUPPER "${CMAKE_BUILD_TYPE}" cmake_build_type_toupper)
|
||||
set(mexFlags "${mexFlags} -g COMPFLAGS='/c /DMATLAB_MEX_FILE ${CMAKE_CXX_FLAGS_${cmake_build_type_toupper}}'")
|
||||
string(TOUPPER ${CMAKE_BUILD_TYPE} build_type_toupper)
|
||||
get_target_property(gtsam_library_file ${gtsam-prefer-shared} LOCATION_${build_type_toupper})
|
||||
set(mexFlags "${GTSAM_BUILD_MEX_BINARY_FLAGS} -I${Boost_INCLUDE_DIR} -I${MEX_INCLUDE_ROOT} -I${MEX_INCLUDE_ROOT}/gtsam -I${MEX_INCLUDE_ROOT}/gtsam/base -I${MEX_INCLUDE_ROOT}/gtsam/geometry -I${MEX_INCLUDE_ROOT}/gtsam/linear -I${MEX_INCLUDE_ROOT}/gtsam/discrete -I${MEX_INCLUDE_ROOT}/gtsam/inference -I${MEX_INCLUDE_ROOT}/gtsam/nonlinear -I${MEX_INCLUDE_ROOT}/gtsam/slam ${gtsam_library_file}")
|
||||
# Lots of escapes '\' here because they get eaten during subsequent calls to 'set'
|
||||
set(mexFlags "${mexFlags} -g COMPFLAGS=\\\"$$COMPFLAGS ${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_${build_type_toupper}}\\\"")
|
||||
|
||||
# Macro to handle details of setting up targets
|
||||
# FIXME: issue with dependency between wrap_gtsam and wrap_gtsam_build, only shows up on CMake 2.8.3
|
||||
|
|
Loading…
Reference in New Issue