Skip to content

Commit fcb3755

Browse files
committed
🔧 exclude mqt-core shared libraries from wheel repair
Signed-off-by: burgholzer <[email protected]>
1 parent e3b17f3 commit fcb3755

File tree

1 file changed

+14
-2
lines changed

1 file changed

+14
-2
lines changed

pyproject.toml

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -298,13 +298,25 @@ manylinux-aarch64-image = "manylinux_2_28"
298298
manylinux-ppc64le-image = "manylinux_2_28"
299299
manylinux-s390x-image = "manylinux_2_28"
300300

301+
# The mqt-core shared libraries are provided by the mqt-core Python package.
302+
# They should not be vendorized into the mqt-qcec wheel. This requires
303+
# excluding the shared libraries from the repair process.
304+
301305
[tool.cibuildwheel.linux]
302306
environment = { DEPLOY="ON" }
307+
# The SOVERSION needs to be updated when the shared libraries are updated.
308+
repair-wheel-command = """auditwheel repair -w {dest_dir} {wheel} \
309+
--exclude libmqt-core-ir.so.2.6 \
310+
--exclude libmqt-core-circuit-optimizer.so.2.6 \
311+
--exclude libmqt-core-algorithms.so.2.6 \
312+
--exclude libmqt-core-dd.so.2.6 \
313+
--exclude libmqt-core-zx.so.2.6"""
303314

304315
[tool.cibuildwheel.macos]
305316
environment = { MACOSX_DEPLOYMENT_TARGET = "10.15" }
317+
repair-wheel-command = "delocate-wheel --require-archs {delocate_archs} -w {dest_dir} -v {wheel} --ignore-missing-dependencies "
306318

307319
[tool.cibuildwheel.windows]
308-
before-build = "pip install delvewheel>=1.7.3"
309-
repair-wheel-command = "delvewheel repair -v -w {dest_dir} {wheel} --namespace-pkg mqt"
320+
before-build = "uv pip install delvewheel>=1.7.3"
321+
repair-wheel-command = """delvewheel repair -w {dest_dir} {wheel} --namespace-pkg mqt --no-dll \"mqt-core-ir.dll;mqt-core-circuit-optimizer.dll;mqt-core-algorithms.dll;mqt-core-dd.dll;mqt-core-zx.dll\""""
310322
environment = { CMAKE_ARGS = "-T ClangCL", SKBUILD_CMAKE_ARGS="--fresh" }

0 commit comments

Comments
 (0)