Complete Qt6 migration: full clean build green across groups G1-G12 incl. runtime plugin set
new_docker_build.sh gains Group 12 (212 GUI/Data plugins); fixes LtsUtilsGuiDds visibility (LTO-stripped exports), LtsProjectionWorkstation unity name shadow, 6 unity-off dirs (dup file-scope statics, ddsftc INTERFACE sources) and reconfigures BUILD_FILTERMANAGEMENT/BUILD_PLUGINS_SERVICEMONITOR=ON
This commit is contained in:
1718 files changed
+126739
-18495
No files matched your search
@@ -51,8 +51,27 @@ ADD_LIBRARY(TopicReplayInterface SHARED
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/topic_replay_interface.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/topic_replay_interface.cpp
|
||||
)
|
||||
TARGET_INCLUDE_DIRECTORIES(TopicReplayInterface PUBLIC
|
||||
TARGET_INCLUDE_DIRECTORIES(TopicReplayInterface PUBLIC
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/..
|
||||
${CMAKE_BINARY_DIR}/Lts/Common/TopicEditorBase # topiceditorbase_export.h
|
||||
)
|
||||
TARGET_LINK_LIBRARIES(TopicReplayInterface PUBLIC Qt6::Core TopicEditorBase)
|
||||
|
||||
# These interface base classes (e.g. DataPluginBase::Plugin) are Q_OBJECT classes. The top-level
|
||||
# CMAKE_CXX_VISIBILITY_PRESET hidden compiles their Q_OBJECT meta symbols (staticMetaObject/vtable/
|
||||
# qt_metacall/typeinfo) as GLOBAL HIDDEN, so they are not exported from the .so. A cross-DSO
|
||||
# subclass (e.g. AsbDataPlugin) then fails with "undefined reference to ...::staticMetaObject".
|
||||
# Compile these interface libs with default visibility so the meta symbols are exported to consumers
|
||||
# (the legacy build, without LTO, exported them). This only widens the export surface of these tiny
|
||||
# interface libs; it changes no runtime behaviour.
|
||||
set_target_properties(
|
||||
DataPluginInterface
|
||||
GuiPluginInterface
|
||||
ProjectPluginInterface
|
||||
StylePluginInterface
|
||||
RecordReplayPlugin
|
||||
TopicReplayInterface
|
||||
PROPERTIES
|
||||
CXX_VISIBILITY_PRESET default
|
||||
CXX_VISIBILITY_INLINES_HIDDEN OFF
|
||||
)
|
||||
@@ -132,12 +132,12 @@ class Interface
|
||||
|
||||
protected:
|
||||
LtsSession::LtsSession* m_session;
|
||||
NGL::INGLLogger& m_logger;
|
||||
|
||||
private:
|
||||
QFlags<LtsAppDescriptor::PluginInfo::Flag> m_flags;
|
||||
QStringList m_options;
|
||||
LtsAppDescriptor::App m_appId;
|
||||
NGL::INGLLogger& m_logger;
|
||||
};
|
||||
|
||||
} // namespace GuiPluginBase
|
||||
|
||||
Reference in new issue
Block a user