From 35216867dd097d91a20eaf7f10b9c5bd3cc7c2f7 Mon Sep 17 00:00:00 2001 From: Cong Zhang Date: Fri, 27 Apr 2018 19:31:27 +0800 Subject: [PATCH] use cmake offical FindMatlab and matlab_add_mex --- Lib/src/CMakeLists.txt | 8 +++---- Lib/src/recon/CMakeLists.txt | 1 - Lib/src/recon/DoGridding/CMakeLists.txt | 20 +---------------- Lib/src/renderer/CMakeLists.txt | 1 - .../renderer/DoKSpaceTrajVTK/CMakeLists.txt | 18 +-------------- .../DoSARAverageAtCPU/CMakeLists.txt | 22 ++----------------- 6 files changed, 7 insertions(+), 63 deletions(-) diff --git a/Lib/src/CMakeLists.txt b/Lib/src/CMakeLists.txt index 8dd7321..05620a4 100644 --- a/Lib/src/CMakeLists.txt +++ b/Lib/src/CMakeLists.txt @@ -1,23 +1,21 @@ - cmake_minimum_required(VERSION 2.8) project(MRiLab) set(CMAKE_INSTALL_PREFIX ${CMAKE_SOURCE_DIR}) -set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake) +#set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake) set(CMAKE_SIZEOF_VOID_P 8) # use 64-bit by default set(CMAKE_BUILD_TYPE Release) # use Release version by default add_definitions(/DMATLAB_MEX_FILE) #define matlab macros add_definitions(/DMX_COMPAT_32) -find_package(Matlab REQUIRED) +find_package(Matlab REQUIRED MX_LIBRARY ENG_LIBRARY MAIN_PROGRAM) find_package(IPP) find_package(Framewave) find_package(OpenMP) -find_package(CUDA) find_package(VTK) find_package(Ismrmrd) -find_package(Boost COMPONENTS thread system) +find_package(Boost) IF(MATLAB_FOUND) add_subdirectory(engine) diff --git a/Lib/src/recon/CMakeLists.txt b/Lib/src/recon/CMakeLists.txt index 0b2cacc..5975768 100644 --- a/Lib/src/recon/CMakeLists.txt +++ b/Lib/src/recon/CMakeLists.txt @@ -1,2 +1 @@ - add_subdirectory(DoGridding) \ No newline at end of file diff --git a/Lib/src/recon/DoGridding/CMakeLists.txt b/Lib/src/recon/DoGridding/CMakeLists.txt index a4368f7..81ffa21 100644 --- a/Lib/src/recon/DoGridding/CMakeLists.txt +++ b/Lib/src/recon/DoGridding/CMakeLists.txt @@ -1,21 +1,3 @@ - -INCLUDE_DIRECTORIES(${MATLAB_INCLUDE_DIR}) - -add_library(DoGridding SHARED DoGridding.cpp ${CMAKE_SOURCE_DIR}/Matlabdef.def) -target_link_libraries(DoGridding ${MATLAB_LIBRARIES}) - -if(WIN32) - if (CMAKE_CL_64) - SET_TARGET_PROPERTIES(DoGridding PROPERTIES SUFFIX .mexw64) - else(CMAKE_CL_64) - SET_TARGET_PROPERTIES(DoGridding PROPERTIES SUFFIX .mexw32) - endif(CMAKE_CL_64) -else(WIN32) - if (CMAKE_SIZEOF_VOID_P MATCHES "8") - SET_TARGET_PROPERTIES(DoGridding PROPERTIES SUFFIX .mexa64 PREFIX "") - else(CMAKE_SIZEOF_VOID_P MATCHES "8") - SET_TARGET_PROPERTIES(DoGridding PROPERTIES SUFFIX .mexglx PREFIX "") - endif (CMAKE_SIZEOF_VOID_P MATCHES "8") -endif(WIN32) +matlab_add_mex(NAME DoGridding SRC DoGridding.cpp ${CMAKE_SOURCE_DIR}/Matlabdef.def LINK_TO ${Matlab_LIBRARIES}) install(TARGETS DoGridding DESTINATION ../bin) diff --git a/Lib/src/renderer/CMakeLists.txt b/Lib/src/renderer/CMakeLists.txt index aee193a..301b11c 100644 --- a/Lib/src/renderer/CMakeLists.txt +++ b/Lib/src/renderer/CMakeLists.txt @@ -1,4 +1,3 @@ - include(${VTK_USE_FILE}) if (VTK_FOUND) diff --git a/Lib/src/renderer/DoKSpaceTrajVTK/CMakeLists.txt b/Lib/src/renderer/DoKSpaceTrajVTK/CMakeLists.txt index 042f0f6..65d1d97 100644 --- a/Lib/src/renderer/DoKSpaceTrajVTK/CMakeLists.txt +++ b/Lib/src/renderer/DoKSpaceTrajVTK/CMakeLists.txt @@ -1,20 +1,4 @@ - -add_library(DoKSpaceTrajVTK SHARED DoKSpaceTrajVTK.cpp ${CMAKE_SOURCE_DIR}/Matlabdef.def) -target_link_libraries(DoKSpaceTrajVTK ${MATLAB_LIBRARIES}) - -if(WIN32) - if (CMAKE_CL_64) - SET_TARGET_PROPERTIES(DoKSpaceTrajVTK PROPERTIES SUFFIX .mexw64) - else(CMAKE_CL_64) - SET_TARGET_PROPERTIES(DoKSpaceTrajVTK PROPERTIES SUFFIX .mexw32) - endif(CMAKE_CL_64) -else(WIN32) - if (CMAKE_SIZEOF_VOID_P MATCHES "8") - SET_TARGET_PROPERTIES(DoKSpaceTrajVTK PROPERTIES SUFFIX .mexa64 PREFIX "") - else(CMAKE_SIZEOF_VOID_P MATCHES "8") - SET_TARGET_PROPERTIES(DoKSpaceTrajVTK PROPERTIES SUFFIX .mexglx PREFIX "") - endif (CMAKE_SIZEOF_VOID_P MATCHES "8") -endif(WIN32) +matlab_add_mex(NAME DoKSpaceTrajVTK SRC DoKSpaceTrajVTK.cpp ${CMAKE_SOURCE_DIR}/Matlabdef.def LINK_TO ${Matlab_LIBRARIES}) if(VTK_LIBRARIES) target_link_libraries(DoKSpaceTrajVTK ${VTK_LIBRARIES}) diff --git a/Lib/src/utilities/DoSARAverageAtCPU/CMakeLists.txt b/Lib/src/utilities/DoSARAverageAtCPU/CMakeLists.txt index 9cdb276..04c276f 100644 --- a/Lib/src/utilities/DoSARAverageAtCPU/CMakeLists.txt +++ b/Lib/src/utilities/DoSARAverageAtCPU/CMakeLists.txt @@ -1,21 +1,3 @@ +matlab_add_mex(NAME DoSARAverageAtCPU SRC DoSARAverageAtCPU.cpp ${CMAKE_SOURCE_DIR}/Matlabdef.def LINK_TO ${Matlab_LIBRARIES}) -INCLUDE_DIRECTORIES(${MATLAB_INCLUDE_DIR}) - -add_library(DoSARAverageAtCPU SHARED DoSARAverageAtCPU.cpp ${CMAKE_SOURCE_DIR}/Matlabdef.def) -target_link_libraries(DoSARAverageAtCPU ${MATLAB_LIBRARIES}) - -if(WIN32) - if (CMAKE_CL_64) - SET_TARGET_PROPERTIES(DoSARAverageAtCPU PROPERTIES SUFFIX .mexw64) - else(CMAKE_CL_64) - SET_TARGET_PROPERTIES(DoSARAverageAtCPU PROPERTIES SUFFIX .mexw32) - endif(CMAKE_CL_64) -else(WIN32) - if (CMAKE_SIZEOF_VOID_P MATCHES "8") - SET_TARGET_PROPERTIES(DoSARAverageAtCPU PROPERTIES SUFFIX .mexa64 PREFIX "") - else(CMAKE_SIZEOF_VOID_P MATCHES "8") - SET_TARGET_PROPERTIES(DoSARAverageAtCPU PROPERTIES SUFFIX .mexglx PREFIX "") - endif (CMAKE_SIZEOF_VOID_P MATCHES "8") -endif(WIN32) - -install(TARGETS DoSARAverageAtCPU DESTINATION ../bin) +install(TARGETS DoSARAverageAtCPU DESTINATION ../bin) \ No newline at end of file