Integrates qt6-ported code generator into qt6-overall-build-pipeline

This commit is contained in:
torsten committed 2026-09-04 15:31:59 +02:00
1 parent f528f9b609
commit c270b7ebe7
3 files changed
+57 -8

No files matched your search

+49 -5
View File
@@ -126,7 +126,7 @@ ENDIF()
OPTION(BUILD_ARCGIS "Build ArcGIS SDK dependent modules" ON)
OPTION(BUILD_FILTERMANAGEMENT "Build FilterManagement plugins (temporarily disabled for migration)" OFF)
OPTION(BUILD_CODIFICATION "Build CodificationManagement plugins (requires KDReports)" OFF)
OPTION(BUILD_GRANTLEE "Build CodeGen Grantlee templates (requires Grantlee5/Qt5)" OFF)
OPTION(BUILD_GRANTLEE "Build CodeGen SQL files using KTextTemplate parser (KF6::TextTemplate)" ON)
# If BUILD_GRANTLEE is OFF but ngl_codegen is needed (for IDL codegen),
# provide it as an imported executable target from pre-built location
@@ -258,7 +258,7 @@ set(QT6_INC_DIR "/usr/include/x86_64-linux-gnu/qt6")
if(NOT TARGET Qt6::DBus AND EXISTS "${QT6_LIB_DIR}/libQt6DBus.so.6")
add_library(Qt6::DBus SHARED IMPORTED)
set_target_properties(Qt6::DBus PROPERTIES
IMPORTED_LOCATION "${QT6_LIB_DIR}/libQt6DBus.so.6.2.4"
IMPORTED_LOCATION "${QT6_LIB_DIR}/libQt6DBus.so.6"
INTERFACE_INCLUDE_DIRECTORIES "${QT6_INC_DIR}/QtDBus;${QT6_INC_DIR}"
INTERFACE_LINK_LIBRARIES "Qt6::Core"
)
@@ -268,9 +268,9 @@ endif()
if(NOT TARGET Qt6::Gui AND EXISTS "${QT6_LIB_DIR}/libQt6Gui.so.6")
add_library(Qt6::Gui SHARED IMPORTED)
set_target_properties(Qt6::Gui PROPERTIES
IMPORTED_LOCATION "${QT6_LIB_DIR}/libQt6Gui.so.6.2.4"
IMPORTED_LOCATION "${QT6_LIB_DIR}/libQt6Gui.so.6"
INTERFACE_INCLUDE_DIRECTORIES "${QT6_INC_DIR}/QtGui;${QT6_INC_DIR}"
INTERFACE_LINK_LIBRARIES "Qt6::Core;Qt6::DBus;${QT6_LIB_DIR}/libQt6OpenGL.so.6.2.4;${QT6_LIB_DIR}/libEGL.so.1;${QT6_LIB_DIR}/libGLX.so.0;${QT6_LIB_DIR}/libX11.so.6;${CMAKE_DL_LIBS};pthread"
INTERFACE_LINK_LIBRARIES "Qt6::Core;Qt6::DBus;${QT6_LIB_DIR}/libQt6OpenGL.so.6;${QT6_LIB_DIR}/libEGL.so.1;${QT6_LIB_DIR}/libGLX.so.0;${QT6_LIB_DIR}/libX11.so.6;${CMAKE_DL_LIBS};pthread"
)
endif()
@@ -280,7 +280,7 @@ if(EXISTS "${QT6_LIB_DIR}/libQt6Widgets.so.6")
add_library(Qt6::Widgets SHARED IMPORTED)
endif()
set_target_properties(Qt6::Widgets PROPERTIES
IMPORTED_LOCATION "${QT6_LIB_DIR}/libQt6Widgets.so.6.2.4"
IMPORTED_LOCATION "${QT6_LIB_DIR}/libQt6Widgets.so.6"
INTERFACE_INCLUDE_DIRECTORIES "/usr/include/x86_64-linux-gnu/qt6/QtWidgets;/usr/include/x86_64-linux-gnu/qt6"
INTERFACE_LINK_LIBRARIES "Qt6::Core;Qt6::Gui"
)
@@ -290,6 +290,50 @@ if(EXISTS "${QT6_LIB_DIR}/libQt6Widgets.so.6")
message(STATUS "Manually configured Qt6 Widgets target")
endif()
# Qt6::Sql - create manual target if not found
if(NOT TARGET Qt6::Sql AND EXISTS "${QT6_LIB_DIR}/libQt6Sql.so.6")
add_library(Qt6::Sql SHARED IMPORTED)
set_target_properties(Qt6::Sql PROPERTIES
IMPORTED_LOCATION "${QT6_LIB_DIR}/libQt6Sql.so.6"
INTERFACE_INCLUDE_DIRECTORIES "${QT6_INC_DIR}/QtSql;${QT6_INC_DIR}"
INTERFACE_LINK_LIBRARIES "Qt6::Core"
)
message(STATUS "Manually configured Qt6 Sql target")
endif()
# Qt6::Xml - create manual target if not found
if(NOT TARGET Qt6::Xml AND EXISTS "${QT6_LIB_DIR}/libQt6Xml.so.6")
add_library(Qt6::Xml SHARED IMPORTED)
set_target_properties(Qt6::Xml PROPERTIES
IMPORTED_LOCATION "${QT6_LIB_DIR}/libQt6Xml.so.6"
INTERFACE_INCLUDE_DIRECTORIES "${QT6_INC_DIR}/QtXml;${QT6_INC_DIR}"
INTERFACE_LINK_LIBRARIES "Qt6::Core"
)
message(STATUS "Manually configured Qt6 Xml target")
endif()
# Qt6::Network - create manual target if not found
if(NOT TARGET Qt6::Network AND EXISTS "${QT6_LIB_DIR}/libQt6Network.so.6")
add_library(Qt6::Network SHARED IMPORTED)
set_target_properties(Qt6::Network PROPERTIES
IMPORTED_LOCATION "${QT6_LIB_DIR}/libQt6Network.so.6"
INTERFACE_INCLUDE_DIRECTORIES "${QT6_INC_DIR}/QtNetwork;${QT6_INC_DIR}"
INTERFACE_LINK_LIBRARIES "Qt6::Core"
)
message(STATUS "Manually configured Qt6 Network target")
endif()
# Qt6::Test - create manual target if not found
if(NOT TARGET Qt6::Test AND EXISTS "${QT6_LIB_DIR}/libQt6Test.so.6")
add_library(Qt6::Test SHARED IMPORTED)
set_target_properties(Qt6::Test PROPERTIES
IMPORTED_LOCATION "${QT6_LIB_DIR}/libQt6Test.so.6"
INTERFACE_INCLUDE_DIRECTORIES "${QT6_INC_DIR}/QtTest;${QT6_INC_DIR}"
INTERFACE_LINK_LIBRARIES "Qt6::Core"
)
message(STATUS "Manually configured Qt6 Test target")
endif()
# Stub Qt6::Svg target if not available (needed by multiple plugins)
if(NOT TARGET Qt6::Svg)
add_library(Qt6::Svg INTERFACE IMPORTED)
@@ -1,5 +1,8 @@
#ifndef GENERATORGRANTLEEBASE_H
#define GENERATORGRANTLEEBASE_H
#include "XmlReader.h"
#include <QtCore/QObject>
@@ -46,3 +49,5 @@ class GeneratorGrantleeBase : public QObject
NGL::INGLLogger& m_logger;
};
} // namespace CodeGen
#endif // GENERATORGRANTLEEBASE_H
@@ -176,7 +176,7 @@ MACRO(CODEGEN_SQL srcList xmlFile_in)
-a ${action}
-o ${out_dir_sql}
-i ${CMAKE_BINARY_DIR}/service_idl_files.txt
DEPENDS ngl_codegen ${xmlFile_in}
DEPENDS ${_cg} ${xmlFile_in}
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
)
LIST(APPEND ${srcList} ${out_file_sql})
@@ -426,7 +426,7 @@ ENDMACRO()
MACRO(CREATE_TOPIC_TYPE_PLUGIN xmlFile_in)
SET(_my_srcs "")
_GET_SERVICENAME( "${xmlFile_in}" svcNameOut )
CODEGEN_TOPIC_TYPE_PLUGIN(_my_srcs ${xml_FILE})
CODEGEN_TOPIC_TYPE_PLUGIN(_my_srcs ${xmlFile_in})
STRING(SUBSTRING ${svcNameOut} 0 1 _ss1)
STRING(SUBSTRING ${svcNameOut} 1 -1 _ss2)
@@ -469,7 +469,7 @@ ENDMACRO()
MACRO(CREATE_RECORD_REPLAY_PLUGIN_INTERN xmlFile_in svcSourceList libtype)
SET(_my_srcs "")
_GET_SERVICENAME( "${xmlFile_in}" svcNameOut )
CODEGEN_RECORD_REPLAY_PLUGIN(_my_srcs ${xml_FILE})
CODEGEN_RECORD_REPLAY_PLUGIN(_my_srcs ${xmlFile_in})
STRING(SUBSTRING ${svcNameOut} 0 1 _ss1)
STRING(SUBSTRING ${svcNameOut} 1 -1 _ss2)