Mentions légales du service

Skip to content
Snippets Groups Projects
Commit f217cdab authored by Mathieu Faverge's avatar Mathieu Faverge
Browse files

cmake: Update cmake to use the qt5 targets and create a define for version >= 5.15

parent f0f17a96
Branches
Tags
1 merge request!34Update
Pipeline #535133 passed
......@@ -102,6 +102,7 @@ include (CheckIncludeFileCXX)
include (CheckIncludeFiles)
include (CheckLibraryExists)
include (CMakeDependentOption)
include (CheckCXXSymbolExists)
### Required Packages
# Try to find Qt5 : http://forum.openscenegraph.org/viewtopic.php?t=11431
......@@ -192,6 +193,12 @@ check_function_exists(getrusage HAVE_GETRUSAGE)
check_include_files(limits.h HAVE_LIMITS_H)
check_include_files(string.h HAVE_STRING_H)
if( ${Qt5Widgets_VERSION_STRING} VERSION_GREATER "5.15" )
set( HAVE_QT5_15 ON )
else()
set( HAVE_QT5_15 OFF )
endif()
#
# Find optional packages
#
......
......@@ -47,7 +47,13 @@ include_directories(${CMAKE_BINARY_DIR}/src)
add_library(CriticalPath SHARED ${CRITICALPATH_SRCS} ${CRITICALPATH_FORMS})
qt5_use_modules(CriticalPath Widgets Core Xml OpenGL UiTools)
target_link_libraries( CriticalPath
Qt5::Widgets
Qt5::Core
Qt5::Xml
Qt5::OpenGL
Qt5::UiTools
)
set(Boost_USE_STATIC_LIBS OFF)
set(Boost_USE_MULTITHREADED ON)
......
......@@ -30,6 +30,9 @@ set(DISTRIBUTION_srcs
add_library(Distribution SHARED ${DISTRIBUTION_srcs})
qt5_use_modules(Distribution Widgets Core)
target_link_libraries( Distribution
Qt5::Widgets
Qt5::Core
)
install(TARGETS Distribution DESTINATION $ENV{HOME}/.vite)
......@@ -83,24 +83,29 @@ add_library(MatrixVisualizer SHARED ${MATRIXVISUALIZER_srcs} ${MATRIXVISUALIZER_
#############################################
# QT5
#############################################
qt5_use_modules(MatrixVisualizer Widgets Core Xml OpenGL UiTools)
target_link_libraries( MatrixVisualizer
Qt5::Widgets
Qt5::Core
Qt5::Xml
Qt5::OpenGL
Qt5::UiTools
)
TARGET_LINK_LIBRARIES(MatrixVisualizer
${QT_LIBRARIES}
target_link_libraries(MatrixVisualizer
${OPENGL_gl_LIBRARY}
${OPENGL_glu_LIBRARY}
${Boost_LIBRARIES}
)
IF(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
TARGET_LINK_LIBRARIES(MatrixVisualizer
target_link_libraries(MatrixVisualizer
rt
)
ADD_DEFINITIONS("-DBOOST_GZIP")
add_definitions("-DBOOST_GZIP")
ENDIF(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
IF(VITE_ENABLE_VBO)
TARGET_LINK_LIBRARIES(MatrixVisualizer
target_link_libraries(MatrixVisualizer
${GLEW_LIBRARY}
)
ENDIF(VITE_ENABLE_VBO)
......
......@@ -30,6 +30,9 @@ set(TRACEINFOS_srcs
add_library(TraceInfos SHARED ${TRACEINFOS_srcs})
qt5_use_modules(TraceInfos Widgets Core)
target_link_libraries( TraceInfos
Qt5::Widgets
Qt5::Core
)
install(TARGETS TraceInfos DESTINATION $ENV{HOME}/.vite)
......@@ -40,8 +40,7 @@
# - (RICHART Nicolas)
#
#
SET(VITE_HDRS
set(VITE_HDRS
common/Errors.hpp
common/Info.hpp
common/Memory.hpp
......@@ -133,7 +132,7 @@ SET(VITE_HDRS
plugin/Plugin.hpp
)
SET(VITE_UIS
set(VITE_UIS
interface/info_window.ui
interface/settings.ui
interface/main_window.ui
......@@ -145,7 +144,7 @@ SET(VITE_UIS
interface/statistics.ui
)
SET(VITE_SRCS
set(VITE_SRCS
# Messages & Errors
common/Errors.cpp
common/Info.cpp
......@@ -222,7 +221,7 @@ SET(VITE_SRCS
main.cpp
)
SET(VITE_RCCS
set(VITE_RCCS
interface/vite.qrc
)
......@@ -230,68 +229,67 @@ SET(VITE_RCCS
# Renderer
#############################################
IF(USE_OPENGL)
if(USE_OPENGL)
message("OpenGL will be used")
SET(VITE_HDRS
set(VITE_HDRS
${VITE_HDRS}
render/opengl/Render_opengl.hpp
render/opengl/render_stats_opengl.hpp
)
SET(VITE_SRCS
set(VITE_SRCS
${VITE_SRCS}
render/opengl/Render_opengl.cpp
render/opengl/render_stats_opengl.cpp
)
endif(USE_OPENGL)
ENDIF (USE_OPENGL)
IF(USE_VULKAN)
if(USE_VULKAN)
message("Vulkan will be used")
message(WARNING "The Vulkan version is not yet finished")
SET(VITE_HDRS
${VITE_HDRS}
render/vulkan/Render_vulkan.hpp
render/vulkan/Vulkan_window.hpp
render/vulkan/Vulkan_window_renderer.hpp
render/vulkan/Vk_buffer.hpp
render/vulkan/Vk_vertex_buffer.hpp
render/vulkan/Vk_uniform_buffer.hpp
render/vulkan/Vk_pipeline.hpp
)
SET(VITE_SRCS
${VITE_SRCS}
render/vulkan/Render_vulkan.cpp
render/vulkan/Vulkan_window.cpp
render/vulkan/Vulkan_window_renderer.cpp
render/vulkan/Vk_buffer.cpp
render/vulkan/Vk_vertex_buffer.cpp
render/vulkan/Vk_uniform_buffer.cpp
render/vulkan/Vk_pipeline.cpp
)
INCLUDE_DIRECTORIES(${Vulkan_INCLUDE_DIR})
ENDIF(USE_VULKAN)
set(VITE_HDRS
${VITE_HDRS}
render/vulkan/Render_vulkan.hpp
render/vulkan/Vulkan_window.hpp
render/vulkan/Vulkan_window_renderer.hpp
render/vulkan/Vk_buffer.hpp
render/vulkan/Vk_vertex_buffer.hpp
render/vulkan/Vk_uniform_buffer.hpp
render/vulkan/Vk_pipeline.hpp
)
set(VITE_SRCS
${VITE_SRCS}
render/vulkan/Render_vulkan.cpp
render/vulkan/Vulkan_window.cpp
render/vulkan/Vulkan_window_renderer.cpp
render/vulkan/Vk_buffer.cpp
render/vulkan/Vk_vertex_buffer.cpp
render/vulkan/Vk_uniform_buffer.cpp
render/vulkan/Vk_pipeline.cpp
)
include_directories(${Vulkan_INCLUDE_DIR})
endif(USE_VULKAN)
#############################################
# VBO
#############################################
IF(VITE_ENABLE_VBO)
message("OpenGL with VBO will be used")
SET(VITE_HDRS
${VITE_HDRS}
render/vbo/vbo.hpp
render/vbo/Shader.hpp
render/vbo/Render_alternate.hpp
)
SET(VITE_SRCS
${VITE_SRCS}
render/vbo/vbo.cpp
render/vbo/Shader.cpp
render/vbo/Render_alternate.cpp
)
ENDIF(VITE_ENABLE_VBO)
if(VITE_ENABLE_VBO)
message("OpenGL with VBO will be used")
set(VITE_HDRS
${VITE_HDRS}
render/vbo/vbo.hpp
render/vbo/Shader.hpp
render/vbo/Render_alternate.hpp
)
set(VITE_SRCS
${VITE_SRCS}
render/vbo/vbo.cpp
render/vbo/Shader.cpp
render/vbo/Render_alternate.cpp
)
endif(VITE_ENABLE_VBO)
#############################################
# QtColorPicker
......@@ -313,91 +311,85 @@ set(VITE_SRCS
#############################################
# OTF Parser
#############################################
IF (VITE_ENABLE_OTF)
SET(VITE_HDRS
if(VITE_ENABLE_OTF)
set(VITE_HDRS
${VITE_HDRS}
parser/OTFParser/ParserDefinitionOTF.hpp
parser/OTFParser/ParserEventOTF.hpp
parser/OTFParser/ParserOTF.hpp
)
SET(VITE_SRCS
set(VITE_SRCS
${VITE_SRCS}
parser/OTFParser/ParserDefinitionOTF.cpp
parser/OTFParser/ParserEventOTF.cpp
parser/OTFParser/ParserOTF.cpp
)
IF (VITE_ENABLE_MT_PARSERS)
SET(VITE_HDRS
if(VITE_ENABLE_MT_PARSERS)
set(VITE_HDRS
${VITE_HDRS}
parser/OTFParser/mt_ParserEventOTF.hpp
parser/OTFParser/mt_ParserOTF.hpp
parser/OTFParser/OTFTraceBuilderThread.hpp
)
SET(VITE_SRCS
set(VITE_SRCS
${VITE_SRCS}
parser/OTFParser/mt_ParserEventOTF.cpp
parser/OTFParser/mt_ParserOTF.cpp
parser/OTFParser/OTFTraceBuilderThread.cpp
)
ENDIF ()
endif()
INCLUDE_DIRECTORIES(BEFORE ${OTF_INCLUDE_DIR})
ENDIF (VITE_ENABLE_OTF)
include_directories(BEFORE ${OTF_INCLUDE_DIR})
endif(VITE_ENABLE_OTF)
#############################################
# OTF2 Parser
#############################################
IF (VITE_ENABLE_OTF2)
ADD_DEFINITIONS(-DWITH_OTF2)
if(VITE_ENABLE_OTF2)
add_definitions(-DWITH_OTF2)
SET(VITE_HDRS
set(VITE_HDRS
${VITE_HDRS}
parser/OTF2Parser/ParserDefinitionOTF2.hpp
parser/OTF2Parser/ParserEventOTF2.hpp
parser/OTF2Parser/ParserOTF2.hpp
)
SET(VITE_SRCS
set(VITE_SRCS
${VITE_SRCS}
parser/OTF2Parser/ParserDefinitionOTF2.cpp
parser/OTF2Parser/ParserEventOTF2.cpp
parser/OTF2Parser/ParserOTF2.cpp
)
INCLUDE_DIRECTORIES(${OTF2_INCLUDE_DIR})
ENDIF (VITE_ENABLE_OTF2)
include_directories(${OTF2_INCLUDE_DIR})
endif()
#############################################
# TAU Parser
#############################################
IF (VITE_ENABLE_TAU)
SET(VITE_HDRS
if(VITE_ENABLE_TAU)
set(VITE_HDRS
${VITE_HDRS}
parser/TauParser/ParserTau.hpp
parser/TauParser/TauStructs.hpp
)
SET(VITE_SRCS
set(VITE_SRCS
${VITE_SRCS}
parser/TauParser/ParserTau.cpp
)
INCLUDE_DIRECTORIES(${TAU_INCLUDE_DIR})
ENDIF (VITE_ENABLE_TAU)
include_directories(${TAU_INCLUDE_DIR})
endif()
#############################################
# Multi-threaded Paje Parser
#############################################
IF (VITE_ENABLE_MT_PARSERS)
SET(VITE_HDRS
if(VITE_ENABLE_MT_PARSERS)
set(VITE_HDRS
${VITE_HDRS}
#Multithread Paje
parser/PajeParser/mt_ParserEventPaje.hpp
......@@ -407,7 +399,7 @@ IF (VITE_ENABLE_MT_PARSERS)
trace/TraceBuilderThread.hpp
)
SET(VITE_SRCS
set(VITE_SRCS
${VITE_SRCS}
#Multithread Paje Parser
parser/PajeParser/mt_ParserEventPaje.cpp
......@@ -416,18 +408,17 @@ IF (VITE_ENABLE_MT_PARSERS)
parser/PajeParser/BuilderThread.cpp
trace/TraceBuilderThread.cpp
)
ENDIF ()
endif()
#############################################
# BOOST
#############################################
IF (VITE_ENABLE_SERIALIZATION)
if(VITE_ENABLE_SERIALIZATION)
link_directories(${Boost_LIBRARY_DIRS})
include_directories(${Boost_INCLUDE_DIRS})
add_definitions("-DUSE_ITC -DBOOST_SERIALIZE")
SET(VITE_HDRS
set(VITE_HDRS
${VITE_HDRS}
parser/ParserSplitted.hpp
trace/IntervalOfContainer.hpp
......@@ -435,24 +426,23 @@ IF (VITE_ENABLE_SERIALIZATION)
trace/SerializerDispatcher.hpp
)
SET(VITE_SRCS
set(VITE_SRCS
${VITE_SRCS}
parser/ParserSplitted.cpp
trace/IntervalOfContainer.cpp
trace/SerializerWriter.cpp
trace/SerializerDispatcher.cpp
)
ENDIF (VITE_ENABLE_SERIALIZATION)
endif()
#############################################
# QT5
#############################################
QT5_WRAP_UI(VITE_UIS_H ${VITE_UIS})
QT5_WRAP_CPP(VITE_MOC ${VITE_UIS_H} ${VITE_MOC_HDRS})
QT5_ADD_RESOURCES(VITE_RCC_SRCS ${VITE_RCCS})
qt5_wrap_ui(VITE_UIS_H ${VITE_UIS})
qt5_wrap_cpp(VITE_MOC ${VITE_UIS_H} ${VITE_MOC_HDRS})
qt5_add_resources(VITE_RCC_SRCS ${VITE_RCCS})
INCLUDE_DIRECTORIES(
include_directories(
${CMAKE_CURRENT_BINARY_DIR}/common
${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_CURRENT_SOURCE_DIR}
......@@ -460,13 +450,13 @@ INCLUDE_DIRECTORIES(
)
#ADD_LIBRARY(vite2 SHARED ${VITE_SRCS} ${VITE_MOC} ${VITE_RCC_SRCS})
IF (VITE_ENABLE_OTF)
LINK_DIRECTORIES(${OTF_LIBRARY_DIR})
ENDIF (VITE_ENABLE_OTF)
if (VITE_ENABLE_OTF)
link_directories(${OTF_LIBRARY_DIR})
endif (VITE_ENABLE_OTF)
IF (VITE_ENABLE_OTF2)
LINK_DIRECTORIES(${OTF2_LIBRARY_DIR})
ENDIF (VITE_ENABLE_OTF2)
if (VITE_ENABLE_OTF2)
link_directories(${OTF2_LIBRARY_DIR})
endif (VITE_ENABLE_OTF2)
#resource
IF (WIN32)
......@@ -497,10 +487,17 @@ endif (APPLE)
#############################################
# QT5
#############################################
qt5_use_modules(vite Widgets Core Xml OpenGL UiTools Charts Svg)
TARGET_LINK_LIBRARIES(vite
${QT_LIBRARIES}
#qt5_use_modules(vite Widgets Core Xml OpenGL UiTools Charts Svg)
target_link_libraries(vite
Qt5::Widgets
Qt5::Core
Qt5::Xml
Qt5::OpenGL
Qt5::UiTools
Qt5::Charts
Qt5::Svg )
target_link_libraries(vite
${OPENGL_gl_LIBRARY}
${OPENGL_glu_LIBRARY}
${Boost_LIBRARIES}
......@@ -550,12 +547,12 @@ IF (VITE_ENABLE_TAU)
ENDIF (VITE_ENABLE_TAU)
IF (USE_VULKAN)
#Compile shader for Vulkan
find_program(GLSLC glslc required)
add_custom_command(TARGET vite POST_BUILD
COMMAND ${GLSLC} ${CMAKE_SOURCE_DIR}/src/render/vulkan/vulkanshader.vert -o color_vert.spv
COMMAND ${GLSLC} ${CMAKE_SOURCE_DIR}/src/render/vulkan/vulkanshader.frag -o color_frag.spv
)
#Compile shader for Vulkan
find_program(GLSLC glslc required)
add_custom_command(TARGET vite POST_BUILD
COMMAND ${GLSLC} ${CMAKE_SOURCE_DIR}/src/render/vulkan/vulkanshader.vert -o color_vert.spv
COMMAND ${GLSLC} ${CMAKE_SOURCE_DIR}/src/render/vulkan/vulkanshader.frag -o color_frag.spv
)
ENDIF (USE_VULKAN)
IF (WIN32)
......
......@@ -46,6 +46,7 @@
#define VITE_DATE @VITE_DATE@
#cmakedefine USE_QT6
#cmakedefine HAVE_QT5_15
/* Optimization options */
#cmakedefine VITE_ENABLE_SERIALIZATION
......
......@@ -250,10 +250,13 @@ void Node_select::on_reset_button_clicked(){
while (*it) {
if((*it)->parent()==nullptr){//we only want parent nodes
_displayed_containers.push_back(((*it)->data(0,Qt::UserRole)).value<Container*>());
reassign_children_rec(*it, nullptr);
#if defined(HAVE_QT5_15)
reassign_children_rec(*it, QFlags(Qt::Unchecked));
#else
reassign_children_rec(*it, 0);
#endif
}
++it;
}
_nodes_displayed->clear();
......
......@@ -448,7 +448,11 @@ void Hook_event::wheelEvent(QWheelEvent *event) {
QPoint num_steps = num_degrees / 15;
Element_pos scale_coeff = num_steps.y(); // Take the vertical wheel info
#if defined(HAVE_QT5_15)
_mouse_x = event->globalPosition().x();
#else
_mouse_x = event->globalPos().x();
#endif
int ctrl_factor = 1;
if (event->modifiers() == Qt::CTRL) ctrl_factor *= _ctrl_zoom_factor;
......
......@@ -111,7 +111,7 @@ void Minimap::update(const int x, const int y, const int w, const int h) {
void Minimap::redraw(){
MinimapSettings &ms = Session::getSessionMinimap();
QPixmap buf, map;
QPixmap buf;
buf = QPixmap::fromImage(_minimap_image);
......@@ -138,9 +138,15 @@ void Minimap::redraw(){
setPixmap(buf);
setScaledContents(true);
map = pixmap(Qt::ReturnByValue);
if (map.isNull())
#if defined(HAVE_QT5_15)
bool pixmap_test = pixmap(Qt::ReturnByValue).isNull();
#else
bool pixmap_test = pixmap()->isNull();
#endif
if ( pixmap_test ) {
message << tr("No Pixmap set for the minimap").toStdString() << Message::endw;
}
}
void Minimap::release(){
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment