From aaf980b6b33f8cf20e4bbd3c73a7fc9c641b68e3 Mon Sep 17 00:00:00 2001 From: Andrej730 Date: Tue, 2 Sep 2025 17:16:54 +0500 Subject: [PATCH] ifcwrap cmake - override _d interface suffix in debug builds (d004410cc) https://discourse.cmake.org/t/a-correct-way-to-add-d-debug-prefix-for-debug-python-extensions-on-windows/15132 --- src/ifcwrap/CMakeLists.txt | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/ifcwrap/CMakeLists.txt b/src/ifcwrap/CMakeLists.txt index 4e2e93157f..71346ec27b 100644 --- a/src/ifcwrap/CMakeLists.txt +++ b/src/ifcwrap/CMakeLists.txt @@ -78,6 +78,12 @@ SET_PROPERTY( utils/typemaps_in.i utils/typemaps_out.i ) + +# Debug build on Windows add required `_d` suffix to the resulting .pyd file. +# If we won't override -interface name, +# swig py wrapper will try to import `_ifcopenshell_wrapper_d` module and would fail. +set(SWIG_MODULE_ifcopenshell_wrapper_EXTRA_FLAGS "-interface" "_ifcopenshell_wrapper") + swig_add_library(ifcopenshell_wrapper LANGUAGE python SOURCES IfcPython.i) SET_PROPERTY(TARGET ${SWIG_MODULE_ifcopenshell_wrapper_REAL_NAME} PROPERTY SWIG_DEPENDS ${IFCOPENSHELL_LIBRARIES}) if("$ENV{LDFLAGS}" MATCHES ".undefined.suppress")