cmake_minimum_required(VERSION 2.8) set(PROJECT_NAME CACHE STRING "project" ) option(ENABLE_QT "ENABLE QT" ON) project(OmegaV) set(CMAKE_CXX_STANDARD 11) set(CMAKE_INCLUDE_CURRENT_DIR ON) file(GLOB_RECURSE project_headers src/*.h) file(GLOB_RECURSE project_cpps src/*.cpp) file(GLOB_RECURSE project_cxx src/*.cxx) file(GLOB_RECURSE project_cc src/*.cc) include_directories( ./src/src/ ./src/src/base ./src/src/global ./src/src/view ./src/src/view/subview ) #set(VTK_DIR "D:/Libs/binary/VTK8.1.2/lib/cmake/vtk-8.2") set(VTK_DIR "D:/Libs/binary/VTK9.2.2/lib/cmake/vtk-9.2") set(Qt5_DIR "D:/Qt/Qt5.12.0/5.12.0/msvc2017_64/lib/cmake/Qt5") set(DCMTK_DIR "D:/Libs/binary/DCMTK/cmake") find_package(DCMTK REQUIRED) include_directories(${DCMTK_INCLUDE_DIRS}) set(DCM_NETWORK_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/thirdparty/dcm_network) set(DCM_NETWORK_RUNTIME_DIRS ${CMAKE_BINARY_DIR}/thirdparty/dcm_network) set(ENABLE_QT ON) source_group(TREE ${CMAKE_SOURCE_DIR} FILES ${project_headers}) source_group(TREE ${CMAKE_SOURCE_DIR} FILES ${project_cpps}) source_group(TREE ${CMAKE_SOURCE_DIR} FILES ${project_cxx}) source_group(TREE ${CMAKE_SOURCE_DIR} FILES ${project_cc}) if(ENABLE_QT) message(${ENABLE_QT}) find_package(Qt5 COMPONENTS Core Widgets Gui OpenGL REQUIRED) set(CMAKE_AUTOMOC ON) set(CMAKE_AUTORCC ON) file(GLOB_RECURSE project_uis ./src/*.ui) qt5_wrap_ui(ui_FILES ${project_uis}) file(GLOB project_res ./src/*.qrc) source_group(TREE ${CMAKE_SOURCE_DIR} FILES ${project_uis}) source_group(TREE ${CMAKE_SOURCE_DIR} FILES ${project_res}) add_executable(${PROJECT_NAME} ${project_headers} ${project_cpps} ${project_cxx} ${project_res} ${project_cc} ${ui_FILES}) target_link_libraries(${PROJECT_NAME} Qt5::Core Qt5::Widgets Qt5::Gui Qt5::OpenGL) else(ENABLE_QT) add_executable(${PROJECT_NAME} ${project_headers} ${project_cpps} ${project_cxx} ${project_cc}) endif(ENABLE_QT) find_package(VTK REQUIRED) include(${VTK_USE_FILE}) target_link_libraries(${PROJECT_NAME} ${VTK_LIBRARIES}) if(DCMTK_LIBRARIES) target_link_libraries(${PROJECT_NAME} ${DCMTK_LIBRARIES}) endif() add_subdirectory(thirdparty) add_subdirectory(DIDKit) include_directories(${DCM_NETWORK_INCLUDE_DIRS}) target_link_libraries(${PROJECT_NAME} dcm_network) add_dependencies(${PROJECT_NAME} dcm_network) set_target_properties(${PROJECT_NAME} PROPERTIES LINK_FLAGS_DEBUG "/SUBSYSTEM:CONSOLE") set_target_properties(${PROJECT_NAME} PROPERTIES LINK_FLAGS_RELEASE "/SUBSYSTEM:WINDOWS")