project(diagramUtils) set(DIAGRAMUTILS_HEADER_FILES include/logger.h ../common/include/global.h ../common/include/compiler.hpp ../common/include/export.hpp ../common/include/operatingSystem.hpp ) set(DIAGRAMUTILS_SOURCE_FILES source/logger.cpp source/dataBase.cpp ../common/source/global.cpp ) if(${QT_VERSION_MAJOR} GREATER_EQUAL 6) qt_add_library(diagramUtils SHARED MANUAL_FINALIZATION ${DIAGRAMUTILS_HEADER_FILES} ${DIAGRAMUTILS_SOURCE_FILES} ) else() add_library(diagramUtils SHARED ${DIAGRAMUTILS_HEADER_FILES} ${DIAGRAMUTILS_SOURCE_FILES} ) endif() target_link_libraries(diagramUtils PUBLIC Qt${QT_VERSION_MAJOR}::Core Qt${QT_VERSION_MAJOR}::Gui Qt${QT_VERSION_MAJOR}::Widgets) target_link_libraries(diagramUtils PRIVATE Qt6::Xml) target_link_libraries(diagramUtils PRIVATE Qt6::Network) target_link_libraries(diagramUtils PRIVATE Qt6::Sql ${POSTGRESQL_LIBRARIES}) option(BUILD_SHARED_LIBS "Build as shared library" ON) target_include_directories(diagramUtils PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/include) target_compile_definitions(diagramUtils PUBLIC DIAGRAM_DESIGNER_SHARED PRIVATE DIAGRAM_DESIGNER_EXPORTS #QT_NO_KEYWORDS )