From 05062c386fad242f207ae5855f05f15dc48cd19e Mon Sep 17 00:00:00 2001 From: Denis Rouzaud Date: Tue, 3 Dec 2024 15:37:30 +0100 Subject: [PATCH] [sipify] better handling of type header includes --- scripts/sipify.py | 5 +++++ src/core/qgis_sip.h | 4 ++++ 2 files changed, 9 insertions(+) diff --git a/scripts/sipify.py b/scripts/sipify.py index 55b37355a9c..73c3a7a472c 100755 --- a/scripts/sipify.py +++ b/scripts/sipify.py @@ -1475,6 +1475,11 @@ while CONTEXT.line_idx < CONTEXT.line_count: dbg_info("found SIP_WHEN_FEATURE") CONTEXT.if_feature_condition = match.group(1) + match = re.search(r"SIP_TYPEHEADER_INCLUDE\(\s*(.*?)\s*\)", CONTEXT.current_line) + if match: + dbg_info("found SIP_TYPEHEADER_INCLUDE") + write_output("STI", f'#include "{match.group(1)}"\n') + if CONTEXT.is_qt6: CONTEXT.current_line = re.sub( r"int\s*__len__\s*\(\s*\)", "Py_ssize_t __len__()", CONTEXT.current_line diff --git a/src/core/qgis_sip.h b/src/core/qgis_sip.h index b27bcd54133..e95515faae1 100644 --- a/src/core/qgis_sip.h +++ b/src/core/qgis_sip.h @@ -287,5 +287,9 @@ */ #define SIP_PYQT5_RUN +/* + * Adds an include in the type header code + */ +#define SIP_TYPEHEADER_INCLUDE(file) #endif // QGIS_SIP_H