CMAKE_MINIMUM_REQUIRED(VERSION 3.10) SET(CMAKE_MODULE_PATH "${CMAKE_MODULE_PATH};${CMAKE_CURRENT_SOURCE_DIR}/cmake/Modules") MESSAGE(STATUS "------------------------------------------------") IF(ElmerGUIloggerSTANDALONE) PROJECT(ElmerGUIlogger CXX C) IF(WIN32) INCLUDE(cmake/windows_bundle.cmake) ENDIF(WIN32) ENDIF(ElmerGUIloggerSTANDALONE) IF(WITH_QT6) MESSAGE(STATUS "------------------------------------------------") SET(QT6_PKG_LIST Qt6OpenGL Qt6Xml Qt6Gui Qt6Core Qt6OpenGLWidgets Qt6PrintSupport) FOREACH(_pkg ${QT6_PKG_LIST}) FIND_PACKAGE(${_pkg} PATHS ${QT6_PATH}) ENDFOREACH() ADD_DEFINITIONS(-DWITH_QT6) MESSAGE(STATUS " [ElmerGUIlogger] Qt6: " ${Qt6_FOUND}) MESSAGE(STATUS " [ElmerGUIlogger] Qt6 Libraries: ${Qt6OpenGL_LIBRARIES} ${Qt6Xml_LIBRARIES} ${Qt6OpenGLWidgets_LIBRARIES} ${Qt6Gui_LIBRARIES} ${Qt6Core_LIBRARIES} ${Qt6PrintSupport_LIBRARIES}") MESSAGE(STATUS "------------------------------------------------") ELSEIF(WITH_QT5) MESSAGE(STATUS "------------------------------------------------") SET(QT5_PKG_LIST Qt5OpenGL Qt5Xml Qt5Script Qt5Gui Qt5Core Qt5Widgets Qt5PrintSupport) FOREACH(_pkg ${QT5_PKG_LIST}) FIND_PACKAGE(${_pkg} PATHS ${QT5_PATH}) ENDFOREACH() ADD_DEFINITIONS(-DWITH_QT5) MESSAGE(STATUS " [ElmerGUIlogger] Qt5: " ${Qt5_FOUND}) MESSAGE(STATUS " [ElmerGUIlogger] Qt5 Libraries: ${Qt5OpenGL_LIBRARIES} ${Qt5Xml_LIBRARIES} ${Qt5Script_LIBRARIES} ${Qt5Widgets_LIBRARIES} ${Qt5Gui_LIBRARIES} ${Qt5Core_LIBRARIES} ${Qt5PrintSupport_LIBRARIES}") MESSAGE(STATUS "------------------------------------------------") ELSE() MESSAGE(STATUS "------------------------------------------------") FIND_PACKAGE(Qt4 COMPONENTS QtOpenGL QtXml QtScript QtGui QtCore REQUIRED) MESSAGE(STATUS " [ElmerGUIlogger] Qt4: " ${Qt4_FOUND}) MESSAGE(STATUS " [ElmerGUIlogger] Qt4_LIBRARIES: " ${Qt4_LIBRARY}) MESSAGE(STATUS "------------------------------------------------") ENDIF() SET(CMAKE_INCLUDE_CURRENT_DIR ON) SET(CMAKE_AUTOMOC ON) SET(CMAKE_AUTORCC ON) SET(CMAKE_AUTOUIC ON) SET(HEADERS src/mainwindow.h) SET(SOURCES src/main.cpp src/mainwindow.cpp) SET(RESOURCES ElmerGUIlogger.qrc) SET(RC_FILE ElmerGUIlogger.rc) IF(WITH_QT6) QT6_ADD_RESOURCES(UI_RESOURCES ElmerGUIlogger.qrc) ELSEIF(WITH_QT5) QT5_ADD_RESOURCES(UI_RESOURCES ElmerGUIlogger.qrc) ELSE() QT4_ADD_RESOURCES(UI_RESOURCES ElmerGUIlogger.qrc) MESSAGE(WARNING "QT_USE_FILE: ${QT_USE_FILE}") INCLUDE(${QT_USE_FILE}) ADD_DEFINITIONS(${QT_DEFINITIONS}) ENDIF() IF(MINGW AND WIN32) SET(CMAKE_RC_COMPILER_INIT windres) ENABLE_LANGUAGE(RC) SET(CMAKE_RC_COMPILE_OBJECT " -O coff -i -o ") SET(SOURCES ${SOURCES} ElmerGUIlogger.rc) ENDIF() ADD_EXECUTABLE(ElmerGUIlogger WIN32 ${SOURCES} ${UI_RESOURCES}) IF(WITH_QT6) TARGET_LINK_LIBRARIES(ElmerGUIlogger Qt6::OpenGL Qt6::Xml Qt6::OpenGLWidgets Qt6::Gui Qt6::Core Qt6::PrintSupport) ELSEIF(WITH_QT5) QT5_USE_MODULES(ElmerGUIlogger OpenGL Xml Script Gui Core Widgets PrintSupport) ENDIF() TARGET_LINK_LIBRARIES(ElmerGUIlogger ${QT_LIBRARIES}) INSTALL(TARGETS ElmerGUIlogger RUNTIME DESTINATION "bin" COMPONENT "elmergui")