diff --git a/gtsam/CMakeLists.txt b/gtsam/CMakeLists.txt index fb732ca51..48a6caf89 100644 --- a/gtsam/CMakeLists.txt +++ b/gtsam/CMakeLists.txt @@ -139,8 +139,11 @@ if (GTSAM_BUILD_WRAP) 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}") + if(MSVC) + set(comp_flags_extra "/bigobj") + endif() # 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}}\\\"") + set(mexFlags "${mexFlags} -g COMPFLAGS=\\\"$COMPFLAGS ${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_${build_type_toupper}} ${comp_flags_extra}\\\"") # 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