Fix block-sparse to crs conversion on windows Change-Id: I2aabdb68afc8152c5d8da157baf22faf8d8f80cf
diff --git a/internal/ceres/CMakeLists.txt b/internal/ceres/CMakeLists.txt index aff218e..b3a7a96 100644 --- a/internal/ceres/CMakeLists.txt +++ b/internal/ceres/CMakeLists.txt
@@ -144,6 +144,7 @@ set_source_files_properties(cuda_kernels_bsm_to_crs.cu.cc PROPERTIES LANGUAGE CUDA) add_library(ceres_cuda_kernels STATIC cuda_kernels_vector_ops.cu.cc cuda_kernels_bsm_to_crs.cu.cc) target_compile_features(ceres_cuda_kernels PRIVATE cxx_std_14) + target_compile_definitions(ceres_cuda_kernels PRIVATE CERES_STATIC_DEFINE) # Enable __host__ / __device__ annotations in lambda declarations target_compile_options(ceres_cuda_kernels PRIVATE --extended-lambda) target_include_directories(ceres_cuda_kernels PRIVATE ${Ceres_SOURCE_DIR}/internal ${Ceres_BINARY_DIR}/${CMAKE_INSTALL_INCLUDEDIR})
diff --git a/internal/ceres/cuda_block_sparse_crs_view_test.cc b/internal/ceres/cuda_block_sparse_crs_view_test.cc index e80d026..dd49ee8 100644 --- a/internal/ceres/cuda_block_sparse_crs_view_test.cc +++ b/internal/ceres/cuda_block_sparse_crs_view_test.cc
@@ -30,6 +30,8 @@ #include "ceres/cuda_block_sparse_crs_view.h" +#include <numeric> + #include <glog/logging.h> #include <gtest/gtest.h>
diff --git a/internal/ceres/cuda_kernels_bsm_to_crs.h b/internal/ceres/cuda_kernels_bsm_to_crs.h index 90b4882..62a2477 100644 --- a/internal/ceres/cuda_kernels_bsm_to_crs.h +++ b/internal/ceres/cuda_kernels_bsm_to_crs.h
@@ -39,8 +39,8 @@ namespace ceres { namespace internal { -class Block; -class Cell; +struct Block; +struct Cell; // Compute structure of CRS matrix using block-sparse structure. // Arrays corresponding to CRS matrix are to be allocated by caller